diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2014-12-31 16:48:17 -0200 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2015-01-06 19:41:43 +0100 |
commit | 171644cb47b97546ef3f78a7ad0f43d0d52cc332 (patch) | |
tree | c2797d64261a27d03f67f8bc5cdf06794b4ad216 /src | |
parent | 2e2cf8a54954ac7cb1ce4929f9861978228e7bf6 (diff) |
Make QDBusMessage store its own message type
Instead of the libdbus-1 constants. Though they're exactly the same
because they are based on the protocol wire format, so this is
technically a no-op change.
Change-Id: Ia2c638c4b508497ca693afd9c76e60ba9245f5e7
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/dbus/qdbusmessage.cpp | 33 | ||||
-rw-r--r-- | src/dbus/qdbusmessage_p.h | 2 |
2 files changed, 19 insertions, 16 deletions
diff --git a/src/dbus/qdbusmessage.cpp b/src/dbus/qdbusmessage.cpp index 25206b4bb7..1751fcce9c 100644 --- a/src/dbus/qdbusmessage.cpp +++ b/src/dbus/qdbusmessage.cpp @@ -49,13 +49,19 @@ QT_BEGIN_NAMESPACE +Q_STATIC_ASSERT(QDBusMessage::InvalidMessage == DBUS_MESSAGE_TYPE_INVALID); +Q_STATIC_ASSERT(QDBusMessage::MethodCallMessage == DBUS_MESSAGE_TYPE_METHOD_CALL); +Q_STATIC_ASSERT(QDBusMessage::ReplyMessage == DBUS_MESSAGE_TYPE_METHOD_RETURN); +Q_STATIC_ASSERT(QDBusMessage::ErrorMessage == DBUS_MESSAGE_TYPE_ERROR); +Q_STATIC_ASSERT(QDBusMessage::SignalMessage == DBUS_MESSAGE_TYPE_SIGNAL); + static inline const char *data(const QByteArray &arr) { return arr.isEmpty() ? 0 : arr.constData(); } QDBusMessagePrivate::QDBusMessagePrivate() - : msg(0), reply(0), type(DBUS_MESSAGE_TYPE_INVALID), + : msg(0), reply(0), type(QDBusMessage::InvalidMessage), timeout(-1), localReply(0), ref(1), delayedReply(false), localMessage(false), parametersValidated(false), autoStartService(true) { @@ -106,10 +112,10 @@ DBusMessage *QDBusMessagePrivate::toDBusMessage(const QDBusMessage &message, QDB const QDBusMessagePrivate *d_ptr = message.d_ptr; switch (d_ptr->type) { - case DBUS_MESSAGE_TYPE_INVALID: + case QDBusMessage::InvalidMessage: //qDebug() << "QDBusMessagePrivate::toDBusMessage" << "message is invalid"; break; - case DBUS_MESSAGE_TYPE_METHOD_CALL: + case QDBusMessage::MethodCallMessage: // only service and interface can be empty -> path and name must not be empty if (!d_ptr->parametersValidated) { if (!QDBusUtil::checkBusName(d_ptr->service, QDBusUtil::EmptyAllowed, error)) @@ -126,14 +132,14 @@ DBusMessage *QDBusMessagePrivate::toDBusMessage(const QDBusMessage &message, QDB data(d_ptr->interface.toUtf8()), d_ptr->name.toUtf8()); q_dbus_message_set_auto_start( msg, d_ptr->autoStartService ); break; - case DBUS_MESSAGE_TYPE_METHOD_RETURN: + case QDBusMessage::ReplyMessage: msg = q_dbus_message_new(DBUS_MESSAGE_TYPE_METHOD_RETURN); if (!d_ptr->localMessage) { q_dbus_message_set_destination(msg, q_dbus_message_get_sender(d_ptr->reply)); q_dbus_message_set_reply_serial(msg, q_dbus_message_get_serial(d_ptr->reply)); } break; - case DBUS_MESSAGE_TYPE_ERROR: + case QDBusMessage::ErrorMessage: // error name can't be empty if (!d_ptr->parametersValidated && !QDBusUtil::checkErrorName(d_ptr->name, QDBusUtil::EmptyNotAllowed, error)) @@ -146,7 +152,7 @@ DBusMessage *QDBusMessagePrivate::toDBusMessage(const QDBusMessage &message, QDB q_dbus_message_set_reply_serial(msg, q_dbus_message_get_serial(d_ptr->reply)); } break; - case DBUS_MESSAGE_TYPE_SIGNAL: + case QDBusMessage::SignalMessage: // nothing can be empty here if (!d_ptr->parametersValidated) { if (!QDBusUtil::checkObjectPath(d_ptr->path, QDBusUtil::EmptyNotAllowed, error)) @@ -160,9 +166,6 @@ DBusMessage *QDBusMessagePrivate::toDBusMessage(const QDBusMessage &message, QDB msg = q_dbus_message_new_signal(d_ptr->path.toUtf8(), d_ptr->interface.toUtf8(), d_ptr->name.toUtf8()); break; - default: - Q_ASSERT(false); - break; } // if we got here, the parameters validated @@ -221,7 +224,7 @@ QDBusMessage QDBusMessagePrivate::fromDBusMessage(DBusMessage *dmsg, QDBusConnec if (!dmsg) return message; - message.d_ptr->type = q_dbus_message_get_type(dmsg); + message.d_ptr->type = QDBusMessage::MessageType(q_dbus_message_get_type(dmsg)); message.d_ptr->path = QString::fromUtf8(q_dbus_message_get_path(dmsg)); message.d_ptr->interface = QString::fromUtf8(q_dbus_message_get_interface(dmsg)); message.d_ptr->name = message.d_ptr->type == DBUS_MESSAGE_TYPE_ERROR ? @@ -360,7 +363,7 @@ QDBusMessage QDBusMessage::createSignal(const QString &path, const QString &inte const QString &name) { QDBusMessage message; - message.d_ptr->type = DBUS_MESSAGE_TYPE_SIGNAL; + message.d_ptr->type = SignalMessage; message.d_ptr->path = path; message.d_ptr->interface = interface; message.d_ptr->name = name; @@ -391,7 +394,7 @@ QDBusMessage QDBusMessage::createMethodCall(const QString &service, const QStrin const QString &interface, const QString &method) { QDBusMessage message; - message.d_ptr->type = DBUS_MESSAGE_TYPE_METHOD_CALL; + message.d_ptr->type = MethodCallMessage; message.d_ptr->service = service; message.d_ptr->path = path; message.d_ptr->interface = interface; @@ -407,7 +410,7 @@ QDBusMessage QDBusMessage::createMethodCall(const QString &service, const QStrin QDBusMessage QDBusMessage::createError(const QString &name, const QString &msg) { QDBusMessage error; - error.d_ptr->type = DBUS_MESSAGE_TYPE_ERROR; + error.d_ptr->type = ErrorMessage; error.d_ptr->name = name; error.d_ptr->message = msg; @@ -437,7 +440,7 @@ QDBusMessage QDBusMessage::createReply(const QVariantList &arguments) const { QDBusMessage reply; reply.setArguments(arguments); - reply.d_ptr->type = DBUS_MESSAGE_TYPE_METHOD_RETURN; + reply.d_ptr->type = ReplyMessage; if (d_ptr->msg) reply.d_ptr->reply = q_dbus_message_ref(d_ptr->msg); if (d_ptr->localMessage) { @@ -606,7 +609,7 @@ QString QDBusMessage::signature() const bool QDBusMessage::isReplyRequired() const { // Only method calls can have replies - if (d_ptr->type != DBUS_MESSAGE_TYPE_METHOD_CALL) + if (d_ptr->type != QDBusMessage::MethodCallMessage) return false; if (!d_ptr->msg) diff --git a/src/dbus/qdbusmessage_p.h b/src/dbus/qdbusmessage_p.h index 08f6d4bbfa..d2f85c3637 100644 --- a/src/dbus/qdbusmessage_p.h +++ b/src/dbus/qdbusmessage_p.h @@ -72,7 +72,7 @@ public: DBusMessage *msg; DBusMessage *reply; - int type; + QDBusMessage::MessageType type; int timeout; mutable QDBusMessage *localReply; QAtomicInt ref; |