williamr@2: /* williamr@2: * Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@2: * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: * which accompanies this distribution, and is available williamr@2: * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: Array utility class for listing pre-known ProviderIDs williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: williamr@2: williamr@2: williamr@2: williamr@2: williamr@2: williamr@2: #ifndef SEN_IDENTITY_PROVIDER_ID_ARRAY_8_H williamr@2: #define SEN_IDENTITY_PROVIDER_ID_ARRAY_8_H williamr@2: williamr@2: // INCLUDES williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: williamr@2: // CLASS DECLARATION williamr@2: williamr@2: /** williamr@2: * Array utility class for listing pre-known ProviderIDs williamr@2: * Typical use of this class is to define a strict list williamr@2: * of ProviderIDs pointing to certain IDPs, which are to williamr@2: * be accepted as only suitable services when initiating williamr@2: * an new service connection. williamr@2: * Other possiblity is to instantiate a non-strict array, williamr@2: * which only acts as "recommendation" of those Identity williamr@2: * Providers, that should be first checked when initiating williamr@2: * new service connection. In such case, because it is a williamr@2: * non-strict list, also other IDPs may be used, if none williamr@2: * matching with this "recommendation" is found. williamr@2: * @lib SenServDesc.lib williamr@2: * @since Series60 3.0 williamr@2: */ williamr@2: class CSenIdentityProviderIdArray8 : public CDesC8ArraySeg, williamr@2: public MSenIdentityProviderIdArray williamr@2: { williamr@2: public: // Constructors and destructor williamr@2: williamr@2: /** williamr@2: * Constructor with no arguments create non-strict arrays.. williamr@2: * (iStrict = EFalse) williamr@2: */ williamr@2: IMPORT_C static CSenIdentityProviderIdArray8* NewL(); williamr@2: williamr@2: /** williamr@2: * Constructor with no arguments create non-strict arrays.. williamr@2: * (iStrict = EFalse) williamr@2: */ williamr@2: IMPORT_C static CSenIdentityProviderIdArray8* NewLC(); williamr@2: williamr@2: /** williamr@2: * Basic constructor with a default value for iStrict. williamr@2: * @since Series60 3.0 williamr@2: * @param aStrict the value to be set to iStrict williamr@2: */ williamr@2: IMPORT_C static CSenIdentityProviderIdArray8* NewL(const TBool aStrict); williamr@2: williamr@2: /** williamr@2: * Basic constructor with a default value for iStrict. williamr@2: * @since Series60 3.0 williamr@2: * @param aStrict the value to be set to iStrict williamr@2: */ williamr@2: IMPORT_C static CSenIdentityProviderIdArray8* NewLC(const TBool aStrict); williamr@2: williamr@2: /** williamr@2: * Destructor. williamr@2: */ williamr@2: IMPORT_C virtual ~CSenIdentityProviderIdArray8(); williamr@2: williamr@2: // Functions from base classes williamr@2: williamr@2: // From MSenIdentityProviderIdArray williamr@2: williamr@2: /** williamr@2: * Getter for iStrict williamr@2: * @since Series60 3.0 williamr@2: * @return ETrue if iStrict is true, otherwise EFalse williamr@2: */ williamr@2: IMPORT_C virtual TBool IsStrict() const; williamr@2: williamr@2: /** williamr@2: * Setter for iStrict williamr@2: * @since Series60 3.0 williamr@2: * @param aStrict the value to be set to iStrict williamr@2: */ williamr@2: IMPORT_C void SetStrict(TBool aStrict); williamr@2: williamr@2: protected: // New functions williamr@2: williamr@2: /** williamr@2: * C++ default constructor. williamr@2: */ williamr@2: CSenIdentityProviderIdArray8(const TBool aStrict); williamr@2: williamr@2: /** williamr@2: * Default 2nd phase constructor williamr@2: * @since Series60 3.0 williamr@2: */ williamr@2: void ConstructL(); williamr@2: williamr@2: private: // Data williamr@2: TBool iStrict; williamr@2: }; williamr@2: williamr@2: #endif // SEN_IDENTITY_PROVIDER_ID_ARRAY_8_H williamr@2: williamr@2: // End of File williamr@2: williamr@2: williamr@2: