diff -r 137912d1a556 -r 0f9fc722d255 deviceupdatesui/omadmadapters/connmoadapter/src/AddBuffer.cpp --- a/deviceupdatesui/omadmadapters/connmoadapter/src/AddBuffer.cpp Tue Jul 13 03:44:34 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,302 +0,0 @@ -/* - * ============================================================================== - * Copyright (c) 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: - * - * ============================================================================== - */ - -#include - -#include "AddBuffer.h" -#include "Utils.h" -#include "OstTraceDefinitions.h" -#ifdef OST_TRACE_COMPILER_IN_USE -#include "AddBufferTraces.h" -#endif - -_LIT8( KChildNodeWildCardPattern, "/*" ); -_LIT8( KNodeSeparator, "/" ); - -// ======== LOCAL FUNCTIONS ========= - -// ======== MEMBER FUNCTIONS ======== -//------------------------------------------------------------------------------ -// CConnMoNodeElement::CConnMoNodeElement() -//------------------------------------------------------------------------------ -CConnMoNodeElement::CConnMoNodeElement() - { - OstTraceFunctionEntry0( CCONNMONODEELEMENT_CCONNMONODEELEMENT_ENTRY ); - - OstTraceFunctionExit0( CCONNMONODEELEMENT_CCONNMONODEELEMENT_EXIT ); - } - -//------------------------------------------------------------------------------ -// CAddBuffer::~CAddBuffer() -//------------------------------------------------------------------------------ -CConnMoNodeElement::~CConnMoNodeElement() - { - OstTraceFunctionEntry0( CCONNMONODEELEMENT_DELETE_ENTRY ); - - OstTraceFunctionExit0( CCONNMONODEELEMENT_DELETE_EXIT ); - } - -//----------------------------------------------------------------------------- -// CAddBuffer* CAddBuffer::NewL( ) -//----------------------------------------------------------------------------- -CAddBuffer* CAddBuffer::NewL() - { - OstTraceFunctionEntry0( CADDBUFFER_NEWL_ENTRY ); - - CAddBuffer* self = new ( ELeave ) CAddBuffer(); - CleanupStack::PushL( self ); - - self->ConstructL(); - - CleanupStack::Pop( self ); - - OstTraceFunctionExit1( CADDBUFFER_NEWL_EXIT, ( TUint )( self ) ); - return self; - } - -//------------------------------------------------------------------------------ -// CAddBuffer::CAddBuffer() -//------------------------------------------------------------------------------ -CAddBuffer::CAddBuffer() - { - OstTraceFunctionEntry0( CADDBUFFER_CADDBUFFER_ENTRY ); - - OstTraceFunctionExit0( CADDBUFFER_CADDBUFFER_EXIT ); - } - -//------------------------------------------------------------------------------ -// CAddBuffer::~CAddBuffer() -//------------------------------------------------------------------------------ -CAddBuffer::~CAddBuffer() - { - OstTraceFunctionEntry0( CADDBUFFER_DELETE_ENTRY ); - - iBuffer.ResetAndDestroy(); - - OstTraceFunctionExit0( CADDBUFFER_DELETE_EXIT ); - } - -//------------------------------------------------------------------------------ -// CAddBuffer::CAddBuffer() -//------------------------------------------------------------------------------ -void CAddBuffer::ConstructL() - { - OstTraceFunctionEntry0( CADDBUFFER_CONSTRUCTL_ENTRY ); - - OstTraceFunctionExit0( CADDBUFFER_CONSTRUCTL_EXIT ); - } - -//------------------------------------------------------------------------------ -// CAddBuffer::AddNodeToBuffer() -//------------------------------------------------------------------------------ -void CAddBuffer::AddNodeToBufferL( const TDesC8& aUri, - const TDesC8& aParentLUID, - const TInt aStatusRef ) - { - OstTraceExt1( TRACE_NORMAL, CADDBUFFER_ADDNODETOBUFFERL_ENTRY, "ENTRY: CAddBuffer::AddNodeToBufferL;aUri=%s", aUri ); - - CConnMoNodeElement* newNode = new (ELeave) CConnMoNodeElement(); - - newNode->iUri.Copy( aUri ); - newNode->iParentLUID.Copy( aParentLUID ); - newNode->iStatusRef = aStatusRef; - newNode->iProcessed = EFalse; - newNode->iLeaf = EFalse; - - iBuffer.AppendL( newNode ); - OstTrace0( TRACE_NORMAL, CADDBUFFER_ADDNODETOBUFFERL_EXIT, "EXIT: CAddBuffer::AddNodeToBufferL"); - } - -//------------------------------------------------------------------------------ -// CAddBuffer::AddNodeToBuffer() -//------------------------------------------------------------------------------ -void CAddBuffer::AddNodeToBufferL( const TDesC8& aUri, - const TDesC8& aLUID, - const TDesC8& aObject, - const TInt aStatusRef ) - { - OstTraceExt1( TRACE_NORMAL, CADDBUFFER_ADDNODETOBUFFERL_LEAF_ENTRY, "ENTRY: CAddBuffer::AddNodeToBufferL;aUri=%s", aUri ); - - CConnMoNodeElement* newNode = new (ELeave) CConnMoNodeElement(); - - newNode->iUri.Copy( aUri ); - newNode->iParentLUID.Copy( aLUID ); - newNode->iObject.Copy( aObject ); - newNode->iStatusRef = aStatusRef; - newNode->iProcessed = EFalse; - newNode->iLeaf = ETrue; - - iBuffer.AppendL( newNode ); - OstTrace0( TRACE_NORMAL, CADDBUFFER_ADDNODETOBUFFERL_LEAF_EXIT, "EXIT: CAddBuffer::AddNodeToBufferL"); - } - -//------------------------------------------------------------------------------ -// CAddBuffer::FindDynamicNode -//------------------------------------------------------------------------------ -CConnMoNodeElement* CAddBuffer::FindDynamicNode( const TDesC8& aUri ) - { - OstTraceExt1( TRACE_NORMAL, CADDBUFFER_FINDDYNAMICNODE_ENTRY, "ENTRY: CAddBuffer::FindDynamicNode;aUri=%s", aUri ); - - CConnMoNodeElement* resultNode = NULL; - - for ( TInt i = 0; i < iBuffer.Count(); ++i ) - { - if ( iBuffer[i]->iUri.Match(aUri) != KErrNotFound ) - { - // - TBuf8 dynamicNodeChildUri(aUri); - dynamicNodeChildUri.Append( KChildNodeWildCardPattern ); - - if ( iBuffer[i]->iUri.Match( dynamicNodeChildUri ) == KErrNotFound ) - { - // Correct dynamic node found. - OstTrace0( TRACE_NORMAL, - CADDBUFFER_FINDDYNAMICNODE_MATCH_FOUND, - "CAddBuffer::FindDynamicNode;Matching node found."); - resultNode = iBuffer[i]; - break; - } - } - } - if ( resultNode != NULL ) - { - OstTraceExt1( TRACE_NORMAL, - CADDBUFFER_FINDDYNAMICNODE_EXIT, - "EXIT: CAddBuffer::FindDynamicNode;resultNode=%s", - resultNode->iUri ); - } - - return resultNode; - } - - -//------------------------------------------------------------------------------ -// CAddBuffer::Find -//------------------------------------------------------------------------------ -CConnMoNodeElement* CAddBuffer::CacheFind( const TDesC8& aUri ) - { - OstTraceExt1( TRACE_NORMAL, CADDBUFFER_CACHEFIND_ENTRY, "ENTRY: CAddBuffer::CacheFind;aUri=%s", aUri ); - - CConnMoNodeElement* resultNode = NULL; - - for ( TInt i = 0; i < iCache.Count(); ++i ) - { - if ( iCache[i]->iUri.Match( aUri ) != KErrNotFound ) - { - OstTrace0( TRACE_NORMAL, CADDBUFFER_CACHEFIND_MATCH_FOUND, "CAddBuffer::CacheFind; Matching URI found."); - resultNode = iCache[i]; - - OstTraceExt1( TRACE_NORMAL, - CADDBUFFER_CACHEFIND_RESULT_NODE, - "CAddBuffer::CacheFind; resultNode=%s", - resultNode->iUri ); - break; - } - } - - OstTrace0( TRACE_NORMAL, CADDBUFFER_CACHEFIND_EXIT, "EXIT: CAddBuffer::CacheFind"); - return resultNode; - } - -//------------------------------------------------------------------------------ -// CAddBuffer::FindDynamicNode -//------------------------------------------------------------------------------ -CConnMoNodeElement* CAddBuffer::CacheFindDynamicNode( const TDesC8& aUri ) - { - OstTraceExt1( TRACE_NORMAL, CADDBUFFER_CACHEFINDDYNAMICNODE_ENTRY, "ENTRY: CAddBuffer::CacheFindDynamicNode;aUri=%s", aUri ); - - CConnMoNodeElement* resultNode = NULL; - - for ( TInt i = 0; i < iCache.Count(); ++i ) - { - if ( iCache[i]->iUri.Match( aUri ) != KErrNotFound ) - { - // - TBuf8 dynamicNodeChildUri( aUri ); - dynamicNodeChildUri.Append( KChildNodeWildCardPattern ); - - if ( iCache[i]->iUri.Match(dynamicNodeChildUri) == KErrNotFound ) - { - // Correct dynamic node found. - OstTrace0( TRACE_NORMAL, - CADDBUFFER_CACHEFINDDYNAMICNODE_MATCH_FOUND, - "CAddBuffer::CacheFindDynamicNode; Matching node found."); - - resultNode = iCache[i]; - break; - } - } - } - if ( resultNode != NULL ) - { - OstTraceExt1( TRACE_NORMAL, - CADDBUFFER_CACHEFINDDYNAMICNODE_EXIT, - "EXIT: CAddBuffer::CacheFindDynamicNode;resultNode=%s", - resultNode->iUri ); - } - - return resultNode; - } -//------------------------------------------------------------------------------ -// CAddBuffer::AddNodeToBuffer() -//------------------------------------------------------------------------------ -TInt CAddBuffer::GetGroup( const TDesC8& aRoot, RPointerArray* aGroup ) - { - OstTraceExt1( TRACE_NORMAL, CADDBUFFER_GETGROUP_ENTRY, "ENTRY: CAddBuffer::GetGroup;aRoot=%s", aRoot ); - - iCache.Reset(); - TInt retval( KErrNotFound ); - TBool first = ETrue; - TBuf8 groupTag; - groupTag.Copy( aRoot ); - groupTag.Append( KChildNodeWildCardPattern ); - - for ( TInt i = 0; i < iBuffer.Count(); ++i ) - { - if ( iBuffer[i]->iUri.Match( groupTag ) != KErrNotFound - && !iBuffer[i]->iProcessed ) - { - if ( first ) - { - groupTag.Insert( aRoot.Length(), KNodeSeparator ); - groupTag.Insert( aRoot.Length() + 1, CUtils::GetSecondURISeg( iBuffer[i]->iUri ) ); - first = EFalse; - retval = 0; - } - aGroup->Append(iBuffer[i]); - iCache.Append(iBuffer[i]); - retval++; - } - } - OstTrace1( TRACE_NORMAL, CADDBUFFER_GETGROUP_EXIT, "EXIT: CAddBuffer::GetGroup;retval=%d", retval ); - - return retval; - } -//------------------------------------------------------------------------------ -// CAddBuffer::~CAddBuffer() -//------------------------------------------------------------------------------ -void CAddBuffer::Reset() - { - OstTraceFunctionEntry0( CADDBUFFER_Reset_ENTRY ); - - iBuffer.ResetAndDestroy(); - - OstTraceFunctionExit0( CADDBUFFER_Reset_EXIT ); - } -