00001 /* ${copyright}$ */ 00002 /* $Id: BrDomainCheckRsp.H 547 2006-03-07 22:44:18Z cesar $ */ 00007 #ifndef __BR_DOMAIN_CHECK_RSP_H__ 00008 #define __BR_DOMAIN_CHECK_RSP_H__ 00009 00010 #include <set> 00011 00012 #include "DomainCheckRsp.H" 00013 00014 using std::set; 00015 00016 LIBEPP_NICBR_NS_BEGIN 00017 00019 class BrDomainCheckRsp : public DomainCheckRsp 00020 { 00021 public: 00022 00023 struct Unavailability { 00024 bool hasConcurrent; 00025 bool inReleaseProcess; 00026 string equivalentName; 00027 string organization; 00028 set<int> tickets; 00029 }; 00030 00032 BrDomainCheckRsp(bool reset = true) : DomainCheckRsp(false) 00033 { 00034 if (reset) { 00035 this->reset(); 00036 } 00037 } 00038 00040 BrDomainCheckRsp(DomainCheckRsp *parent, bool reset = true) : 00041 DomainCheckRsp(false) 00042 { 00043 if (reset) { 00044 this->reset(); 00045 } 00046 _availability_list = parent->get_availability_list(); 00047 } 00048 00050 00054 void insert_unavailability(const string &domain, 00055 struct Unavailability unavail); 00056 00058 00061 map< string, Unavailability, less<string> > get_unavailability_list(); 00062 00064 void reset() 00065 { 00066 DomainCheckRsp::reset(); 00067 _unavailability_list.clear(); 00068 } 00069 00070 protected: 00072 map< string, Unavailability, less<string> > _unavailability_list ; 00073 00074 }; 00075 00076 LIBEPP_NICBR_NS_END 00077 #endif //__BR_DOMAIN_CHECK_RSP_H__