summaryrefslogtreecommitdiffstats
path: root/qt/qdbuserror.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qt/qdbuserror.cpp')
-rw-r--r--qt/qdbuserror.cpp53
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)
{