00001 /* ${copyright}$ */ 00002 /* $Id: BrDomainUpdateRsp.H 689 2006-04-24 14:57:58Z cacm $ */ 00007 #ifndef __BR_DOMAIN_UPDATE_RSP_H__ 00008 #define __BR_DOMAIN_UPDATE_RSP_H__ 00009 00010 #include <set> 00011 00012 #include "BrDomainCommon.H" 00013 #include "Response.H" 00014 00015 using std::set; 00016 00017 LIBEPP_NICBR_NS_BEGIN 00018 00020 class BrDomainUpdateRsp : public Response 00021 { 00022 public: 00023 00025 BrDomainUpdateRsp(bool reset = true) : Response(false) 00026 { 00027 if (reset) { 00028 this->reset(); 00029 } 00030 } 00031 00033 00036 void set_ticketNumber(int ticketNumber) 00037 { 00038 _ticketNumber = ticketNumber; 00039 } 00040 00042 /* 00043 @param Ticket Number 00044 */ 00045 int get_ticketNumber() 00046 { 00047 return _ticketNumber; 00048 } 00049 00051 00054 void insert_doc_pending(struct PendingDoc p) 00055 { 00056 _doc_pendings.insert(_doc_pendings.end(), p); 00057 } 00058 00060 00063 PENDING_CONTAINER<struct PendingDoc> get_doc_pendings() 00064 { 00065 return _doc_pendings; 00066 } 00067 00069 00072 void insert_dns_pending(struct PendingDns p) 00073 { 00074 _dns_pendings.insert(_dns_pendings.end(), p); 00075 } 00076 00078 00081 PENDING_CONTAINER<struct PendingDns> get_dns_pendings() 00082 { 00083 return _dns_pendings; 00084 } 00085 00087 00090 void set_rel_pending(struct PendingReleaseProc p) 00091 { 00092 _rel_pending.status = p.status; 00093 _rel_pending.limit = p.limit; 00094 } 00095 00097 00100 struct PendingReleaseProc get_rel_pending() 00101 { 00102 return _rel_pending; 00103 } 00104 00106 00110 void insert_host_status(struct HostStatus hs) 00111 { 00112 _host_status.insert(hs); 00113 } 00114 00116 00119 set<struct HostStatus> get_host_status() 00120 { 00121 return _host_status; 00122 } 00123 00125 00128 void set_publication_flag(string publicationFlag) 00129 { 00130 _publicationFlag = publicationFlag; 00131 } 00132 00134 00137 string get_publication_flag() 00138 { 00139 return _publicationFlag; 00140 } 00141 00143 00147 void insert_onhold_reason(string reason) 00148 { 00149 _onhold_reasons.insert(reason); 00150 } 00151 00153 00156 set<string> get_onhold_reasons() 00157 { 00158 return _onhold_reasons; 00159 } 00160 00162 void reset() 00163 { 00164 Response::reset(); 00165 _ticketNumber = 0; 00166 _doc_pendings.clear(); 00167 _dns_pendings.clear(); 00168 _rel_pending.status = ""; 00169 _rel_pending.limit = ""; 00170 _host_status.clear(); 00171 _publicationFlag = ""; 00172 _onhold_reasons.clear(); 00173 } 00174 00175 protected: 00177 int _ticketNumber; 00178 00179 // Pendings 00181 PENDING_CONTAINER<struct PendingDoc> _doc_pendings; 00182 00184 PENDING_CONTAINER<struct PendingDns> _dns_pendings; 00185 00187 struct PendingReleaseProc _rel_pending; 00188 00190 set <struct HostStatus> _host_status; 00191 00193 string _publicationFlag; 00194 00196 set<string> _onhold_reasons; 00197 }; 00198 00199 LIBEPP_NICBR_NS_END 00200 #endif //__BR_DOMAIN_UPDATE_RSP_H__