diff -r 675a964f4eb5 -r 35751d3474b7 cryptoservices/certificateandkeymgmt/tcertstore/t_swicertstoreactions.h --- a/cryptoservices/certificateandkeymgmt/tcertstore/t_swicertstoreactions.h Tue Jul 21 01:04:32 2009 +0100 +++ b/cryptoservices/certificateandkeymgmt/tcertstore/t_swicertstoreactions.h Thu Sep 10 14:01:51 2009 +0300 @@ -1,225 +1,223 @@ -/* -* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of the License "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Actions for testing additional metadata supplied by the SWI cert store, ie -* capabilties, mandatory and systemupgrade flag: - get capabilities - get mandatory - get systemupgrade flag -* -*/ - - - - -/** - @file - @internalTechnology -*/ - -#ifndef __T_METADATAACTIONS_H__ -#define __T_METADATAACTIONS_H__ - -#include "t_certstoreactions.h" - -class CSWICertStore; - -/** - * Test action to initialise an instance of the SWI cert store. - * - * Delete is handled by the standard delete action. - */ -class CInitSWICertStoreAction : public CCertStoreTestAction - { -public: - static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, - const TTestActionSpec& aTestActionSpec); - -protected: - // Implement test action methods - virtual void PerformAction(TRequestStatus& aStatus); - virtual void PerformCancel(); - virtual void Reset(); - -private: - CInitSWICertStoreAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - void ConstructL(const TTestActionSpec& aTestActionSpec); - - virtual void DoReportAction(); - virtual void DoCheckResult(TInt aError); - -private: - enum TState - { - EInitCertStore, - EFinished - }; - - TState iState; - RFs& iFs; - - }; - -/** - * Base class for SWI cert store meta data test actions. - */ -class CSWICertStoreTestAction : public CCertStoreTestAction - { -public: - virtual ~CSWICertStoreTestAction(); - - // Implement test action methods - virtual void PerformAction(TRequestStatus& aStatus); - virtual void PerformCancel(); - virtual void Reset(); - -protected: - CSWICertStoreTestAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - void ConstructL(const TTestActionSpec& aTestActionSpec); - - // Define interface for derived classes - virtual void DoConstructL(const TTestActionSpec& aTestActionSpec) = 0; - virtual void DoPerformActionL(CCTCertInfo& aCertInfo) = 0; - virtual void DoCancel() = 0; - -private: - enum TState - { - EGetCert, - EPerformAction, - EFinished - }; - -private: - CCTCertInfo* FindCertificate(); - -private: - TState iState; - TCertLabel iCertificateLabel; ///< The certificate we're acting on - RMPointerArray iCertInfos; ///< List of all certificates found - CCertAttributeFilter* iFilter; ///< Filter to use when listing certs - }; - -/** - * Test action to get the capabilties associated with a certificate. - */ -class CGetCapabilitiesAction : public CSWICertStoreTestAction - { -public: - static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, - const TTestActionSpec& aTestActionSpec); - -private: - CGetCapabilitiesAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); - virtual void DoReportAction(); - virtual void DoPerformActionL(CCTCertInfo& aCertInfo); - virtual void DoCheckResult(TInt aError); - virtual void DoCancel(); - -private: - TCapabilitySet iExpectedCapapbilities; - TCapabilitySet iCapabilities; - }; - -/** - * Test action to get the mandatory flag associated with a certificate. - */ -class CGetMandatoryAction : public CSWICertStoreTestAction - { -public: - static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, - const TTestActionSpec& aTestActionSpec); - -private: - CGetMandatoryAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); - virtual void DoReportAction(); - virtual void DoPerformActionL(CCTCertInfo& aCertInfo); - virtual void DoCheckResult(TInt aError); - virtual void DoCancel(); - -private: - TBool iExpectedValue; - TBool iValue; - }; - -/** - * Test action to get the systemupgrade flag associated with a certificate. - */ -class CGetSystemUpgradeAction : public CSWICertStoreTestAction - { -public: - static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, - const TTestActionSpec& aTestActionSpec); - -private: - CGetSystemUpgradeAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); - virtual void DoReportAction(); - virtual void DoPerformActionL(CCTCertInfo& aCertInfo); - virtual void DoCheckResult(TInt aError); - virtual void DoCancel(); - -private: - TBool iExpectedSystemUpgradeValue; - TBool iSystemUpgradeValue; - }; - -/** -* Test action to get the deletable flag associated with a certificate. -*/ - -class CGetDeletionAction : public CSWICertStoreTestAction - { -public: - static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, - const TTestActionSpec& aTestActionSpec); - -private: - CGetDeletionAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); - virtual void DoReportAction(); - virtual void DoPerformActionL(CCTCertInfo& aCertInfo); - virtual void DoCheckResult(TInt aError); - virtual void DoCancel(); - -private: - TBool iExpectedDeletableValue; - TBool iDeletableValue; - }; - -/** -* Test action to verify multiple readers -*/ - -class CMultipleReadersAction : public CSWICertStoreTestAction - { -public: - static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, - const TTestActionSpec& -TestActionSpec); - -private: - CMultipleReadersAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); - virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); - virtual void DoReportAction(); - virtual void DoPerformActionL(CCTCertInfo& aCertInfo); - virtual void DoCheckResult(TInt aError); - virtual void DoCancel(); - -private: - TBool iExpectedValue; - TBool iValue; - }; - - -#endif +/* +* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* Actions for testing additional metadata supplied by the SWI cert store, ie +* capabilties, mandatory and systemupgrade flag: - get capabilities - get mandatory - get systemupgrade flag +* +*/ + + +/** + @file + @internalTechnology +*/ + +#ifndef __T_METADATAACTIONS_H__ +#define __T_METADATAACTIONS_H__ + +#include "t_certstoreactions.h" + +class CSWICertStore; + +/** + * Test action to initialise an instance of the SWI cert store. + * + * Delete is handled by the standard delete action. + */ +class CInitSWICertStoreAction : public CCertStoreTestAction + { +public: + static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, + const TTestActionSpec& aTestActionSpec); + +protected: + // Implement test action methods + virtual void PerformAction(TRequestStatus& aStatus); + virtual void PerformCancel(); + virtual void Reset(); + +private: + CInitSWICertStoreAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + void ConstructL(const TTestActionSpec& aTestActionSpec); + + virtual void DoReportAction(); + virtual void DoCheckResult(TInt aError); + +private: + enum TState + { + EInitCertStore, + EFinished + }; + + TState iState; + RFs& iFs; + + }; + +/** + * Base class for SWI cert store meta data test actions. + */ +class CSWICertStoreTestAction : public CCertStoreTestAction + { +public: + virtual ~CSWICertStoreTestAction(); + + // Implement test action methods + virtual void PerformAction(TRequestStatus& aStatus); + virtual void PerformCancel(); + virtual void Reset(); + +protected: + CSWICertStoreTestAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + void ConstructL(const TTestActionSpec& aTestActionSpec); + + // Define interface for derived classes + virtual void DoConstructL(const TTestActionSpec& aTestActionSpec) = 0; + virtual void DoPerformActionL(CCTCertInfo& aCertInfo) = 0; + virtual void DoCancel() = 0; + +private: + enum TState + { + EGetCert, + EPerformAction, + EFinished + }; + +private: + CCTCertInfo* FindCertificate(); + +private: + TState iState; + TCertLabel iCertificateLabel; ///< The certificate we're acting on + RMPointerArray iCertInfos; ///< List of all certificates found + CCertAttributeFilter* iFilter; ///< Filter to use when listing certs + }; + +/** + * Test action to get the capabilties associated with a certificate. + */ +class CGetCapabilitiesAction : public CSWICertStoreTestAction + { +public: + static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, + const TTestActionSpec& aTestActionSpec); + +private: + CGetCapabilitiesAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); + virtual void DoReportAction(); + virtual void DoPerformActionL(CCTCertInfo& aCertInfo); + virtual void DoCheckResult(TInt aError); + virtual void DoCancel(); + +private: + TCapabilitySet iExpectedCapapbilities; + TCapabilitySet iCapabilities; + }; + +/** + * Test action to get the mandatory flag associated with a certificate. + */ +class CGetMandatoryAction : public CSWICertStoreTestAction + { +public: + static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, + const TTestActionSpec& aTestActionSpec); + +private: + CGetMandatoryAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); + virtual void DoReportAction(); + virtual void DoPerformActionL(CCTCertInfo& aCertInfo); + virtual void DoCheckResult(TInt aError); + virtual void DoCancel(); + +private: + TBool iExpectedValue; + TBool iValue; + }; + +/** + * Test action to get the systemupgrade flag associated with a certificate. + */ +class CGetSystemUpgradeAction : public CSWICertStoreTestAction + { +public: + static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, + const TTestActionSpec& aTestActionSpec); + +private: + CGetSystemUpgradeAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); + virtual void DoReportAction(); + virtual void DoPerformActionL(CCTCertInfo& aCertInfo); + virtual void DoCheckResult(TInt aError); + virtual void DoCancel(); + +private: + TBool iExpectedSystemUpgradeValue; + TBool iSystemUpgradeValue; + }; + +/** +* Test action to get the deletable flag associated with a certificate. +*/ + +class CGetDeletionAction : public CSWICertStoreTestAction + { +public: + static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, + const TTestActionSpec& aTestActionSpec); + +private: + CGetDeletionAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); + virtual void DoReportAction(); + virtual void DoPerformActionL(CCTCertInfo& aCertInfo); + virtual void DoCheckResult(TInt aError); + virtual void DoCancel(); + +private: + TBool iExpectedDeletableValue; + TBool iDeletableValue; + }; + +/** +* Test action to verify multiple readers +*/ + +class CMultipleReadersAction : public CSWICertStoreTestAction + { +public: + static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, + const TTestActionSpec& +TestActionSpec); + +private: + CMultipleReadersAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut); + virtual void DoConstructL(const TTestActionSpec& aTestActionSpec); + virtual void DoReportAction(); + virtual void DoPerformActionL(CCTCertInfo& aCertInfo); + virtual void DoCheckResult(TInt aError); + virtual void DoCancel(); + +private: + TBool iExpectedValue; + TBool iValue; + }; + + +#endif