diff options
Diffstat (limited to 'qt/qdbuserror.cpp')
-rw-r--r-- | qt/qdbuserror.cpp | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/qt/qdbuserror.cpp b/qt/qdbuserror.cpp index 64b68b37..ec066e11 100644 --- a/qt/qdbuserror.cpp +++ b/qt/qdbuserror.cpp @@ -29,6 +29,30 @@ #include <dbus/dbus.h> #include "qdbusmessage.h" +/*! + \class QDBusError + \brief Represents an error received from the D-Bus bus or from remote applications found in the bus. + + When dealing with the D-Bus bus service or with remote applications over D-Bus, a number of + error conditions can happen. This error conditions are sometimes signalled by a returned error + value or by a QDBusError. + + C++ and Java exceptions are a valid analogy for D-Bus errors: instead of returning normally with + a return value, remote applications and the bus may decide to throw an error condition. However, + the QtDBus implementation does not use the C++ exception-throwing mechanism, so you will receive + QDBusErrors in the return reply (see QDBusReply::error()). + + QDBusError objects are used to inspect the error name and message as received from the bus and + remote applications. You should not create such objects yourself to signal error conditions when + called from D-Bus: instead, use QDBusMessage::error and QDBusConnection::send. + + \sa QDBusConnection::send, QDBusMessage, QDBusReply +*/ + +/*! + \internal + Constructs a QDBusError from a DBusError structure. +*/ QDBusError::QDBusError(const DBusError *error) { if (!error || !dbus_error_is_set(error)) @@ -38,6 +62,10 @@ QDBusError::QDBusError(const DBusError *error) msg = QString::fromUtf8(error->message); } +/*! + \internal + Constructs a QDBusError from a QDBusMessage. +*/ QDBusError::QDBusError(const QDBusMessage &qdmsg) { if (qdmsg.type() != QDBusMessage::ErrorMessage) @@ -48,6 +76,31 @@ QDBusError::QDBusError(const QDBusMessage &qdmsg) msg = qdmsg[0].toString(); } +/*! + \fn QDBusError::QDBusError(const QString &name, const QString &message) + \internal + + Constructs an error by passing the name and message. +*/ + +/*! + \fn QDBusError::name() const + Returns this error's name. Error names are similar to D-Bus Interface names, like + "org.freedesktop.DBus.InvalidArgs". +*/ + +/*! + \fn QDBusError::message() const + Returns the message that the callee associated with this error. Error messages are + implementation defined and usually contain a human-readable error code, though this does not + mean it is suitable for your end-users. +*/ + +/*! + \fn QDBusError::isValid() const + Returns true if this is a valid error condition (i.e., if there was an error), false otherwise. +*/ + #ifndef QT_NO_DEBUG QDebug operator<<(QDebug dbg, const QDBusError &msg) { |