/* */ #ifndef D_XML_RPC_REQUEST_PARSER_STATE_IMPL_H #define D_XML_RPC_REQUEST_PARSER_STATE_IMPL_H #include "XmlRpcRequestParserState.h" namespace aria2 { namespace rpc { class InitialXmlRpcRequestParserState:public XmlRpcRequestParserState { public: virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return false; } }; class UnknownElementXmlRpcRequestParserState:public XmlRpcRequestParserState { public: virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class MethodCallXmlRpcRequestParserState:public XmlRpcRequestParserState { public: virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class MethodNameXmlRpcRequestParserState:public XmlRpcRequestParserState { public: virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return true; } }; class ParamsXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class ParamXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return false; } }; class ValueXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class IntXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return true; } }; class StringXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return true; } }; class Base64XmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return true; } }; class StructXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class MemberXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return false; } }; class NameXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); virtual bool needsCharactersBuffering() const { return true; } }; class ArrayXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class DataXmlRpcRequestParserState:public XmlRpcRequestParserState { virtual void beginElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::map& attrs); virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters) {} virtual bool needsCharactersBuffering() const { return false; } }; class ArrayValueXmlRpcRequestParserState:public ValueXmlRpcRequestParserState { virtual void endElement(XmlRpcRequestParserStateMachine* stm, const std::string& name, const std::string& characters); }; } // namespace rpc } // namespace aria2 #endif // D_XML_RPC_REQUEST_PARSER_STATE_IMPL_H