QString MyObject::methodWithDelayedReply() { conn = connection(); msg = message(); setDelayedReply(true); QMetaObject::invokeMethod(this, "process", Qt::QueuedConnection); return QString(); }
void QBluetoothLocalDevicePrivate::RequestConfirmation(const QDBusObjectPath &in0, uint in1) { Q_UNUSED(in0); Q_Q(QBluetoothLocalDevice); setDelayedReply(true); msgConfirmation = message(); msgConnection = new QDBusConnection(connection()); emit q->pairingDisplayConfirmation(address, QString::fromLatin1("%1").arg(in1)); return; }
VariantMapList CollectionDBusHandler::MprisQuery( const QString &xmlQuery ) { if( !calledFromDBus() ) return VariantMapList(); Collections::QueryMaker* qm = XmlQueryReader::getQueryMaker( xmlQuery, XmlQueryReader::IgnoreReturnValues ); //probably invalid XML if( !qm ) { debug() << "Invalid XML query: " << xmlQuery; sendErrorReply( QDBusError::InvalidArgs, "Invalid XML: " + xmlQuery ); return VariantMapList(); } setDelayedReply( true ); new DBusQueryHelper( this, qm, connection(), message(), true ); return VariantMapList(); }
/*! \overload Sends an error \a type as a reply to the caller. The optional \a msg parameter is a human-readable text explaining the failure. If an error is sent, the return value and any output parameters from the called slot will be ignored by QtDBus. */ void QDBusContext::sendErrorReply(QDBusError::ErrorType type, const QString &msg) const { setDelayedReply(true); connection().send(message().createErrorReply(type, msg)); }