Files
@ 0a78acefef91
Branch filter:
Location: libtransport.git/include/Swiften/Parser/PayloadParsers/PrivilegeParser.h - annotation
0a78acefef91
993 B
text/plain
0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 0a78acefef91 | /*
* Implements Privilege tag for XEP-0356: Privileged Entity
* Licensed under the Simplified BSD license.
* See Documentation/Licenses/BSD-simplified.txt for more information.
*/
#pragma once
#include <Swiften/Base/API.h>
#include <Swiften/Elements/Privilege.h>
#include <Swiften/Parser/GenericPayloadParser.h>
namespace Swift {
class PayloadParserFactoryCollection;
class PayloadParser;
class PrivilegeParser : public GenericPayloadParser<Privilege> {
public:
PrivilegeParser(PayloadParserFactoryCollection* factories);
virtual void handleStartElement(const std::string& element, const std::string&, const AttributeMap& attributes);
virtual void handleEndElement(const std::string& element, const std::string&);
virtual void handleCharacterData(const std::string& data);
enum Level {
TopLevel = 0,
PayloadLevel = 1
};
private:
PayloadParserFactoryCollection* factories_;
SWIFTEN_SHRPTR_NAMESPACE::shared_ptr<PayloadParser> childParser_;
int level_;
};
}
|