From a128ad2833e1444e430270b4f312b5a698053a33 Mon Sep 17 00:00:00 2001 From: Jeremy Lainé Date: Tue, 17 Jul 2012 11:33:24 +0200 Subject: add result-set management to QXmppArchiveIq --- src/base/QXmppArchiveIq.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'src/base/QXmppArchiveIq.cpp') diff --git a/src/base/QXmppArchiveIq.cpp b/src/base/QXmppArchiveIq.cpp index 7de572de..8151ff9c 100644 --- a/src/base/QXmppArchiveIq.cpp +++ b/src/base/QXmppArchiveIq.cpp @@ -111,7 +111,7 @@ void QXmppArchiveChat::parse(const QDomElement &element) } } -void QXmppArchiveChat::toXml(QXmlStreamWriter *writer) const +void QXmppArchiveChat::toXml(QXmlStreamWriter *writer, const QXmppResultSetReply &rsm) const { writer->writeStartElement("chat"); writer->writeAttribute("xmlns", ns_archive); @@ -133,6 +133,8 @@ void QXmppArchiveChat::toXml(QXmlStreamWriter *writer) const writer->writeEndElement(); prevTime = message.date(); } + if (!rsm.isNull()) + rsm.toXml(writer); writer->writeEndElement(); } @@ -234,6 +236,16 @@ void QXmppArchiveChatIq::setChat(const QXmppArchiveChat &chat) m_chat = chat; } +QXmppResultSetReply QXmppArchiveChatIq::resultSetReply() const +{ + return m_rsmReply; +} + +void QXmppArchiveChatIq::setResultSetReply(const QXmppResultSetReply& rsm) +{ + m_rsmReply = rsm; +} + bool QXmppArchiveChatIq::isArchiveChatIq(const QDomElement &element) { QDomElement chatElement = element.firstChildElement("chat"); @@ -243,12 +255,14 @@ bool QXmppArchiveChatIq::isArchiveChatIq(const QDomElement &element) void QXmppArchiveChatIq::parseElementFromChild(const QDomElement &element) { - m_chat.parse(element.firstChildElement("chat")); + QDomElement chatElement = element.firstChildElement("chat"); + m_chat.parse(chatElement); + m_rsmReply.parse(chatElement); } void QXmppArchiveChatIq::toXmlElementFromChild(QXmlStreamWriter *writer) const { - m_chat.toXml(writer); + m_chat.toXml(writer, m_rsmReply); } /// Constructs a QXmppArchiveListIq. -- cgit v1.2.3