DomainPlug-insDocumentation
|
00001 #ifndef _EPP_H 00002 #define _EPP_H 00003 #include "xmlpacket.h" 00004 #include <stlrt/atypes.h> 00005 #include <stlrt/log.hpp> 00006 00007 #include "epptype.h" 00008 #include "epperrno.h" 00009 00010 #include <set> 00011 #include <map> 00012 00013 #include <stlrt/compat/time.hpp> 00014 00015 #include <epplibconfig.h> 00016 00017 00018 #define XSI_NS "http://www.w3.org/2001/XMLSchema-instance" 00019 00020 00021 00022 #define EPP_AVAILABLE_DOMAIN 1 00023 #define EPP_N_AVAILABLE_DOMAIN 0 00024 #define EPP_AVAILABLE_HOST 1 00025 #define EPP_N_AVAILABLE_HOST 0 00026 #define EPP_AVAILABLE_CONTACT 1 00027 #define EPP_N_AVAILABLE_CONTACT 0 00028 #define EPP_NS_EPP_10 "urn:ietf:params:xml:ns:epp-1.0" 00029 #define EPP_NS_DOMAIN_10 "urn:ietf:params:xml:ns:domain-1.0" 00030 #define EPP_NS_CONTACT_10 "urn:ietf:params:xml:ns:contact-1.0" 00031 #define EPP_NS_HOST_10 "urn:ietf:params:xml:ns:host-1.0" 00032 00033 #define EPP_SCHEMA_LOCATION_EPP_10 "urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd" 00034 #define EPP_SCHEMA_LOCATION_CONTACT_10 "urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd" 00035 #define EPP_SCHEMA_LOCATION_DOMAIN_10 "urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd" 00036 #define EPP_SCHEMA_LOCATION_HOST_10 "urn:ietf:params:xml:ns:host-1.0 host-1.0.xsd" 00037 00038 00039 using namespace std; 00049 class EPPLIB_DECL EPPXML { 00050 public: 00058 EPPXML( STLRT::Log::Entry& _logger): logger(_logger) {logger.info() << "EPPXML created" << endl;}; 00059 00060 00061 virtual ~EPPXML(void); 00062 virtual Str __Generate_clTRID(void); 00063 virtual void __prepare(void);//register general EPP namespace, aset attrs 00064 00069 virtual Str getXML(void); 00070 virtual Str generateXML(void);//to clTRID set 00071 00076 virtual Str getEPP_NS_EPP_10(void); 00077 00082 virtual Str getEPP_NS_DOMAIN_10(void); 00083 00088 virtual Str getEPP_NS_CONTACT_10(void); 00089 virtual Str getEPP_NS_HOST_10(void); 00090 00091 virtual Str getEPP_SCHEMA_LOCATION_EPP_10(void); 00092 virtual Str getEPP_SCHEMA_LOCATION_DOMAIN_10(void); 00093 virtual Str getEPP_SCHEMA_LOCATION_CONTACT_10(void); 00094 virtual Str getEPP_SCHEMA_LOCATION_HOST_10(void); 00095 00096 virtual EPPResponse getGeneralResult(Str answer); 00097 00102 virtual void FormHelo(void); 00103 00109 virtual void FormHelo(map<Str, Str> extension); 00110 00117 virtual void CustomizeFormHelo(map<Str, Str> extension); 00118 00124 virtual void ParseHelo(Str answer); 00125 00132 virtual void FormLogin(Str Login, Str Pwd); 00133 00141 virtual void FormLogin(Str Login, Str Pwd, map<Str, Str> extension); 00142 00149 virtual void CustomizeFormLogin(map<Str, Str> extension); 00150 00155 virtual void FormLogout(void); 00156 00162 virtual void FormLogout(map<Str, Str> extension); 00163 00168 virtual void CustomizeFormLogout(map<Str, Str> extension); 00169 00175 virtual void FormCheckContact(list<Str> input); 00176 00183 virtual void FormCheckContact(list<Str>, map<Str, Str> extension); 00184 00189 virtual void CustomizeFormCheckContact(map<Str, Str> extension); 00190 00199 virtual map <Str, int> ParseCheckContact(Str answer); 00200 00208 virtual void FormCreateContactGeneral (EPPContact CI, map<Str, Str> ex, Str type); 00209 00214 virtual Str ParseCreateContact(Str answer); 00215 00221 virtual void FormCreateContactLoc(EPPContact CI); 00222 00229 virtual void FormCreateContactLoc(EPPContact CI, map<Str, Str> extension); 00230 00235 virtual void CustomizeFormCreateContactLoc(map<Str, Str> extension); 00236 00241 virtual Str ParseCreateContactLoc(Str answer); 00242 00248 virtual void FormCreateContactInt(EPPContact CI); 00249 00256 virtual void FormCreateContactInt(EPPContact CI, map<Str, Str> extension); 00257 00262 virtual void CustomizeFormCreateContactInt(map<Str, Str> extension); 00263 00270 virtual void FormInfoContact (Str ID, Str Pwd); 00271 00278 virtual void FormInfoContact (Str ID, Str Pwd, map<Str, Str> ex); 00279 00284 virtual void CustomizeFormInfoContact (map<Str, Str> ex); 00285 00291 virtual void FormUpdateContactLoc(EPPContact CI); 00292 00298 virtual void FormUpdateContactLoc(EPPContact CI, map<Str, Str> extension); 00299 00304 virtual void CustomizeFormUpdateContactLoc(map<Str, Str> extension); 00305 00311 virtual void FormCheckDomain(list<Str> input ); 00312 00319 virtual void FormCheckDomain(list<Str> input, map<Str, Str> extension); 00320 00325 virtual void CustomizeFormCheckDomain(map<Str, Str> extension); 00326 00336 virtual map <Str, int> ParseCheckDomain(Str answer); 00337 00347 virtual void FormCreateDomain(Str DomainName, Int Period, map<Str, Str> contacts, Str Password, list<EPPNS> NSes); 00348 00359 virtual void FormCreateDomain(Str DomainName, Int Period, map<Str, Str> contacts, Str Password, list<EPPNS> NSes,map<Str, Str> extension ); 00360 00365 virtual void CustomizeFormCreateDomain(map<Str, Str> extension); 00366 00371 virtual int ParseCreateDomain(Str answer); 00372 00378 virtual void FormInfoDomain(Str Domain); 00379 00386 virtual void FormInfoDomain(Str Domain, map<Str, Str> extension); 00387 00392 virtual void CustomizeFormInfoDomain(map<Str, Str> extension); 00393 00400 virtual int ParseInfoDomain(Str answer); 00401 00411 virtual void FormUpdateDomain (Str domain, list<EPPNS> old_nses, list<EPPNS> new_nses, map<Str,Str> old_contacts, map<Str,Str> new_contacts); 00412 00423 virtual void FormUpdateDomain (Str domain, list<EPPNS> old_nses, list<EPPNS> new_nses, map<Str,Str> old_contacts, map<Str,Str> new_contacts, map<Str, Str> extension); 00428 virtual void CustomizeFormUpdateDomain(map<Str,Str> extension); 00429 00437 virtual void FormRenewDomain(Str Domain, Str ExpDate, Int Period); 00438 00447 virtual void FormRenewDomain(Str Domain, Str ExpDate, Int Period, map<Str,Str> extension); 00448 00453 virtual void CustomizeFormRenewDomain(map<Str,Str> extension); 00454 00461 virtual void FormTransferDomain(Str Domain, Str Password); 00462 00470 virtual void FormTransferDomain(Str Domain, Str Password, map<Str,Str> extension); 00471 00476 virtual void CustomizeFormTransferDomain(map<Str,Str> extension); 00477 00483 virtual void FormDeleteDomain(Str Domain); 00484 00491 virtual void FormDeleteDomain(Str Domain, map<Str,Str> extension); 00492 00497 virtual void CustomizeFormDeleteDomain(map<Str,Str> extension); 00498 00504 virtual void FormCheckHost(list<Str> input ); 00505 00512 virtual void FormCheckHost(list<Str> input , map<Str, Str> extension); 00513 00518 virtual void CustomizeFormCheckHost(map<Str, Str> extension); 00519 00529 virtual map <Str, int> ParseCheckHost(Str answer); 00530 00537 virtual void FormCreateHost(Str hostName, list<Str> ip); 00538 00546 virtual void FormCreateHost(Str hostName, list<Str> ip, map<Str, Str> extension); 00547 00552 virtual void CustomizeFormCreateHost(map<Str, Str> extension); 00553 00560 virtual int ParseCreateHost(Str answer); 00561 00562 Str svID; 00563 Str svDate; 00564 Str proto; 00565 Str lang; 00566 list<Str> objURI; 00567 list<Str> extURI; 00568 XMLPacket packet; 00569 STLRT::Log::Entry& logger; 00570 }; 00571 00572 #endif