diff options
Diffstat (limited to 'Swiften/Parser/StanzaParser.h')
-rw-r--r-- | Swiften/Parser/StanzaParser.h | 61 |
1 files changed, 31 insertions, 30 deletions
diff --git a/Swiften/Parser/StanzaParser.h b/Swiften/Parser/StanzaParser.h index 68dbe6f..7b83e99 100644 --- a/Swiften/Parser/StanzaParser.h +++ b/Swiften/Parser/StanzaParser.h @@ -1,53 +1,54 @@ /* - * Copyright (c) 2010-2014 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once +#include <memory> +#include <string> + #include <boost/noncopyable.hpp> -#include <boost/shared_ptr.hpp> #include <Swiften/Base/API.h> -#include <string> #include <Swiften/Elements/Stanza.h> -#include <Swiften/Parser/ElementParser.h> #include <Swiften/Parser/AttributeMap.h> +#include <Swiften/Parser/ElementParser.h> namespace Swift { - class PayloadParser; - class PayloadParserFactoryCollection; + class PayloadParser; + class PayloadParserFactoryCollection; - class SWIFTEN_API StanzaParser : public ElementParser, public boost::noncopyable { - public: - StanzaParser(PayloadParserFactoryCollection* factories); - ~StanzaParser(); + class SWIFTEN_API StanzaParser : public ElementParser, public boost::noncopyable { + public: + StanzaParser(PayloadParserFactoryCollection* factories); + ~StanzaParser(); - void handleStartElement(const std::string& element, const std::string& ns, const AttributeMap& attributes); - void handleEndElement(const std::string& element, const std::string& ns); - void handleCharacterData(const std::string& data); + void handleStartElement(const std::string& element, const std::string& ns, const AttributeMap& attributes); + void handleEndElement(const std::string& element, const std::string& ns); + void handleCharacterData(const std::string& data); - virtual boost::shared_ptr<ToplevelElement> getElement() const = 0; - virtual void handleStanzaAttributes(const AttributeMap&) {} + virtual std::shared_ptr<ToplevelElement> getElement() const = 0; + virtual void handleStanzaAttributes(const AttributeMap&) {} - virtual boost::shared_ptr<Stanza> getStanza() const { - return boost::dynamic_pointer_cast<Stanza>(getElement()); - } + virtual std::shared_ptr<Stanza> getStanza() const { + return std::dynamic_pointer_cast<Stanza>(getElement()); + } - private: - bool inPayload() const { - return currentDepth_ > 1; - } + private: + bool inPayload() const { + return currentDepth_ > 1; + } - bool inStanza() const { - return currentDepth_ > 0; - } + bool inStanza() const { + return currentDepth_ > 0; + } - private: - int currentDepth_; - PayloadParserFactoryCollection* factories_; - boost::shared_ptr<PayloadParser> currentPayloadParser_; - }; + private: + int currentDepth_; + PayloadParserFactoryCollection* factories_; + std::shared_ptr<PayloadParser> currentPayloadParser_; + }; } |