aboutsummaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2012-07-20 14:17:40 +0200
committerJeremy Lainé <jeremy.laine@m4x.org>2012-07-20 14:17:40 +0200
commit8377415d954fde92a10dfd2a428b724ef4e7991d (patch)
treebbc9f0e18de92b09ccaf230e880da710eae7dba9 /src/base
parentf355e899fe539e9f743efe0118d69a7348fa3d52 (diff)
downloadqxmpp-8377415d954fde92a10dfd2a428b724ef4e7991d.tar.gz
use QXmppSaslFailure
Diffstat (limited to 'src/base')
-rw-r--r--src/base/QXmppSaslAuth.cpp32
-rw-r--r--src/base/QXmppSaslAuth_p.h19
2 files changed, 49 insertions, 2 deletions
diff --git a/src/base/QXmppSaslAuth.cpp b/src/base/QXmppSaslAuth.cpp
index d651fad8..ddec1e0d 100644
--- a/src/base/QXmppSaslAuth.cpp
+++ b/src/base/QXmppSaslAuth.cpp
@@ -72,8 +72,38 @@ QXmppSaslChallenge::QXmppSaslChallenge(const QByteArray &value)
{
}
-QXmppSaslFailure::QXmppSaslFailure()
+QXmppSaslFailure::QXmppSaslFailure(const QString &condition)
: QXmppSaslStanza("failure")
+ , m_condition(condition)
+{
+}
+
+QString QXmppSaslFailure::condition() const
+{
+ return m_condition;
+}
+
+void QXmppSaslFailure::setCondition(const QString &condition)
+{
+ m_condition = condition;
+}
+
+void QXmppSaslFailure::parse(const QDomElement &element)
+{
+ m_condition = element.firstChildElement().tagName();
+}
+
+void QXmppSaslFailure::toXml(QXmlStreamWriter *writer) const
+{
+ writer->writeStartElement("failure");
+ writer->writeAttribute("xmlns", ns_xmpp_sasl);
+ if (!m_condition.isEmpty())
+ writer->writeEmptyElement(m_condition);
+ writer->writeEndElement();
+}
+
+QXmppSaslResponse::QXmppSaslResponse(const QByteArray &value)
+ : QXmppSaslStanza("response", value)
{
}
diff --git a/src/base/QXmppSaslAuth_p.h b/src/base/QXmppSaslAuth_p.h
index 87b6dc36..67480ddb 100644
--- a/src/base/QXmppSaslAuth_p.h
+++ b/src/base/QXmppSaslAuth_p.h
@@ -85,7 +85,24 @@ public:
class QXmppSaslFailure : public QXmppSaslStanza
{
public:
- QXmppSaslFailure();
+ QXmppSaslFailure(const QString &condition = QString());
+
+ QString condition() const;
+ void setCondition(const QString &condition);
+
+ /// \cond
+ void parse(const QDomElement &element);
+ void toXml(QXmlStreamWriter *writer) const;
+ /// \endcond
+
+private:
+ QString m_condition;
+};
+
+class QXmppSaslResponse : public QXmppSaslStanza
+{
+public:
+ QXmppSaslResponse(const QByteArray &value = QByteArray());
};
class QXmppSaslSuccess : public QXmppSaslStanza