aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppStreamFeatures.cpp
diff options
context:
space:
mode:
authorMelvin Keskin <melvo@olomono.de>2019-06-25 12:09:27 +0200
committerLNJ <lnj@kaidan.im>2019-09-06 19:53:01 +0200
commitfae818fdc89364515a86ef1cc1d1aa449372f281 (patch)
tree91ad3f8a0ab3027dc1321cceffaeea339fdce3b7 /src/base/QXmppStreamFeatures.cpp
parent8ab56c2cf1ff490b78def3f9799d4b8a99965d47 (diff)
Add register stream feature
This adds parsing, serialization and a test for the 'register' stream feature of XEP-0077: In-Band Registration. Co-authored-by: Linus Jahn <lnj@kaidan.im>
Diffstat (limited to 'src/base/QXmppStreamFeatures.cpp')
-rw-r--r--src/base/QXmppStreamFeatures.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/base/QXmppStreamFeatures.cpp b/src/base/QXmppStreamFeatures.cpp
index 214cbd9f..8079962a 100644
--- a/src/base/QXmppStreamFeatures.cpp
+++ b/src/base/QXmppStreamFeatures.cpp
@@ -116,6 +116,16 @@ void QXmppStreamFeatures::setClientStateIndicationMode(QXmppStreamFeatures::Mode
m_csiMode = mode;
}
+QXmppStreamFeatures::Mode QXmppStreamFeatures::registerMode() const
+{
+ return m_registerMode;
+}
+
+void QXmppStreamFeatures::setRegisterMode(const QXmppStreamFeatures::Mode &registerMode)
+{
+ m_registerMode = registerMode;
+}
+
/// \cond
bool QXmppStreamFeatures::isStreamFeatures(const QDomElement &element)
{
@@ -148,6 +158,7 @@ void QXmppStreamFeatures::parse(const QDomElement &element)
m_tlsMode = readFeature(element, "starttls", ns_tls);
m_streamManagementMode = readFeature(element, "sm", ns_stream_management);
m_csiMode = readFeature(element, "csi", ns_csi);
+ m_registerMode = readFeature(element, "register", ns_register_feature);
// parse advertised compression methods
QDomElement compression = element.firstChildElement("compression");
@@ -194,6 +205,7 @@ void QXmppStreamFeatures::toXml(QXmlStreamWriter *writer) const
writeFeature(writer, "starttls", ns_tls, m_tlsMode);
writeFeature(writer, "sm", ns_stream_management, m_streamManagementMode);
writeFeature(writer, "csi", ns_csi, m_csiMode);
+ writeFeature(writer, "register", ns_register_feature, m_registerMode);
if (!m_compressionMethods.isEmpty())
{