cpsecplugins/cpadvancedsecplugin/inc/advsecsettingscertificatemodel.h
changeset 63 989397f9511c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cpsecplugins/cpadvancedsecplugin/inc/advsecsettingscertificatemodel.h	Thu Oct 14 13:56:11 2010 +0300
@@ -0,0 +1,102 @@
+/*
+* Copyright (c) 2010 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:  Certificate handling model in advanced security settings
+*
+*/
+
+#ifndef ADVSECSETTINGSCERTIFICATEMODEL_H
+#define ADVSECSETTINGSCERTIFICATEMODEL_H
+
+#include <QObject>
+#include <QList>
+#include <QMap>
+
+class AdvSecSettingsCertificateModelPrivate;
+class AdvSecSettingsCertificate;
+
+
+/**
+ * Certificate handling engine in advanced security settings control panel plugin.
+ */
+class AdvSecSettingsCertificateModel : public QObject
+{
+    Q_OBJECT
+
+public:     // constructor and destructor
+    explicit AdvSecSettingsCertificateModel(QObject *parent = 0);
+    virtual ~AdvSecSettingsCertificateModel();
+
+public:     // new definitions
+    enum AdvSecSettingsCertificateDetailsField {
+        Label,
+        Issuer,
+        Subject,
+        ValidFrom,
+        ValidTo,
+        Location,
+        Format,
+        KeyUsage,
+        KeyLocation,
+        Algorithm,
+        SerialNumber,
+        FingerprintSHA1,
+        FingerprintMD5,
+        PublicKey,
+        TrustedSites
+    };
+
+public:     // new functions
+    void initialize();  // asynchronous
+    void getCertificates(QList<AdvSecSettingsCertificate*> &certList);  // asynchronous
+    void getCertificateDetails(const AdvSecSettingsCertificate &cert,
+        QMap<int,QString> &details);  // asynchronous
+    bool isDeletable(const AdvSecSettingsCertificate &cert) const;
+    void deleteCertificate(const AdvSecSettingsCertificate &cert);  // asynchronous
+    void getTrustSettings(const AdvSecSettingsCertificate &cert,
+        QMap<int,bool> &usageIdAndTrust);  // asynchronous
+    void setTrustSettings(const AdvSecSettingsCertificate &cert,
+        const QMap<int,bool> &usageIdAndTrust);  // asynchronous
+    void getCertificateUsageNames(QMap<int,QString> &usageIdAndName);
+    void moveToPersonalCertificates(const AdvSecSettingsCertificate &cert);  // asynchronous
+    void moveToDeviceCertificates(const AdvSecSettingsCertificate &cert);  // asynchronous
+
+signals:    // new signals
+    void initializeCompleted();
+    void getCertificatesCompleted();
+    void getCertificateDetailsCompleted();
+    void deleteCertificateCompleted();
+    void getTrustSettingsCompleted();
+    void setTrustSettingsCompleted();
+    void moveToPersonalCertificatesCompleted();
+    void moveToDeviceCertificatesCompleted();
+    void errorOccurred(int error);
+
+protected:  // new functions
+    void handleInitializeCompleted();
+    void handleGetCertificatesCompleted();
+    void handleGetCertificateDetailsCompleted();
+    void handleDeleteCertificateCompleted();
+    void handleGetTrustSettingsCompleted();
+    void handleSetTrustSettingsCompleted();
+    void handleMoveToPersonalCertificateCompleted();
+    void handleMoveToDeviceCertificatesCompleted();
+    void handleError(int error);
+
+private:    // data
+    Q_DISABLE_COPY(AdvSecSettingsCertificateModel)
+    friend class AdvSecSettingsCertificateModelPrivate;
+    AdvSecSettingsCertificateModelPrivate *d_ptr;
+};
+
+#endif // ADVSECSETTINGSCERTIFICATEMODEL_H