00001 00009 #ifndef __PKIFSynonymousSourceStore_H__ 00010 #define __PKIFSynonymousSourceStore_H__ 00011 00012 #include "PKIFdll.h" 00013 #include "IPKIFSynonymousSourceStore.h" 00014 #include "IPKIFColleague.h" 00015 #include "IPKIFPkiArtifact.h" 00016 #include <iosfwd> 00017 00018 class CPKIFSynonymousSourceStoreImpl; 00019 00033 class CAC_API CPKIFSynonymousSourceStore : public IPKIFColleague, public IPKIFSynonymousSourceStore 00034 { 00035 public: 00036 CPKIFSynonymousSourceStore(void); 00037 virtual ~CPKIFSynonymousSourceStore(void); 00038 00039 //IPKIFColleague functions 00040 void Initialize(); 00041 00042 //IPKIFSynonymousSourceStore interfaces 00043 void GetCRLs(const CPKIFCertificatePtr& cert, CPKIFCrlSourceList& crlSourceList, CPKIFCRLNodeList& crlNodeList); 00044 void GetCerts(CPKIFCertificateSourceList& certSources, CPKIFCertificateNodeList& certList, PathBuildingDirection pbd = PBD_FORWARD); 00045 void AddCRL(CPKIFCRLNodeEntryPtr& crl); 00046 void AddCert(CPKIFCertificateNodeEntryPtr& cert); 00047 00048 //Debugging interface 00049 void WriteCacheContentsToConsole(std::ostream& out); 00050 00051 private: 00053 CPKIFSynonymousSourceStore(const CPKIFSynonymousSourceStore& copy); 00055 CPKIFSynonymousSourceStore& operator=(const CPKIFSynonymousSourceStore& rhs); 00056 00057 CPKIFSynonymousSourceStoreImpl* m_impl; 00058 }; 00059 DECLARE_SMART_POINTERS(CPKIFSynonymousSourceStore); 00060 00061 #endif