diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-05-17 11:13:33 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-05-17 11:13:33 +0000 |
| commit | 7a0d1c1a4ebfb149ff0551282323d9eed02a0266 (patch) | |
| tree | dfd6123dc8c0b568634c13142d76d8c93415d85a /source/QXmppPresence.cpp | |
| parent | fe9e2e5ae4519dc9b5504e5f7ee2f1ca60e9a7a1 (diff) | |
| download | qxmpp-7a0d1c1a4ebfb149ff0551282323d9eed02a0266.tar.gz | |
clean up QXmppPresence::Status public API
Diffstat (limited to 'source/QXmppPresence.cpp')
| -rw-r--r-- | source/QXmppPresence.cpp | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/source/QXmppPresence.cpp b/source/QXmppPresence.cpp index b6bd27fa..e2544c35 100644 --- a/source/QXmppPresence.cpp +++ b/source/QXmppPresence.cpp @@ -70,45 +70,28 @@ void QXmppPresence::parse(const QDomElement &element) QXmppStanza::parse(element); setTypeFromStr(element.attribute("type")); - - QString statusText = element. - firstChildElement("status").text(); - QString show = element. - firstChildElement("show").text(); - int priority = element. - firstChildElement("priority").text().toInt(); - QXmppPresence::Status status; - status.setTypeFromStr(show); - status.setStatusText(statusText); - status.setPriority(priority); - setStatus(status); + m_status.parse(element); QDomElement xElement = element.firstChildElement("x"); if(!xElement.isNull()) setExtensions(QXmppElement(xElement)); } -void QXmppPresence::toXml(QXmlStreamWriter *xmlWriter ) const +void QXmppPresence::toXml(QXmlStreamWriter *xmlWriter) const { - xmlWriter->writeStartElement("presence"); helperToXmlAddAttribute(xmlWriter,"xml:lang", lang()); helperToXmlAddAttribute(xmlWriter,"id", id()); helperToXmlAddAttribute(xmlWriter,"to", to()); helperToXmlAddAttribute(xmlWriter,"from", from()); helperToXmlAddAttribute(xmlWriter,"type", getTypeStr()); + m_status.toXml(xmlWriter); - helperToXmlAddTextElement(xmlWriter,"status", getStatus().getStatusText()); - if(getStatus().getPriority() != 0) - helperToXmlAddNumberElement(xmlWriter,"priority", getStatus().getPriority()); - helperToXmlAddTextElement(xmlWriter,"show", getStatus().getTypeStr()); - error().toXml(xmlWriter); foreach (const QXmppElement &extension, extensions()) extension.toXml(xmlWriter); xmlWriter->writeEndElement(); - } QString QXmppPresence::getTypeStr() const @@ -322,3 +305,18 @@ void QXmppPresence::Status::setPriority(int priority) m_priority = priority; } +void QXmppPresence::Status::parse(const QDomElement &element) +{ + setTypeFromStr(element.firstChildElement("show").text()); + m_statusText = element.firstChildElement("status").text(); + m_priority = element.firstChildElement("priority").text().toInt(); +} + +void QXmppPresence::Status::toXml(QXmlStreamWriter *xmlWriter) const +{ + helperToXmlAddTextElement(xmlWriter, "show", getTypeStr()); + helperToXmlAddTextElement(xmlWriter, "status", m_statusText); + if (m_priority != 0) + helperToXmlAddNumberElement(xmlWriter, "priority", m_priority); +} + |
