diff -r b183ec05bd8c -r 19bba8228ff0 omaprovisioning/provisioning/WAPAdapter/Inc/CWPWAPAdapterBase.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/omaprovisioning/provisioning/WAPAdapter/Inc/CWPWAPAdapterBase.h Wed Sep 01 12:27:42 2010 +0100 @@ -0,0 +1,111 @@ +/* +* Copyright (c) 2002 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: +* Base for WAP adapters. +* +*/ + + +#ifndef CWPWAPADAPTERBASE_H +#define CWPWAPADAPTERBASE_H + +// INCLUDES +#include +#include + +// FORWARD DECLARATIONS +class CWPCharacteristic; +class MWPWAPItemBase; +class CCommsDatabase; +class CApDataHandler; + +// CLASS DECLARATION + +/** + * CWPWAPAdapterBase is a base for WAP adapters. + * + * @lib WPWAPAdapter + * @since 2.0 + */ +class CWPWAPAdapterBase : public CWPAdapter, private MWPContextExtension + { + public: // Constructors and destructor + + /** + * Destructor. + */ + ~CWPWAPAdapterBase(); + + public: // from CWPAdapter + + TInt ItemCount() const; + const TDesC16& SummaryTitle(TInt aIndex) const; + const TDesC16& SummaryText(TInt aIndex) const; + void SaveL( TInt aItem ); + TBool CanSetAsDefault( TInt aItem ) const; + void SetAsDefaultL( TInt aItem ); + TInt DetailsL( TInt aItem, MWPPairVisitor& aVisitor ); + void VisitL(CWPCharacteristic& aElement); + void VisitL(CWPParameter& aElement); + void VisitLinkL(CWPCharacteristic& aCharacteristic ); + TInt ContextExtension( MWPContextExtension*& aExtension ); + + public: // from MWPContextExtension + virtual const TDesC8& SaveDataL( TInt aIndex ) const; + virtual void DeleteL( const TDesC8& aSaveData ); + TUint32 Uid() const; + + public: // New methods + /** + * Handles one application characteristic. + * @param aCharacteristic The application characteristic + */ + virtual void ApplicationL( CWPCharacteristic& aCharacteristic ) = 0; + + protected: // New functions + /** + * C++ default constructor. + */ + CWPWAPAdapterBase(); + + /** + * 2nd phase base constructor. Derived classes must call this. + */ + void BaseConstructL(); + + /** + * Create CCommsDatabase and APEngine if NULL. + */ + void CreateDbL(); + + protected: // Data + // The application if of the current characteristic + TPtrC iAppID; + + // The visible setting items. Owns. + RPointerArray iItems; + + // The hidden setting items. Owns. + RPointerArray iHiddenItems; + + // Comms database for saving. Owns. + CCommsDatabase* iCommsDb; + + // APEngine for saving. Owns. + CApDataHandler* iAPHandler; + }; + +#endif // CWPWAPADAPTERBASE_H + +// End of File