xdmprotocols/XdmXmlParser/src/XmlFormatter.cpp
author Pat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:23:14 +0100
branchRCL_3
changeset 35 fbd2e7cec7ef
permissions -rw-r--r--
Revert incorrect RCL_3 drop: Revision: 201027 Kit: 201035
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
35
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     1
/*
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     2
* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     3
* All rights reserved.
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     8
*
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
     9
* Initial Contributors:
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    11
*
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    12
* Contributors:
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    13
*
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    14
* Description:   CXmlFormatter
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    15
*
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    16
*/
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    17
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    18
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    19
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    20
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    21
// INCLUDES
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    22
#include <XdmDocument.h>
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    23
#include <XdmDocumentNode.h>
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    24
#include <XdmNodeAttribute.h>
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    25
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    26
#include "xdmlogwriter.h"
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    27
#include "XmlFormatter.h"
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    28
#include "XmlParserDefines.h"
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    29
#include "XmlParserNodePath.h"
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    30
#include "XdmXmlParser.h"
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    31
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    32
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    33
// CXmlFormatter::CXmlFormatter
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    34
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    35
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    36
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    37
CXmlFormatter::CXmlFormatter( CXdmXmlParser& aParserMain ) :
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    38
                              iTargetFound( EFalse ),
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    39
                              iIsAppended( EFalse ),
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    40
                              iParserMain( aParserMain )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    41
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    42
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    43
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    44
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    45
// CXmlFormatter::NewL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    46
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    47
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    48
//    
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    49
CXmlFormatter* CXmlFormatter::NewL( CXdmXmlParser& aParserMain )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    50
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    51
    CXmlFormatter* self = new ( ELeave ) CXmlFormatter( aParserMain );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    52
    CleanupStack::PushL( self );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    53
    self->ConstructL();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    54
    CleanupStack::Pop();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    55
    return self;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    56
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    57
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    58
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    59
// CXmlFormatter::~CXmlFormatter
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    60
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    61
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    62
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    63
CXmlFormatter::~CXmlFormatter()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    64
    {        
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    65
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    66
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    67
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    68
// CXmlFormatter::ConstructL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    69
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    70
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    71
//        
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    72
void CXmlFormatter::ConstructL()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    73
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    74
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    75
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    76
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    77
// CXmlFormatter::Prefix
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    78
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    79
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    80
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    81
TPtrC8 CXmlFormatter::Prefix( const MXdmNodeInterface& aInterface )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    82
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    83
    return aInterface.Prefix();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    84
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    85
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    86
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    87
// CXdmXmlContentHandler::Reset
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    88
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    89
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    90
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    91
CXdmNodeAttribute* CXmlFormatter::TargetAttribute() const
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    92
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    93
    return iTargetAttribute;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    94
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    95
    
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    96
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    97
// CXmlFormatter::FindElementName
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    98
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
    99
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   100
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   101
TPtrC8 CXmlFormatter::FindElementName( const TDesC8& aElementString )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   102
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   103
    TInt index = aElementString.LocateF( 32 );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   104
    if( index > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   105
        return aElementString.Left( index );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   106
    else return aElementString;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   107
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   108
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   109
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   110
// CXmlFormatter::ResetFormatBuffer
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   111
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   112
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   113
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   114
void CXmlFormatter::ResetFormatBuffer()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   115
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   116
    iFormBufferPos = 0;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   117
    delete iFormatBuffer;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   118
    iFormatBuffer = NULL;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   119
    delete iNodePath;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   120
    iNodePath = NULL;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   121
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   122
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   123
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   124
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   125
// CXmlFormatter::BufferToStringLC
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   126
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   127
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   128
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   129
HBufC8* CXmlFormatter::BufferToStringLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   130
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   131
    HBufC8* ret = HBufC8::NewLC( iFormatBuffer->Size() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   132
    TPtr8 pointer( ret->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   133
    iFormatBuffer->Read( 0, pointer, iFormatBuffer->Size() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   134
    ResetFormatBuffer();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   135
    return ret;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   136
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   137
      
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   138
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   139
// CXmlFormatter::CheckSubsetPath
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   140
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   141
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   142
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   143
void CXmlFormatter::CheckSubsetPath( const CXdmDocumentNode& aNode )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   144
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   145
    iTargetFound = iNodePath->CheckNextNode( aNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   146
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   147
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   148
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   149
// CXmlFormatter::FormatLC
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   150
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   151
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   152
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   153
HBufC8* CXmlFormatter::FormatLC( const TDesC8& aXmlFragment,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   154
                                 const CXdmDocument* aDocument,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   155
                                 const CXdmDocumentNode* aTargetNode )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   156
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   157
    iIsAppended = EFalse;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   158
    iTargetFound = EFalse;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   159
    TBool addToRoot = EFalse;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   160
    iFormatBuffer = CBufSeg::NewL( 128 );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   161
    iElementType = aTargetNode->ElementType();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   162
    iDocumentFragment.Set( aXmlFragment );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   163
    iNodePath = CXmlParserNodePath::NewL( iParserMain, iElementType, *aTargetNode, this );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   164
    CXdmDocumentNode* element = aDocument->DocumentRoot();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   165
    CXdmDocumentNode* root = element;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   166
    CheckSubsetPath( *root );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   167
    if( iTargetFound )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   168
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   169
        addToRoot = ETrue;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   170
        iIsAppended = ETrue;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   171
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   172
    iFormatBuffer->InsertL( iFormBufferPos, KXmldocumentStart );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   173
    iFormBufferPos = iFormBufferPos + KXmldocumentStart().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   174
    FormatNamespaceDeclarationsL( *root, *aDocument );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   175
    TInt count = element->NodeCount();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   176
    if( count > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   177
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   178
        for( TInt i = 0;i < count;i++ )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   179
            {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   180
            element = element->ChileNode( i );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   181
            FormatElementsL( element );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   182
            }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   183
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   184
    else FormatElementsL( element );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   185
    if( addToRoot )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   186
        AppendXmlFragmentL();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   187
    TPtrC8 name( root->EightBitNodeNameLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   188
    TPtrC8 prefix = root->Prefix();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   189
    FormatElementEndL( prefix, name );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   190
    CleanupStack::PopAndDestroy();  //EightBitNodeNameLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   191
    HBufC8* ret = BufferToStringLC();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   192
    return ret;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   193
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   194
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   195
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   196
// CXmlFormatter::FormatElementsL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   197
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   198
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   199
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   200
void CXmlFormatter::FormatElementsL( CXdmDocumentNode* aCurrentNode )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   201
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   202
    TBool ready = EFalse;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   203
    TBool addNow = EFalse;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   204
    if( !iTargetFound && !iIsAppended )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   205
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   206
        CheckSubsetPath( *aCurrentNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   207
        addNow = iTargetFound && !iIsAppended;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   208
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   209
    TPtrC8 prefix = Prefix( *aCurrentNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   210
    TPtr8 pointer( aCurrentNode->ElementDataLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   211
    FormatElementStartL( prefix, pointer );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   212
    while( !ready )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   213
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   214
        if( aCurrentNode->IsLeafNode() )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   215
            FormatLeafElementL( aCurrentNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   216
        TInt nodeCount = aCurrentNode->NodeCount();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   217
        if( nodeCount > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   218
            {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   219
            CXdmDocumentNode* child = NULL;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   220
            for( TInt i = 0;i < nodeCount;i++ )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   221
                {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   222
                child = aCurrentNode->ChileNode( i ); 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   223
                child->IsEmptyNode() && !child->IsLeafNode() ?
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   224
                                     FormatEmptyElementL( child ):
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   225
                                     FormatElementsL( child );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   226
                }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   227
            ready = ETrue;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   228
            }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   229
        else ready = ETrue;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   230
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   231
    if( addNow )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   232
        AppendXmlFragmentL();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   233
    FormatElementEndL( prefix, FindElementName( pointer ) );        
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   234
    CleanupStack::PopAndDestroy(); //ElementDataLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   235
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   236
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   237
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   238
// CXmlFormatter::AppendXmlFragmentL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   239
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   240
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   241
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   242
void CXmlFormatter::AppendXmlFragmentL()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   243
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   244
    iFormatBuffer->InsertL( iFormBufferPos, iDocumentFragment );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   245
    iFormBufferPos = iFormBufferPos + iDocumentFragment.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   246
    iIsAppended = ETrue;        
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   247
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   248
                             
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   249
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   250
// CXmlFormatter::FormatLC
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   251
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   252
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   253
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   254
HBufC8* CXmlFormatter::FormatLC( TBool aIsWholeDocument,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   255
                                 const CXdmDocument* aDocument,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   256
                                 const CXdmDocumentNode* aRootNode )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   257
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   258
    iIsAppended = ETrue; 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   259
    iFormatBuffer = CBufSeg::NewL( 128 );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   260
    CXdmDocumentNode* root = CONST_CAST( CXdmDocumentNode*, aRootNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   261
    if( aIsWholeDocument )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   262
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   263
        CXdmDocumentNode* element = NULL;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   264
        iFormatBuffer->InsertL( iFormBufferPos, KXmldocumentStart );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   265
        iFormBufferPos = iFormBufferPos + KXmldocumentStart().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   266
        FormatNamespaceDeclarationsL( *root, *aDocument );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   267
        TInt count = root->NodeCount();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   268
        if( count > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   269
            {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   270
            for( TInt i = 0;i < count;i++ )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   271
                {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   272
                element = root->ChileNode( i );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   273
                FormatElementsL( element );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   274
                }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   275
            }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   276
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   277
    else FormatElementsL( root );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   278
    if( aIsWholeDocument )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   279
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   280
        TPtrC8 name( aRootNode->EightBitNodeNameLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   281
        TPtrC8 prefix = aRootNode->Prefix();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   282
        FormatElementEndL( prefix, name );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   283
        CleanupStack::PopAndDestroy();  //EightBitNodeNameLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   284
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   285
    HBufC8* ret = BufferToStringLC();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   286
    return ret;
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   287
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   288
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   289
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   290
// CXmlFormatter::FormatNamespaceDeclarationsL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   291
// 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   292
// ----------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   293
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   294
void CXmlFormatter::FormatNamespaceDeclarationsL( const CXdmDocumentNode& aRootNode,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   295
                                                  const MXdmNamespaceContainer& aContainer )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   296
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   297
#ifdef _DEBUG
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   298
    iParserMain.WriteToLog( _L8( "CXmlFormatter::FormatNamespaceDeclarationsL start" ) );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   299
#endif
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   300
    TPtrC8 name( aRootNode.EightBitNodeNameLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   301
    TPtrC8 prefix = Prefix( aRootNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   302
    iFormatBuffer->InsertL( iFormBufferPos, KStartBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   303
    iFormBufferPos = iFormBufferPos + KStartBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   304
    if( prefix.Length() > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   305
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   306
        iFormatBuffer->InsertL( iFormBufferPos, prefix );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   307
        iFormBufferPos = iFormBufferPos + prefix.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   308
        iFormatBuffer->InsertL( iFormBufferPos, KPrefixSeparatorString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   309
        iFormBufferPos = iFormBufferPos + KPrefixSeparatorString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   310
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   311
    iFormatBuffer->InsertL( iFormBufferPos, name );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   312
    iFormBufferPos = iFormBufferPos + name.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   313
    CleanupStack::PopAndDestroy();  //EightBitNodeNameLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   314
    if( aContainer.Count() > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   315
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   316
        TPtrC8 uri( _L8( "" ) );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   317
        TPtrC8 prefix( _L8( "" ) );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   318
        for( TInt i = 0;i < aContainer.Count();i++ )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   319
            {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   320
            uri.Set( aContainer.Uri( i ) );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   321
            prefix.Set( aContainer.Prefix( i ) );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   322
            AppendNamespaceL( uri, prefix );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   323
            }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   324
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   325
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   326
    // go through possible attributes after namespaces
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   327
    for ( TInt i = 0; i < aRootNode.AttributeCount(); i++ )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   328
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   329
        iFormatBuffer->InsertL( iFormBufferPos, KSpaceString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   330
        iFormBufferPos = iFormBufferPos + KSpaceString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   331
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   332
        CXdmNodeAttribute* attr = aRootNode.Attribute( i );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   333
        TPtrC8 name( attr->EightBitNodeNameLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   334
        iFormatBuffer->InsertL( iFormBufferPos, name );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   335
        iFormBufferPos = iFormBufferPos + name.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   336
        CleanupStack::PopAndDestroy();  //EightBitNodeNameLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   337
        iFormatBuffer->InsertL( iFormBufferPos, KEquelsSignString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   338
        iFormBufferPos = iFormBufferPos + KEquelsSignString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   339
        iFormatBuffer->InsertL( iFormBufferPos, KQuotationSignString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   340
        iFormBufferPos = iFormBufferPos + KQuotationSignString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   341
        TPtrC8 attrValue( attr->EightBitValueLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   342
        iFormatBuffer->InsertL( iFormBufferPos, attrValue );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   343
        iFormBufferPos = iFormBufferPos + attrValue.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   344
        CleanupStack::PopAndDestroy();  //EightBitValueLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   345
        iFormatBuffer->InsertL( iFormBufferPos, KQuotationSignString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   346
        iFormBufferPos = iFormBufferPos + KQuotationSignString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   347
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   348
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   349
    iFormatBuffer->InsertL( iFormBufferPos, KEndBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   350
    iFormBufferPos = iFormBufferPos + KEndBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   351
    iFormatBuffer->InsertL( iFormBufferPos, KNewlineString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   352
    iFormBufferPos = iFormBufferPos + KNewlineString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   353
    #ifdef _DEBUG
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   354
        iParserMain.WriteToLog( _L8( "CXmlFormatter::FormatNamespaceDeclarationsL exit" ) );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   355
    #endif
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   356
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   357
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   358
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   359
// CXmlFormatter::FormatLeafElementL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   360
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   361
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   362
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   363
void CXmlFormatter::FormatLeafElementL( CXdmDocumentNode* aCurrentNode )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   364
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   365
    TPtrC8 escape( aCurrentNode->EscapeLeafNodeContentLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   366
    iFormatBuffer->InsertL( iFormBufferPos, escape );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   367
    iFormBufferPos = iFormBufferPos + escape.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   368
    CleanupStack::PopAndDestroy();  //EscapeLeafNodeContentLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   369
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   370
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   371
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   372
// CXmlFormatter::FormatEmptyElementL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   373
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   374
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   375
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   376
void CXmlFormatter::FormatEmptyElementL( CXdmDocumentNode* aEmptyNode ) 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   377
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   378
    TPtr8 empty( aEmptyNode->ElementDataLC()->Des() );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   379
    iFormatBuffer->InsertL( iFormBufferPos, KStartBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   380
    iFormBufferPos = iFormBufferPos + KStartBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   381
    TPtrC8 prefix = Prefix( *aEmptyNode );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   382
    if( prefix.Length() > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   383
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   384
        iFormatBuffer->InsertL( iFormBufferPos, prefix );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   385
        iFormBufferPos = iFormBufferPos + prefix.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   386
        iFormatBuffer->InsertL( iFormBufferPos, KPrefixSeparatorString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   387
        iFormBufferPos = iFormBufferPos + KPrefixSeparatorString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   388
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   389
    iFormatBuffer->InsertL( iFormBufferPos, empty );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   390
    iFormBufferPos = iFormBufferPos + empty.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   391
    CleanupStack::PopAndDestroy();  //ElementDataLC()
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   392
    iFormatBuffer->InsertL( iFormBufferPos, KEmptyElementString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   393
    iFormBufferPos = iFormBufferPos + TPtrC8( KEmptyElementString ).Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   394
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   395
    
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   396
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   397
// CXmlFormatter::FormatElementStartL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   398
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   399
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   400
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   401
void CXmlFormatter::FormatElementStartL( const TDesC8& aPrefix,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   402
                                         const TDesC8& aElementData ) 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   403
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   404
    iFormatBuffer->InsertL( iFormBufferPos, KStartBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   405
    iFormBufferPos = iFormBufferPos + KStartBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   406
    if( aPrefix.Length() > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   407
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   408
        iFormatBuffer->InsertL( iFormBufferPos, aPrefix );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   409
        iFormBufferPos = iFormBufferPos + aPrefix.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   410
        iFormatBuffer->InsertL( iFormBufferPos, KPrefixSeparatorString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   411
        iFormBufferPos = iFormBufferPos + KPrefixSeparatorString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   412
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   413
    iFormatBuffer->InsertL( iFormBufferPos, aElementData );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   414
    iFormBufferPos = iFormBufferPos + aElementData.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   415
    iFormatBuffer->InsertL( iFormBufferPos, KEndBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   416
    iFormBufferPos = iFormBufferPos + KEndBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   417
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   418
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   419
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   420
// CXmlFormatter::FormatElementEndL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   421
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   422
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   423
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   424
void CXmlFormatter::FormatElementEndL( const TDesC8& aPrefix,
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   425
                                       const TDesC8& aElementName ) 
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   426
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   427
    iFormatBuffer->InsertL( iFormBufferPos, KStartBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   428
    iFormBufferPos = iFormBufferPos + KStartBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   429
    iFormatBuffer->InsertL( iFormBufferPos, KSlashString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   430
    iFormBufferPos = iFormBufferPos + KSlashString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   431
    if( aPrefix.Length() > 0 )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   432
        {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   433
        iFormatBuffer->InsertL( iFormBufferPos, aPrefix );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   434
        iFormBufferPos = iFormBufferPos + aPrefix.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   435
        iFormatBuffer->InsertL( iFormBufferPos, KPrefixSeparatorString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   436
        iFormBufferPos = iFormBufferPos + KPrefixSeparatorString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   437
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   438
    iFormatBuffer->InsertL( iFormBufferPos, aElementName );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   439
    iFormBufferPos = iFormBufferPos + aElementName.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   440
    iFormatBuffer->InsertL( iFormBufferPos, KEndBracketString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   441
    iFormBufferPos = iFormBufferPos + KEndBracketString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   442
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   443
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   444
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   445
// CXmlFormatter::AppendNamespaceL
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   446
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   447
// ---------------------------------------------------------
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   448
//
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   449
void CXmlFormatter::AppendNamespaceL( const TDesC8& aUri, const TDesC8& aPrefix )
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   450
    {
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   451
    iFormatBuffer->InsertL( iFormBufferPos, KXmlNamespaceString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   452
    iFormBufferPos = iFormBufferPos + KXmlNamespaceString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   453
    if( aPrefix.Length() > 0 )  //Not the default namespace
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   454
        {   
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   455
        iFormatBuffer->InsertL( iFormBufferPos, KPrefixSeparatorString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   456
        iFormBufferPos = iFormBufferPos + KPrefixSeparatorString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   457
        iFormatBuffer->InsertL( iFormBufferPos, aPrefix );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   458
        iFormBufferPos = iFormBufferPos + aPrefix.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   459
        }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   460
    iFormatBuffer->InsertL( iFormBufferPos, KEquelsSignString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   461
    iFormBufferPos = iFormBufferPos + KEquelsSignString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   462
    iFormatBuffer->InsertL( iFormBufferPos, KQuotationSignString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   463
    iFormBufferPos = iFormBufferPos + KQuotationSignString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   464
    iFormatBuffer->InsertL( iFormBufferPos, aUri );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   465
    iFormBufferPos = iFormBufferPos + aUri.Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   466
    iFormatBuffer->InsertL( iFormBufferPos, KQuotationSignString );
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   467
    iFormBufferPos = iFormBufferPos + KQuotationSignString().Length();
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   468
    }
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   469
    
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   470
fbd2e7cec7ef Revert incorrect RCL_3 drop:
Pat Downey <patd@symbian.org>
parents:
diff changeset
   471
// End of File