00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef QXMPPRECONNECTIONMANAGER_H
00026 #define QXMPPRECONNECTIONMANAGER_H
00027
00028 #include <QObject>
00029 #include <QTimer>
00030 #include "QXmppClient.h"
00031
00032 class QXmppReconnectionManager : public QObject
00033 {
00034 Q_OBJECT
00035
00036 public:
00037 QXmppReconnectionManager(QXmppClient* client);
00038
00039 signals:
00040 void reconnectingIn(int);
00041 void reconnectingNow();
00042
00043 public slots:
00044 void cancelReconnection();
00045
00046 private slots:
00047 void connected();
00048 void error(QXmppClient::Error);
00049 void reconnect();
00050
00051 private:
00052 int getNextReconnectingInTime();
00053 bool m_receivedConflict;
00054 int m_reconnectionTries;
00055 QTimer m_timer;
00056
00057
00058 QXmppClient* m_client;
00059 };
00060
00061 #endif // QXMPPRECONNECTIONMANAGER_H