X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/abe068d00ecc304c855886f5e511b563b352dd0a..a79cfb92e093d9c9c78e3ccbabcd45de1a283e56:/stglibs/srvconf.lib/parsers/get_user.h?ds=inline

diff --git a/stglibs/srvconf.lib/parsers/get_user.h b/stglibs/srvconf.lib/parsers/get_user.h
index 190b5784..a0e3e3a4 100644
--- a/stglibs/srvconf.lib/parsers/get_user.h
+++ b/stglibs/srvconf.lib/parsers/get_user.h
@@ -37,16 +37,19 @@ namespace GET_USER
 class PARSER: public STG::PARSER
 {
 public:
-    PARSER();
+    typedef GET_USER::INFO INFO;
+
+    PARSER(CALLBACK f, void * data, const std::string & encoding);
     virtual ~PARSER();
     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;
     INFO info;
     int depth;
     bool parsingAnswer;
@@ -54,6 +57,8 @@ private:
 
     void ParseUser(const char * el, const char ** attr);
     void ParseUserParams(const char * el, const char ** attr);
+    void ParseAuthBy(const char * el, const char ** attr);
+    void ParseServices(const char * el, const char ** attr);
 };
 
 } // namespace GET_USER