CPKIFPathProcessingMediator2.h

Go to the documentation of this file.
00001 
00010 #ifndef __PKIFPATHPROCESSINGMEDIATOR2_H__
00011 #define __PKIFPATHPROCESSINGMEDIATOR2_H__
00012 
00013 #if _MSC_VER > 1000
00014 #pragma once
00015 #endif // _MSC_VER > 1000
00016 
00017 //include toolkit header files
00018 #include "PKIFdll.h"                //omnipresent include
00019 #include "PKIFMediators.h"          //mediator stuff
00020 
00021 #include "IPKIFPathValidate.h"
00022 #include "IPKIFPathBuild.h"
00023 #include "IPKIFPathBuildAndValidate.h"
00024 #include "IPKIFDefaultPathManagement.h"
00025 #include "components.h"
00026 
00027 //include necessary standard library pieces
00028 #include <vector>
00029 
00030 #ifdef _WIN32
00031 #ifdef _DEBUG
00032 #include "crtdbg.h"
00033 #endif //_DEBUG
00034 #endif //_WIN32
00035 
00036 
00037 
00038 
00039 struct CPKIFPathProcessingMediator2Impl;
00040 
00064 class CAC_API CPKIFPathProcessingMediator2 : public IPKIFMediator, public IPKIFPathValidate, 
00065                                     public IPKIFPathBuild, public IPKIFPathBuildAndValidate,
00066                                     public IPKIFDefaultPathManagement
00067 {
00068 public:
00069     CPKIFPathProcessingMediator2(bool addDefaultColleagues = false);
00070     virtual ~CPKIFPathProcessingMediator2();
00071 
00072     //IPKIFMediator functions
00073     void InitializeMediator(std::vector<CPKIFException*>* errorInfo);
00074     void Terminate();
00075 
00076     //IPKIFColleague functions
00077     void Initialize();
00078 
00079     void GetColleagues(std::vector<IPKIFColleaguePtr>& v) const;
00080 
00081     //Miscellaneous functions
00082     void AddColleague(IPKIFColleaguePtr& module);
00083 
00084     //IPKIFPathValidate functions
00085     bool ValidatePath(CPKIFCertificatePath& path, CPKIFPathValidationResults& results,
00086         CPKIFFuncStoragePtr& thisCallOnlyFuncs);
00087     void SetAdditionalCertificateChecks(CPKIFFuncStoragePtr& funcs);
00088     
00089     //IPKIFPathBuild functions
00090     bool BuildPath(CPKIFCertificatePath& path);
00091 
00092     //IPKIFPathBuildAndValidate
00093     bool BuildAndValidatePath(CPKIFCertificatePath& path, CPKIFPathValidationResults& results);
00094 
00095     //IPKIFDefaultPathManagement
00096     void SetDefaultPathSettings(CPKIFPathSettingsPtr& pathSettings);
00097     CPKIFPathSettingsPtr GetDefaultPathSettings();
00098 
00099 private:
00101     CPKIFPathProcessingMediator2(const CPKIFPathProcessingMediator2& copy);
00103     CPKIFPathProcessingMediator2& operator=(const CPKIFPathProcessingMediator2& rhs); //added 4/6/2004
00104 
00105     enum { thisComponent = TOOLKIT_PATH_MEDIATOR };
00106 
00107     CPKIFPathProcessingMediator2Impl *m_impl;   
00108 };
00109 DECLARE_SMART_POINTERS(CPKIFPathProcessingMediator2);
00110 
00111 
00112 #endif

Generated on Mon Nov 15 11:15:49 2010 for PublicKeyInfrastructureFramework(PKIF) by  doxygen 1.5.6