--- a/voipplugins/accountcreationplugin/engine/inc/acpcontroller.h Thu Aug 19 09:45:22 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,487 +0,0 @@
-/*
-* Copyright (c) 2007-2009 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: Declarition of CAcpController
-*
-*/
-
-
-#ifndef ACPCONTROLLER_H
-#define ACPCONTROLLER_H
-
-#include <e32base.h>
-#include <s32file.h>
-
-#include <sipobserver.h>
-#include <sipprofileregistryobserver.h>
-#include <sipmanagedprofileregistry.h>
-
-#include "accountcreationengineconstants.h"
-#include "macpxmlhandlerobserver.h"
-#include "macphttphandlerobserver.h"
-#include "macpimagehandlerobserver.h"
-
-class CFbsBitmap;
-class CAcpProvider;
-class CAcpXmlHandler;
-class CAcpImageHandler;
-class CAcpHttpHandler;
-class CAcpImageHandler;
-class MAcpControllerObserver;
-class CACPBrowserParams;
-class MSIPProfileRegistryObserver;
-class MImageHandlerObserver;
-
-/**
- * CAcpController class
- * Declarition of CAcpController.
- *
- * @lib accountcreationplugin.lib
- * @since S60 v3.2
- */
-NONSHARABLE_CLASS( CAcpController ) : public CBase,
- public MAcpXmlHandlerObserver,
- public MAcpHttpHandlerObserver,
- public MSIPProfileRegistryObserver,
- public MImageHandlerObserver
- {
-public:
-
- /**
- * Different kind of field types supported by ACP.
- */
- enum TFetchTypes
- {
- EXml = 0, // provider list in xml form (default)
- ESis, // sis file
- EIcon, // icon file (png)
- EAction // action file containing wbxml provisioning data
- };
-
- /**
- * Two-phased constructor.
- *
- * @param aObserver Controller observer.
- */
- IMPORT_C static CAcpController* NewL(
- MAcpControllerObserver& aObserver );
-
- /**
- * Two-phased constructor.
- *
- * @param aObserver Controller observer.
- */
- IMPORT_C static CAcpController* NewLC(
- MAcpControllerObserver& aObserver );
-
- /**
- * Destructor.
- */
- virtual ~CAcpController();
-
- /**
- * Fetches provider list from network and parses it.
- *
- * @since S60 v3.2
- */
- IMPORT_C void FetchProviderListFromNetworkL();
-
- /**
- * Fetches SIS file from network.
- *
- * @since S60 v3.2
- * @param aSisUrl URL where to download.
- */
- IMPORT_C void FetchSisFileFromNetworkL( TDesC8& aSisUrl );
-
- /**
- * Fetches icon file from network.
- *
- * @since S60 v3.2
- * @param aIconUrl URL where to download.
- */
- IMPORT_C void FetchIconFileFromNetworkL( TDesC8& aIconUrl );
-
- /**
- * Returns count of providers in providers array.
- *
- * @since S60 v3.2
- * @return Number of providers
- */
- IMPORT_C TInt CountOfProviders() const;
-
- /**
- * Returns provider information referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return Pointer to provider name.
- */
- IMPORT_C const TPtrC ProviderNameFromIndexL( TInt aIndex ) const;
-
- /**
- * Returns provider information referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return Pointer to provider SIS URL.
- */
- IMPORT_C const TPtrC8 ProviderSisUrlFromIndexL( TInt aIndex ) const;
-
- /**
- * Returns provider information referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return Pointer to provider activation URL.
- */
- IMPORT_C const TPtrC8 ProviderActivationUrlFromIndexL(
- TInt aIndex ) const;
-
- /**
- * Returns provider information referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return pointer Provider creation urlURL.
- */
- IMPORT_C const TPtrC8 ProviderCreationUrlFromIndexL(
- TInt aIndex ) const;
-
- /**
- * Returns provider information referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return Pointer to provider description.
- */
- IMPORT_C const TPtrC ProviderDescriptionFromIndexL(
- TInt aIndex ) const;
-
- /**
- * Returns provider information referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return Pointer to provider Type.
- */
- IMPORT_C const TPtrC ProviderTypeFromIndexL( TInt aIndex ) const;
-
- /**
- * Returns provider icon URL referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index
- * @return Pointer to provider icon URL.
- */
- IMPORT_C const TPtrC8 ProviderIconUrlFromIndexL( TInt aIndex ) const;
-
- /**
- * Returns provider bitmap referenced by index.
- *
- * @since S60 v3.2
- * @param aIndex Provider list index.
- * @return Pointer to bitmap owned by provider.
- */
- IMPORT_C void ProviderBitmapsFromIndexL( TInt aIndex,
- CFbsBitmap*& aBitmap, CFbsBitmap*& aMask ) const;
-
- /**
- * Stores active list index in provider list view to member data.
- *
- * @since S60 v3.2
- * @param aIndex Index to be stored.
- */
- IMPORT_C void SaveActiveIndex( TInt aIndex );
-
- /**
- * Returns active list index from member data.
- *
- * @since S60 v3.2
- * @return Active list index in provider list view.
- */
- IMPORT_C TInt ActiveIndex() const;
-
- /**
- * Fetches the needed parameters for provisioning.
- *
- * @since S60 v3.2
- * @param aUrl for URL.
- */
- IMPORT_C void FetchParametersL( TDes& aUrl );
-
- /**
- * Cancels ongoing HTTP request.
- *
- * @since S60 v3.2
- */
- IMPORT_C void CancelHttpRequest();
-
- /**
- * Starts downloading action (wbxml) file from the server.
- *
- * @since S60 v3.2
- * @param aUrl URL of the action file.
- */
- IMPORT_C void FetchActionFileL( const TDesC8& aUrl );
-
- /**
- * Gets session id that was received from the server.
- *
- * @since S60 v3.2
- * @return Session id descriptor.
- */
- IMPORT_C const TDesC8& SessionId();
-
-// from base class MAcpXmlHandlerObserver
-
- /**
- * From MAcpXmlHandlerObserver.
- * Notifies observer when parsing is completed.
- *
- * @since S60 v3.2
- * @param aError System wide error code.
- */
- IMPORT_C void NotifyParsingCompleted( TInt aError );
-
- /**
- * From MAcpXmlHandlerObserver.
- * Notifies when new provider is available.
- *
- * @since S60 v3.2
- * @param aError System wide error code.
- */
- IMPORT_C void NotifyParsedProviderL( const CAcpProvider& aProvider );
-
-// from base class MAcpHttpHandlerObserver
-
- /**
- * From MAcpHttpHandlerObserver.
- * Notifies observer about HTTP events.
- *
- * @since S60 v3.2
- * @param aEvent HTTP event.
- */
- void NotifyHttpEvent( TInt aEvent );
-
- /**
- * From MAcpHttpHandlerObserver.
- * Notifies observer about HTTP event errors.
- *
- * @since S60 v3.2
- * @param aError HTTP event error.
- */
- void NotifyHttpError( TInt aError );
-
- /**
- * From MAcpHttpHandlerObserver.
- * Notifies observer about received body.
- *
- * @since S60 v3.2
- * @param aBodyData Body data.
- */
- void NotifyBodyReceived( const TDesC8& aBodyData );
-
- /**
- * From MAcpHttpHandlerObserver.
- * Notifies observer about received header.
- *
- * @since S60 v3.2
- * @param aContentType Content data.
- */
- void NotifyContentTypeReceived( const TDesC8& aBodyData );
-
- /**
- * From MAcpHttpHandlerObserver.
- * Notifies observer about received session id.
- *
- * @since S60 v3.2
- * @param aSession Id Session id received from the server.
- */
- void NotifySessionIdReceivedL( const TDesC8& aSessionId );
-
-// from base class MImageHandlerObserver
-
- /**
- * From MImageHandlerObserver.
- * Notifies completion of image handling.
- *
- * @since S60 v3.2
- * @param aErr Error code.
- */
- void NotifyImageCompletion( TInt aErr );
-
-private:
-
- CAcpController( MAcpControllerObserver& aObserver );
- void ConstructL();
-
- /**
- * Creates XML file from received data.
- *
- * @since S60 v3.2
- * @param aFilename File to be created.
- */
- void CreateFileFromDataL( const TDesC& aFilename );
-
- /**
- * Parses received action file for wbxml content and sends it to
- * provisioning engine.
- *
- * @since S60 v3.2
- */
- void HandleActionFileL();
-
- /**
- * Returns next index with an icon URL in the providers list.
- *
- * @since S60 v3.2
- *
- * @param aResultUrl On return points to the icon URL if found.
- * @return TInt Index in the providers list or KErrNotFound.
- */
- TInt NextIndexWithIconUrl( TPtrC8& aResultUrl );
-
- /**
- * Parses a specific header value from head wrapper format.
- *
- * @since S60 v3.2
- * @param aHeaders Descriptor containing the headers.
- * @param aParam Parameter to be parsed.
- * @return Parameter value part of the header.
- */
- TPtrC8 GetHeaderParamL( const TDesC8& aHeaders, const TDesC8& aParam );
-
- /**
- * From MSIPProfileRegistryObserver.
- * SIP profile information event.
- *
- * @since S60 v3.2
- * @param aProfileId is id for profile
- * @param aEvent type of information event
- */
- void ProfileRegistryEventOccurred(
- TUint32 aSIPProfileId,
- TEvent aEvent );
-
- /**
- * From MSIPProfileRegistryObserver.
- * An asynchronous error has occurred related to SIP profile.
- *
- * @since S60 v3.2
- * @param aSIPProfileId the id of failed profile
- * @param aError a error code
- */
- void ProfileRegistryErrorOccurred(
- TUint32 aSIPProfileId,
- TInt aError );
-
-private: // data
-
- /**
- * Reference for contoller observer.
- */
- MAcpControllerObserver& iObserver;
-
- /**
- * Handle to XML parser.
- * Own.
- */
- CAcpXmlHandler* iParser;
-
- /**
- * Handle to HTTP handler.
- * Own.
- */
- CAcpHttpHandler* iHttpHandler;
-
- /**
- * Array for providers.
- * Own.
- */
- RPointerArray<CAcpProvider> iProviders;
-
- /**
- * Active list index, updated when provider specific view is opened.
- */
- TInt iActiveIndex;
-
- /**
- * Data fetched from network.
- * Own.
- */
- HBufC8* iData;
-
- /**
- * Type of data fetched from network.
- */
- TFetchTypes iType;
-
- /**
- * File server.
- */
- RFs iFs;
-
- /**
- * Name of the file.
- */
- TBuf<KNameMaxLength> iFilename;
-
- /**
- * Handler for PnPMS parameters.
- */
- CACPBrowserParams* iPnpmsparams;
-
- /**
- * Provides the image convertions.
- * Own.
- */
- CAcpImageHandler* iImageHandler;
-
- /**
- * Session id to be used for all transactions.
- */
- HBufC8* iSessionId;
-
- /**
- * For getting SIP events.
- */
- CSIPManagedProfileRegistry* iSipModel;
-
- /**
- * A flag telling if the previous download attempt failed.
- * If it's ETrue, a new connection method is asked during the
- * next download.
- */
- TBool iErrorDownloading;
-
- /**
- * A flag telling if sis packet is downoloaded and sis installation
- * will be made.
- */
- TBool iSisInstallation;
-
- /**
- * File write stream for SIS file downloading.
- */
- RFileWriteStream iWs;
-
- // For unit testing.
-#ifdef _DEBUG
- friend class T_CAcpController;
-#endif
- };
-
-#endif // ACPCONTROLLER_H
-
-// End of file.