diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-12-10 16:20:17 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-12-10 16:20:17 +0000 |
| commit | 71789caae022b638fc4cf3627be466004f17afe6 (patch) | |
| tree | 7124141c099dacfc4d7dda8137c6a5b58761a9b8 /src/QXmppRpcManager.h | |
| parent | b4cf1c29e384cf98fe665b33f143dfc7f41d7bcf (diff) | |
| download | qxmpp-71789caae022b638fc4cf3627be466004f17afe6.tar.gz | |
add some RPC code which just barely compiles
Diffstat (limited to 'src/QXmppRpcManager.h')
| -rw-r--r-- | src/QXmppRpcManager.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/QXmppRpcManager.h b/src/QXmppRpcManager.h index cd84ef1b..c6d0a167 100644 --- a/src/QXmppRpcManager.h +++ b/src/QXmppRpcManager.h @@ -24,8 +24,15 @@ #ifndef QXMPPRPCMANAGER_H #define QXMPPRPCMANAGER_H +#include <QMap> +#include <QVariant> + #include "QXmppClientExtension.h" +class QXmppInvokable; +class QXmppRemoteMethodResult; +class QXmppRpcInvokeIq; + class QXmppRpcManager : public QXmppClientExtension { Q_OBJECT @@ -33,10 +40,30 @@ class QXmppRpcManager : public QXmppClientExtension public: QXmppRpcManager(); + void addInvokableInterface( QXmppInvokable *interface ); + QXmppRemoteMethodResult callRemoteMethod( const QString &jid, + const QString &interface, + const QVariant &arg1 = QVariant(), + const QVariant &arg2 = QVariant(), + const QVariant &arg3 = QVariant(), + const QVariant &arg4 = QVariant(), + const QVariant &arg5 = QVariant(), + const QVariant &arg6 = QVariant(), + const QVariant &arg7 = QVariant(), + const QVariant &arg8 = QVariant(), + const QVariant &arg9 = QVariant(), + const QVariant &arg10 = QVariant() ); + /// \cond QStringList discoveryFeatures() const; bool handleStanza(const QDomElement &element); /// \endcond + +private slots: + void invokeInterfaceMethod(const QXmppRpcInvokeIq &iq); + +private: + QMap<QString,QXmppInvokable*> m_interfaces; }; #endif |
