00001
00002
00007 #ifndef __DOMPARSER_H__
00008 #define __DOMPARSER_H__
00009
00010 #include "DomParserCommon.H"
00011
00012 #include "Response.H"
00013 #include "Greeting.H"
00014 #include "ContactCheckRsp.H"
00015 #include "ContactCreateRsp.H"
00016 #include "ContactInfoRsp.H"
00017 #include "DomainCheckRsp.H"
00018 #include "DomainCreateRsp.H"
00019 #include "DomainInfoRsp.H"
00020 #include "DomainRenewRsp.H"
00021 #include "PollRsp.H"
00022 #include "BrDomainCheckRsp.H"
00023 #include "BrDomainInfoRsp.H"
00024 #include "BrDomainCreateRsp.H"
00025 #include "BrDomainRenewRsp.H"
00026 #include "BrDomainUpdateRsp.H"
00027 #include "BrOrgInfoRsp.H"
00028 #include "PanDataRsp.H"
00029 #include "BrOrgPanDataRsp.H"
00030 #include "BrDomainPanDataRsp.H"
00031
00032 LIBEPP_NICBR_NS_BEGIN
00033
00035 class DomParser : public DomParserCommon
00036 {
00037 public:
00039
00042 void parse_command(const string &xml_payload);
00043
00045
00049 void parse_login_rsp(const string &xml_payload, Response *rsp);
00050
00052
00056 void parse_logout_rsp(const string &xml_payload, Response *rsp);
00057
00059
00063 void parse_greeting(const string &xml_payload, Greeting *greeting);
00064
00066
00070 void parse_contact_check_rsp(const string &xml_payload,
00071 ContactCheckRsp *rsp);
00072
00074
00078 void parse_contact_create_rsp(const string &xml_payload,
00079 ContactCreateRsp *rsp);
00080
00082
00086 void parse_contact_info_rsp(const string &xml_payload, ContactInfoRsp *rsp);
00087
00089
00093 void parse_contact_update_rsp(const string &xml_payload, Response *rsp);
00094
00096
00100 void parse_domain_check_rsp(const string &xml_payload, DomainCheckRsp *rsp);
00101
00103
00107 void parse_domain_create_rsp(const string &xml_payload,
00108 DomainCreateRsp *rsp);
00109
00111
00115 void parse_domain_info_rsp(const string &xml_payload, DomainInfoRsp *rsp);
00116
00118
00122 void parse_domain_renew_rsp(const string &xml_payload, DomainRenewRsp *rsp);
00123
00125
00129 void parse_domain_update_rsp(const string &xml_payload, Response *rsp);
00130
00132
00136 void parse_poll_rsp(const string &xml_payload, PollRsp *rsp);
00137
00138 protected:
00140
00144 void parse_response(const string &xml_payload, Response *rsp);
00145
00147
00153 void get_extValue_info(DOMNode *n, string &value, string &xmlns,
00154 string &reason);
00155
00157
00161 void fill_result(DOMNode *n, Response *rsp);
00162
00164
00168 void fill_response(DOMNode *n, Response *rsp);
00169
00171
00175 void fill_greeting(DOMNode *n, Greeting *greeting);
00176
00178
00182 void fill_contact_check_rsp(DOMNode *n, ContactCheckRsp *rsp);
00183
00185
00189 void fill_contact_info_rsp(DOMNode *n, ContactInfoRsp *rsp);
00190
00192
00196 void fill_contact_create_rsp(DOMNode *n, ContactCreateRsp *rsp);
00197
00199
00203 void fill_contact_pandata_rsp(DOMNode *n, PanDataRsp *rsp);
00204
00206
00210 void fill_domain_check_rsp(DOMNode *n, DomainCheckRsp *rsp);
00211
00213
00217 void fill_domain_info_rsp(DOMNode *n, DomainInfoRsp *rsp);
00218
00220
00224 void fill_domain_create_rsp(DOMNode *n, DomainCreateRsp *rsp);
00225
00227
00231 void fill_domain_renew_rsp(DOMNode *n, DomainRenewRsp *rsp);
00232
00234
00238 void fill_domain_pandata_rsp(DOMNode *n, PanDataRsp *rsp);
00239
00241
00245 void fill_poll_rsp(DOMNode *n, PollRsp *poll_rsp);
00246
00248
00252 void fill_brorg_info_rsp(DOMNode *n, BrOrgInfoRsp *rsp);
00253
00255
00259 void fill_brorg_pandata_rsp(DOMNode *n, BrOrgPanDataRsp *rsp);
00260
00262
00266 void fill_brdomain_check_rsp(DOMNode *n, BrDomainCheckRsp *rsp);
00267
00269
00273 void fill_brdomain_info_rsp(DOMNode *n, BrDomainInfoRsp *rsp);
00274
00276
00280 void fill_brdomain_create_rsp(DOMNode *n, BrDomainCreateRsp *rsp);
00281
00283
00287 void fill_brdomain_renew_rsp(DOMNode *n, BrDomainRenewRsp *rsp);
00288
00290
00294 void fill_brdomain_update_rsp(DOMNode *n, BrDomainUpdateRsp *rsp);
00295
00297
00301 void fill_brdomain_pandata_rsp(DOMNode *n, BrDomainPanDataRsp *rsp);
00302 };
00303
00304 LIBEPP_NICBR_NS_END
00305 #endif //__DOMPARSER_H__