diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-08-11 07:31:23 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-08-11 07:31:23 +0000 |
| commit | 40c39853816cfab113d79682c34bc76a2c79c357 (patch) | |
| tree | e4d6a184cf565cb87477339ce738299ff9787bc3 /source/QXmppRemoteMethod.cpp | |
| parent | 551c284e35280b7b91a939fe7352e496ffea402a (diff) | |
| download | qxmpp-40c39853816cfab113d79682c34bc76a2c79c357.tar.gz | |
rename "source" directory to "src"
Diffstat (limited to 'source/QXmppRemoteMethod.cpp')
| -rw-r--r-- | source/QXmppRemoteMethod.cpp | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/source/QXmppRemoteMethod.cpp b/source/QXmppRemoteMethod.cpp deleted file mode 100644 index b92b2bdc..00000000 --- a/source/QXmppRemoteMethod.cpp +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (C) 2008-2010 The QXmpp developers - * - * Authors: - * Ian Reinhard Geiser - * - * Source: - * http://code.google.com/p/qxmpp - * - * This file is a part of QXmpp library. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - */ - -#include "QXmppRemoteMethod.h" -#include "QXmppClient.h" -#include "QXmppUtils.h" -#include "QXmppConfiguration.h" - -#include <QEventLoop> -#include <QTimer> -#include <qdebug.h> - -QXmppRemoteMethod::QXmppRemoteMethod(const QString &jid, const QString &method, const QVariantList &args, QXmppClient *client) : - QObject(client), m_client(client) -{ - m_payload.setTo( jid ); - m_payload.setFrom( client->configuration().jid() ); - m_payload.setMethod( method ); - m_payload.setArguments( args ); -} - -QXmppRemoteMethodResult QXmppRemoteMethod::call( ) -{ - QEventLoop loop(this); - connect( this, SIGNAL(callDone()), &loop, SLOT(quit())); - QTimer::singleShot(30000,&loop, SLOT(quit())); // Timeout incase the other end hangs... - - m_client->sendPacket( m_payload ); - - loop.exec( QEventLoop::ExcludeUserInputEvents | QEventLoop::WaitForMoreEvents ); - return m_result; -} - -void QXmppRemoteMethod::gotError( const QXmppRpcErrorIq &iq ) -{ - if ( iq.id() == m_payload.id() ) - { - m_result.hasError = true; - m_result.errorMessage = iq.error().text(); - m_result.code = iq.error().type(); - emit callDone(); - } -} - -void QXmppRemoteMethod::gotResult( const QXmppRpcResponseIq &iq ) -{ - if ( iq.id() == m_payload.id() ) - { - m_result.hasError = false; - // FIXME: we don't handle multiple responses - m_result.result = iq.values().first(); - emit callDone(); - } -} |
