diff -r 000000000000 -r 3da2a79470a7 testexecmgmt/ucc/Source/TestExecuteUCCPlugin/CUCCTestStep.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testexecmgmt/ucc/Source/TestExecuteUCCPlugin/CUCCTestStep.cpp Mon Mar 08 15:04:18 2010 +0800 @@ -0,0 +1,121 @@ +/* +* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + + +/** + @file CUCCTestStep.cpp +*/ + +#include + +#include "assert.h" +#include "CUCCTestStep.h" +#include "CUCCSDeviceProtocol.h" + +_LIT( delim, "|" ); + +CUCCTestStep::CUCCTestStep() + { + } + +CUCCTestStep::~CUCCTestStep() + { + } + +CUCCSDeviceControl *CUCCTestStep::CreateApplicationControlInstance( int *aUID, TBool aUIDRequired ) + { + int r = 0; + TBool rv; + TBuf<50> initialisation_string; + TPtrC temp_string; + CUCCSDeviceControl *app_instance = NULL; + + // check params + assert( aUID != NULL ); + *aUID = -1; + + // Note: I've changed the tags of the ini files, but am keeping support for the old tags + TDPTransport transType = TDP_NONE; + + // Get the com port from the ini file and add it to the initialisation string + if( GetStringFromConfig( _L("UCCControl"), _L("CommPortIndex"), temp_string ) ) + { + initialisation_string.Append( temp_string ); + initialisation_string.Append( delim ); + initialisation_string.Append( _L("115200") ); + initialisation_string.Append( delim ); + transType = TDP_SERIAL; + } + else if( GetStringFromConfig( _L("UCCControl"), _L("RemoteHost"), temp_string ) ) + { + initialisation_string.Append( temp_string ); + initialisation_string.Append( delim ); + if( GetIntFromConfig( _L("UCCControl"), _L("IAP"), r) ) + { + initialisation_string.Append( _L("IAP:") ); + initialisation_string.AppendNum(r); + initialisation_string.Append( delim ); + } + if( r == 0 && GetIntFromConfig( _L("UCCControl"), _L("SNAP"), r) ) + { +#ifdef SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY + initialisation_string.Append( _L("SNAP:") ); + initialisation_string.AppendNum(r); + initialisation_string.Append( delim ); +#else + r = 0; + INFO_PRINTF1(_L("Access Point selection is not supported..")); +#endif // SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY + } + transType = TDP_TCP; + } + else + { + return NULL; + } + + // Get the test id (use case number) from the ini file + // Only if it is required. + if( aUIDRequired ) + { + rv = GetIntFromConfig( _L("UCCControl"), _L("UseCaseID"), (*aUID) ); + if( rv == 0 ) + { + rv = GetIntFromConfig( _L("Test_Common"), _L("testID"), (*aUID) ); + if( rv == 0 ) + { + return NULL; + } + } + } + + // create the application control object + app_instance = CUCCSDeviceControl::New(); + assert (app_instance != NULL); + + // connect to the uccs + r = app_instance->connectL( (TDesC16*)&initialisation_string, transType ); + if( r != 0) + { + delete app_instance; + return NULL; + } + + // done return the info + return app_instance; + }