diff options
Diffstat (limited to 'Swiften/Serializer/StanzaSerializer.h')
-rw-r--r-- | Swiften/Serializer/StanzaSerializer.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Swiften/Serializer/StanzaSerializer.h b/Swiften/Serializer/StanzaSerializer.h index db18aa2..766b58c 100644 --- a/Swiften/Serializer/StanzaSerializer.h +++ b/Swiften/Serializer/StanzaSerializer.h @@ -1,4 +1,4 @@ /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2013-2014 Kevin Smith and Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. @@ -9,5 +9,7 @@ #include <Swiften/Elements/Stanza.h> #include <Swiften/Serializer/ElementSerializer.h> + #include <string> +#include <boost/optional.hpp> namespace Swift { @@ -17,12 +19,14 @@ namespace Swift { class StanzaSerializer : public ElementSerializer { public: - StanzaSerializer(const std::string& tag, PayloadSerializerCollection* payloadSerializers); + StanzaSerializer(const std::string& tag, PayloadSerializerCollection* payloadSerializers, const boost::optional<std::string>& explicitNS = boost::optional<std::string>()); - virtual SafeByteArray serialize(boost::shared_ptr<Element>) const; - virtual void setStanzaSpecificAttributes(boost::shared_ptr<Element>, XMLElement&) const = 0; + virtual SafeByteArray serialize(boost::shared_ptr<ToplevelElement> element) const; + virtual SafeByteArray serialize(boost::shared_ptr<ToplevelElement> element, const std::string& xmlns) const; + virtual void setStanzaSpecificAttributes(boost::shared_ptr<ToplevelElement>, XMLElement&) const = 0; private: std::string tag_; PayloadSerializerCollection* payloadSerializers_; + boost::optional<std::string> explicitDefaultNS_; }; } |