libepp_nicbr
DomainTransfer.H
Go to the documentation of this file.
1 /* ${copyright}$ */
2 /* $Id$ */
7 #ifndef __DOMAIN_TRANSFER_H__
8 #define __DOMAIN_TRANSFER_H__
9 
10 #include <memory>
11 
12 #include "libepp_nicbr.H"
13 
14 #include "Action.H"
15 #include "DomainTransferCmd.H"
16 #include "DomainTransferRsp.H"
17 
18 using std::auto_ptr;
19 
20 LIBEPP_NICBR_NS_BEGIN
21 
23 class DomainTransfer : public Action
24 {
25 public:
26 
28  DomainTransfer(const ActionType type = DOMAIN_TRANSFER) : Action(type)
29  {
30  if (type == DOMAIN_TRANSFER) {
31  _command = auto_ptr<DomainTransferCmd>(new DomainTransferCmd());
32  _response = auto_ptr<DomainTransferRsp>(new DomainTransferRsp());
33  }
34  }
35 
37 
40  void set_xml_template(const string &xml_template);
41 
43 
47  void set_response(const string &xml_payload, DomParser *parser)
48  {
49  get_response()->reset();
50  parser->parse_domain_transfer_rsp(xml_payload, get_response());
51  }
52 
54 
58  {
59  return (DomainTransferCmd*) _command.get();
60  }
61 
63 
67  {
68  return (DomainTransferRsp*) _response.get();
69  }
70 
71 };
72 
73 LIBEPP_NICBR_NS_END
74 #endif // __DOMAIN_TRANSFER_H__
void reset()
reset attributes
Definition: DomainTransferRsp.H:164
void set_response(const string &xml_payload, DomParser *parser)
Pure virtual method to set response from a XML document.
Definition: DomainTransfer.H:47
EPP DomainTransferCmd Class.
Definition: DomainTransferCmd.H:23
Project defines.
DomainTransferRsp * get_response()
Returns raw pointer to the response.
Definition: DomainTransfer.H:66
EPP Action Class.
EPP DomParser Class.
Definition: DomParser.H:62
EPP Action Class.
Definition: Action.H:24
EPP DomainTransferRsp Class.
Definition: DomainTransferRsp.H:18
auto_ptr< Response > _response
Generic response.
Definition: Action.H:79
DomainTransfer(const ActionType type=DOMAIN_TRANSFER)
Constructor.
Definition: DomainTransfer.H:28
auto_ptr< Command > _command
Generic command.
Definition: Action.H:76
ActionType
Action Types.
Definition: CommonData.H:23
void parse_domain_transfer_rsp(const string &xml_payload, DomainTransferRsp *rsp)
Parse the response to a domain transfer command.
EPP DomainTransfer Class.
Definition: DomainTransfer.H:23
EPP DomainTransferCmd Class.
DomainTransferCmd * get_command()
Returns raw pointer to the command.
Definition: DomainTransfer.H:57
void set_xml_template(const string &xml_template)
Sets XML template.