convergedcallengine/spsettings/tsrc/public/basic/spsettingsUT/stubs/T_cenrepdatabaseutilStub.cpp
changeset 46 2fa1fa551b0b
parent 42 35488577e233
child 48 78df25012fda
--- a/convergedcallengine/spsettings/tsrc/public/basic/spsettingsUT/stubs/T_cenrepdatabaseutilStub.cpp	Mon Aug 23 15:50:31 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,831 +0,0 @@
-/*
-* Copyright (c) 2008 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:  Utility class to central repository database.
-*
-*/
-
-
-#include <centralrepository.h>
-
-#include "cenrepdatabaseutil.h"
-//#include "//CENREPDATABASELOGger.h"
-
-TUint count( 0 );
-const TInt KNoEntryId = 0; // Not allowed ID for entries. Deleted rows
-                           // are marked with KNoEntryId
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-CCenRepDatabaseUtil::CCenRepDatabaseUtil( TUint32 aStartKey,
-                                      TUint32 aColIncrement,
-                                      TUint32 aColMask,
-                                      TUint32 aIdCounterKey,
-                                      TInt aColCount )
-    : iStartKey( aStartKey ),
-      iColIncrement( aColIncrement ),
-      iColMask( aColMask ),
-      iIdCounterKey( aIdCounterKey ),
-      iColCount( aColCount )
-    {
-    }
-    
-// ---------------------------------------------------------------------------
-// 2nd phase constructor
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::ConstructL( TUid aUid )
-    {
-    if( iColIncrement - 1 + iColMask != KMaxTUint )
-        {
-        User::Leave( KErrArgument );
-        }
-        
-    iRepository = CRepository::NewL( aUid );
-
-    // Create semaphore name from repository uid
-    TUidName uidName = aUid.Name();
-    TInt err = iSemaphore.OpenGlobal( uidName );
-    if ( err != KErrNone )
-        {
-        User::LeaveIfError( iSemaphore.CreateGlobal( uidName, 1 ) );
-        }
-    
-    }
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CCenRepDatabaseUtil* CCenRepDatabaseUtil::NewL( TUid aUid, 
-                                                     TUint32 aStartKey, 
-                                                     TUint32 aColIncrement, 
-                                                     TUint32 aColMask,
-                                                     TUint32 aIdCounterKey,
-                                                     TInt aColCount )
-    {
-    ////CENREPDATABASELOG( "CCenRepDatabaseUtil::NewL - IN" );
-    
-    CCenRepDatabaseUtil* self = CCenRepDatabaseUtil::NewLC( 
-                                                        aUid, 
-                                                        aStartKey, 
-                                                        aColIncrement, 
-                                                        aColMask, 
-                                                        aIdCounterKey, 
-                                                        aColCount );
-    CleanupStack::Pop( self );
-    
-    ////CENREPDATABASELOG( "CCenRepDatabaseUtil::NewL - OUT" );
-    
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CCenRepDatabaseUtil* CCenRepDatabaseUtil::NewLC( TUid aUid, 
-                                                      TUint32 aStartKey, 
-                                                      TUint32 aColIncrement, 
-                                                      TUint32 aColMask,
-                                                      TUint32 aIdCounterKey,
-                                                      TInt aColCount )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::NewLC - IN" );
-    
-    CCenRepDatabaseUtil* self = new( ELeave ) CCenRepDatabaseUtil( 
-                                                                aStartKey,
-                                                                aColIncrement,
-                                                                aColMask,
-                                                                aIdCounterKey,
-                                                                aColCount );
-    CleanupStack::PushL( self );
-    self->ConstructL( aUid );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::NewLC - OUT" );
-    
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CCenRepDatabaseUtil::~CCenRepDatabaseUtil()
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::~CCenRepDatabaseUtil - IN" );
-    
-    iSemaphore.Close();
-    delete iRepository;
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::~CCenRepDatabaseUtil - OUT" );
-    }
-
-// ---------------------------------------------------------------------------
-// Begins transaction in repository.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CCenRepDatabaseUtil::BeginTransactionL()
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::BeginTransactionL - IN" );
-    
-/*    iSemaphore.Wait();
-	TCleanupItem cleanup( CCenRepDatabaseUtil::ReleaseSemaphore, this );
-	CleanupStack::PushL( cleanup );
-    
-    User::LeaveIfError( 
-        iRepository->StartTransaction( CRepository::EReadWriteTransaction ) );
-    
-	iRepository->CleanupRollbackTransactionPushL(); // if leave happens,
-	                                                // only roll back, no delete
-	*/
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::BeginTransactionL - OUT" );                                                
-    }
-
-// ---------------------------------------------------------------------------
-// Commits changes in repository.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::CommitTransaction()
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::CommitTransaction - IN" );
-    
-/*	TUint32 temp;
-	
-	TInt retval = iRepository->CommitTransaction( temp );
-	
-	iSemaphore.Signal();
-
-	CleanupStack::Pop( 2 ); // semaphore and repository*/
-	
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::CommitTransaction - OUT" );
-
-    //return retval;
-    return 0;
-    }
-
-// ---------------------------------------------------------------------------
-// Rollback changes in repository.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CCenRepDatabaseUtil::RollbackTransaction()
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::RollbackTransaction - IN" );
-    
-/*	CleanupStack::Pop( 2 ); // rollback transaction item and semaphore
-
-	iRepository->RollbackTransaction();
-	iSemaphore.Signal();*/
-	
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::RollbackTransaction - OUT" );
-    }
-    
-// ---------------------------------------------------------------------------
-// Add new entry to cenrep.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CCenRepDatabaseUtil::AddEntryL( 
-    TInt& aEntryId,
-    const RIpAppPropArray& aArray )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::AddEntryL - IN" );
-    
-    CreateEntryIdL( aEntryId );
-    TUint32 idKey = GetNewIdKeyL();
-    
-    // Add entry Id
-    SetOrCreateKeyL( idKey, aEntryId );
-    
-    UpdatePropertiesL( idKey, aArray );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::AddEntryL - OUT" );
-    }
-
-// ---------------------------------------------------------------------------
-// Find entry by ID.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::FindEntryL( 
-    TInt aEntryId,
-    RIpAppPropArray& aArray )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindEntryL - IN" );
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find all rows where ID is aServiceId (entry row + each property row)
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, aEntryId, keys );
-
-    TInt count = keys.Count();
-
-    if ( KErrNone == err && count > 0 )
-        {
-        TUint32 idKey = keys[ 0 ];
-
-        for ( TInt i = 1; i <= iColCount; i++ )
-            {
-            RBuf value;
-            value.CreateL( KCenRepMaxDesLength );
-            value.CleanupClosePushL();
-            TUint32 propertyKey = idKey + i * iColIncrement;
-            TInt errProperty = iRepository->Get( propertyKey, value );
-            if( errProperty == KErrNone && value.Compare( KNullDesC ) != 0 )
-                {
-                CCenRepDatabaseProperty* property = CCenRepDatabaseProperty::NewLC();
-                property->SetName( propertyKey - idKey + iStartKey );
-                User::LeaveIfError( property->SetValue( value ) );
-                User::LeaveIfError( aArray.Append( property ) );
-                CleanupStack::Pop( property );
-                }
-                
-            CleanupStack::PopAndDestroy( &value );
-            }
-        }
-
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindEntryL - OUT" );
-    
-    return err;
-
-    }
-
-// ---------------------------------------------------------------------------
-// Update entry in cenrep.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::UpdateEntryL( 
-    TInt aEntryId, 
-    const RIpAppPropArray& aArray )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::UpdateEntryL - IN" );
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find rows where ID is located
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, aEntryId, keys );
-
-    TInt count = keys.Count();
-
-    if ( KErrNone == err && count > 0 )
-        {
-        TUint32 idKey = keys[ 0 ];
-        UpdatePropertiesL( idKey, aArray );
-        }
-
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::UpdateEntryL - OUT" );
-    
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Delete entry from cenrep.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::DeleteEntryL( TInt aEntryId )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::DeleteEntryL - IN" );
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find all rows where ID is aServiceId (entry row + each property row)
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, aEntryId, keys );
-
-    TInt count = keys.Count();
-
-    if ( KErrNone == err && count > 0 )
-        {
-        TUint32 idKey = keys[ 0 ];
-        SetOrCreateKeyL( idKey, KNoEntryId );
-
-        for ( TInt i = 1; i <= iColCount; i++ )
-            {
-            TUint32 propertyKey = idKey + i * iColIncrement;
-            SetOrCreateKeyL( propertyKey, KNullDesC );
-            }
-        }
-
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::DeleteEntryL - OUT" );
-    
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Find property and its value by ID.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::FindPropertyL( TInt aEntryId, 
-                    TUint32 aPropertyName,
-                    CCenRepDatabaseProperty& aProperty )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindPropertyL - IN" );
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-    TBool found = EFalse;
-
-    // Find all rows where ID is aServiceId (entry row + each property row)
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, aEntryId, keys );
-
-    TInt count = keys.Count();
-
-    if ( KErrNone == err && count > 0 )
-        {
-        TUint32 idKey = keys[ 0 ];
-
-        for ( TInt i = 1; i <= iColCount; i++ )
-            {
-            TUint32 propertyKey = idKey + i * iColIncrement;
-            TUint32 propertyName = propertyKey - idKey + iStartKey;
-            if( propertyName == aPropertyName )
-                {
-                RBuf value;
-                value.CreateL( KCenRepMaxDesLength );
-                value.CleanupClosePushL();
-                
-                err = iRepository->Get( propertyKey, value );
-                if( err == KErrNone )
-                    {
-                    if( value.Compare( KNullDesC ) != 0 )
-                        {
-                        aProperty.SetName( propertyName );
-                        User::LeaveIfError( aProperty.SetValue( value ) );
-                        found = ETrue;
-                        }
-                    }
-                
-                CleanupStack::PopAndDestroy( &value );
-                break;
-                }
-            }
-        }
-
-    if( found )
-        {
-        err = KErrNone;
-        }
-    else
-        {
-        if( err == KErrNone )
-            {
-            err = KErrNotFound;
-            }
-        }
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindPropertyL - OUT" );
-    
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Adds or updates properties to/in cenrep.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::AddOrUpdatePropertiesL( 
-    TInt aEntryId, 
-    const RIpAppPropArray& aArray )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::AddOrUpdatePropertiesL - IN" );
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find row maching to given ID
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, aEntryId, keys );
-
-    if ( KErrNone == err && keys.Count() > 0 )
-        {
-        TUint32 idKey = keys[ 0 ];
-
-        TInt count = aArray.Count();
-
-        // Add properties one by one
-        for( TInt i = 0; i < count; i++ )
-            {
-            CCenRepDatabaseProperty* property = aArray[i];
-            TUint32 propertyName = property->GetName();
-            TUint32 key = idKey - iStartKey + propertyName;
-            SetOrCreateKeyL( key, property->GetDesValue() );
-            }
-        }
-
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::AddOrUpdatePropertiesL - OUT" );
-    
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Return count of entries in cenrep.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::EntryCountL( TInt& aCount )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::EntryCountL - IN" );
-    
-    TInt err( KErrNone );
-    
-/*    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find all rows where ID not equals to KNoEntryId
-    TInt err = iRepository->FindNeqL( iStartKey, iColMask, KNoEntryId, keys );
-
-    TInt count = keys.Count();
-
-    if ( KErrNone == err && count > 0 )
-        {
-        aCount = keys.Count();
-        }
-    else
-        {
-        aCount = 0;    
-        }
-
-    CleanupStack::PopAndDestroy( &keys );*/
-    
-    if ( 2 > count )
-        {
-        if ( !count )
-            {
-            err = KErrNotFound;
-            }
-        aCount = count;
-        count++;
-        }
-    else
-        {
-        aCount = count;
-        count = 0;
-        }
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::EntryCountL - OUT" );
-
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Find all ids of entries in cenrep.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::FindEntryIdsL( RArray<TInt>& aEntryIds )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindEntryIdsL - IN" );
-    
-    aEntryIds.Reset();
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find all entry rows from ID column. Deleted rows are not returned.
-    TInt err = iRepository->FindNeqL( iStartKey, iColMask, KNoEntryId, keys );
-
-    TInt count = keys.Count();
-
-    if ( KErrNone == err && count > 0 )
-        {
-        for( TInt i = 0; i < count; i++ )
-            {
-            TUint32 key = keys[i];
-            TInt entryId = 0;
-            User::LeaveIfError( iRepository->Get( key, entryId ) );
-            User::LeaveIfError( aEntryIds.Append( entryId ) );
-            }
-        }
-
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindEntryIdsL - OUT" );
-    
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Delete given properties from entry.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::DeletePropertiesL( TInt aEntryId,
-                        const RArray<TUint32>& aNameArray )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::DeletePropertiesL - IN" );
-    
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-
-    // Find row that matches to aEntryID
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, aEntryId, keys );
-
-    if ( KErrNone == err && keys.Count() > 0 )
-        {
-        TUint32 idKey = keys[ 0 ];
-
-        TInt count = aNameArray.Count();
-
-        // delete properties one by one
-        for( TInt i = 0; i < count; i++ )
-            {
-            TUint32 name = aNameArray[i];
-            TUint32 key = idKey - iStartKey + name;
-            SetOrCreateKeyL( key, KNullDesC );
-            }
-        }
-
-    CleanupStack::PopAndDestroy( &keys );
-    
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::DeletePropertiesL - OUT" );
-    
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Find entry ids of given properties.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CCenRepDatabaseUtil::FindEntryIdsFromPropertiesL( 
-    const RIpAppPropArray& aPropertyArray, 
-    RArray<TInt>& aEntryIds )
-    {
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindEntryIdsFromPropertiesL - IN" );
-    
-    TInt err = FindEntryIdsL( aEntryIds );
-    if( err == KErrNone )
-        {
-        TInt count = aEntryIds.Count();
-        TInt removed = 0;
-        
-        for( TInt i = 0; i < count; i++ )
-            {
-            TBool ok = EFalse;
-            TUint32 entryId = aEntryIds[ i - removed ];
-            CheckEntryHasPropertiesL( entryId, aPropertyArray, ok );
-            
-            if( !ok )
-                {
-                aEntryIds.Remove( i - removed );
-                removed++;
-                }
-            }
-        }
-        
-    //CENREPDATABASELOG( "CCenRepDatabaseUtil::FindEntryIdsFromPropertiesL - OUT" );
-        
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// Release semaphore, this function is used in custom cleanup
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::ReleaseSemaphore( TAny* aPtr )
-	{
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::ReleaseSemaphore - IN" );
-	
-	ASSERT ( aPtr );
-	CCenRepDatabaseUtil* utils = static_cast<CCenRepDatabaseUtil*>( aPtr );
-	utils->DoReleaseSemaphore();
-	
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::ReleaseSemaphore - OUT" );
-	}
-
-// ---------------------------------------------------------------------------
-// Release semaphore
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::DoReleaseSemaphore()
-	{
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::DoReleaseSemaphore - IN" );
-	
-	iSemaphore.Signal();
-	
-	//CENREPDATABASELOG( "CCenRepDatabaseUtil::DoReleaseSemaphore - OUT" );
-	}
-
-// ---------------------------------------------------------------------------
-// Set value of key or create a new one.
-// ---------------------------------------------------------------------------
-//
-template<class T> void CCenRepDatabaseUtil::SetOrCreateKeyL( TUint32 aKey, 
-    const T& aValue )
-    {
-    TInt err = iRepository->Set( aKey, aValue );
-
-    if ( KErrNotFound == err )
-        {
-        err = iRepository->Create( aKey, aValue );
-        }
-
-    User::LeaveIfError( err );
-    }
-
-// ---------------------------------------------------------------------------
-// Create new ID.
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::CreateEntryIdL( TInt& aNewId )
-    {
-    TInt newId( KNoEntryId );
-
-    TInt err = iRepository->Get( iIdCounterKey, newId );
-
-    if ( KErrNone == err  )
-        {
-        if ( 0 < newId )
-            {
-            // Store next available ID
-            err = iRepository->Set( iIdCounterKey, newId + 1 );
-            }
-        else
-            {
-            // Range of ID exceeded
-            err = KErrOverflow;
-            }
-        }
-    else if ( KErrNotFound == err )
-        {
-        // Create new key (should always be found)
-        SetOrCreateKeyL( iIdCounterKey, KNoEntryId + 1 );
-        }
-
-    aNewId = newId;
-
-    User::LeaveIfError( err );
-    }
-
-// ---------------------------------------------------------------------------
-// Get next available key for ID.
-// ---------------------------------------------------------------------------
-//
-TUint32 CCenRepDatabaseUtil::GetNewIdKeyL()
-    {
-    RKeyArray keys;
-    CleanupClosePushL( keys );
-    TUint32 idKey( 0 );
-
-    // Reuse keys which value is KNoEntryId
-    TInt err = iRepository->FindEqL( iStartKey, iColMask, KNoEntryId, keys );
-
-    if ( KErrNone == err && 0 < keys.Count() )
-        {
-        // return id column key from first deleted row
-        idKey = keys[0];
-        }
-    else if ( KErrNotFound == err )
-        {
-        keys.Close();
-        TInt err1 = iRepository->FindL( iStartKey, iColMask, keys );
-
-        if( KErrNone == err1  )
-            {
-            // return new
-            TInt count( keys.Count() );
-            idKey = keys[count-1] + 1;
-            }
-        else if ( KErrNotFound == err1 )
-            {
-            idKey = iStartKey;
-            }
-        else
-            {
-            User::Leave( err1 );
-            }
-        }
-    else
-    	{
-    	User::Leave( err );
-    	}
-
-    CleanupStack::PopAndDestroy( &keys );
-
-    return idKey;
-    }
-    
-// ---------------------------------------------------------------------------
-// Update given properties to cenrep.
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::UpdatePropertiesL(
-    TUint32 aIdKey,
-    const RIpAppPropArray& aArray )
-    {
-    TInt count = aArray.Count();
-
-    // Create all keys for this entry
-    RKeyArray propertyKeys;
-    CleanupClosePushL( propertyKeys );
-    for( TInt k = 1; k <= iColCount; k++ )
-        {
-        User::LeaveIfError( propertyKeys.Append( aIdKey + k * iColIncrement ) );
-        }
-    
-    // Add properties one by one
-    for( TInt i = 0; i < count; i++ )
-        {
-        CCenRepDatabaseProperty* property = aArray[i];
-        TUint32 propertyName = property->GetName();
-        TUint32 key = aIdKey - iStartKey + propertyName;
-        SetOrCreateKeyL( key, property->GetDesValue() );
-        
-        // Get only non-set keys
-        TInt index = propertyKeys.Find( key );
-        if( index != KErrNotFound )
-            {
-            propertyKeys.Remove( index );
-            }
-        }
-    
-    // set non-set properties one by one
-    count = propertyKeys.Count();
-    for( TInt j = 0; j < count; j++ )
-        {
-        TUint32 key = propertyKeys[j];
-        SetOrCreateKeyL( key, KNullDesC() );
-        }
-    
-    CleanupStack::PopAndDestroy( &propertyKeys );    
-    }
-
-// ---------------------------------------------------------------------------
-// Check if entry has these properties.
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::CheckEntryHasPropertiesL( 
-    TInt aEntryId, 
-    const RIpAppPropArray& aPropertyArray, 
-    TBool& aOk )
-    {
-    RIpAppPropArray allArray;
-	TCleanupItem cleanup( CCenRepDatabaseUtil::CleanupPointerArray, &allArray );
-	CleanupStack::PushL( cleanup );
-    
-    TInt err = FindEntryL( aEntryId, allArray );
-    if( err == KErrNone )
-        {
-        aOk = ETrue;
-        TInt count = aPropertyArray.Count();
-        TInt allCount = allArray.Count();
-        
-        for( TInt i = 0; i < count; i++ )
-            {
-            CCenRepDatabaseProperty* property = aPropertyArray[i];
-            TUint32 name = property->GetName();
-            const TDesC& value = property->GetDesValue();
-            TBool found = EFalse;
-            for( TInt j = 0; j < allCount; j++ )
-                {
-                CCenRepDatabaseProperty* allProperty = allArray[j];
-                if( name == allProperty->GetName() &&
-                    value.Compare( allProperty->GetDesValue() ) == 0 )
-                    {
-                    found = ETrue;
-                    break;
-                    }
-                }
-            if( !found )
-                {
-                aOk = EFalse;
-                break;
-                }
-            }
-        }
-    else
-        {
-        aOk = EFalse;
-        }
-
-    CleanupStack::PopAndDestroy( &allArray );
-    }
-
-// ---------------------------------------------------------------------------
-// Cleanup array of properties.
-// ---------------------------------------------------------------------------
-//
-void CCenRepDatabaseUtil::CleanupPointerArray(  TAny* aPointer )
-	{
-	RIpAppPropArray* array = static_cast<RIpAppPropArray*>( aPointer );
-	array->ResetAndDestroy();
-	}
-    
-