--- a/iptel_plat/richcallsettingsengine_api/inc/crcseprofileregistry.h Thu Aug 19 09:45:22 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,367 +0,0 @@
-/*
-* Copyright (c) 2002-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: Offers API for storing, getting and updating profiles.
-*
-*/
-
-
-
-#ifndef CRCSEPROFILEREGISTRY_H
-#define CRCSEPROFILEREGISTRY_H
-
-// INCLUDES
-#include <e32base.h>
-#include <rcseregistrybase.h>
-#include <crcseprofileentry.h>
-#include <sipprofileregistryobserver.h>
-
-
-
-// FORWARD DECLARATION
-class CSIPManagedProfileRegistry;
-class CSIPProfile;
-
-
-// CLASS DECLARATION
-
-/**
-* Offers getting, setting and updating of profiles.
-*
-* @lib RCSE.lib
-* @since S60 3.0
-*/
-class CRCSEProfileRegistry: public CRCSERegistryBase,
- public MSIPProfileRegistryObserver
- {
-public: // Constructors and destructor
-
- /**
- * Two-phased constructor.
- */
- IMPORT_C static CRCSEProfileRegistry* NewL();
-
- /**
- * Two-phased constructor.
- */
- IMPORT_C static CRCSEProfileRegistry* NewLC();
-
- /**
- * Destructor.
- */
- IMPORT_C virtual ~CRCSEProfileRegistry();
-
-public: // New functions
-
- /**
- * Search a profile, which provider name setting is same as
- * aProviderName. Leaves with KErrNotFound if such profile
- * is not found. Default values are reseted to aFoundEntry
- * before the search.
- *
- * @since S60 v3.0
- * @param aProviderName Search criteria for profiles.
- * @param aFoundEntry A found profile entry, which provider name is
- * same than aProviderName.
- */
- IMPORT_C void FindL( const TDesC& aProviderName,
- CRCSEProfileEntry& aFoundEntry );
-
- /**
- * Search a profile, which profile id is same as aProfileId.
- * Leaves with KErrNotFound if such profile is not found.
- * Default values are reseted to aFoundEntry before the search.
- *
- * @since S60 v3.0.
- * @param aProfileId Search criteria for profiles.
- * @param aFoundEntry A found profile entry, which provider name is
- * same than aProviderName.
- */
- IMPORT_C void FindL( TUint32 aProfileId,
- CRCSEProfileEntry& aFoundEntry );
-
- /**
- * Gets all profile identifiers which are stored to RCSE. If there are
- * no profiles stored, aAllIds will contain zero entries.
- *
- * @since S60 v3.0
- * @param aAllIds Array, where the profile identifiers are stored.
- */
- IMPORT_C void GetAllIdsL( RArray<TUint32>& aAllIds );
-
- /**
- * Adds new profile entry.
- *
- * @since S60 v3.0
- * @param aNewEntry New entry.
- * @return Profile identifier of the added profile.
- */
- IMPORT_C TUint32 AddL( const CRCSEProfileEntry& aNewEntry );
-
- /**
- * Deletes a profile, which profile id is same than aProfileId.
- *
- * @since S60 v3.0
- * @param aProfileId Profile identifier
- */
- IMPORT_C void DeleteL( TUint32 aProfileId );
- /**
- * Updates profile, which profile identifier is same than aProfileId.
- * Only settings that are set in aUpdateData are updated in profile.
- * Leaves with KErrNotFound if profile is not found.
- *
- * @since S60 v3.0
- * @param aId Profile identifier.
- * @param aUpdateData Updated data, which are updated to profile.
- */
- IMPORT_C void UpdateL( TUint32 aId,
- const CRCSEProfileEntry& aUpdateData );
-
- /**
- * Resets default values for profile. Default profile is a profile,
- * which can be used when no other profile is available.
- *
- * @since S60 v3.0
- * @param aDefaultProfile Default profile settings are set to this.
- */
- IMPORT_C void GetDefaultProfile(
- CRCSEProfileEntry& aDefaultProfile ) const;
-
- /**
- * Search a profiles, where service provider id is same as aServiceId.
- * Content of aFoundEntries array is deleted before the search.
- * On return, aFoundEntries is empty if requested entries are not found.
- *
- * @since S60 v3.2.
- * @param aServiceId Search criteria for profiles.
- * @param aFoundEntries Container for found profiles
- */
- IMPORT_C void FindByServiceIdL( TUint32 aServiceId,
- RPointerArray<CRCSEProfileEntry>& aFoundEntries );
-
- /**
- * Search a profiles that have requested aSipProfileId.
- * Content of aFoundEntries array is deleted before the search.
- * On return, aFoundEntries is empty if requested entries are not found.
- *
- * @since S60 v3.2.
- * @param aSipProfileId Search criteria for profiles.
- * @param aFoundEntries Container for found profiles
- */
- IMPORT_C void FindBySIPProfileIdL( TUint32 aSipProfileId,
- RPointerArray<CRCSEProfileEntry>& aFoundEntries );
-
- /**
- * Adds bunch of profile entries to store in one transaction.
- * Creates new service provider setting entry to service table
- * if iServiceProviderId has not been set in given profile entry.
- *
- * @since S60 v3.2
- * @param aEntries
- */
- void AddL( RPointerArray<CRCSEProfileEntry>& aEntries );
-
-
- /**
- * From MSIPProfileRegistryObserver
- * SIP profile information event.
- *
- * @since S60 v3.1
- * @param aSIPProfileId 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.1
- * @param aSIPProfileId the id of failed profile
- * @param aError a error code
- * @return none
- */
- void ProfileRegistryErrorOccurred( TUint32 aSIPProfileId,
- TInt aError );
-
-
-private:
-
- /**
- * C++ default constructor.
- */
- CRCSEProfileRegistry();
-
- /**
- * By default Symbian 2nd phase constructor is private.
- */
- void ConstructL();
-
- /**
- * Do actual search of requested entry.
- * Leaves with KErrNotFound if such profile is not found.
- * Default values are reseted to aFoundEntry before the search.
- *
- * @since S60 v3.0.
- * @param aProfileId Search criteria for profiles.
- * @param aFoundEntry A found profile entry
- * @leave KErrNotFound if profile doesn't exist.
- */
- void FindEntryL( TUint32 aProfileId, CRCSEProfileEntry& aFoundEntry );
-
- /**
- * Adds or updates settings entry to storage depending of the aId
- * parameter. Entry is stored as new entry if aId parameter have
- * been set to KNoEntryId, otherwise existing entry is updated.
- *
- * @since S60 v3.2
- * @param aId ID of entry if exists.
- * @param aEntry Entry to be added to storage.
- * @param aUpdate Determines add or update operation.
- * New entry is added when value is set to EFalse (default).
- * @return ID of entry.
- */
- void AddOrUpdateEntryL( TUint32& aId, const CRCSEProfileEntry& aEntry );
-
- /**
- * Convert xxx
- * .
- *
- * @since S60 v3.2.
- * @param aEntry
- * @param aProperties
- */
- void ConvertPropertiesToEntryL( CRCSEProfileEntry& aEntry,
- RIpAppPropArray& aProperties );
-
-
- /**
- * Convert xxx
- * .
- *
- * @since S60 v3.2.
- * @param aEntry
- * @param aProperties
- */
- void ConvertEntryToPropertiesL( const CRCSEProfileEntry& aEntry,
- RIpAppPropArray& properties );
-
- /**
- * Extract protocol ids from descriptor.
- *
- * @since S60 v3.2
- * @param aDes Contains TSettingIds structs.
- * @param aArray Contains extracted TSettingIds struct when return.
- */
- void ExtractProtocoIdsL( const TDesC& aDes, RArray<TSettingIds>& aArray );
-
- /**
- * Validates that linked SIP profiles are up to date.
- * Removes invalid links and updates entry to data base
- *
- * @since S60 v3.1
- * @param aEntry Profile entry fetched from data base
- * @return
- */
- void UpdateSIPProfileLinksL( CRCSEProfileEntry& aEntry );
-
- /**
- * Creates and stores service provider settings entry with
- * default values, when new profile is created.
- * Service ID of stored service settings is set to profile.
- *
- * @since S60 v3.2.
- * @param aNewEntry New entry.
- */
- void CreateDefaultServiceSettingsL( CRCSEProfileEntry& aNewEntry );
-
- /**
- * Deletes service settings and audio codec settings referenced
- * from profile.
- *
- * @since S60 v3.2.
- * @param aProfileId Id of deleted VoIP profile
- */
- void DeleteReferenceSettingsL( TUint32 aProfileId );
-
- /**
- * Checks if Service table exist with rerenced entry name.
- * @since S60 3.2.
- * @param aProviderName.
- */
- TBool NameExistsInServiceTableL( const TDesC& aProviderName ) const;
-
- /**
- * Checks if service id is used for profile.
- * @since S60 3.2.
- * @param aEntry.
- */
- void LeaveIfServiceIdInUseL( const CRCSEProfileEntry& aEntry );
-
- /**
- * Updates service settings related to aEntry if needed
- * @since S60 3.2.
- * @param aEntry.
- */
- void UpdateServiceSettingsL( const CRCSEProfileEntry& aEntry );
-
- /**
- * Updates service id related to given entry id.
- * @since S60 3.2.
- * @param aId.
- * @param aServiceId New service id.
- */
- void UpdateServiceIdL( TUint32 aId, TUint32 aServiceId );
-
- /**
- * Implementation for cleanup item.
- * Resets and destroys array of the entries.
- * @param anArray RPointerArray pointer.
- */
- static void ResetAndDestroyEntries( TAny* anArray );
-
- /**
- * Copies values from a const entry to a modifiable one.
- * @since S60 3.2.
- * @param aSourceEntry Entry whose values are to be copied.
- * @param aDestinationEntry Entry to whom values are copied.
- */
- void CopyEntryValues( const CRCSEProfileEntry& aSourceEntry,
- CRCSEProfileEntry& aDestinationEntry );
-private: // Data
-
- /**
- * SIP registry ( from SIP Profile Client )
- * Own.
- */
- CSIPManagedProfileRegistry* iSIPRegistry;
-
- /**
- * SIP profiles ( from SIP Profile Client )
- * Own.
- */
- RPointerArray<CSIPProfile> iSIPProfiles;
-
-
-private:
-
- // For testing
- #ifdef TEST_EUNIT
- friend class UT_CRCSEProfileRegistry;
- #endif
- };
-
-#endif // CRCSEPROFILEREGISTRY_H
-
-// End of File