diff -r 65a3ef1d5bd0 -r f742655b05bf convergedconnectionhandler/cchserver/inc/cchpluginhandler.h --- a/convergedconnectionhandler/cchserver/inc/cchpluginhandler.h Thu Aug 19 09:45:22 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,346 +0,0 @@ -/* -* Copyright (c) 2007 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: CCCHPluginHandler declaration -* -*/ - - -#ifndef C_CCHPLUGINHANDLER_H -#define C_CCHPLUGINHANDLER_H - -// INCLUDES -#include -#include -#include - -#include "cchclientserver.h" - -// CONSTANTS -// None - -// MACROS -// None - -// DATA TYPES -// None - -// FUNCTION PROTOTYPES -// None - -// FORWARD DECLARATIONS -class CCCHServerBase; -class CCCHPlugin; -class REComSession; -class MCCHServiceNotifier; - -// CLASS DECLARATION - -/** - * CCCHPluginHandler declaration - * Class handles plug-in's for CCH server - * @lib cchserver.exe - * @since S60 3.2 - */ -NONSHARABLE_CLASS( CCCHPluginHandler ) : public CBase - { - -public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CCCHPluginHandler* NewL( CCCHServerBase& aServer ); - - /** - * Destructor. - */ - virtual ~CCCHPluginHandler(); - -public: // New functions - - /** - * Load all available plug-ins - * @since S60 3.2 - */ - void LoadPluginsL(); - - /** - * Load a certain Plug-in - * @since S60 3.2 - * @param aUid Plug-ins Uid - */ - void LoadPluginsL( const TUid& aUid ); - - /** - * Unloads a certain Plug-in - * @since S60 3.2 - * @param aUid Plug-ins Uid - */ - void UnloadPlugin( const TUid& aUid ); - - /** - * Enable a certain Service - * @since S60 3.2 - * @param aServiceId Service to enable - * @param aUids Uids-array contains Connectivity Plug-ins Uids - * @param aType Subservice's type to enable - * @param aObserver Pointer to observer. - * @param aIapId Used IAP Id - * @param aConnectivityCheck Is value is True Connectivity Plug-in will - * make test call to check is the connection truly working. - */ - void EnableServiceL( const TUint32 aServiceId, - const RArray& aUids, - const TCCHSubserviceType aType, - MCCHServiceNotifier* aNotifier, - const TUint32 aIapId = 0, - const TBool aConnectivityCheck = EFalse ); - - /** - * Disable a certain Service - * @since S60 3.2 - * @param aServiceId Service to disable - * @param aUids Uids-array contains Connectivity Plug-ins Uids - * @param aType Subservice's type to disable - */ - void DisableServiceL( const TUint32 aServiceId, - const RArray& aUids, - const TCCHSubserviceType aType ) const; - - /** - * Get a certain Service's state - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @param aState On completion contains Service's state - * @param aError Returns the current error - */ - void GetServiceState( const TUint32 aServiceId, - const TUid aUid, - const TCCHSubserviceType aType, - TCCHSubserviceState& aState, - TInt& aError ); - - /** - * Get a certain Service's network(SNAP/IAP) information - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @param aSnapId On completion contains Service's SNAP Id - * @param aIapId On completion contains Service's IAP Id - * @param aSNAPLocked On completion contains ETrue if Service's SNAP Id cannot be edited - * @return General symbian error code. - */ - TInt GetServiceNetworkInfo( const TUint32 aServiceId, - const TUid aUid, - const TCCHSubserviceType aType, - TUint32& aSnapId, - TUint32& aIapId, - TBool& aSNAPLocked, - TBool& aPasswordSet); - - /** - * Set Service to use given SNAP Id - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUids Uids-array contains Connectivity Plug-ins Uids - * @param aType Subservice's type - * @param aSnapId Set Service to use this SNAP Id - */ - void SetSnapIdL( const TUint32 aServiceId, - const RArray& aUids, - const TCCHSubserviceType aType, - const TUint32 aSnapId ); - - /** - * Set Service to use given IAP Id - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUids Uids-array contains Connectivity Plug-ins Uids - * @param aType Subservice's type - * @param aIapId Set Service to use this IAP Id - * @leave Symbian error code - */ - void SetIapIdL( const TUint32 aServiceId, - const RArray& aUids, - const TCCHSubserviceType aType, - const TUint32 aIapId ); - - /** - * Set Service to use given username - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUids Uids-array contains Connectivity Plug-ins Uids - * @param aType Subservice's type - * @param aUsername Set Service to use this username - * @return In case of an error leaves. - * KErrNotFound or symbian error code. - * KErrArgument if passed argument(s) is/are incorrect - */ - void SetUsernameL( const TUint32 aServiceId, - const RArray& aUids, - const TCCHSubserviceType aType, - const TDesC& aUsername ); - - /** - * Returns the connection parameters - * @since S60 3.2.3 - * Uid Plug-in uid. - * @param aServiceSelection Selected service, ID and type - * @param aValue Value of the parameter - * @return Symbian error code - */ - TInt GetConnectionParameter( const TUid aUid, - const TServiceSelection& aServiceSelection, - RBuf& aValue ); - - - /** - * Set Service to use given password - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUids Uids-array contains Connectivity Plug-ins Uids - * @param aType Subservice's type - * @param aUsername Set Service to use this password - * @return In case of an error leaves. - * KErrNotFound or symbian error code. - * KErrArgument if passed argument(s) is/are incorrect - */ - void SetPasswordL( const TUint32 aServiceId, - const RArray& aUids, - const TCCHSubserviceType aType, - const TDesC& aPassword ); - - /** - * Get Service's protocol information - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @param aBuffer On completion contains Service's information - * @return General symbian error code. - */ - TInt GetServiceInfo( const TUint32 aServiceId, - const TUid aUid, - const TCCHSubserviceType aType, - TDes& aBuffer ); - - /** - * Reserve service for exclusive use - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @return General symbian error code. - */ - TInt ReserveService( const TUint32 aServiceId, - const TUid aUid, - const TCCHSubserviceType aType ); - - - /** - * Free exlusive service reservation - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @return General symbian error code. - */ - TInt FreeService( const TUint32 aServiceId, - const TUid aUid, - const TCCHSubserviceType aType ); - - /** - * Returns the service's reservation status - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @return Reservation status. - */ - TBool IsReserved( const TUint32 aServiceId, - const TUid aUid, - const TCCHSubserviceType aType ) const; - - /** - * Is Service available via these IAPs - * @since S60 3.2 - * @param aServiceId Used Service Id - * @param aUid Service's Uid - * @param aType Subservice's type - * @param aIapIdArray Id array of the currently available IAPs. - * @return ETrue if service is available. - */ - TBool IsAvailableL( const TUint aServiceId, - const TUid aUid, - const TCCHSubserviceType aType, - RArray& aIapIds ) const; - - /** - * Adds a observer for Plug-in events. - * @since S60 3.2 - * @param aObserver Pointer to observer. - */ - void SetServiceNotifier( MCCHServiceNotifier* aObserver ); - - /** - * Removes a observer for Plug-in events. - * @since S60 3.2 - * @param aObserver Pointer to observer. - */ - void RemoveServiceNotifier( MCCHServiceNotifier* aObserver ); - -private: - - /** - * Find Plug-in's index number - * @since S60 3.2 - * @param aUid Plug-in's Uid - * @param TInt Plug-in's index number or KErrNotFound - */ - TInt Find( const TUid& aUid ) const; - - /** - * Cleanup RImplInfoPtrArray - * @since S60 3.2 - * @param aArray Which to be destroyed - */ - static void ResetAndDestroy( TAny* aArray ); - -private: - - /** - * C++ default constructor. - */ - CCCHPluginHandler( CCCHServerBase& aServer ); - -private: // data - - /** - * Server handle - */ - CCCHServerBase& iServer; - - /** - * Array of loaded Plug-ins - */ - RPointerArray iPlugins; - - }; - -#endif // C_CCHPLUGINHANDLER_H - -// End of file