diff options
Diffstat (limited to 'Swiften/Serializer/StreamFeaturesSerializer.cpp')
m--------- | Swiften | 0 | ||||
-rw-r--r-- | Swiften/Serializer/StreamFeaturesSerializer.cpp | 46 |
2 files changed, 0 insertions, 46 deletions
diff --git a/Swiften b/Swiften new file mode 160000 +Subproject 8213ba16d0043d2461f4b031c881d61dda5a38c diff --git a/Swiften/Serializer/StreamFeaturesSerializer.cpp b/Swiften/Serializer/StreamFeaturesSerializer.cpp deleted file mode 100644 index 49e62c4..0000000 --- a/Swiften/Serializer/StreamFeaturesSerializer.cpp +++ /dev/null @@ -1,46 +0,0 @@ -#include "Swiften/Serializer/StreamFeaturesSerializer.h" - -#include "Swiften/Serializer/XML/XMLElement.h" -#include "Swiften/Serializer/XML/XMLTextNode.h" -#include "Swiften/Base/foreach.h" - -namespace Swift { - -StreamFeaturesSerializer::StreamFeaturesSerializer() { -} - -String StreamFeaturesSerializer::serialize(boost::shared_ptr<Element> element) const { - boost::shared_ptr<StreamFeatures> streamFeatures(boost::dynamic_pointer_cast<StreamFeatures>(element)); - - XMLElement streamFeaturesElement("stream:features"); - if (streamFeatures->hasStartTLS()) { - streamFeaturesElement.addNode(boost::shared_ptr<XMLElement>(new XMLElement("starttls", "urn:ietf:params:xml:ns:xmpp-tls"))); - } - if (!streamFeatures->getCompressionMethods().empty()) { - boost::shared_ptr<XMLElement> compressionElement(new XMLElement("compression", "http://jabber.org/features/compress")); - foreach(const String& method, streamFeatures->getCompressionMethods()) { - boost::shared_ptr<XMLElement> methodElement(new XMLElement("method")); - methodElement->addNode(boost::shared_ptr<XMLTextNode>(new XMLTextNode(method))); - compressionElement->addNode(methodElement); - } - streamFeaturesElement.addNode(compressionElement); - } - if (!streamFeatures->getAuthenticationMechanisms().empty()) { - boost::shared_ptr<XMLElement> mechanismsElement(new XMLElement("mechanisms", "urn:ietf:params:xml:ns:xmpp-sasl")); - foreach(const String& mechanism, streamFeatures->getAuthenticationMechanisms()) { - boost::shared_ptr<XMLElement> mechanismElement(new XMLElement("mechanism")); - mechanismElement->addNode(boost::shared_ptr<XMLTextNode>(new XMLTextNode(mechanism))); - mechanismsElement->addNode(mechanismElement); - } - streamFeaturesElement.addNode(mechanismsElement); - } - if (streamFeatures->hasResourceBind()) { - streamFeaturesElement.addNode(boost::shared_ptr<XMLElement>(new XMLElement("bind", "urn:ietf:params:xml:ns:xmpp-bind"))); - } - if (streamFeatures->hasSession()) { - streamFeaturesElement.addNode(boost::shared_ptr<XMLElement>(new XMLElement("session", "urn:ietf:params:xml:ns:xmpp-session"))); - } - return streamFeaturesElement.serialize(); -} - -} |