diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-03-28 13:40:14 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-03-28 13:40:43 (GMT) |
commit | b61486fefe602e0d18fa5279021006f87b965307 (patch) | |
tree | 437585cbef1179e1ec31f79789591d5610200c29 /Swiften/Serializer/XMPPSerializer.cpp | |
parent | dae28dd45e43fc6e6ef2ec4c6c65d5d736ed86f8 (diff) | |
download | swift-contrib-b61486fefe602e0d18fa5279021006f87b965307.zip swift-contrib-b61486fefe602e0d18fa5279021006f87b965307.tar.bz2 |
Moved Swiften to a separate module.
Diffstat (limited to 'Swiften/Serializer/XMPPSerializer.cpp')
m--------- | Swiften | 0 | ||||
-rw-r--r-- | Swiften/Serializer/XMPPSerializer.cpp | 77 |
2 files changed, 0 insertions, 77 deletions
diff --git a/Swiften b/Swiften new file mode 160000 +Subproject 8213ba16d0043d2461f4b031c881d61dda5a38c diff --git a/Swiften/Serializer/XMPPSerializer.cpp b/Swiften/Serializer/XMPPSerializer.cpp deleted file mode 100644 index 082cdf3..0000000 --- a/Swiften/Serializer/XMPPSerializer.cpp +++ /dev/null @@ -1,77 +0,0 @@ -#include "Swiften/Serializer/XMPPSerializer.h" - -#include <boost/bind.hpp> -#include <iostream> - -#include "Swiften/Elements/ProtocolHeader.h" -#include "Swiften/Base/foreach.h" -#include "Swiften/Serializer/CompressRequestSerializer.h" -#include "Swiften/Serializer/CompressFailureSerializer.h" -#include "Swiften/Serializer/StreamFeaturesSerializer.h" -#include "Swiften/Serializer/AuthRequestSerializer.h" -#include "Swiften/Serializer/AuthFailureSerializer.h" -#include "Swiften/Serializer/AuthSuccessSerializer.h" -#include "Swiften/Serializer/AuthChallengeSerializer.h" -#include "Swiften/Serializer/AuthResponseSerializer.h" -#include "Swiften/Serializer/StartTLSRequestSerializer.h" -#include "Swiften/Serializer/StartTLSFailureSerializer.h" -#include "Swiften/Serializer/TLSProceedSerializer.h" -#include "Swiften/Serializer/MessageSerializer.h" -#include "Swiften/Serializer/PresenceSerializer.h" -#include "Swiften/Serializer/IQSerializer.h" - -namespace Swift { - -XMPPSerializer::XMPPSerializer(PayloadSerializerCollection* payloadSerializers) { - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new PresenceSerializer(payloadSerializers))); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new IQSerializer(payloadSerializers))); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new MessageSerializer(payloadSerializers))); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new CompressRequestSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new CompressFailureSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new AuthRequestSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new AuthFailureSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new AuthSuccessSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new AuthChallengeSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new AuthResponseSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new StartTLSRequestSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new StartTLSFailureSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new TLSProceedSerializer())); - serializers_.push_back(boost::shared_ptr<ElementSerializer>(new StreamFeaturesSerializer())); -} - -String XMPPSerializer::serializeHeader(const ProtocolHeader& header) const { - String result = "<?xml version=\"1.0\"?><stream:stream xmlns=\"jabber:client\" xmlns:stream=\"http://etherx.jabber.org/streams\""; - if (!header.getFrom().isEmpty()) { - result += " from=\"" + header.getFrom() + "\""; - } - if (!header.getTo().isEmpty()) { - result += " to=\"" + header.getTo() + "\""; - } - if (!header.getID().isEmpty()) { - result += " id=\"" + header.getID() + "\""; - } - if (!header.getVersion().isEmpty()) { - result += " version=\"" + header.getVersion() + "\""; - } - result += ">"; - return result; -} - -String XMPPSerializer::serializeElement(boost::shared_ptr<Element> element) const { - std::vector< boost::shared_ptr<ElementSerializer> >::const_iterator i = std::find_if( - serializers_.begin(), serializers_.end(), - boost::bind(&ElementSerializer::canSerialize, _1, element)); - if (i != serializers_.end()) { - return (*i)->serialize(element); - } - else { - std::cerr << "Could not find serializer for " << typeid(*(element.get())).name() << std::endl; - return ""; - } -} - -String XMPPSerializer::serializeFooter() const { - return "</stream:stream>"; -} - -} |