os/security/cryptoservices/certificateandkeymgmt/tcertstore/t_unifiedcertstoreremove.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 /*
     2 * Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description: 
    15 *
    16 */
    17 
    18 
    19 /**
    20  @file 
    21  @internalTechnology
    22 */
    23  
    24 #ifndef __T_UNIFIEDCERTSTOREREMOVE_H__
    25 #define __T_UNIFIEDCERTSTOREREMOVE_H__
    26 
    27 #include "t_certstoreactions.h"
    28 class CDeleteCertificate : public CSubscriberAction
    29 	{
    30 	
    31 public:
    32 	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
    33 		const TTestActionSpec& aTestActionSpec);
    34 	~CDeleteCertificate();
    35 	
    36 public:
    37 	virtual void PerformAction(TRequestStatus& aStatus);
    38 	virtual void PerformCancel();
    39 	virtual void Reset();
    40 
    41 protected:
    42 	CDeleteCertificate(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
    43 	void GetCerts(TRequestStatus& aStatus);
    44 	void DeleteCert(TRequestStatus& aStatus);
    45 	void ConstructL(const TTestActionSpec& aTestActionSpec);
    46 	void DoReportAction();
    47 	void DoCheckResult(TInt aError);
    48 	TBool CheckCertType( CCTCertInfo& aCertInfo);
    49 	
    50 protected:
    51 	enum TDeleteCertState
    52 		{
    53 		EIdle,
    54 		EGettingCerts,
    55 		EDeletingCert,
    56 		ECheckNotification,
    57 		EFinished
    58 		};
    59 
    60 protected:
    61 	TDeleteCertState iState;
    62 	TCertLabel iCertLabel;
    63 	RMPointerArray<CCTCertInfo> iCertInfos;
    64 	CCTCertInfo* iCertInfoToDelete;
    65 	CCertAttributeFilter* iFilter;
    66 	TBool iDeleteAllCerts;
    67 	HBufC8* iCertDeleteType;
    68 	};
    69 
    70 class CDeleteRetrieveCertificate : public CSubscriberAction
    71 	{
    72 public:
    73 	virtual void PerformAction(TRequestStatus& aStatus);
    74 	virtual void PerformCancel();
    75 	virtual void Reset();
    76 
    77 protected:
    78 	CDeleteRetrieveCertificate(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
    79 	virtual void GetCerts(TRequestStatus& aStatus) = 0;
    80 	virtual void RetrieveCerts(TRequestStatus& aStatus)	 = 0;
    81 	virtual void DeleteCert(TRequestStatus& aStatus) = 0;
    82 
    83 protected:
    84 	enum TDeleteCertState
    85 		{
    86 		EIdle,
    87 		EGettingCerts,
    88 		EDeletingCert,
    89 		ECheckNotification,
    90 		EFinished
    91 		};
    92 
    93 protected:
    94 	TDeleteCertState iState;
    95 	TCertLabel iCertLabel;
    96 	RPointerArray<HBufC8>* iCertlisted;
    97 	RMPointerArray<CCTCertInfo> iCertInfos;
    98 	CCTCertInfo* iCertInfoToDelete;
    99 	CCTCertInfo* iCertInfoToRetrieve;
   100 	TPtr8* iBuf;
   101 	};
   102 
   103 class CDeleteRetrieveCACertificate : public CDeleteRetrieveCertificate
   104 	{
   105 public:
   106 	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut,
   107 		const TTestActionSpec& aTestActionSpec);
   108 	~CDeleteRetrieveCACertificate();
   109 
   110 private:
   111 	CDeleteRetrieveCACertificate(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
   112 	void ConstructL(const TTestActionSpec& aTestActionSpec);
   113 	void GetCerts(TRequestStatus& aStatus);
   114 	void RetrieveCerts(TRequestStatus& aStatus);
   115 	void DeleteCert(TRequestStatus& aStatus);
   116 	void DoReportAction();
   117 	void DoCheckResult(TInt aError);
   118 
   119 private:
   120 	CCertAttributeFilter* iFilter;
   121 	};
   122 
   123 class CDeleteRetrieveUserCertificate : public CDeleteRetrieveCertificate
   124 	{
   125 public:
   126 	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
   127 		const TTestActionSpec& aTestActionSpec);
   128 	~CDeleteRetrieveUserCertificate();
   129 private:
   130 	CDeleteRetrieveUserCertificate(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
   131 	void ConstructL(const TTestActionSpec& aTestActionSpec);
   132 	void GetCerts(TRequestStatus& aStatus);
   133 	void RetrieveCerts(TRequestStatus& aStatus);
   134 	void DeleteCert(TRequestStatus& aStatus);
   135 	void DoReportAction();
   136 	void DoCheckResult(TInt aError);
   137 
   138 private:
   139 	CCertAttributeFilter* iFilter;
   140 	};
   141 
   142 #endif
   143