diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-06-04 11:14:31 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-06-04 11:14:31 +0000 |
| commit | 5c6987abb84d79be8aeb9b57017c2d439921d83f (patch) | |
| tree | 07635e773bb07934b79914923bd16beb3604cf57 | |
| parent | 15cfbf59be4a2a8f3930a99ba9d1fadc7a3b10c4 (diff) | |
| download | qxmpp-5c6987abb84d79be8aeb9b57017c2d439921d83f.tar.gz | |
sending the initial presence is QXmppClient's responsability, not QXmppStream
| -rw-r--r-- | source/QXmppClient.cpp | 11 | ||||
| -rw-r--r-- | source/QXmppClient.h | 3 | ||||
| -rw-r--r-- | source/QXmppStream.cpp | 8 | ||||
| -rw-r--r-- | source/QXmppStream.h | 1 |
4 files changed, 14 insertions, 9 deletions
diff --git a/source/QXmppClient.cpp b/source/QXmppClient.cpp index fe6a80dc..13c89d21 100644 --- a/source/QXmppClient.cpp +++ b/source/QXmppClient.cpp @@ -65,6 +65,10 @@ QXmppClient::QXmppClient(QObject *parent) Q_ASSERT(check); check = connect(m_stream, SIGNAL(xmppConnected()), this, + SLOT(xmppConnected())); + Q_ASSERT(check); + + check = connect(m_stream, SIGNAL(xmppConnected()), this, SIGNAL(connected())); Q_ASSERT(check); @@ -548,3 +552,10 @@ void QXmppClient::setLogger(QXmppLogger *logger) m_logger = logger; } +/// At connection establishment, send initial presence. + +void QXmppClient::xmppConnected() +{ + sendPacket(m_clientPresence); +} + diff --git a/source/QXmppClient.h b/source/QXmppClient.h index 40ceba62..6f52e4ca 100644 --- a/source/QXmppClient.h +++ b/source/QXmppClient.h @@ -198,6 +198,9 @@ public slots: void setClientPresence(QXmppPresence::Type presenceType); void setClientPresence(QXmppPresence::Status::Type statusType); +private slots: + void xmppConnected(); + private: QXmppLogger* m_logger; QXmppStream* m_stream; ///< Pointer to QXmppStream object a wrapper over diff --git a/source/QXmppStream.cpp b/source/QXmppStream.cpp index 77ba86c1..67d46acf 100644 --- a/source/QXmppStream.cpp +++ b/source/QXmppStream.cpp @@ -536,7 +536,6 @@ void QXmppStream::parser(const QByteArray& data) emit xmppConnected(); sendRosterRequest(); - sendInitialPresence(); QXmppBind session(type); session.setId(id); @@ -636,7 +635,6 @@ void QXmppStream::parser(const QByteArray& data) emit xmppConnected(); sendRosterRequest(); - sendInitialPresence(); } else if(nodeRecv.firstChildElement("query"). namespaceURI() == ns_auth) @@ -978,12 +976,6 @@ void QXmppStream::sendSessionIQ() sendPacket(session); } -void QXmppStream::sendInitialPresence() -{ - if(m_client) - sendPacket(m_client->getClientPresence()); -} - void QXmppStream::acceptSubscriptionRequest(const QString& from, bool accept) { QXmppPresence presence; diff --git a/source/QXmppStream.h b/source/QXmppStream.h index 089c190f..c2aaede0 100644 --- a/source/QXmppStream.h +++ b/source/QXmppStream.h @@ -165,7 +165,6 @@ private: void sendAuthDigestMD5ResponseStep2(); void sendBindIQ(); void sendSessionIQ(); - void sendInitialPresence(); void sendRosterRequest(); bool sendToServer(const QByteArray&); bool hasStartStreamElement(const QByteArray&); |
