00001 /* ${copyright}$ */ 00002 /* $Id: BrDomainInfoRsp.H 547 2006-03-07 22:44:18Z cesar $ */ 00007 #ifndef __BR_DOMAIN_INFO_RSP_H__ 00008 #define __BR_DOMAIN_INFO_RSP_H__ 00009 00010 #include <set> 00011 00012 #include "BrDomainCommon.H" 00013 #include "DomainInfoRsp.H" 00014 00015 using std::set; 00016 00017 LIBEPP_NICBR_NS_BEGIN 00018 00020 class BrDomainInfoRsp : public DomainInfoRsp 00021 { 00022 public: 00023 00025 BrDomainInfoRsp(bool reset = true) : DomainInfoRsp(false) 00026 { 00027 if (reset) { 00028 this->reset(); 00029 } 00030 } 00031 00033 BrDomainInfoRsp(DomainInfoRsp *parent, bool reset = true) : 00034 DomainInfoRsp(false) 00035 { 00036 if (reset) { 00037 this->reset(); 00038 } 00039 _name = parent->get_name(); 00040 _roid = parent->get_roid(); 00041 _status_set = parent->get_status_set(); 00042 _registrant = parent->get_registrant(); 00043 _contacts = parent->get_contacts(); 00044 _nameservers = parent->get_nameservers(); 00045 _clID = parent->get_clID(); 00046 _crID = parent->get_crID(); 00047 _crDate = parent->get_crDate(); 00048 _upID = parent->get_upID(); 00049 _exDate = parent->get_exDate(); 00050 _upDate = parent->get_upDate(); 00051 _trDate = parent->get_trDate(); 00052 _authInfo = parent->get_authInfo(); 00053 00054 } 00055 00057 00060 void set_ticketNumber(int ticketNumber) 00061 { 00062 _ticketNumber = ticketNumber; 00063 } 00064 00066 /* 00067 @param Ticket Number 00068 */ 00069 int get_ticketNumber() 00070 { 00071 return _ticketNumber; 00072 } 00073 00075 00078 void set_organization(string organization) 00079 { 00080 _organization = organization; 00081 } 00082 00084 00087 string get_organization() 00088 { 00089 return _organization; 00090 } 00091 00093 00096 void set_releaseProcessFlags(struct ReleaseProcessFlags rpf) 00097 { 00098 _releaseProcessFlags.flag1 = rpf.flag1; 00099 _releaseProcessFlags.flag2 = rpf.flag2; 00100 _releaseProcessFlags.flag3 = rpf.flag3; 00101 } 00102 00104 00107 struct ReleaseProcessFlags get_releaseProcessFlags() 00108 { 00109 return _releaseProcessFlags; 00110 } 00111 00113 00116 void insert_doc_pending(struct PendingDoc p) 00117 { 00118 _doc_pendings.insert(p); 00119 } 00120 00122 00125 set<struct PendingDoc> get_doc_pendings() 00126 { 00127 return _doc_pendings; 00128 } 00129 00131 00134 void insert_dns_pending(struct PendingDns p) 00135 { 00136 _dns_pendings.insert(p); 00137 } 00138 00140 00143 set<struct PendingDns> get_dns_pendings() 00144 { 00145 return _dns_pendings; 00146 } 00147 00149 00152 void set_rel_pending(struct PendingReleaseProc p) 00153 { 00154 _rel_pending.status = p.status; 00155 _rel_pending.limit = p.limit; 00156 } 00157 00159 00162 struct PendingReleaseProc get_rel_pending() 00163 { 00164 return _rel_pending; 00165 } 00166 00168 00171 void insert_concurrent_ticket(int ticket) 00172 { 00173 _concurrent_tickets.insert(ticket); 00174 } 00175 00177 00180 set<int> get_concurrent_tickets() 00181 { 00182 return _concurrent_tickets; 00183 } 00184 00186 void reset() 00187 { 00188 DomainInfoRsp::reset(); 00189 _ticketNumber = 0; 00190 _organization = ""; 00191 _releaseProcessFlags.flag1 = false; 00192 _releaseProcessFlags.flag2 = false; 00193 _releaseProcessFlags.flag3 = false; 00194 _doc_pendings.clear(); 00195 _dns_pendings.clear(); 00196 _rel_pending.status = ""; 00197 _rel_pending.limit = ""; 00198 _concurrent_tickets.clear(); 00199 } 00200 00201 protected: 00203 int _ticketNumber; 00204 00206 string _organization; 00207 00209 struct ReleaseProcessFlags _releaseProcessFlags; 00210 00211 // Pendings 00213 set<struct PendingDoc> _doc_pendings; 00214 00216 set<struct PendingDns> _dns_pendings; 00217 00219 struct PendingReleaseProc _rel_pending; 00220 00222 set<int> _concurrent_tickets; 00223 }; 00224 00225 LIBEPP_NICBR_NS_END 00226 #endif //__BR_DOMAIN_INFO_RSP_H__