diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-06-23 11:37:08 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-06-23 11:37:08 +0000 |
| commit | c519dcec0915d0d22e8c5e4e40e6b61bc72d5979 (patch) | |
| tree | 029c23d910f3be7cb68808c4064469c00c2e0425 /source/QXmppStream.cpp | |
| parent | 9ed3b3203d9b9fe195f51602717d726e0dcab7c3 (diff) | |
| download | qxmpp-c519dcec0915d0d22e8c5e4e40e6b61bc72d5979.tar.gz | |
tidy up QXmppStream logging so that we can set a null logger
Diffstat (limited to 'source/QXmppStream.cpp')
| -rw-r--r-- | source/QXmppStream.cpp | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/source/QXmppStream.cpp b/source/QXmppStream.cpp index ea137959..a46130ca 100644 --- a/source/QXmppStream.cpp +++ b/source/QXmppStream.cpp @@ -61,6 +61,7 @@ static const QByteArray streamRootElementEnd = "</stream:stream>"; QXmppStream::QXmppStream(QObject *parent) : QObject(parent), + m_logger(0), m_sessionAvailable(false), m_authStep(0) { @@ -68,7 +69,7 @@ QXmppStream::QXmppStream(QObject *parent) qsrand(QTime(0,0,0).secsTo(QTime::currentTime())); // initialise logger - m_logger = QXmppLogger::getLogger(); + setLogger(QXmppLogger::getLogger()); bool check = QObject::connect(&m_socket, SIGNAL(hostFound()), this, SLOT(socketHostFound())); @@ -205,22 +206,28 @@ QXmppLogger *QXmppStream::logger() void QXmppStream::setLogger(QXmppLogger *logger) { + if (m_logger) + QObject::disconnect(this, SIGNAL(logMessage(QXmppLogger::MessageType, QString)), + m_logger, SLOT(log(QXmppLogger::MessageType, QString))); m_logger = logger; + if (m_logger) + QObject::connect(this, SIGNAL(logMessage(QXmppLogger::MessageType, QString)), + m_logger, SLOT(log(QXmppLogger::MessageType, QString))); } void QXmppStream::debug(const QString &data) { - m_logger->log(QXmppLogger::DebugMessage, data); + emit logMessage(QXmppLogger::DebugMessage, data); } void QXmppStream::info(const QString &data) { - m_logger->log(QXmppLogger::InformationMessage, data); + emit logMessage(QXmppLogger::InformationMessage, data); } void QXmppStream::warning(const QString &data) { - m_logger->log(QXmppLogger::WarningMessage, data); + emit logMessage(QXmppLogger::WarningMessage, data); } void QXmppStream::parser(const QByteArray& data) @@ -245,7 +252,7 @@ void QXmppStream::parser(const QByteArray& data) if(doc.setContent(completeXml, true)) { - m_logger->log(QXmppLogger::ReceivedMessage, QString::fromUtf8(m_dataBuffer)); + emit logMessage(QXmppLogger::ReceivedMessage, QString::fromUtf8(m_dataBuffer)); flushDataBuffer(); QDomElement nodeRecv = doc.documentElement().firstChildElement(); @@ -750,7 +757,7 @@ void QXmppStream::sendStartStream() bool QXmppStream::sendToServer(const QByteArray& packet) { - m_logger->log(QXmppLogger::SentMessage, QString::fromUtf8(packet)); + emit logMessage(QXmppLogger::SentMessage, QString::fromUtf8(packet)); if (!isConnected()) return false; return m_socket.write( packet ) == packet.size(); |
