wim/WimClient/inc/WimTrustSettingsMgmt.h
changeset 0 164170e6151a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/wim/WimClient/inc/WimTrustSettingsMgmt.h	Tue Jan 26 15:20:08 2010 +0200
@@ -0,0 +1,198 @@
+/*
+* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "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:  Trust Settings management class.
+*
+*/
+
+
+#ifndef WIMTRUSTSETTINGSMGMT_H
+#define WIMTRUSTSETTINGSMGMT_H
+
+//  INCLUDES
+#include "WimClient.h"
+#include "WimCertInfo.h"
+#include "WimCertTClassWrappers.h"
+
+// FORWARD DECLARATIONS
+class CWimCertInfo;
+
+// CLASS DECLARATION
+
+/**
+*  RWimTrustSettingsMgmt 
+*  This class handles Trust Settings Store
+*  related traffic between client and server.
+*  @lib WimClient.lib
+*  @since Series 60 3.0
+*/
+class RWimTrustSettingsMgmt : public RWimClient
+    {
+    public:
+
+        /**
+        * A Static method to get the client Session
+        * @return Pointer to newly created instance of RWimTrustSettingsMgmt
+        */  
+        static RWimTrustSettingsMgmt* ClientSessionL();
+
+        /**
+        * Destructor.
+        * Allocated memory is released.
+        */  
+        virtual ~RWimTrustSettingsMgmt();
+
+        /**
+        * Fetches trust settings for given certificate. 
+        * @param  aCert (IN) Certificate
+        * @param  aStatus (IN/OUT) Request Status of asynchronous call
+        * @return void
+        */
+        void GetTrustSettingsL( const CWimCertInfo& aCert,
+                                TRequestStatus& aStatus );
+
+        /**
+        * Set applicability for given certificate. 
+        * @param aCert (IN) Certificate
+        * @param aApplications (IN) Array of applications supported by 
+        *        certificate
+        * @param aStatus Request (IN/OUT) Status of asynchronous call.
+        * @return void
+        */
+        void SetApplicabilityL( const CWimCertInfo& aCert,
+                                const RArray<TUid>& aApplications,
+                                TRequestStatus& aStatus );
+
+        /**
+        * Set trust flag for given certificate.
+        * @param aCert (IN) Certificate
+        * @param aTrusted (IN) Is certificate trusted
+        * @param aStatus (IN/OUT) Request Status of asynchronous call.
+        * @return void
+        */
+        void SetTrustL( const CWimCertInfo& aCert,
+                        TBool aTrusted,
+                        TRequestStatus& aStatus );
+
+        /**
+        * Set default trust settings for given certificate.
+        * @param aCert (IN) Certificate
+        * @param aAddApps (IN) Are default applications inserted 
+        *        (ETrue means yes)
+        * @param aStatus (IN/OUT) Request Status of asynchronous call
+        * @return void
+        */
+        void SetDefaultTrustSettingsL( const CWimCertInfo& aCert,
+                                       TBool aAddApps,
+                                       TRequestStatus& aStatus );
+
+        /**
+        * Remove trust settings of given certificate. If certificate
+        * is not found, return with status.Int() = KErrNotFound
+        * @param aCert (IN) Certificate
+        * @param aStatus (IN/OUT) Request Status of asynchronous call
+        * @return void
+        */
+        void RemoveTrustSettingsL( const CWimCertInfo& aCert,
+                                   TRequestStatus& aStatus );
+
+        /**
+        * Cancel any issued asynchronous call
+        * @return void
+        */
+        void CancelDoing();
+
+        /**
+        * Returns pointer to package of trust settings.
+        * @return Pointer to package of trust settings
+        */
+        CWimCertPckgBuf<TTrustSettings>* TrustSettingsPckg();
+
+        /**
+        * Delete buffer pointers
+        * @return void
+        */
+        void DeleteBuffers();
+     
+    private:
+        
+        /**
+        * Constructor 
+        */
+        RWimTrustSettingsMgmt();
+
+        /** 
+        * Copy constructor
+        * @param aSource -Reference to class object.
+        */
+        RWimTrustSettingsMgmt( const RWimTrustSettingsMgmt& aSource );
+
+        /** 
+        * Assignment operator
+        * @param aParam -Reference to class object.
+        */
+        RWimTrustSettingsMgmt& operator=( const RWimTrustSettingsMgmt& aParam );
+
+    private:
+
+        // Package for trust settings. Owned.
+        CWimCertPckgBuf<TTrustSettings>* iPckgBufTrustSettings;
+
+        // Package for cert info. Owned.
+        CWimCertPckgBuf<TWimCertInfoPckg>* iCertPkcg;
+    };
+
+#endif // WIMTRUSTSETTINGSMGMT_H
+
+// End of File
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+