|
limal-ca-mgm
|
00001 /*---------------------------------------------------------------------\ 00002 | | 00003 | _ _ _ _ __ _ | 00004 | | | | | | \_/ | / \ | | | 00005 | | | | | | |_| | / /\ \ | | | 00006 | | |__ | | | | | | / ____ \ | |__ | 00007 | |____||_| |_| |_|/ / \ \|____| | 00008 | | 00009 | ca-mgm library | 00010 | | 00011 | (C) SUSE Linux Products GmbH | 00012 \----------------------------------------------------------------------/ 00013 00014 File: SubjectAlternativeNameExtension.hpp 00015 00016 Author: <Michael Calmer> <mc@suse.de> 00017 Maintainer: <Michael Calmer> <mc@suse.de> 00018 00019 Purpose: 00020 00021 /-*/ 00022 #ifndef LIMAL_CA_MGM_SUBJECT_ALTERNATIVE_NAME_EXTENSION_HPP 00023 #define LIMAL_CA_MGM_SUBJECT_ALTERNATIVE_NAME_EXTENSION_HPP 00024 00025 #include <limal/ca-mgm/config.h> 00026 #include <limal/ca-mgm/CommonData.hpp> 00027 #include <limal/ca-mgm/ExtensionBase.hpp> 00028 #include <limal/ca-mgm/LiteralValues.hpp> 00029 #include <blocxx/COWIntrusiveReference.hpp> 00030 00031 namespace LIMAL_NAMESPACE { 00032 00033 namespace CA_MGM_NAMESPACE { 00034 00035 class CA; 00036 class CAConfig; 00037 class SubjectAlternativeNameExtImpl; 00038 00039 class SubjectAlternativeNameExt : public ExtensionBase { 00040 public: 00041 SubjectAlternativeNameExt(); 00042 00043 SubjectAlternativeNameExt(CAConfig* caConfig, Type type); 00044 00045 SubjectAlternativeNameExt(bool copyEmail, 00046 const blocxx::List<LiteralValue> &alternativeNameList = blocxx::List<LiteralValue>()); 00047 00048 SubjectAlternativeNameExt(const SubjectAlternativeNameExt& extension); 00049 00050 virtual ~SubjectAlternativeNameExt(); 00051 00052 #ifndef SWIG 00053 00054 SubjectAlternativeNameExt& 00055 operator=(const SubjectAlternativeNameExt& extension); 00056 00057 #endif 00058 00059 void 00060 setCopyEmail(bool copyEmail); 00061 00062 void 00063 setAlternativeNameList(const blocxx::List<LiteralValue> &alternativeNameList = blocxx::List<LiteralValue>()); 00064 00065 bool 00066 getCopyEmail() const; 00067 00068 blocxx::List<LiteralValue> 00069 getAlternativeNameList() const; 00070 00071 virtual void 00072 commit2Config(CA& ca, Type type) const; 00073 00074 virtual bool 00075 valid() const; 00076 00077 virtual blocxx::StringArray 00078 verify() const; 00079 00080 virtual blocxx::StringArray 00081 dump() const; 00082 00083 private: 00084 blocxx::COWIntrusiveReference<SubjectAlternativeNameExtImpl> m_impl; 00085 }; 00086 00087 } 00088 } 00089 00090 #endif // LIMAL_CA_MGM_SUBJECT_ALTERNATIVE_NAME_EXTENSION_HPP
1.7.5.1