omadmadapters/syncmldm12/tsrc/src/dmatest.cpp
author hgs
Tue, 13 Jul 2010 03:48:30 +0530
changeset 45 0f9fc722d255
parent 44 deviceupdatesui/omadmadapters/syncmldm12/tsrc/src/dmatest.cpp@137912d1a556
permissions -rw-r--r--
201021_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     1
/*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     2
* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     3
* All rights reserved.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     8
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     9
* Initial Contributors:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    11
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    12
* Contributors:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    13
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    14
* Description:  Implementation of DM adapter test component
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    15
* 	This is part of omadmextensions/adapter test application.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    16
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    17
*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    18
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    19
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    20
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    21
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    22
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    23
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    24
// INCLUDE FILES
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    25
#include "dmatest.h"
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    26
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    27
#include <StifParser.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    28
#include <Stiftestinterface.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    29
#include <S32FILE.H>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    30
#include <s32mem.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    31
#include <apgcli.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    32
#include <e32svr.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    33
#include <e32math.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    34
#include <f32file.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    35
#include <swinstapi.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    36
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    37
#include "TestDmDDFObject.h"
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    38
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    39
_LIT8( KEmptyType, "" );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    40
_LIT8( KDefaultType, "text/plain" );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    41
_LIT( KMappingTableFile, "\\dmtestmappings.txt" );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    42
//_LIT8( KNSmlDMSeparator8, "/" );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    43
//const TUint8 KNSmlDMUriSeparator = 0x2f; //forward slash
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    44
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    45
#define LEAVE_IF_ERROR(x,msg) \
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    46
	{ TInt __xres = (x); if ( __xres < 0 ) { if ( iLog ) iLog->Log( (msg), __xres ); User::Leave( __xres );	} }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    47
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    48
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    49
// ============================ MEMBER FUNCTIONS ===============================
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    50
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    51
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    52
// Cdmatest::Cdmatest
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    53
// C++ default constructor can NOT contain any code, that
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    54
// leave.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    55
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    56
//
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    57
Cdmatest::Cdmatest(CTestModuleIf& aTestModuleIf, TUid aUid ):
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    58
        CScriptBase( aTestModuleIf ), iMappingTable(2), iUid( aUid )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    59
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    60
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    61
    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    62
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    63
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    64
// Cdmatest::ConstructL
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    65
// Symbian 2nd phase constructor can leave.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    66
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    67
//
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    68
void Cdmatest::ConstructL()
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    69
    {    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    70
    Adapter();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    71
	iEmptyMappingInfoArray = new ( ELeave ) CArrayFixFlat<TSmlDmMappingInfo>(1);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    72
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    73
	TRAPD( err, LoadMappingsL() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    74
	if (err != KErrEof && err != KErrNone && err != KErrNotFound)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    75
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    76
		User::Leave( err );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    77
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    78
    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    79
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    80
CNSmlDMSettingsAdapter12 *Cdmatest::Adapter()  
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    81
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    82
	if ( iAdapter == NULL )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    83
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    84
		if ( iLog )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    85
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    86
			iLog->Log( _L( "Loading Adapter" ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    87
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    88
  		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    89
  		TRAPD( err, iAdapter = (CNSmlDMSettingsAdapter12*) CSmlDmAdapter::NewL( iUid,*this ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    90
	if ( err == KErrNone )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    91
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    92
		if (iLog )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    93
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    94
			iLog->Log( _L( "Loaded" ) );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    95
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    96
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    97
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    98
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    99
		if (iLog)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   100
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   101
			iLog->Log( _L( "Failed to load adapter: %d" ), err );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   102
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   103
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   104
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   105
	return iAdapter;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   106
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   107
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   108
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   109
void Cdmatest::LoadMappingsL()
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   110
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   111
	TDataType type; 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   112
	HBufC8 *data = LoadFileLC( KMappingTableFile,  type );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   113
	RDesReadStream buf( *data );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   114
	CleanupClosePushL( buf );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   115
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   116
	TInt len( data->Length() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   117
	while (buf.Source()->TellL( MStreamBuf::ERead ).Offset() < len)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   118
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   119
		TUint32 val = buf.ReadUint32L();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   120
		TBuf8<256> uri;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   121
		TBuf8<64> luid;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   122
		buf.ReadL(uri, val);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   123
		val = buf.ReadUint32L();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   124
		buf.ReadL(luid, val);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   125
		TMapping m( uri, luid ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   126
		TInt err( iMappingTable.Append( m )	);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   127
		if ( err == KErrNone )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   128
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   129
			iLog->Log( _L8( "Loaded mapping: '%S' : '%S'"), &m.iURI, &m.iLuid );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   130
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   131
		else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   132
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   133
			iLog->Log( _L8( "FAILED TO Load mapping: '%d' "), err );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   134
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   135
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   136
	CleanupStack::PopAndDestroy( &buf); // buf
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   137
	CleanupStack::PopAndDestroy( data ); // data
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   138
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   139
    	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   140
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   141
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   142
void Cdmatest::SaveMappingsL()
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   143
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   144
	TInt c( iMappingTable.Count() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   145
	if ( c > 0 )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   146
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   147
    	RFs fs;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   148
    	User::LeaveIfError( fs.Connect() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   149
    	CleanupClosePushL( fs );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   150
    	RFileWriteStream buf;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   151
    	User::LeaveIfError( buf.Replace( fs, KMappingTableFile, EFileWrite ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   152
    	CleanupClosePushL( buf );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   153
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   154
		TInt i( 0 ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   155
		do 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   156
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   157
			buf.WriteUint32L( iMappingTable[i].iURI.Length() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   158
			buf.WriteL( iMappingTable[i].iURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   159
			buf.WriteUint32L( iMappingTable[i].iLuid.Length() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   160
			buf.WriteL( iMappingTable[i].iLuid );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   161
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   162
		while ( ++i < c )	;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   163
		buf.CommitL();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   164
		buf.Close();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   165
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   166
		CleanupStack::PopAndDestroy(); // buf
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   167
		CleanupStack::PopAndDestroy(); // fs
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   168
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   169
    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   170
    	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   171
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   172
// Destructor
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   173
Cdmatest::~Cdmatest()
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   174
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   175
    // Delete resources allocated from test methods
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   176
    TRAPD(err, SaveMappingsL() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   177
    if ( err != KErrNone )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   178
    	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   179
    	if(iLog)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   180
    			iLog->Log( _L8( "Failed to save mappings!: %d"), err );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   181
    	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   182
    Delete();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   183
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   184
    // Delete logger
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   185
    delete iLog;  
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   186
    delete iEmptyMappingInfoArray;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   187
    delete iAdapter;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   188
    delete iURI;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   189
    iMappingTable.Reset();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   190
    REComSession::FinalClose();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   191
    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   192
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   193
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   194
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   195
// Camatest::Delete
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   196
// Delete here all resources allocated and opened from test methods. 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   197
// Called from destructor. 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   198
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   199
//
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   200
void Cdmatest::Delete() 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   201
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   202
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   203
    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   204
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   205
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   206
// Cdmatest::?member_function
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   207
// ?implementation_description
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   208
// (other items were commented in a header).
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   209
// -----------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   210
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   211
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   212
        
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   213
HBufC8 *Cdmatest::GetNextStringLC ( CStifItemParser& aItem, const TDesC &aName )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   214
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   215
	TPtrC nodename( KNullDesC );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   216
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   217
    TInt i( aItem.GetNextString ( nodename ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   218
    if ( i != KErrNone ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   219
	    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   220
	    iLog->Log( _L( "ERROR Reading '%S' argument: 0x%X" ), &aName, i );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   221
	    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   222
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   223
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   224
		iLog->Log( _L("%S: %S"), &aName, &nodename);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   225
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   226
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   227
	HBufC8 *buf = HBufC8::NewLC( nodename.Length() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   228
	buf->Des().Copy( nodename );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   229
	return buf;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   230
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   231
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   232
TInt Cdmatest::FetchNodeL( CStifItemParser& aItem )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   233
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   234
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   235
    TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   236
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   237
    TestModuleIf().Printf( 0, _L("Cdmatest"), _L("FetchNodeL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   238
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   239
	iResultsFunction = FetchNodeResultsL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   240
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   241
    TPtrC8 nodename( GetNextStringLC( aItem, _L(" nodename" ) )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   242
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   243
	SetURIL(nodename) ;//
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   244
	HBufC8 *luid = GetLuidAllocLC( *iURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   245
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   246
	Adapter()->ChildURIListL( *iURI, *luid, *iEmptyMappingInfoArray, 4, 5) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   247
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   248
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   249
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   250
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   251
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   252
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   253
		iLog->Log( _L("FetchNodeL: ChildUriList Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   254
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   255
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   256
	CleanupStack::PopAndDestroy( luid ) ; 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   257
	CleanupStack::PopAndDestroy() ; // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   258
	iLog->Log( _L("FetchNodeL: Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   259
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   260
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   261
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   262
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   263
TInt Cdmatest::StartAtomicL( CStifItemParser& /*aItem*/ )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   264
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   265
	TRAPD( err, Adapter()->StartAtomicL() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   266
	iLog->Log( _L("StartAtomicL: Atomic started resulting error %d" ), err );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   267
    return err;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   268
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   269
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   270
TInt Cdmatest::RollbackAtomicL( CStifItemParser& /*aItem*/ )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   271
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   272
	TRAPD( err, Adapter()->RollbackAtomicL() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   273
	iLog->Log( _L("RollbackAtomicL: Atomic rolled back resulting error %d" ), err );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   274
    return err;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   275
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   276
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   277
TInt Cdmatest::CommitAtomicL( CStifItemParser& /*aItem*/ )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   278
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   279
	TRAPD( err, Adapter()->CommitAtomicL() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   280
	iLog->Log( _L("RollbackAtomicL: Atomic commited resulting error %d" ), err );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   281
    return err;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   282
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   283
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   284
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   285
TInt Cdmatest::DDFStructureL( CStifItemParser& /*aItem*/ )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   286
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   287
	CTestDmDDFObject* ddfRoot = CTestDmDDFObject::NewLC( iLog ); //, aNodeName );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   288
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   289
	TRAPD( err, iAdapter->DDFStructureL( *ddfRoot ) ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   290
	CleanupStack::PopAndDestroy( ddfRoot );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   291
	iLog->Log( _L("DDFStructureL: method called resulting error %d" ), err );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   292
    return err;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   293
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   294
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   295
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   296
TInt Cdmatest::AddNodeL( CStifItemParser& aItem )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   297
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   298
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   299
    TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   300
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   301
    TestModuleIf().Printf( 0, _L("Cdmatest"), _L("AddNodeL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   302
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   303
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   304
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("nodename" ) )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   305
    SetURIL( nodename );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   306
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   307
	Adapter()->AddNodeObjectL( *iURI, KEmptyType, 8 ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   308
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   309
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   310
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   311
		iLog->Log( _L("AddNodeL: AddNodeObjectL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   312
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   313
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   314
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   315
		iLog->Log( _L("AddNodeL: AddNodeObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   316
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   317
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   318
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   319
	CleanupStack::PopAndDestroy() ; // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   320
	iLog->Log( _L("AddNodeL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   321
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   322
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   323
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   324
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   325
TInt Cdmatest::UpdateLeafL( CStifItemParser& aItem )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   326
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   327
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   328
    TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   329
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   330
    TestModuleIf().Printf( 0, _L("Cdmatest"), _L("UpdateLeafL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   331
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   332
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("Node name") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   333
    TPtrC8 data (GetNextStringLC( aItem, _L("datafile"))->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   334
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   335
	HBufC8 *mime = GetNextStringLC( aItem, _L("mime") ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   336
    SetURIL( nodename );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   337
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   338
    TPtrC8 parentURI(RemoveLastSeg(nodename));
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   339
    HBufC8 *luid = GetLuidAllocLC( parentURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   340
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   341
    TDataType type; 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   342
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   343
	TPtrC8 mimePtr( *mime == KNullDesC8 ? type.Des8() : mime->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   344
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   345
    /**
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   346
    virtual void UpdateLeafObjectL( const TDesC8& aURI, const TDesC8& aLUID,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   347
									const TDesC8& aObject, const TDesC8& aType,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   348
									TInt aStatusRef ) = 0;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   349
    */
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   350
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   351
	Adapter()->UpdateLeafObjectL( *iURI , *luid, data, mimePtr, 3);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   352
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   353
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   354
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   355
		iLog->Log( _L("UpdateLeafL: UpdateLeafObjectL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   356
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   357
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   358
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   359
		iLog->Log( _L("UpdateLeafL UpdateLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   360
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   361
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   362
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   363
	CleanupStack::PopAndDestroy(); // loadfile
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   364
	CleanupStack::PopAndDestroy(); // luid
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   365
	CleanupStack::PopAndDestroy(); // mime
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   366
	CleanupStack::PopAndDestroy(); // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   367
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   368
	iLog->Log( _L("UpdateLeafL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   369
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   370
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   371
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   372
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   373
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   374
TInt Cdmatest::UpdateLeafDataURLL( CStifItemParser& aItem )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   375
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   376
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   377
    TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   378
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   379
    TestModuleIf().Printf( 0, _L("Cdmatest"), _L("UpdateLeafDataL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   380
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   381
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("Node name") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   382
    TPtrC8 http (GetNextStringLC( aItem, _L("http"))->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   383
    TPtrC8 url (GetNextStringLC( aItem, _L("rest of url"))->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   384
	HBufC8 *mime = GetNextStringLC( aItem, _L("mime") ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   385
    SetURIL( nodename );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   386
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   387
    _LIT8( KTag, "://" );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   388
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   389
    HBufC8 *fullurl = HBufC8::NewLC( http.Length() + KTag().Length() + url.Length() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   390
    TPtr8 pfullurl( fullurl->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   391
    pfullurl.Copy( http ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   392
    pfullurl.Append( KTag );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   393
    pfullurl.Append( url );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   394
    TPtrC8 mimePtr( *mime == KNullDesC8 ? KDefaultType() : mime->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   395
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   396
    HBufC8 *luid = GetLuidAllocLC( *iURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   397
    /**
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   398
    virtual void UpdateLeafObjectL( const TDesC8& aURI, const TDesC8& aLUID,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   399
									const TDesC8& aObject, const TDesC8& aType,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   400
									TInt aStatusRef ) = 0;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   401
    */
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   402
	Adapter()->UpdateLeafObjectL( *iURI , *luid, pfullurl, mimePtr, 3);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   403
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   404
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   405
		iLog->Log( _L("UpdateLeafDataL: UpdateLeafObjectL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   406
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   407
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   408
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   409
		iLog->Log( _L("UpdateLeafDataL UpdateLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   410
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   411
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   412
	CleanupStack::PopAndDestroy( luid ); // 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   413
	CleanupStack::PopAndDestroy( mime ); // mime
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   414
	CleanupStack::PopAndDestroy(); // url
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   415
	CleanupStack::PopAndDestroy(); // http
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   416
	CleanupStack::PopAndDestroy(); // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   417
	iLog->Log( _L("UpdateLeafDataL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   418
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   419
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   420
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   421
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   422
TInt Cdmatest::UpdateLeafDataL( CStifItemParser& aItem )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   423
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   424
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   425
    TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   426
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   427
   TestModuleIf().Printf( 0, _L("Camtest"), _L("UpdateLeafDataL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   428
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   429
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("Node name") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   430
    TPtrC8 data (GetNextStringLC( aItem, _L("data"))->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   431
	HBufC8 *mime = GetNextStringLC( aItem, _L("mime") ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   432
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   433
    SetURIL( nodename );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   434
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   435
        
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   436
    TPtrC8 mimePtr( *mime == KNullDesC8 ? KDefaultType() : mime->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   437
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   438
    TPtrC8 parentURI(RemoveLastSeg(nodename));
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   439
    HBufC8 *luid = GetLuidAllocLC( parentURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   440
     
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   441
//    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   442
//    virtual void UpdateLeafObjectL( const TDesC8& aURI, const TDesC8& aLUID,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   443
//									const TDesC8& aObject, const TDesC8& aType,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   444
//									TInt aStatusRef ) = 0;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   445
//   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   446
	Adapter()->UpdateLeafObjectL( *iURI , *luid, data, mimePtr, 3);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   447
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   448
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   449
		iLog->Log( _L("UpdateLeafDataL: UpdateLeafObjectL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   450
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   451
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   452
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   453
		iLog->Log( _L("UpdateLeafDataL UpdateLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   454
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   455
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   456
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   457
	CleanupStack::PopAndDestroy(); // mime
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   458
	CleanupStack::PopAndDestroy(); // luid
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   459
	CleanupStack::PopAndDestroy(); // data
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   460
	CleanupStack::PopAndDestroy(); // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   461
	iLog->Log( _L("UpdateLeafDataL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   462
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   463
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   464
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   465
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   466
TInt Cdmatest::FetchLeafL( CStifItemParser& aItem )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   467
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   468
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   469
    TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   470
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   471
    TestModuleIf().Printf( 0, _L("Camtest"), _L("FetchLeafL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   472
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   473
	iResultsFunction = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   474
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   475
    TInt i( 0 );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   476
    TPtrC8 nodename ( GetNextStringLC( aItem, _L( "nodename" ) )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   477
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   478
    //TPtrC datafile;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   479
    TPtrC datafile( KNullDesC );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   480
    i = aItem.GetNextString ( datafile ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   481
    if ( i != KErrNone ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   482
	    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   483
	    iLog->Log(_L("FetchLeafL: ERROR Reading outfile argument: 0x%X"), i );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   484
	    //return i;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   485
	    }
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   486
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   487
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   488
		iSaveFileName = datafile;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   489
		iLog->Log( _L( " Save file nameis '%S'" ), &iSaveFileName );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   490
		iResultsFunction = SaveDataL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   491
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   492
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   493
	SetURIL(nodename) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   494
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   495
		/*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   496
			void FetchLeafObjectL( const TDesC8& aURI, const TDesC8& aLUID,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   497
								   const TDesC8& aType, TInt aResultsRef,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   498
								   TInt aStatusRef );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   499
		*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   500
    TPtrC8 parentURI(RemoveLastSeg(nodename));
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   501
    HBufC8 *luid = GetLuidAllocLC( parentURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   502
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   503
	Adapter()->FetchLeafObjectL( *iURI, *luid, KEmptyType, 7, 8 ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   504
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   505
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   506
		iLog->Log( _L("FetchLeafL: FetchLeafObjectL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   507
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   508
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   509
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   510
		iLog->Log( _L("FetchLeafL: FetchLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   511
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   512
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   513
	CleanupStack::PopAndDestroy( luid );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   514
	CleanupStack::PopAndDestroy(  ); // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   515
	iLog->Log( _L("FetchLeafL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   516
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   517
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   518
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   519
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   520
TInt Cdmatest::ExecuteLeafL( CStifItemParser& aItem )		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   521
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   522
	TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   523
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   524
    TestModuleIf().Printf( 0, _L("Camtest"), _L("ExecuteLeafL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   525
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   526
	iResultsFunction = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   527
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   528
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("Nodename") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   529
    TPtrC8 data( GetNextStringLC ( aItem, _L("Input file") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   530
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   531
	SetURIL(nodename) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   532
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   533
		/*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   534
			virtual void ExecuteCommandL( const TDesC8& aURI, const TDesC8& aLUID,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   535
							      const TDesC8& aArgument, const TDesC8& aType,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   536
								  TInt aStatusRef ) = 0;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   537
		*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   538
	TDataType type;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   539
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   540
    TPtrC8 parentURI(RemoveLastSeg(nodename));
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   541
    HBufC8 *luid = GetLuidAllocLC( parentURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   542
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   543
	Adapter()->ExecuteCommandL( *iURI, *luid, data, KEmptyType, 11 ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   544
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   545
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   546
		iLog->Log( _L("ExecuteLeafL: ExecuteCommandL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   547
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   548
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   549
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   550
		iLog->Log( _L("ExecuteLeafL: ExecuteCommandL FetchLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   551
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   552
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   553
	CleanupStack::PopAndDestroy( luid ); // luid
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   554
	CleanupStack::PopAndDestroy(); // data
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   555
	CleanupStack::PopAndDestroy(); // nodename
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   556
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   557
	iLog->Log( _L("ExecuteLeafL: Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   558
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   559
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   560
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   561
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   562
TInt Cdmatest::CompleteCommandsL( CStifItemParser& /*aItem*/ )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   563
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   564
	TRAPD( err, Adapter()->CompleteOutstandingCmdsL() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   565
	delete iAdapter;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   566
	iAdapter = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   567
	return err;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   568
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   569
TInt Cdmatest::DeleteObjectL( CStifItemParser& aItem )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   570
{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   571
	TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   572
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   573
    TestModuleIf().Printf( 0, _L("Camtest"), _L("DeleteObjectL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   574
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   575
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("Nodename") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   576
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   577
	SetURIL(nodename) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   578
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   579
	HBufC8 *luid = GetLuidAllocLC( *iURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   580
	Adapter()->DeleteObjectL( *iURI, *luid, 11 ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   581
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   582
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   583
		iLog->Log( _L("DeleteNode: DeleteObjectL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   584
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   585
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   586
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   587
		iLog->Log( _L("DeleteNode: DeleteObjectL FetchLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   588
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   589
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   590
	CleanupStack::PopAndDestroy( luid ); // luid
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   591
	CleanupStack::PopAndDestroy(); // nodename	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   592
	iLog->Log( _L("ExecuteLeafDataL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   593
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   594
    return ret;	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   595
}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   596
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   597
TInt Cdmatest::ExecuteLeafDataL( CStifItemParser& aItem )		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   598
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   599
	TInt ret( KErrNone );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   600
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   601
    // Print to UI
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   602
    TestModuleIf().Printf( 0, _L("Camtest"), _L("ExecuteLeafL") );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   603
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   604
	iResultsFunction = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   605
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   606
    TPtrC8 nodename( GetNextStringLC ( aItem, _L("Nodename") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   607
    TPtrC8 data( GetNextStringLC ( aItem, _L("Input data") )->Des() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   608
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   609
	SetURIL(nodename) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   610
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   611
		/*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   612
			virtual void ExecuteCommandL( const TDesC8& aURI, const TDesC8& aLUID,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   613
							      const TDesC8& aArgument, const TDesC8& aType,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   614
								  TInt aStatusRef ) = 0;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   615
		*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   616
	HBufC8 *luid = GetLuidAllocLC( *iURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   617
	Adapter()->ExecuteCommandL( *iURI, *luid, data, KEmptyType, 11 ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   618
	if ( iStatus == MSmlDmAdapter::EOk )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   619
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   620
		iLog->Log( _L("ExecuteLeafDataL: ExecuteCommandL Successful! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   621
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   622
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   623
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   624
		iLog->Log( _L("ExecuteLeafDataL: ExecuteCommandL FetchLeafObjectL Error ! %d" ), iStatus );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   625
		ret = KErrGeneral ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   626
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   627
	CleanupStack::PopAndDestroy(); // luid
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   628
	CleanupStack::PopAndDestroy(); // data		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   629
	CleanupStack::PopAndDestroy(); // nodename	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   630
	iLog->Log( _L("ExecuteLeafDataL Test Complete with status %d" ), ret );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   631
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   632
    return ret;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   633
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   634
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   635
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   636
HBufC8 *Cdmatest::LoadFileLC( const TDesC &aFileName, TDataType &aType )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   637
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   638
	RFs fs ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   639
	LEAVE_IF_ERROR( fs.Connect(), _L( "Could not connect fileserver: %d"  ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   640
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   641
	CleanupClosePushL( fs );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   642
	RFile file ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   643
	LEAVE_IF_ERROR( file.Open(fs,aFileName,EFileRead), _L( "Could not open file: %d" ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   644
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   645
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   646
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   647
	CleanupClosePushL( file );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   648
	TInt dataSize ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   649
	LEAVE_IF_ERROR( file.Size( dataSize ), _L( "Could not get file size: %d" ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   650
	HBufC8 *nodedata = HBufC8::NewL ( dataSize );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   651
	CleanupStack::PushL( nodedata );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   652
	TPtr8 nodedataptr( nodedata->Des() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   653
	LEAVE_IF_ERROR( file.Read( nodedataptr ), _L( "Could not read file: %d" ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   654
	TDataRecognitionResult aDataType;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   655
	RApaLsSession ls ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   656
	TInt err( ls.Connect() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   657
	if ( err == KErrNone )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   658
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   659
		CleanupClosePushL( ls );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   660
		err = ls.RecognizeData(aFileName, nodedataptr, aDataType)  ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   661
		if ( err == KErrNone )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   662
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   663
			aType = aDataType.iDataType;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   664
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   665
		else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   666
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   667
			iLog->Log( _L("LoadFileLC: WARNING Failed to get type: %d" ), err );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   668
			aType = TDataType( KDefaultType );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   669
			}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   670
		CleanupStack::PopAndDestroy( &ls ); 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   671
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   672
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   673
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   674
		iLog->Log( _L("LoadFileLC: WARNING Failed to connect rapalssession: %d" ), err );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   675
		}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   676
	CleanupStack::Pop( nodedata );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   677
	CleanupStack::PopAndDestroy( &file ); 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   678
	CleanupStack::PopAndDestroy( &fs ); 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   679
	CleanupStack::PushL( nodedata );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   680
	return nodedata ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   681
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   682
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   683
HBufC8 *Cdmatest::LoadFileLC( const TDesC8 &aFileName, TDataType &aType )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   684
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   685
	TFileName fn ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   686
	fn.Copy( aFileName );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   687
	return LoadFileLC( fn, aType );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   688
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   689
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   690
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   691
void Cdmatest::SaveDataL( TInt /*aResultsRef*/, CBufBase& aObject,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   692
							  const TDesC8& aType ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   693
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   694
	iLog->Log( _L8( "Saving data of type: '%S'" ), &aType );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   695
	RFs fs;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   696
	User::LeaveIfError( fs.Connect() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   697
	CleanupClosePushL( fs );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   698
	RFile file;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   699
	User::LeaveIfError( file.Replace ( fs, iSaveFileName, EFileWrite ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   700
	CleanupClosePushL( file );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   701
	TPtrC8 p( aObject.Ptr( 0 ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   702
	User::LeaveIfError( file.Write( p ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   703
	CleanupStack::PopAndDestroy( 2 ); // file, fs
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   704
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   705
							  
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   706
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   707
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   708
void Cdmatest::FetchNodeResultsL( TInt /*aResultsRef*/, CBufBase& aObject,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   709
							  const TDesC8& /*aType*/ )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   710
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   711
	TPtrC8 ptr( aObject.Ptr( 0 ) );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   712
	iLog->Log( _L8("FetchNodeResultsL for '%S': '%S'" ), iURI, &ptr );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   713
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   714
	if ( ptr.Length() > 0 )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   715
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   716
		TPtrC8 last( LastURISeg( ptr ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   717
		HBufC8 *oldUri = HBufC8::NewL( iURI->Length() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   718
		(*oldUri) = *iURI; 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   719
		do 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   720
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   721
			iLog->Log ( _L8( " Node: '%S' "), &last );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   722
			HBufC8 *nUri = HBufC8::NewLC( oldUri->Length() + 1 + last.Length() );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   723
			nUri->Des().Copy( *oldUri ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   724
			nUri->Des().Append( '/' );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   725
			nUri->Des().Append( last );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   726
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   727
			SetURIL( nUri );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   728
			//iResultsFunction = FetchNodeResultsL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   729
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   730
		    //TPtrC8 parentURI(RemoveLastSeg(*nUri));
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   731
		    //HBufC8 *luid = GetLuidAllocLC( parentURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   732
		    CleanupStack::Pop( nUri );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   733
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   734
			HBufC8 *luid = GetLuidAllocLC( *iURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   735
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   736
			Adapter()->ChildURIListL( *nUri, KNullDesC8, *iEmptyMappingInfoArray, 4, 5 );//Dipak
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   737
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   738
			CleanupStack::PopAndDestroy( luid ); 			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   739
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   740
			ptr.Set( RemoveLastURISeg( ptr ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   741
			last.Set( LastURISeg( ptr ) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   742
			
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   743
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   744
		while (last != KNullDesC8);	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   745
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   746
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   747
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   748
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   749
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   750
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   751
TPtrC8 Cdmatest::LastURISeg( const TDesC8& aURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   752
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   753
	TInt i;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   754
	for( i = aURI.Length() - 1; i >= 0; i-- ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   755
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   756
		if( aURI[i] == '/' )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   757
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   758
			break;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   759
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   760
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   761
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   762
	if( i == 0 )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   763
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   764
		return aURI;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   765
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   766
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   767
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   768
		return aURI.Mid( i+1 );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   769
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   770
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   771
TPtrC8 Cdmatest::RemoveLastSeg(const TDesC8& aURI)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   772
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   773
	TInt i;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   774
	for(i=aURI.Length()-1;i>=0;i--)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   775
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   776
		if(aURI[i]==KNSmlDMUriSeparator)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   777
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   778
			break;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   779
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   780
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   781
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   782
	if(i>0)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   783
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   784
		return aURI.Left(i);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   785
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   786
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   787
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   788
		return KNullDesC8();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   789
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   790
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   791
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   792
// ------------------------------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   793
// TPtrC8 Cdmatest::RemoveLastURISeg(const TDesC8& aURI)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   794
// returns parent uri, i.e. removes last uri segment
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   795
// ------------------------------------------------------------------------------------------------
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   796
TPtrC8 Cdmatest::RemoveLastURISeg( const TDesC8& aURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   797
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   798
	TInt i;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   799
	for ( i = aURI.Length() - 1; i >= 0 ; i-- )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   800
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   801
		if( aURI[i] == '/' )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   802
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   803
			break;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   804
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   805
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   806
	if ( i > -1 )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   807
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   808
		return aURI.Left( i );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   809
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   810
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   811
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   812
		return KNullDesC8();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   813
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   814
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   815
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   816
TPtrC Cdmatest::RemoveLastURISeg( const TDesC& aURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   817
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   818
	TInt i;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   819
	for ( i = aURI.Length() - 1; i >= 0 ; i-- )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   820
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   821
		if( aURI[i] == '/' )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   822
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   823
			break;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   824
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   825
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   826
	if ( i > -1 )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   827
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   828
		return aURI.Left( i );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   829
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   830
	else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   831
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   832
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   833
		return KNullDesC();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   834
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   835
	}		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   836
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   837
void Cdmatest::SetURIL( const TDesC& aURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   838
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   839
	if ( iURI != NULL )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   840
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   841
		delete iURI ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   842
		iURI = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   843
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   844
	iURI = HBufC8::NewL( aURI.Length() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   845
	iURI->Des().Copy( aURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   846
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   847
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   848
void Cdmatest::SetURIL( const TDesC8& aURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   849
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   850
	if ( iURI != NULL )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   851
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   852
		delete iURI ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   853
		iURI = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   854
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   855
	iURI = HBufC8::NewL( aURI.Length() ) ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   856
	iURI->Des().Copy( aURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   857
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   858
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   859
void Cdmatest::SetURIL( HBufC8* aURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   860
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   861
	if ( iURI != NULL )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   862
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   863
		delete iURI ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   864
		iURI = NULL;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   865
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   866
	iURI = aURI ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   867
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   868
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   869
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   870
		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   871
void Cdmatest::SetResultsL( 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   872
	TInt aResultsRef, 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   873
	CBufBase& aObject,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   874
	const TDesC8& aType )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   875
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   876
	TPtrC8 ptr( aObject.Ptr(0) );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   877
	iLog->Log( _L8( "SetResults, ref=%d, object='%S', type='%S'" ), aResultsRef, &ptr, &aType );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   878
	if ( iResultsFunction )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   879
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   880
		(this->*iResultsFunction)( aResultsRef, aObject, aType );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   881
		iResultsFunction = NULL ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   882
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   883
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   884
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   885
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   886
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   887
void Cdmatest::SetStatusL( TInt aStatusRef,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   888
							 MSmlDmAdapter::TError aErrorCode ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   889
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   890
	iStatus = aErrorCode ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   891
	iLog->Log( _L( "SetStatusL, ref=%d, code=%d" ), aStatusRef, aErrorCode );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   892
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   893
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   894
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   895
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   896
void Cdmatest::SetMappingL( const TDesC8& aURI, const TDesC8& aLUID ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   897
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   898
	iLog->Log( _L8( "SetMappingL, aURI='%s', aLUID='%s'" ), aURI.Ptr(), aLUID.Ptr() );	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   899
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   900
	iMappingTable.Append(TMapping( aURI, aLUID ) )	;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   901
	}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   902
	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   903
HBufC8* Cdmatest::GetLuidAllocL( const TDesC8& aURI ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   904
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   905
	iLog->Log( _L8( "GetLuidAllocL, aURI='%S'" ), &aURI );		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   906
	HBufC8 *res = NULL;		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   907
	for( TInt i(0); i < iMappingTable.Count(); i++ )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   908
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   909
		if ( aURI == iMappingTable[i].iURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   910
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   911
			res = iMappingTable[i].iLuid.AllocL();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   912
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   913
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   914
	if ( res == NULL )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   915
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   916
		res = HBufC8::NewL( 0 );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   917
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   918
	iLog->Log( _L8( "GetLuidAllocL, response='%S'" ), res );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   919
	return res;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   920
	}	    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   921
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   922
HBufC8* Cdmatest::GetLuidAllocLC( const TDesC8& aURI ) 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   923
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   924
	iLog->Log( _L8( "GetLuidAllocL, aURI='%S'" ), &aURI );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   925
	HBufC8 *res = NULL;		
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   926
	for( TInt i(0); i < iMappingTable.Count(); i++ )	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   927
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   928
		if ( aURI == iMappingTable[i].iURI )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   929
			{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   930
			res = iMappingTable[i].iLuid.AllocLC();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   931
			break;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   932
			}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   933
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   934
	if ( res == NULL )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   935
		{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   936
		res = HBufC8::NewLC( 0 );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   937
		}
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   938
	iLog->Log( _L8( "GetLuidAllocLC, response='%S'" ), res );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   939
	return res ;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   940
	}	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   941
    	
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   942
#ifdef __TARM_SYMBIAN_CONVERGENCY
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   943
    
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   944
void Cdmatest::GetMappingInfoListL( const TDesC8& /*aURI*/,
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   945
								CArrayFix<TSmlDmMappingInfo>& /*aSegmentList*/ )
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   946
	{
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   947
	// do nothing
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   948
	}								
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   949
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   950
#else
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   951
// nothing
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   952
#endif
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   953
//***************************************************************************
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   954
//  End of File