diff -r 76bddcd072ba -r ada8ffed4752 xdmprotocols/LocalProtocol/src/LocalDocumentNode.cpp --- a/xdmprotocols/LocalProtocol/src/LocalDocumentNode.cpp Thu May 27 13:17:17 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,331 +0,0 @@ -/* -* Copyright (c) 2005 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: CLocalDocumentNode -* -*/ - - - - -// INCLUDE FILES -#include "XdmDocument.h" -#include "LocalProtocol.h" -#include "LocalDocumentNode.h" -#include "LocalNodeAttribute.h" - - -// ---------------------------------------------------------- -// CLocalDocumentNode::CLocalDocumentNode -// -// ---------------------------------------------------------- -// -CLocalDocumentNode::CLocalDocumentNode( CXdmEngine& aXdmEngine, - CLocalProtocol& aLocalProtocol ) : - CXdmDocumentNode( aXdmEngine, ( MXdmNodeFactory& )*this ), - iLocalProtocol( aLocalProtocol ) - { - } - - -// ---------------------------------------------------------- -// CLocalDocumentNode::CLocalDocumentNode -// -// ---------------------------------------------------------- -// -CLocalDocumentNode::CLocalDocumentNode( CXdmEngine& aXdmEngine, - CXdmDocumentNode* aParentNode, - CLocalProtocol& aLocalProtocol ) : - CXdmDocumentNode( aXdmEngine, - ( MXdmNodeFactory& )*this, aParentNode ), - iLocalProtocol( aLocalProtocol ) - - { - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::CLocalDocumentNode -// -// ---------------------------------------------------------- -// -CLocalDocumentNode::CLocalDocumentNode( const TBool aLeafNode, - CXdmEngine& aXdmEngine, - CXdmDocumentNode* aParentNode, - CLocalProtocol& aLocalProtocol ) : - CXdmDocumentNode( aLeafNode, aXdmEngine, - ( MXdmNodeFactory& )*this, aParentNode ), - iLocalProtocol( aLocalProtocol ) - { - - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::NewL -// -// ---------------------------------------------------------- -// -CLocalDocumentNode* CLocalDocumentNode::NewL( CXdmEngine& aXdmEngine, - CLocalProtocol& aLocalProtocol ) - { - return new ( ELeave ) CLocalDocumentNode( aXdmEngine, aLocalProtocol ); - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::NewL -// -// ---------------------------------------------------------- -// -CLocalDocumentNode* CLocalDocumentNode::NewL( CXdmEngine& aXdmEngine, - const TDesC& aNodeName, - CLocalProtocol& aLocalProtocol ) - { - CLocalDocumentNode* self = new ( ELeave ) CLocalDocumentNode( aXdmEngine, aLocalProtocol ); - CleanupStack::PushL( self ); - self->BaseConstructL( aNodeName ); - CleanupStack::Pop(); - return self; - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::NewL -// -// ---------------------------------------------------------- -// -CLocalDocumentNode* CLocalDocumentNode::NewL( CXdmEngine& aXdmEngine, - CLocalProtocol& aLocalProtocol, - const CXdmDocumentNode& aAnotherNode, - const CXdmDocumentNode& aParentNode ) - { - CLocalDocumentNode* self = new ( ELeave ) CLocalDocumentNode( aXdmEngine, aLocalProtocol ); - CleanupStack::PushL( self ); - self->BaseConstructL( aAnotherNode.NodeName() ); - self->CopyConstructL( aAnotherNode, aParentNode ); - CleanupStack::Pop(); - return self; - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::NewL -// -// ---------------------------------------------------------- -// -CLocalDocumentNode* CLocalDocumentNode::NewL( CXdmEngine& aXdmEngine, - const TDesC& aNodeName, - CXdmDocumentNode* aParentNode, - CLocalProtocol& aLocalProtocol ) - { - CLocalDocumentNode* self = new ( ELeave ) CLocalDocumentNode( aXdmEngine, aParentNode, - aLocalProtocol ); - CleanupStack::PushL( self ); - self->BaseConstructL( aNodeName ); - CleanupStack::Pop(); - return self; - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::NewL -// -// ---------------------------------------------------------- -// -CLocalDocumentNode* CLocalDocumentNode::NewL( const TBool aLeafNode, - CXdmEngine& aXdmEngine, - const TDesC& aNodeName, - CXdmDocumentNode* aParentNode, - CLocalProtocol& aLocalProtocol ) - { - CLocalDocumentNode* self = new ( ELeave ) CLocalDocumentNode( aLeafNode, aXdmEngine, - aParentNode, aLocalProtocol ); - CleanupStack::PushL( self ); - self->BaseConstructL( aNodeName ); - CleanupStack::Pop(); - return self; - } - -// ---------------------------------------------------------- -// CXdmDocumentNode::NewL -// -// ---------------------------------------------------------- -// -CLocalDocumentNode* CLocalDocumentNode::NewL( const TBool aLeafNode, - CXdmEngine& aXdmEngine, - CXdmDocumentNode* aParentNode, - CLocalProtocol& aLocalProtocol ) - { - return new ( ELeave ) CLocalDocumentNode( aLeafNode, aXdmEngine, - aParentNode, aLocalProtocol ); - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::CopyConstructL -// -// ---------------------------------------------------------- -// -void CLocalDocumentNode::CopyConstructL( const CXdmDocumentNode& aAnotherNode, - const CXdmDocumentNode& aParentNode ) - { - CXdmDocumentNode::CopyConstructL( aAnotherNode, aParentNode ); - //TODO: Write the protocol specific copy operations - } - -// ---------------------------------------------------- -// CLocalDocumentNode::~CLocalDocumentNode -// -// ---------------------------------------------------- -// -EXPORT_C CLocalDocumentNode::~CLocalDocumentNode() - { - #ifdef _DEBUG - iLocalProtocol.WriteToLog( _L8( "CLocalDocumentNode::~CLocalDocumentNode(): %x" ), this ); - #endif - delete iPrefix; - delete iNextNode; - } - -// ---------------------------------------------------- -// CLocalDocumentNode::RemoveLocalL -// -// ---------------------------------------------------- -// -EXPORT_C void CLocalDocumentNode::RemoveLocalL( CXdmDocumentNode* aChileNode ) - { - RemoveChileNodeL( aChileNode ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::AppendLocalL -// -// ---------------------------------------------------- -// -EXPORT_C void CLocalDocumentNode::AppendLocalL( CXdmDocumentNode* aChileNode ) - { - if( aChileNode->Match( *this ) ) - { - const TInt count = aChileNode->NodeCount(); - for( TInt i = 0;i < count;i++ ) - AppendChileNodeL( aChileNode->ChileNode( i ) ); - } - else AppendChileNodeL( aChileNode ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::ReplaceLocalL -// -// ---------------------------------------------------- -// -EXPORT_C void CLocalDocumentNode::ReplaceLocalL( CXdmDocumentNode* aNewNode, - CXdmDocumentNode* aTargetNode ) - { - ReplaceChileNodeL( aNewNode, aTargetNode ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::CreateChileNodeL -// -// ---------------------------------------------------- -// -CXdmDocumentNode* CLocalDocumentNode::ChileNodeL() - { - #ifdef _DEBUG - iLocalProtocol.WriteToLog( _L8( "CLocalDocumentNode::CreateChileNodeL()" ) ); - #endif - return CLocalDocumentNode::NewL( EFalse, iXdmEngine, this, iLocalProtocol ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::CreateChileNodeL -// -// ---------------------------------------------------- -// -CXdmDocumentNode* CLocalDocumentNode::ChileNodeL( const TDesC& aChildName ) - { - #ifdef _DEBUG - iLocalProtocol.WriteToLog( _L8( "CLocalDocumentNode::CreateChileNodeL() - Name: %S" ), &aChildName ); - #endif - return CLocalDocumentNode::NewL( EFalse, iXdmEngine, aChildName, this, iLocalProtocol ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::CreateChileNodeL -// -// ---------------------------------------------------- -// -CXdmDocumentNode* CLocalDocumentNode::ChileNodeL( const CXdmDocumentNode* aAnotherNode ) - { - #ifdef _DEBUG - iLocalProtocol.WriteToLog( _L8( "CLocalDocumentNode::ChileNodeL() - Object: %x" ), aAnotherNode ); - #endif - return CLocalDocumentNode::NewL( iXdmEngine, iLocalProtocol, *aAnotherNode, *this ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::CreateAttributeL -// -// ---------------------------------------------------- -// -CXdmNodeAttribute* CLocalDocumentNode::AttributeL() - { - #ifdef _DEBUG - iLocalProtocol.WriteToLog( _L8( "CLocalDocumentNode::CreateAttributeL()" ) ); - #endif - return CLocalNodeAttribute::NewL( iXdmEngine, this, iLocalProtocol ); - } - -// ---------------------------------------------------- -// CLocalDocumentNode::CreateAttributeL -// -// ---------------------------------------------------- -// -CXdmNodeAttribute* CLocalDocumentNode::AttributeL( const TDesC& aAttributeName ) - { - #ifdef _DEBUG - iLocalProtocol.WriteToLog( _L8( "CLocalDocumentNode::CreateAttributeL() - Name: %S" ), &aAttributeName ); - #endif - return CLocalNodeAttribute::NewL( iXdmEngine, aAttributeName, this, iLocalProtocol ); - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::SetParentNode -// -// ---------------------------------------------------------- -// -void CLocalDocumentNode::SetParentNode( CLocalDocumentNode*& aParentNode ) - { - iParentNode = aParentNode; - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::NamespacePrefix -// -// ---------------------------------------------------------- -// -TPtrC8 CLocalDocumentNode::Prefix() const - { - return iPrefix != NULL ? iPrefix->Des() : TPtrC8(); - } - -// ---------------------------------------------------------- -// CLocalDocumentNode::SetNamespacePrefixL -// -// ---------------------------------------------------------- -// -void CLocalDocumentNode::SetPrefixL( const TDesC8& aPrefix ) - { - delete iPrefix; - iPrefix = NULL; - iPrefix = HBufC8::NewL( aPrefix.Length() ); - iPrefix->Des().Copy( aPrefix ); - } - - - -