diff -r bad0cc58d154 -r c74b3d9f6b9e accesssec_plat/eap_qt_configuration_api/inc/eapqtconfiginterface.h --- a/accesssec_plat/eap_qt_configuration_api/inc/eapqtconfiginterface.h Tue Aug 31 15:16:37 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,202 +0,0 @@ -/* - * 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 "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: - * EAP method configuration QT interface - * - */ - -/* - * %version: 8 % - */ - -#ifndef EAPQTCONFIGINTERFACE_H -#define EAPQTCONFIGINTERFACE_H - -// System includes -#include -#include -#include -#include - -// User includes - -// Forward declarations -class CpBaseSettingView; -class EapQtValidator; -class EapQtPluginInfo; -class EapQtPluginHandle; -class EapQtExpandedEapType; -class EapQtCertificateInfo; -class EapQtConfigInterfacePrivate; - -// External data types - -// Constants - -// Class declaration -class EAP_QT_CONFIG_INTERFACE_EXPORT EapQtConfigInterface -{ - -public: - - // Data types - - // bearer type used for creating an interface object - enum EapBearerType - { - // EAP configuration interface for WLAN - EapBearerTypeWlan = 0, - // EAP configuration interface for VPN - EapBearerTypeVpn - }; - - // IAP ID to be used for accessing limited number of - // API methods, see below the method descriptions - static const int IapIdUndefined = -1; - - // NOTE: the default constuctor can only be used for creating validators - // with validatorEap() and validatorPacStore(), and accessing EAP-FAST PAC store, - // any other call throws an exeption; - // also, throws an exception if the construction fails - EapQtConfigInterface(); - - // this is the constructor for using the interface for all - // available operations, including validators; - // throws an exception if the construction fails; - // the parameter iapId is the identifier of the configured IAP; - // if iapId is negative (i.e. IapIdUndefined or negative), only a limited set of - // methods are available and setConfigurationReference must be later called to - // correct the IAP ID and use the rest of the API methods - EapQtConfigInterface(const EapBearerType bearerType, const int iapId); - - // destructor - ~EapQtConfigInterface(); - - // method for creating a setting validator for the specified EAP method - // NOTE: CALLER OWNS the returned object - // returns NULL on failure (e.g. if the requested validator does not exist) - EapQtValidator *validatorEap(const EapQtExpandedEapType &type, const EapQtConfig::SettingsId id) const; - - // method for creating a EAP-FAST PAC store validator, see also EapQtPacStoreConfig - // NOTE: CALLER OWNS the returned object - // returns NULL on failure (e.g. if EAP-FAST is not supported) - EapQtValidator *validatorPacStore(const EapQtPacStoreConfig::PacStoreSettings id) const; - - // reads EAP-FAST PAC store configuration, see EapQtPacStoreConfig - // returns false on failure (e.g. if EAP-FAST is not supported) - bool readPacStoreConfiguration(EapQtPacStoreConfig &config) const; - - // stores EAP-FAST PAC store configuration, see EapQtPacStoreConfig - // returns false on failure (e.g. if EAP-FAST is not supported) - bool savePacStoreConfiguration(const EapQtPacStoreConfig &config) const; - - /** - * NOTE: all the following methods throw an exception if the interface - * instance was created with the default (validator) constructor; - * otherwise the return value is as defined - */ - - // sets the IAP ID for accesssing EAP settings with the other methods - // returns false on failure (e.g. WLAN IAP with the specified ID - // [if the ID is other than IapIdUndefined] does not exist) - bool setConfigurationReference(const int iapId) const; - - // returns supported outer EAP types - // returns empty list on failure - QList supportedOuterTypes() const; - - // returns supported inner EAP types for the specified outer type - // returns empty list on failure - QList supportedInnerTypes(const EapQtPluginHandle &outerType) const; - - // retrieves the list of installed CA certificates; - // list returned from device database only when called for the first time, - // otherwise returns the list from cache; - // call updateCertificates() to update the cache; - // returns empty list on failure or if CA certificates do not exist - QList certificateAuthorityCertificates() const; - - // retrieves the lsit of installed user certificate list; - // list returned from device database only when called for the first time, - // otherwise returns the list from cache; - // call updateCertificates() to update the cache; - // returns empty list on failure or if user certificates do not exist - QList userCertificates() const; - - // updates CA and user certificate lists from the device database - bool updateCertificates() const; - - // checks if the specified outer EAP is supported - // returns true if supported, false otherwise - bool isSupportedOuterType(const EapQtPluginHandle &handle) const; - - // checks if the specified inner EAP is supported inside the specified outer EAP - // returns true if supported, false otherwise - bool isSupportedInnerType(const EapQtPluginHandle &outerHandle, - const EapQtPluginHandle &innerHandle) const; - - /** - * NOTE: all the following methods return failure if the current IAP - * ID is IapIdUndefined (or negative); - * setConfigurationReference must be called first to correct the IAP ID - */ - - // returns the list of activated outer EAP methods for the IAP - // returns empty list on failure - QList selectedOuterTypes() const; - - // sets the list of activated outer EAP methods for the IAP - // returns empty list on failure - bool setSelectedOuterTypes(const QList &outerHandles) const; - - // reads the configuration for pluginHandle inside outerHandle - // if outerHandle is EapQtPluginHandle::PluginUndefined, the configuration is read for - // pluginHandle as outer type; - // returns false on failure (e.g. outerHandle/pluginHandle is not supported) - bool readConfiguration(const EapQtPluginHandle &outerHandle, - const EapQtPluginHandle &pluginHandle, EapQtConfig &config) const; - - // stores the configuration for pluginHandle - // in config: - // if OuterType is defined, the configuration for pluginHandle is set inside this OuterType - // if OuterType is not defined, pluginHandle is for an outer type - // if InnerType is defined, the defined inner types in config are activated for pluginHandle - // if InnerType is not defined, the pluginHandle does not activate any inner type (or they do not exist) - // returns false on failure (e.g. pluginHandle is not supported) - bool saveConfiguration(const EapQtPluginHandle &pluginHandle, const EapQtConfig &config) const; - - // deletes all EAP configurations for the current IAP ID - bool deleteConfiguration() const; - - // returns control panel UI instance for the specified EAP method (pluginHandle) - // outerHandle specifies if the UI is for pluginHandle as outer (EapQtPluginHandle::PluginUndefined) or - // inner (other than EapQtPluginHandle::PluginUndefined) EAP method; - // NOTE: CALLER OWNS the returned object; - // returns NULL on failure (e.g. if the combination of outerHandle/pluginHandle is not supported) - // NOTE: the method throws an exception if current IAP ID is IapIdUndefined (or negative); - CpBaseSettingView *uiInstance(const EapQtPluginHandle &outerHandle, - const EapQtPluginHandle &pluginHandle) const; - -private: - - Q_DISABLE_COPY(EapQtConfigInterface) - -private: // data - - QScopedPointer d_ptr; - -}; - -#endif // EAPQTCONFIGINTERFACE_H -