00001 00009 #ifndef __ServiceLocator_H__ 00010 #define __ServiceLocator_H__ 00011 00012 #include "PKIFdll.h" 00013 #include "Buffer.h" 00014 00015 FD_SMART_PTR(CPKIFName); 00016 FD_SMART_PTR(CPKIFAuthorityInfoAccess); 00017 struct ServiceLocator; 00018 struct CPKIFServiceLocatorImpl; 00019 00025 class CAC_API CPKIFServiceLocator 00026 { 00027 public: 00028 CPKIFServiceLocator(void); 00029 //CPKIFServiceLocator(ServiceLocator& sl); 00030 CPKIFServiceLocator(const CPKIFBufferPtr& sl); 00031 ~CPKIFServiceLocator(void); 00032 00033 //issuer 00034 void SetIssuer(CPKIFNamePtr& issuer); 00035 CPKIFNamePtr GetIssuer() const; 00036 00037 //locator 00038 void SetLocator(CPKIFAuthorityInfoAccessPtr& locator); 00039 CPKIFAuthorityInfoAccessPtr GetLocator() const; 00040 00041 private: 00043 CPKIFServiceLocator(const CPKIFServiceLocator& copy); 00045 CPKIFServiceLocator& operator=(const CPKIFServiceLocator& rhs); //added 4/6/2004 00046 00047 struct CPKIFServiceLocatorImpl *m_impl; 00048 00049 00050 }; 00051 DECLARE_SMART_POINTERS(CPKIFServiceLocator); 00052 00053 #endif