QXmlRPC  1.1
client.h
1 // vim:tabstop=4:shiftwidth=4:expandtab:cinoptions=(s,U1,m1
2 // Copyright (C) 2009 Dmytro Poplavskiy <dmitry.poplavsky@gmail.com>
3 
4 #ifndef CLIENT_H
5 #define CLIENT_H
6 
7 #include <qobject.h>
8 #include <QHttp>
9 
10 #include "variant.h"
11 class QAuthenticator;
12 
13 namespace xmlrpc {
14 
43 class Client : public QObject {
44 Q_OBJECT
45 public:
46  Client(QObject * parent = 0);
47  Client(const QString & hostname, quint16 port = 80, QObject * parent = 0L);
48 
49  void setHost ( const QString & hostname, quint16 port = 80, QString path="/" );
50  void setProxy ( const QString & host, int port,
51  const QString & username = QString(), const QString & password = QString() );
52  void setSocket ( QTcpSocket * socket );
53  void setUser ( const QString & userName, const QString & password = QString() );
54 
55  void setUserAgent( const QString & userAgent );
56 
57  virtual ~Client();
58 
59  int request( QList<Variant> params, QString methodName );
60 
61  /* overloaded methods */
62  int request( QString methodName );
63  int request( QString methodName, Variant param1 );
64  int request( QString methodName, Variant param1, Variant param2 );
65  int request( QString methodName, Variant param1, Variant param2, Variant param3 );
66  int request( QString methodName, Variant param1, Variant param2, Variant param3, Variant param4 );
67 
68 signals:
70  void done( int requestId, QVariant res );
72  void failed( int requestId, int faultCode, QString faultString );
73 
75  void authenticationRequired ( const QString & hostname, quint16 port, QAuthenticator * );
76 
78  void proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *);
79 
80 protected slots:
81  void requestFinished(int id, bool error);
82 
83 private:
84  class Private;
85  Private *d;
86 };
87 
88 } // namespace
89 
90 #endif // CLIENT_H
91 
92 
void failed(int requestId, int faultCode, QString faultString)
request requestId is failed with fault code faultCode and fault description faultString ...
The xmlrpc::Client class provides an implementation of the XML-RPC client.
Definition: client.h:43
virtual ~Client()
Definition: client.cpp:77
void setUser(const QString &userName, const QString &password=QString())
Definition: client.cpp:132
void setUserAgent(const QString &userAgent)
Definition: client.cpp:142
void setSocket(QTcpSocket *socket)
Definition: client.cpp:123
Client(QObject *parent=0)
Definition: client.cpp:40
void setProxy(const QString &host, int port, const QString &username=QString(), const QString &password=QString())
Definition: client.cpp:104
Definition: client.cpp:15
void proxyAuthenticationRequired(const QNetworkProxy &, QAuthenticator *)
proxyAuthenticationRequired signal passed from QHttp
void setHost(const QString &hostname, quint16 port=80, QString path="/")
Definition: client.cpp:91
The xmlrpc::Variant class acts like a union for XML-RPC variables types.
Definition: variant.h:24
void authenticationRequired(const QString &hostname, quint16 port, QAuthenticator *)
authenticationRequired signal passed from QHttp
void done(int requestId, QVariant res)
request requestId is done with return value res
int request(QList< Variant > params, QString methodName)
Definition: client.cpp:167