X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/76fb825a64343da7a8aa9b16c5dbcab709504832..24d957224650e26f7c2117ed5116d2412b0dbc60:/stglibs/srvconf.lib/parsers/server_info.h diff --git a/stglibs/srvconf.lib/parsers/server_info.h b/stglibs/srvconf.lib/parsers/server_info.h index 9ac23ee8..03906389 100644 --- a/stglibs/srvconf.lib/parsers/server_info.h +++ b/stglibs/srvconf.lib/parsers/server_info.h @@ -22,8 +22,8 @@ #ifndef __STG_STGLIBS_SRVCONF_PARSER_SERVER_INFO_H__ #define __STG_STGLIBS_SRVCONF_PARSER_SERVER_INFO_H__ -#include "parser.h" -#include "property_parsers.h" +#include "base.h" +#include "property.h" #include "stg/servconf_types.h" @@ -37,15 +37,16 @@ namespace SERVER_INFO class PARSER: public STG::PARSER { public: - PARSER(); + PARSER(CALLBACK f, void * data, const std::string & encoding); int ParseStart(const char * el, const char ** attr); void ParseEnd(const char * el); - void SetCallback(CALLBACK f, void * data); + void Failure(const std::string & reason) { callback(false, reason, info, data); } private: PROPERTY_PARSERS propertyParsers; CALLBACK callback; void * data; + std::string encoding; int depth; bool parsingAnswer; INFO info;