diff -r fc7b30ed2058 -r 05bc53fe583b cmmanager/cmmgr/Framework/Inc/cmdestinationimpl.h --- a/cmmanager/cmmgr/Framework/Inc/cmdestinationimpl.h Thu Aug 19 10:18:49 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,992 +0,0 @@ -/* -* Copyright (c) 2006 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: Implementation of destination class. -* -*/ - -#ifndef DESTINATIONIMPL_H -#define DESTINATIONIMPL_H - -// User includes -#include "cmmanager.hrh" -#include - -// System includes -#include -#include -#include -#include - -// CONSTANTS -const TInt KCmInitIndex = 1; -const TInt KNumOfIcons = 12; - -#define RECORD_FROM_ELEMENT_ID( elementId ) \ - (( elementId & KCDMaskShowRecordId ) >> 8 ) - -enum TSnapMetadataProtecionLevel - { - EProtectionLevel0 = 0x00000000, - EProtectionLevel1 = 0x10000000, - EProtectionLevel2 = 0x20000000 - }; - -#define KSnapMetadataProtecionLevelMask 0xF0000000; - -// DATA TYPES - -// FORWARD DECLARATIONS -class CCmManagerImpl; -class CCmPluginBaseEng; -class CCmPluginBase; -class TCmPluginInitParam; -class CPluginItem; -class CCDDataMobilitySelectionPolicyRecord; -class CGulIcon; -class CCmTransactionHandler; -class CCDSNAPMetadataRecord; - -typedef CArrayPtrFlat CCmArray; - -#define KFlagRemove 0x00000001 - -typedef CCDDataMobilitySelectionPolicyRecord CCDSnapRecord; - -const TUint32 KCmDefaultDestinationAPTagId = 0x1000; - -// CLASS DECLARATION -NONSHARABLE_CLASS(CPluginItem) : public CBase - { - public: - - enum - { - ERemoveCm = 0x00000001 - }; - - public: - - CCDSnapRecord* iDNRecord; - CCmPluginBase* iPlugin; - TUint32 iFlags; - }; - -/** - * Holds all the destination specific data of the CCmDestinationImpl - * This class is put in the object pool and may be shared - * among CCmDestinationImpl objects - */ -NONSHARABLE_CLASS( CCmDestinationData ): public CBase - { - //===================================================================== - // Constructors/Destructors - // - public: - CCmDestinationData( CCmManagerImpl& aCmMgr ); - ~CCmDestinationData(); - /** - * Increments the reference counter. Used by the object pool. - */ - void IncrementRefCounter(); - /** - * Increments the reference counter. Used by the object pool. - */ - void DecrementRefCounter(); - private: - /** - * Reset and, if needed, destroy the passed array. - * @since S60 3.2 - * @param aArray array to be reseted and deleted - * @parar aDestroy ETrue if array has to be deleted - */ - void ResetAndDestroyArray( CCmArray* &aArray, TBool aDestroy ); - - public: - /** - * Returns the number of connection methods of the destination - * @param None - * @return TInt - */ - TInt ConnectionMethodCount(); - - /** - * Returns the destination's Id attribute - * @param None - * @return TUint32 - */ - inline TUint32 Id(){return iDestAPRecord->iRecordTag;}; - - /** - * Returns the destination's ElementId attribute - * @param None - * @return TUint32 - */ - inline TUint32 ElementId() - { return iNetworkRecord->ElementId() & KCDMaskShowField;}; - - /** - * Returns that the destination is protected or not. - * @return protection level - */ - CMManager::TProtectionLevel ProtectionLevel(); - - /** - * Returns that the destination is hidden or not. - * @param None - * @return TBool - */ - TBool IsHiddenL(); - - /** - * Indicates if the Id is valid or if this is a new object which sitll - * haven't been updated. - * Used by the object pool. - * @return TBool - */ - TBool IdIsValid(); - - /** - * Returns the reference counter. Used by the object pool. - * @return TInt - */ - TInt GetRefCounter(); - /** - * Returns pointer to the CmManager object - * Used in 'R' classes - */ - CCmManagerImpl* Cmmgr(); - - /** - * Returns the Metadata - * @param None - * @return TUint32 - */ - TUint32 MetadataL( CMManager::TSnapMetadataField aMetaField ) const; - - private: - CCmManagerImpl& iCmMgr; //< Not owned - CommsDat::CCDNetworkRecord* iNetworkRecord; - - //To store Connection methods that belong to this destination - CCmArray* iConnMethodArray; - CCmArray* iDeleteCmArray; - - // DN_IAP Table has to be update if - // - new CM is added to the destination - // - CM is delete from the destination - // - CM priority modified - TBool iDNTableChanged; - - //Protection changed - TBool iProtectionChanged; - //The last protection level of the destination - TUint iLastProtectionLevel; - - CCDSNAPMetadataRecord* iMetaDataRec; - //Reference counter for the object pool - TInt iRefCounter; - //indicates if the Id is valid or not (for the object pool) - TBool iIdIsValid; - CommsDat::CCDAccessPointRecord* iDestAPRecord; - - friend class CCmDestinationImpl; - friend class CCmManagerImpl; - TBool iNewWithId; - }; -/** - * RCmDestination is for getting/setting values of a network destination. - * @lib cmmanager.lib - * @since S60 v3.2 - */ -NONSHARABLE_CLASS( CCmDestinationImpl ) : public CBase - { - public: - //===================================================================== - // Constructors/Destructors - // - public: - - /** Destructor. */ - ~CCmDestinationImpl(); - - /** Epoc constructor - * This should be used only by the object pool - */ - IMPORT_C static CCmDestinationImpl* NewL( CCmManagerImpl& aCmMgr, - const TDesC& aName ); - - /** Epoc constructor - * This should be used only by the object pool - */ - static CCmDestinationImpl* NewL( CCmManagerImpl& aCmMgr, - CCmDestinationData* aData ); - - /** Epoc constructor - * This should be used only by the 'R' classes - */ - static CCmDestinationImpl* NewLC( CCmDestinationData* aData ); - - /** Epoc constructor - * This should be used only by the object pool - */ - IMPORT_C static CCmDestinationImpl* NewL( CCmManagerImpl& aCmMgr, - TUint aDestinationId ); - - public: - /** - * Returns pointer to the CmManager object - * Used in 'R' classes - */ - CCmManagerImpl* Cmmgr(); - //===================================================================== - // Conn method handling - - /** - * Create a connection method belonging to the destination - * @param aImplementationUid - implementation uid of the connection - * method - * @return CCmPluginBaseEng* - */ - CCmPluginBase* CreateConnectionMethodL( TUint32 aBearerType ); - - /** - * Create a connection method belonging to the destination - * @param aBearerType - implementation uid of the connection - * method - * @param aConnMethId - Predefined id for the connection method. - * @return CCmPluginBaseEng* - */ - CCmPluginBase* CreateConnectionMethodL( TUint32 aBearerType, - TUint32 aConnMethId ); - /* - * Adds an existing connection method to a destination - * @param - * @return TInt - index in the Connection Method list - */ - TInt AddConnectionMethodL( CCmPluginBase& aConnectionMethod ); - - /* - * Embeds an existing destination to the destination - * @param CCmDestinationImpl - Destinatio to be embedded - * @return TInt - index in the Connection Method list - */ - TInt AddEmbeddedDestinationL( CCmDestinationImpl& aDestination ); - - /** - * Remove a connection method from a destination and delete it - * on update. - * Exception: conenction method is not deleted if it's referenced - * from any other destination. - * @param aConnectionMethod the connection method to be deleted - * @return none. - */ - void DeleteConnectionMethodL( CCmPluginBase& aConnectionMethod ); - - /** - * Remove connection method from the destination - * @param aConnectionMethod connection method to be removed - */ - void RemoveConnectionMethodL( const CCmPluginBase& aConnectionMethod ); - - /** - * Remove connection method from the destination - * @param aConnectionMethod connection method to be removed - */ - void RemoveConnectionMethodL( const CCmPluginBaseEng& aConnectionMethod ); - - /** - * Notification from child plugin that it was deleted. - * Remove it from the array and update priorities. - * @param aConnectionMethod child connection method that was deleted. - */ - void ConnectionMethodDeletedL( const CCmPluginBase& aConnectionMethod ); - - /** - * Set the CCMItem's priority based on the passed new index - * @param aCCMItem The connection method item - * @param aIndex The new index of the item in the list - */ - void ModifyPriorityL( CCmPluginBase& aCCMItem, TUint aIndex ); - - /** - * Obsolete - */ - TUint PriorityL( CCmPluginBaseEng& aCCMItem ); - - /** - * Return the priority of the passed connection method - * @param aCCMItem queried connection method - * @return the priority of the queried connection method - */ - TUint PriorityL( CCmPluginBase& aCCMItem ); - - /** - * Returns the number of connection methods of the destination - * @param None - * @return TInt - */ - IMPORT_C TInt ConnectionMethodCount(); - - //Operator - - /** - * Obsolete - */ - IMPORT_C CCmPluginBaseEng* ConnectionMethodL( TInt anIndex ); - - /** - * Returns a reference to the connection method. - * The index must be less than the return value of ConnMethodCount() - * @param anIndex - * @return plugin instance - ownership NOT passed - */ - IMPORT_C CCmPluginBase* GetConnectionMethodL( TInt anIndex ); - - /** - * Returns a reference to the connection method. - * The index must be less than the return value of ConnMethodCount() - * @param anIapId IAP id of the queried connection method - * @return plugin instance - ownership NOT passed - */ - CCmPluginBase* ConnectionMethodByIDL( TUint32 anIapId ); - - void ConnectMethodIdArrayL( RArray& aCmIds ); - - //Getting attributes - - /** - * Returns the destination's Name attribute - * HBuf ownership is passed to the caller - * @param None - * @return name of the destination. ownership is passed. - */ - IMPORT_C HBufC* NameLC(); - - /** - * Returns the destination's Id attribute - * @param None - * @return TUint32 - */ - inline TUint32 Id(){return iData->Id();}; - - /** - * Returns the destination's ElementId attribute - * @param None - * @return TUint32 - */ - inline TUint32 ElementId(){ return iData->ElementId();}; - - /** - * Returns the Icon pointer - * This fucton leaves if the client does not have a valid UI context - * @param None - * @return TUint32 - */ - IMPORT_C CGulIcon* IconL(); - - /** - * Returns the Metadata - * @param None - * @return TUint32 - */ - TUint32 MetadataL( CMManager::TSnapMetadataField aMetaField ) const; - - /** - * Returns if there's connection created with any of the destination's - * connection method. - * @return ETrue if there's connection with any of the destination's - * connection method. - */ - IMPORT_C TBool IsConnectedL() const; - - //===================================================================== - //Setting Attributes - - /** - * Set the destination's Name attribute. Leaves if the name already - * exists - * @param aDestinationName value to set - * @return None - */ - IMPORT_C void SetNameL( const TDesC& aName ); - - /** - * Set the destination's Icon index. - * This fucton leaves if the client does not have a valid UI context - * @param aIconIndex value to set - * @return None - */ - IMPORT_C void SetIconL( TUint32 anIndex ); - - /** - * Set the Metadata - * @param aMetaField field to be modified - * @param aValue value to be set - */ - void SetMetadataL( CMManager::TSnapMetadataField aMetaField, - TUint32 aValue ); - - /** - * Returns that the destination is protected or not. - * @return protection level - */ - IMPORT_C CMManager::TProtectionLevel ProtectionLevel(); - - /** - * Set the protection of the destination. - * @param aProtectionLevel - * @return None - */ - IMPORT_C void SetProtectionL( CMManager::TProtectionLevel aProtectionLevel ); - - /** - * Update all the attributes of the Connection Methods and the - * Destination. - * @return None - */ - IMPORT_C void UpdateL(); - - /** - * Deletes it's connection methods from comms.dat (unless shared) - * then deletes itself - */ - IMPORT_C void DeleteLD(); - - /** - * Performs RollbackTransactionL(). - */ - void Close(); - - /** - * Set iPlugin to NULL in plugin array, but not delete it. - * Next reference to this connection method will load the - * plugin again. - */ - void PluginClosed( CCmPluginBase* aPlugin ); - - /** - * Returns that the destination is hidden or not. - * @param None - * @return TBool - */ - IMPORT_C TBool IsHidden(); - - /** - * Set that the destination is hidden or not. - * @param aHidden - True if it is hidden. - * @return None - */ - IMPORT_C void SetHiddenL( TBool aHidden ); - - /** - * Check if the destination element id is already embeded. - * Leaves with KErrNotSupported (multiple levels of embedding is not - * supported) - */ - void CheckIfEmbeddedL( TInt aId ); - - - static CGulIcon* IconIdL( CCmManagerImpl& aCmMgr, - CommsDat::TMDBElementId aId ); - - static CMManager::TProtectionLevel ProtectionLevelL( CCmManagerImpl& aCmMgr, - CommsDat::TMDBElementId aId ); - - /** - * Removes this destination from the object pool. - */ - IMPORT_C void RemoveFromPool(); - - /** - * Increments the reference counter. Used by the object pool. - */ - void IncrementRefCounter(); - /** - * Increments the reference counter. Used by the object pool. - */ - void DecrementRefCounter(); - /** - * Returns the reference counter. Used by the object pool. - * @return TInt - */ - TInt GetRefCounter(); - - /** - * Returns iData. Used by the object pool and the API oprators. - * @return TInt - */ - CCmDestinationData* GetData(); - /** - * Used by the object pool and the API oprators. - */ - void SetData(CCmDestinationData* aData); - /** - * Indicates if the Id is valid or if this is a new object which sitll - * haven't been updated. - * Used by the object pool. - * @return TBool - */ - TBool IdIsValid(); - - /** - * Returns pointer to embedded destination if there is any - * @return CCmDestinationImpl* Pointer to embedded destination - * Contains NULL if there is no destination embedded - */ - CCmDestinationImpl* EmbeddedL(); - - /** - * Checks if this destination plus a possible embedded destinaion - * contains a connection method which can be used for a connection - * Doesn't check VPNs! - * @return TBool ETrue if this destination or a destination embedded into - * it contains a connection method. Otherwise returns EFalse - */ - TBool CanUseToConnectL(); - - - /** - * Reload connection method under this destination so as to - * keep synchronization with CommsDat - */ - void ReLoadConnectionMethodsL(); - - /** Epoc constructor - * This should be used only by the object pool - */ - static CCmDestinationImpl* NewL( CCmManagerImpl& aCmMgr, - const TDesC& aName, - TUint32 aDestId); - - - /** - * Returns the Id of this Destination which is used to identify the Destination. - * It is the Id saved to Destination Access Point's Tag field. - */ - TUint32 GetDestinationAPTagId(); - - /** - * Checks if this destination already contains the given Connection Method - * @param aConnectionMethod Connection Method to be checked whether it - * already exists. - * @return TBool ETrue if this Destination contais already the given CM. If the - * Destination does not contain the given CM returns EFalse. Otherwise leaves - * with system-wide error code. - */ - TBool CheckIfCMExistsL( CCmPluginBase& aConnectionMethod ); - - - //========================================================================= - // Construction - // - private: - - /** - * Default constructor. - * @param aCmManager connection method manager - */ - CCmDestinationImpl( CCmManagerImpl& aCmMgr ); - - /* - * Create a new destination with the specified name - */ - void ConstructL( const TDesC& aName ); - - void ConstructL( const TDesC& aName, TUint32 aDestId ); - - /* - * Create a destination and initializes it - * from the commsdat based on the id - */ - void ConstructL( TUint aDestinationId ); - - //========================================================================= - // New functions - // - private: - - /** - * Check if the destination contains and embedded destination - * @since S60 3.2 - * @return ETrue if the destination contains and embedded destination - */ - TBool HasEmbeddedL(); - - /** - * - Check if transaction is already opened - * - Set iOwnTransaction is not and opens it and - put 'this' on cleanup&close stack - */ - void OpenTransactionLC(); - - /** - * - Check if the transaction is ours. - * - If yes, commits the transaction. - * - anyway does nothing - * @praram aError - error id - */ - void CommitTransactionL( TInt aError ); - - /** - * Rollback transaction. - */ - void RollbackTransaction(); - - /** - * Returns the CommsDat session. - * Do not close! - * @return commsdat session - */ - CommsDat::CMDBSession& Session()const; - - /** - * Find the connection method in iConnMethodArray. - * @param aConnectionMethod connection method to be searched for - * @return index of the found item - */ - TInt FindConnectionMethodL( const CCmPluginBase& aConnectionMethod ); - - /** - * Find the connection method in iConnMethodArray. - * @param aConnectionMethod connection method to be searched for - * @return index of the found item - */ - TInt FindConnectionMethodL( const CCmPluginBaseEng& aConnectionMethod ); - - /** - * Update protection attributes of every connection method if changed. - */ - void UpdateProtectionL(); - - /** - * Update every connection method. - */ - void UpdateConnectionMethodsL(); - - /** - * Create or update the record of the network table for this - * destination. - */ - void UpdateNetworkRecordL(); - - /** - * Update the SNAP table - */ - void UpdateSNAPTableL(); - - /** - * Update the SNAP Metadata table - */ - void UpdateSNAPMetadataTableL(); - - /** - * Load network record. Destination id is passed, because - * id is from the client application, and destinaion id - * is the network id for them. :) - * @param aDestinationId network record id - */ - void LoadNetworkRecordL( TUint32 aDestinationId ); - - /** - * Load Destination AP record. Destination id is passed, because - * id is from the client application, and destinaion id - * is the network id for them. :) - * @param aDestinationId network record id - */ - void LoadDestAPRecordL( TUint32 aDestinationId ); - - /** - * Load connection methods of the destination - */ - void LoadConnectionMethodsL(); - - /** - * Load SNAP Metadata table - */ - void LoadSNAPMetadataTableL(); - - /** - * Create a connection method belonging to the destination - * @param aImplementationUid - implementation uid of the connection - * method - * @param aParams - plugin init param - * @return CCmPluginBaseEng* - */ - CCmPluginBase* CreateConnectionMethodL( TUid aImplementationUid, - TCmPluginInitParam& aParams ); - - /** - * Compare two records from DNIAP by their priority field. - * @param aLeft one record from DN_IAP table. - * @param aRight one record from DN_IAP table. - * @return - * - negative value, if aLeft is less than aRight; - * - 0, if aLeft equals to aRight; - * - positive value, if aLeft is greater than aRight. - */ - static TInt SortRecordsByPriority( const CommsDat::CMDBRecordBase& aLeft, - const CommsDat::CMDBRecordBase& aRight); - - /** - * Add an item to the Connection Method array based on bearer priority - * table. - * @param aItem An item to be added. - * @return TInt the index of the added item. The array contains an initial item, - * so always SUBTRACT KCmInitIndex to get the connection method index number!!! - */ - TInt AddToArrayL( CPluginItem* aItem ); - - /** - * IAP is considered to be removed from the commsdat by third - * party (someone else external). - * Seamlessness entries should also be removed. - * @param aIapId Iap was removed - */ - void CleanUpSeamlessnessTableL( TUint32 aIapId ); - - /** - * Embedded dest is considered to be removed from the commsdat - * by third party (someone else external). - * Snap Metadata entries should also be removed. - * @param aSnap Id was removed - */ - void CleanUpSnapMetadataTableL( TUint32 aSnap ); - - /** - * Embedded dest is considered to be removed from the commsdat - * by third party (someone else external). - * Snap Metadata entries should also be removed. - * @param aSnap Id was removed - */ - void CleanUpEmbeddedL( TUint32 aDestId ); - - /** - * Create and load plugin. - * @param item where plugin has to be loaded. - */ - void LoadPluginL( CPluginItem& aItem ); - - - /** - * Create embedded destination plugin. - * @param aItem - plugin item - * @param TUint32 destination id - */ - void CreateEmbeddedDestinationPluginL( CPluginItem& aItem, - TInt aDestinationId ); - /** - * Load embedded destination plugin. - * @param aItem - plugin item - */ - void LoadEmbeddedDestinationPluginL( CPluginItem& aItem ); - - /** - * Check if there is destination with this name. - * Leaves with KErrAlreadyExists if name already exists - * @param aName destination name - */ - void CheckIfDestinationNameExistL( const TDesC& aName ); - - /** - * Set or clear attribute - * @aRecord record of which the attribute is to be set or clear - * @aAttribute attribute to be set or clear - * @aSet ETrue to set - */ - void SetAttribute( CommsDat::CMDBRecordBase* aRecord, - TUint32 aAttribute, - TBool aSet ); - - - /** - * Delete all connection methods. - * @since S60 3.2 - */ - void DeleteConnectionMethodsL(); - - /** - * Reference to a non-existing IAP found in the SNAP table. - * Remove the SNAP record and the metadata record of this - * IAP. IAP is most probably deleted by APEngine. - * @param aSnapRecord SNAP record point to a non-existing IAP - */ - void DeleteIAPRecordsL( CommsDat::CMDBRecordBase* aSnapRecord ); - - /** - * Check if the name of the passed record is the same as the name of - * network one, and update it if not. - * @param aRecord record to be checked and updated if needed - */ - void CheckIfNameModifiedL( CCDSnapRecord* aRecord ); - - /** - * Checks if there's another SNAP with Internet bit set. - * Leaves with KErrAlreadyExists if so. - */ - void CheckIfInternetExistsL(); - - /** - * Return the index value of the connection method. - * @param aCmId id of the connection method - * @return index value in iConnMethodArray - */ - TInt ConnectionMethodIndex( TUint32 aCmId ); - - /** - * Retrieves the base of the priority counts in cm list - * It is the data of the plugin in case of none VPN. - * It is the data of the underlying cm in case of VPN over cm. - * It is "wildcard" in case of VPN over destination. - * aRetBearer and aRetExtLevel are not filled in this case - * @param aItem the plugin list item which data is get - * @param aRetPrio the default priority of the cm in return - * @param aRetBearer the bearer of the cm in return - * @param aRetExtLevel the extenson level of the cm in return - * @return ETrue if the cm is virtual else EFalse - */ - TBool PrioDataL( CPluginItem* aItem, TUint32& aRetPrio, - TUint32& aRetBearer, TUint32& aRetExtLevel ); - - - - /** - * Determines the position of the inserted item into the cm list. - * This determination is based on the similarity of the bearer types. - * The inserted position is just after the last item with the - * same bearer type and virtuality - if exist else -1. - * @param aBearerType bearer type od the inserted cm - * @param aIsVirtual virtuality of the inserted cm - * @return The position in the cm list where the item should be inserted. - * If there is no cm with same bearer type in the list then it - * returns -1; - */ - TInt InsertSameMethodL( TUint32 aBearerType, TBool aIsVirtual ); - - /** - * Determines the position of the inserted item into the cm list. - * This determination is based on the priority and the extension - * level of the cm's. - * @param aPrio default bearer type of the inserted cm - * @param aExtLevel extension level of the inserted cm - * @return The position in the cm list where the item should be inserted. - */ - TInt InsertPriorityMethodL( TUint32 aPrio, TUint32 aExtLevel ); - - /** - * Checks if there's another SNAP with the same localised bit set. - * Leaves with KErrAlreadyExists if so. - */ - void CheckIfLocalisedDestExistL( TUint32 aValue ); - - /** - * Checks if there's another SNAP with the same purpose bit set. - * Leaves with KErrAlreadyExists if so. - */ - void CheckIfPurposeExistL( TUint32 aValue ); - - static CGulIcon* IconL( TInt aIconIndex ); - static CMManager::TProtectionLevel ProtectionLevel( CCDSNAPMetadataRecord* aMetaDataRec ); - - /** - * Deletes all the recordsrelated to this Destination to be - * deleted. - * @param None - * @return - */ - void DeleteRelatedRecordsL( TInt aCount ); - - /** - * Checks if this(current) destination is referenced by any - * Virtual Connection Method. - * @param None - * Leaves with KErrLocked if it's referenced. - */ - void CheckIfReferencedByVirtualCML(); - - /** - * Initializes the Destination AccessPoint record - * deleted. - * @param aDestAPRecord Record to be initialized - * @return - */ - void InitializeDestAPRecordL(); - - /** - * Sets the given (tag)id to the accesspoint record - * @param aDestId Id to be set - * @return - */ - void SetIdL( TInt aDestId ); - - /** - * Checks that there isn't any destination with the given (tag)id. - * @param aDestId Id to be checked - * @return - */ - void CheckIfDestinationIdExistsL( TUint32 aDestId ); - - /** - * Create or update the record of the accesspoint table for this - * destination. - */ - void UpdateDestAPRecordL(); - - /** - * Creates an unique (tag)id to the record of the accesspoint table for this - * destination. - */ - TUint32 CreateDestinationAPTagIdL(); - - /** - * Sets the default Tier Manager to the accesspoint record for this - * destination. - */ - void SetDefaultTierManagerL(); - - /** - * Sets the default Meta Connection Provider to the accesspoint record for this - * destination. - */ - void SetDefaultMCprL(); - - /** - * Sets the default Connection Provider to the accesspoint record for this - * destination. - */ - void SetDefaultCprL(); - - /** - * Sets the default Subconnection Provider to the accesspoint record for this - * destination. - */ - void SetDefaultSCprL(); - - /** - * Sets the default Protocol to the accesspoint record for this - * destination. - */ - void SetDefaultProtocolL(); - - //========================================================================= - // Member variables - // - private: - CCmManagerImpl& iCmMgr; //< Not owned - CCmDestinationData* iData; - private: - - friend class CCmManagerImpl; - }; - -#endif // DESTINATIONIMPL_H