00001 /* ${copyright}$ */ 00002 /* $Id: IpNetworkTransfer.H 958 2008-12-11 14:36:22Z eduardo $ */ 00007 #ifndef __IPNETWORKTRANSFER_H__ 00008 #define __IPNETWORKTRANSFER_H__ 00009 00010 #include "libepp_nicbr.H" 00011 00012 #include "Action.H" 00013 #include "IpNetworkTransferCmd.H" 00014 #include "IpNetworkTransferRsp.H" 00015 00016 using std::auto_ptr; 00017 00018 LIBEPP_NICBR_NS_BEGIN 00019 00021 class IpNetworkTransfer : public Action 00022 { 00023 public: 00025 IpNetworkTransfer(const ActionType type = IP_NETWORK_TRANSFER) : Action(type) 00026 { 00027 if (type == IP_NETWORK_TRANSFER) { 00028 _command = auto_ptr<IpNetworkTransferCmd>(new IpNetworkTransferCmd()); 00029 _response = auto_ptr<IpNetworkTransferRsp>(new IpNetworkTransferRsp()); 00030 } 00031 } 00032 00034 00037 void set_xml_template(const string &xml_template); 00038 00040 00044 void set_response(const string &xml_payload, DomParser *parser) 00045 { 00046 get_response()->reset(); 00047 parser->parse_ipnetwork_transfer_rsp(xml_payload, get_response()); 00048 } 00049 00051 00054 IpNetworkTransferCmd* get_command() 00055 { 00056 return (IpNetworkTransferCmd*) _command.get(); 00057 } 00058 00060 00063 IpNetworkTransferRsp* get_response() 00064 { 00065 return (IpNetworkTransferRsp*) _response.get(); 00066 } 00067 }; 00068 00069 LIBEPP_NICBR_NS_END 00070 #endif // __IPNETWORKTRANSFER_H__