5#ifndef QDBUSPENDINGCALL_H
6#define QDBUSPENDINGCALL_H
8#include <QtDBus/qtdbusglobal.h>
9#include <QtDBus/qdbusmessage.h>
10#include <QtCore/qobject.h>
11#include <QtCore/qshareddata.h>
15class tst_QDBusPendingReply;
22class QDBusPendingCallWatcher;
26QT_DECLARE_QESDP_SPECIALIZATION_DTOR(QDBusPendingCallPrivate)
31 QDBusPendingCall(
const QDBusPendingCall &other);
32 QDBusPendingCall(QDBusPendingCall &&other)
noexcept =
default;
34 QDBusPendingCall &operator=(QDBusPendingCall &&other)
noexcept { swap(other);
return *
this; }
35 QDBusPendingCall &operator=(
const QDBusPendingCall &other);
37 void swap(QDBusPendingCall &other)
noexcept { d.swap(other.d); }
41 bool isFinished()
const;
42 void waitForFinished();
46 QDBusError error()
const;
47 QDBusMessage reply()
const;
50 static QDBusPendingCall fromError(
const QDBusError &error);
51 static QDBusPendingCall fromCompletedCall(
const QDBusMessage &message);
54 QExplicitlySharedDataPointer<QDBusPendingCallPrivate> d;
55 friend class QDBusPendingCallPrivate;
56 friend class QDBusPendingCallWatcher;
57 friend class QDBusConnection;
59 QDBusPendingCall(QDBusPendingCallPrivate *dd);
64 friend class ::tst_QDBusPendingReply;
73 explicit QDBusPendingCallWatcher(
const QDBusPendingCall &call, QObject *parent =
nullptr);
74 ~QDBusPendingCallWatcher();
78 bool isFinished()
const;
80 void waitForFinished();
83 void finished(QDBusPendingCallWatcher *self =
nullptr);
bool interactiveAuthorizationAllowed
static void finishDisconnectNotify(QDBusAbstractInterface *iface, int signalId)
QDBusAbstractInterfacePrivate(const QString &serv, const QString &p, const QString &iface, const QDBusConnection &con, bool dynamic)
bool setProperty(const QMetaProperty &mp, const QVariant &value)
QDBusConnectionPrivate * connectionPrivate() const
bool property(const QMetaProperty &mp, void *returnValuePtr) const
bool canMakeCalls() const
virtual ~QDBusAbstractInterfacePrivate()
void _q_serviceOwnerChanged(const QString &name, const QString &oldOwner, const QString &newOwner)
static void setParametersValidated(QDBusMessage &msg, bool enable)
#define DBUS_INTERFACE_PROPERTIES
static QDBusError checkIfValid(const QString &service, const QString &path, const QString &interface, bool isDynamic, bool isPeer)
#define qPrintable(string)
#define QStringLiteral(str)