QAMQP
amqp_connection.h
1 #ifndef amqp_connection_h__
2 #define amqp_connection_h__
3 
4 #include <QObject>
5 #include "amqp_frame.h"
6 #include "amqp_global.h"
7 
8 namespace QAMQP
9 {
10  class ConnectionPrivate;
11  class ChannelPrivate;
12  class ClientPrivate;
13  class Client;
14  class Connection : public QObject
15  {
16  Q_OBJECT
17  P_DECLARE_PRIVATE(QAMQP::Connection)
18  Q_DISABLE_COPY(Connection)
19  Connection(Client * parent = 0);
20  public:
21  ~Connection();
22 
23 
24  void addCustomProperty(const QString & name, const QString & value);
25  QString customProperty(const QString & name) const;
26 
27  void startOk();
28  void secureOk();
29  void tuneOk();
30  void open();
31  void close(int code, const QString & text, int classId = 0, int methodId = 0);
32  void closeOk();
33 
34  bool isConnected() const;
35 
36  void setQOS(qint32 prefetchSize, quint16 prefetchCount);
37 
38  Q_SIGNALS:
39  void disconnected();
40  void connected();
41  protected:
42  ConnectionPrivate * const pd_ptr;
43 
44  private:
45  void openOk();
46  friend class ClientPrivate;
47  friend class ChannelPrivate;
48  Q_PRIVATE_SLOT(pd_func(), void _q_method(const QAMQP::Frame::Method & frame))
49  };
50 }
51 
52 // Include private header so MOC won't complain
53 #ifdef QAMQP_P_INCLUDE
54 # include "amqp_connection_p.h"
55 #endif
56 
57 #endif // amqp_connection_h__