diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-06-04 13:40:30 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-06-04 13:40:30 +0000 |
| commit | a64de45ea1daec3a791c1e07f6b3381c0f6d5a97 (patch) | |
| tree | 5f287a670204b527baed89a56ffd0e72ea9eb102 /source | |
| parent | e155e5658c178bea1c01ea70f4d04539a71b9f0a (diff) | |
| download | qxmpp-a64de45ea1daec3a791c1e07f6b3381c0f6d5a97.tar.gz | |
transfer logger ownership to QXmppStream
Diffstat (limited to 'source')
| -rw-r--r-- | source/QXmppClient.cpp | 11 | ||||
| -rw-r--r-- | source/QXmppClient.h | 1 | ||||
| -rw-r--r-- | source/QXmppStream.cpp | 27 | ||||
| -rw-r--r-- | source/QXmppStream.h | 5 |
4 files changed, 33 insertions, 11 deletions
diff --git a/source/QXmppClient.cpp b/source/QXmppClient.cpp index 1ac82e9d..4a99d1a3 100644 --- a/source/QXmppClient.cpp +++ b/source/QXmppClient.cpp @@ -41,10 +41,9 @@ /// The default value is 0. QXmppClient::QXmppClient(QObject *parent) - : QObject(parent), m_logger(0), m_stream(0), m_clientPresence(QXmppPresence::Available), + : QObject(parent), m_stream(0), m_clientPresence(QXmppPresence::Available), m_reconnectionManager(0) { - m_logger = QXmppLogger::getLogger(); m_stream = new QXmppStream(this); bool check = connect(m_stream, SIGNAL(messageReceived(const QXmppMessage&)), @@ -548,16 +547,18 @@ bool QXmppClient::handleStreamElement(const QDomElement &element) return false; } -/// Return the QXmppLogger associated with the client. +/// Returns the QXmppLogger associated with the current QXmppClient. QXmppLogger *QXmppClient::logger() { - return m_logger; + return m_stream->logger(); } +/// Sets the QXmppLogger associated with the current QXmppClient. + void QXmppClient::setLogger(QXmppLogger *logger) { - m_logger = logger; + m_stream->setLogger(logger); } /// At connection establishment, send initial presence. diff --git a/source/QXmppClient.h b/source/QXmppClient.h index dff4fbfa..b418a2c5 100644 --- a/source/QXmppClient.h +++ b/source/QXmppClient.h @@ -203,7 +203,6 @@ private slots: void xmppConnected(); private: - QXmppLogger* m_logger; QXmppStream* m_stream; ///< Pointer to QXmppStream object a wrapper over ///< TCP socket and XMPP protocol QXmppConfiguration m_config; ///< This object provides the configuration diff --git a/source/QXmppStream.cpp b/source/QXmppStream.cpp index aabf722b..31735fc9 100644 --- a/source/QXmppStream.cpp +++ b/source/QXmppStream.cpp @@ -69,6 +69,9 @@ QXmppStream::QXmppStream(QXmppClient* client) // Make sure the random number generator is seeded qsrand(QTime(0,0,0).secsTo(QTime::currentTime())); + // initialise logger + m_logger = QXmppLogger::getLogger(); + bool check = QObject::connect(&m_socket, SIGNAL(hostFound()), this, SLOT(socketHostFound())); Q_ASSERT(check); @@ -220,19 +223,33 @@ void QXmppStream::sendNonSASLAuthQuery( const QString &to ) sendPacket(authQuery); } +/// Returns the QXmppLogger associated with the current QXmppStream. + +QXmppLogger *QXmppStream::logger() +{ + return m_logger; +} + +/// Sets the QXmppLogger associated with the current QXmppStream. + +void QXmppStream::setLogger(QXmppLogger *logger) +{ + m_logger = logger; +} + void QXmppStream::debug(const QString &data) { - m_client->logger()->log(QXmppLogger::DebugMessage, data); + m_logger->log(QXmppLogger::DebugMessage, data); } void QXmppStream::info(const QString &data) { - m_client->logger()->log(QXmppLogger::InformationMessage, data); + m_logger->log(QXmppLogger::InformationMessage, data); } void QXmppStream::warning(const QString &data) { - m_client->logger()->log(QXmppLogger::WarningMessage, data); + m_logger->log(QXmppLogger::WarningMessage, data); } void QXmppStream::parser(const QByteArray& data) @@ -257,7 +274,7 @@ void QXmppStream::parser(const QByteArray& data) if(doc.setContent(completeXml, true)) { - m_client->logger()->log(QXmppLogger::ReceivedMessage, QString::fromUtf8(m_dataBuffer)); + m_logger->log(QXmppLogger::ReceivedMessage, QString::fromUtf8(m_dataBuffer)); flushDataBuffer(); QDomElement nodeRecv = doc.documentElement().firstChildElement(); @@ -744,7 +761,7 @@ void QXmppStream::sendStartStream() bool QXmppStream::sendToServer(const QByteArray& packet) { - m_client->logger()->log(QXmppLogger::SentMessage, QString::fromUtf8(packet)); + m_logger->log(QXmppLogger::SentMessage, QString::fromUtf8(packet)); if (!isConnected()) return false; return m_socket.write( packet ) == packet.size(); diff --git a/source/QXmppStream.h b/source/QXmppStream.h index 87f8dfa7..52e82155 100644 --- a/source/QXmppStream.h +++ b/source/QXmppStream.h @@ -37,6 +37,7 @@ class QTimer; class QXmppClient; class QXmppPacket; +class QXmppLogger; class QXmppPresence; class QXmppIq; class QXmppBind; @@ -72,6 +73,9 @@ public: QXmppConfiguration& getConfiguration(); + QXmppLogger *logger(); + void setLogger(QXmppLogger *logger); + signals: // socket host found void hostFound(); @@ -124,6 +128,7 @@ private slots: private: QXmppClient* m_client; // reverse pointer + QXmppLogger* m_logger; QString m_sessionId; QString m_bindId; QByteArray m_dataBuffer; |
