diff -r 000000000000 -r 667063e416a2 locationtriggering/tsrc/lbtengine_test/ClientServerSetup/src/ClientServerSetupBlocks.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/locationtriggering/tsrc/lbtengine_test/ClientServerSetup/src/ClientServerSetupBlocks.cpp Tue Feb 02 01:06:48 2010 +0200 @@ -0,0 +1,991 @@ +/* +* Copyright (c) 2002 - 2007 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: Test module to implement Server startup related test cases +* +*/ + + + + + +// INCLUDE FILES +#include +#include +#include +#include +#include "ClientServerSetup.h" +#include +#include +#include +//#include "..\..\..\..\lbt\inc\lbtserverconsts.h" +//#include "lbtstatussdkpskeys.h" +//#include "lbtserverconsts.h" + + +// EXTERNAL DATA STRUCTURES +//extern ?external_data; + +// EXTERNAL FUNCTION PROTOTYPES +//extern ?external_function( ?arg_type,?arg_type ); + +// CONSTANTS +//const ?type ?constant_var = ?constant; + +// MACROS +//#define ?macro ?macro_def + +// LOCAL CONSTANTS AND MACROS +//const ?type ?constant_var = ?constant; +//#define ?macro_name ?macro_def + +// MODULE DATA STRUCTURES +//enum ?declaration +//typedef ?declaration + +// LOCAL FUNCTION PROTOTYPES +//?type ?function_name( ?arg_type, ?arg_type ); + +// FORWARD DECLARATIONS +//class ?FORWARD_CLASSNAME; + +// ============================= LOCAL FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// ?function_name ?description. +// ?description +// Returns: ?value_1: ?description +// ?value_n: ?description_line1 +// ?description_line2 +// ----------------------------------------------------------------------------- +// +/* +?type ?function_name( + ?arg_type arg, // ?description + ?arg_type arg) // ?description + { + + ?code // ?comment + + // ?comment + ?code + } +*/ + +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CClientServerSetup::Delete +// Delete here all resources allocated and opened from test methods. +// Called from destructor. +// ----------------------------------------------------------------------------- +// +void CClientServerSetup::Delete() + { + + } + +// ----------------------------------------------------------------------------- +// CClientServerSetup::RunMethodL +// Run specified method. Contains also table of test mothods and their names. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::RunMethodL( + CStifItemParser& aItem ) + { + + static TStifFunctionInfo const KFunctions[] = + { + // Copy this line for every implemented function. + // First string is the function name used in TestScripter script file. + // Second is the actual implementation member function. + ENTRY( "EstablishAndCloseConnection", CClientServerSetup::EstablishAndCloseConnectionL ), + ENTRY( "EstablishMultipleConnection", CClientServerSetup::EstablishMultipleConnectionL ), + ENTRY( "MultipleServerMultipleConnection", CClientServerSetup::MultipleServerMultipleConnectionL ), + ENTRY( "ErrorAlreadyConnected", CClientServerSetup::ErrorAlreadyConnectedL ), + ENTRY( "ErrorServerNotRunning", CClientServerSetup::ErrorServerNotRunningL ), + ENTRY( "ErrorAlreadyClosed", CClientServerSetup::ErrorAlreadyClosedL ), + ENTRY( "ErrorCloseWithoutConnect", CClientServerSetup::ErrorCloseWithoutConnectL ), + ENTRY( "OpenConnection", CClientServerSetup::OpenConnectionL ), + ENTRY( "ErrorOpenMultipleConnection", CClientServerSetup::ErrorOpenMultipleConnectionL ), + ENTRY( "MultipleClientMultipleConnection", CClientServerSetup::MultipleClientMultipleConnectionL ), + ENTRY( "ErrorServerNotConnected", CClientServerSetup::ErrorServerNotConnectedL ), + ENTRY( "ErrorSubsessionNotClosed", CClientServerSetup::ErrorSubsessionNotClosedL ), + ENTRY( "ErrorSubsessionAlreadyClosed", CClientServerSetup::ErrorSubsessionAlreadyClosedL ), + ENTRY( "GetLBTServerVersion", CClientServerSetup::GetLBTServerVersionL ), + ENTRY( "ErrorGetLBTServerVersion", CClientServerSetup::ErrorGetLBTServerVersionL ), + ENTRY( "FindServer", CClientServerSetup::FindServerL ), + ENTRY( "StatusInformationSupervisionNotActive", CClientServerSetup::StatusInformationSupervisionNotActiveL ), + ENTRY( "RequestStatusChangeNotification", CClientServerSetup::RequestStatusChangeNotificationL ), + ENTRY( "killLBTServer", CClientServerSetup::killLBTServerL ), + }; + + const TInt count = sizeof( KFunctions ) / + sizeof( TStifFunctionInfo ); + + return RunInternalL( KFunctions, count, aItem ); + + } + +// ----------------------------------------------------------------------------- +// CClientServerSetup::EstablishConnection +// Description :: This Method is Testing Connect +// functanality of RLbtServer. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::EstablishConnectionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //RLbtServer clientObject;//testing + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + if(retConnect!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return retConnect; + } + CleanupClosePushL(lbtServ); + iLog->Log(_L("Connection to RLbtServer Passed ")); + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CClientServerSetup::EstablishAndCloseConnection +// Description :: This Method is Testing Connect and +// Close functanality of RLbtServer. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::EstablishAndCloseConnectionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishAndCloseConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + if(retConnect!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return retConnect; + } + CleanupClosePushL(lbtServ); + iLog->Log(_L("Connection to RLbtServer Passed ")); + + //Close connection to RLbtServer + lbtServ.Close(); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::EstablishMultipleConnection +// Description :: This Method is Testing Establishing and closing +// connections to RLbtServer multiple times. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::EstablishMultipleConnectionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //Connect to RLbtServer + for(TInt i=0;i<10;i++) + { + TInt retConnect = lbtServ.Connect(); + if(retConnect!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return retConnect; + } + iLog->Log(_L("Connection to RLbtServer Passed ")); + CleanupClosePushL(lbtServ); + //Close connection to RSuplNetworkServer + lbtServ.Close(); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + } + + //Return value + return KErrNone; + + } + + // ----------------------------------------------------------------------------- +// CClientServerSetup::MultipleServerMultipleConnection +// Description :: This Method is Testing Connect and +// Close functanality to multiple server sessions of RLbtServer. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::MultipleServerMultipleConnectionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Creating 10 Instances of Server")); + //Create instance of RLbtServer + RLbtServer lbtServ[5]; + //Connect to RLbtServer + for(TInt i=0;i<5;i++) + { + TInt retConnect = lbtServ[i].Connect(); + if(retConnect!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return retConnect; + } + CleanupClosePushL(lbtServ[i]); + iLog->Log(_L("Connection to RLbtServer %d Passed "),i); + + } + for(TInt i=0;i<5;i++) + { + lbtServ[i].Close(); + iLog->Log(_L("close Connection of %d"),i); + // CleanupStack::PopAndDestroy(&lbtServ[i]); + } + CleanupStack::PopAndDestroy(5); + + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorAlreadyConnected +// Description :: This Method is trying to connect to server when +// it is already connected +// Return Value :: On failure System wide error code. +// Panics :: panics with ELbtServerHandleNotClosed +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorAlreadyConnectedL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("ErrorAlreadyConnected")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + if(retConnect!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return retConnect; + } + CleanupClosePushL(lbtServ); + iLog->Log(_L("Connection to RLbtServer Passed ")); + iLog->Log(_L("Trying to connect again ")); + TestModuleIf().SetExitReason( CTestModuleIf::EPanic, 1); + TInt err= lbtServ.Connect(); + if(err!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + + } + + return KErrNone; + + } + +// ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorServerNotRunning +// Description :: This Method is trying to connect to server +// when server is not running. +// Return Value :: KErrNotSupported if server not running On failure System wide error code. +// ----------------------------------------------------------------------------- +// + + TInt CClientServerSetup::ErrorServerNotRunningL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + if(retConnect!=KErrNotSupported) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return KErrNone; + } + iLog->Log(_L("Connection to RLbtServer Passed ")); + + //Return value + return -99; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorAlreadyClosed +// Description :: This Method is trying to close connection when it is already closed +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorAlreadyClosedL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //RLbtServer clientObject;//testing + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + if(retConnect!=KErrNone) + { + iLog->Log(_L("Connection to RLbtServer Failed %d"),retConnect); + return retConnect; + } + iLog->Log(_L("Connection to RLbtServer Passed ")); + CleanupClosePushL(lbtServ); + //Close connection to RLbtServer + lbtServ.Close(); + iLog->Log(_L("close Connection")); + CleanupStack::PopAndDestroy(&lbtServ); + + iLog->Log(_L("close Connection again")); + lbtServ.Close(); + iLog->Log(_L(" Connection closed again")); + //Return value + return KErrNone; + + } + + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorCloseWithoutConnect +// Description :: This Method is trying to close connection without +// opening the connection. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorCloseWithoutConnectL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //RLbtServer clientObject;//testing + + lbtServ.Close(); + iLog->Log(_L("close Connection without connect")); + + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::OpenConnection +// Description :: This Method is Testing Open and +// Close functanality of RLbt client. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::OpenConnectionL( CStifItemParser& aItem ) + { + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("OpenConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + RLbt lbt; + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + CleanupClosePushL(lbtServ); + iLog->Log(_L("Connection to RLbtServer Passed ")); + + TInt retOpen = lbt.Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return retOpen; + } + CleanupClosePushL(lbt); + //Closes the subsession + lbt.Close(); + //CleanupStack::PopAndDestroy(&lbt); + //Close connection to RLbtServer + lbtServ.Close(); + CleanupStack::Pop(&lbt); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorOpenMultipleConnection +// Description :: This Method is trying to open subsession when it is already opened. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorOpenMultipleConnectionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("OpenConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + RLbt lbt; + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + CleanupClosePushL(lbtServ); + + TInt retOpen = lbt.Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return retOpen; + } + CleanupClosePushL(lbt); + TestModuleIf().SetExitReason( CTestModuleIf::EPanic, 2); + retOpen = lbt.Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return KErrNone; + } + + + //Closes the subsession + lbt.Close(); + CleanupStack::Pop(&lbt); + + //Close connection to RLbtServer + lbtServ.Close(); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::MultipleClientMultipleConnection +// Description :: This Method is Testing multiple client interfaces +// opening and closing subsessions +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::MultipleClientMultipleConnectionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("OpenConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + RLbt lbt[5]; + //RLbtServer serverObject;//testing + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + CleanupClosePushL(lbtServ); + iLog->Log(_L("Connection to RLbtServer Passed ")); + for(TInt i =0;i<5;i++) + { + TInt retOpen = lbt[i].Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return retOpen; + } + CleanupClosePushL(lbt[i]); + } + + //Closes the subsessions + for(TInt i =0;i<5;i++) + { + lbt[i].Close(); + + } + CleanupStack::Pop(5); + + //Close connection to RLbtServer + lbtServ.Close(); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorServerNotConnected +// Description :: This Method is trying to open subsession +// when serve is not connected. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorServerNotConnectedL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("OpenConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + RLbt lbt; + //RLbtServer serverObject;//testing + //Connect to RLbtServer + // TInt retConnect = lbtServ.Connect(); + + // iLog->Log(_L("Connection to RLbtServer Passed ")); + TestModuleIf().SetExitReason( CTestModuleIf::EPanic, 2); + TInt retOpen = lbt.Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return retOpen; + } + CleanupClosePushL(lbt); + //Closes the subsession + lbt.Close(); + CleanupStack::PopAndDestroy(&lbt); + //Close connection to RLbtServer + // lbtServ.Close(); + // iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + +// ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorSubsessionNotClosed +// Description :: This Method is trying to close session +// when all the subsessions not closed. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorSubsessionNotClosedL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("OpenConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + RLbt lbt; + //RLbtServer serverObject;//testing + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + CleanupClosePushL(lbtServ); + // iLog->Log(_L("Connection to RLbtServer Passed ")); + TInt retOpen = lbt.Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return retOpen; + } + CleanupClosePushL(lbt); + //Closes the subsession + // clientobject.Close(); + //Close connection to RLbtServer + // TestModuleIf().SetExitReason( CTestModuleIf::EPanic, 4); + lbtServ.Close(); + CleanupStack::Pop(&lbt); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorSubsessionAlreadyClosed +// Description :: This Method is trying to close subsession +// when there is no opened subsession +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// + + + TInt CClientServerSetup::ErrorSubsessionAlreadyClosedL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("OpenConnection")); + //collecting logs + iLog->Log(_L("Start Connection")); + //Create instance of RLbtServer + RLbtServer lbtServ; + RLbt lbt; + //RLbtServer serverObject;//testing + //Connect to RLbtServer + TInt retConnect = lbtServ.Connect(); + CleanupClosePushL(lbtServ); + // iLog->Log(_L("Connection to RLbtServer Passed ")); + TInt retOpen = lbt.Open(lbtServ); + if(retOpen!=KErrNone) + { + iLog->Log(_L("Opening subsession to RLbtServer Failed %d"),retOpen); + return retOpen; + } + CleanupClosePushL(lbt); + //Closes the subsession + lbt.Close(); + + //Closes the subsession again + lbt.Close(); + CleanupStack::PopAndDestroy(&lbt); + //Close connection to RLbtServer + lbtServ.Close(); + CleanupStack::PopAndDestroy(&lbtServ); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::GetLBTServerVersion +// Description :: This Method is Testing the retrieval of LBTServer version +// information. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::GetLBTServerVersionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("GetLBTServerVersion")); + //Create instance of RLbtServer + RLbtServer lbtServ; + //RLbtServer clientObject;//testing + + TVersion LBTServerVersion= lbtServ.Version(); + //Print version Number to UI + TestModuleIf().Printf(1, _L("VersionMajor VersionMinor VersionBuild"), + _L("%d:%d:%d"),LBTServerVersion.iBuild,LBTServerVersion.iMajor, + LBTServerVersion.iMinor); + //Store version number in log file. + iLog->Log(_L("VersionMajor =%d VersionMinor =%d VersionBuild =%d"), + LBTServerVersion.iBuild,LBTServerVersion.iMajor,LBTServerVersion.iMinor); + + //Close connection to RLbtServer + lbtServ.Close(); + iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::ErrorGetLBTServerVersion +// Description :: This Method is Testing Connect and +// Close functanality of RLbtServer. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::ErrorGetLBTServerVersionL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Get Version Information")); + //Create instance of RLbtServer + RLbtServer lbtServ; + + TVersion LBTServerVersion= lbtServ.Version(); + //Print version Number to UI + TestModuleIf().Printf(1, _L("VersionMajor VersionMinor VersionBuild"), + _L("%d:%d:%d"),LBTServerVersion.iBuild,LBTServerVersion.iMajor, + LBTServerVersion.iMinor); + //Store version number in log file. + iLog->Log(_L("VersionMajor =%d VersionMinor =%d VersionBuild =%d"), + LBTServerVersion.iBuild,LBTServerVersion.iMajor,LBTServerVersion.iMinor); + + //Close connection to RLbtServer + // serverObject.Close(); + // iLog->Log(_L("close Connection")); + //Return value + return KErrNone; + + } + + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::FindServer +// Description :: This Method is Testing Connect and +// Close functanality of RLbtServer. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::FindServerL( CStifItemParser& aItem ) + { + + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("EstablishConnection")); + //collecting logs + iLog->Log(_L("Find Server")); + _LIT(KProcessName,"lbtserver.exe") ; + TFindServer findLBTServer(KProcessName); + TInt result; + TFullName name; + result = findLBTServer.Next(name); + if (result == KErrNone) + { + // Server already running +// RProcess serverprocess; +// TInt error =serverprocess.Open(KProcessName); +// TInt priority = serverprocess.Priority(); + return KErrNone; + } + else + { + return result; + } + + + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::StatusInformationSupervisionNotActive +// Example test method function. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::StatusInformationSupervisionNotActiveL( CStifItemParser& aItem ) + { +/* + RProperty iProperty; + + TInt ltSupervisionStatus; + + //Get location triggering supervision status + User::LeaveIfError(iProperty.Get( + KPSUidLbtStatusInformation, + KLbtLocationTriggeringSupervisionStatus, + ltSupervisionStatus)); + //Use following code for change notification. + + //Listen for change event of location triggering + //supervision status. + //Attached to the key + User::LeaveIfError(iProperty.Attach( + KPSUidLbtStatusInformation, + KLbtLocationTriggeringSupervisionStatus)); + + TRequestStatus status; + iProperty.Subscribe(status); + User::WaitForRequest(status); + + //Get the new value + User::LeaveIfError(status.Int()); + User::LeaveIfError(iProperty.Get( + KPSUidLbtStatusInformation, + KLbtLocationTriggeringSupervisionStatus, + ltSupervisionStatus)); + + iProperty.Close(); + + //Return value + return KErrNone; +*/ +return KErrNone; + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::RequestStatusChangeNotification +// Example test method function. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::RequestStatusChangeNotificationL( CStifItemParser& aItem ) + { + + /* RProperty iProperty; + + TInt ltSupervisionStatus; + + //Get location triggering supervision status + User::LeaveIfError(iProperty.Get( + KPSUidLbtStatusInformation, + KLbtLocationTriggeringSupervisionStatus, + ltSupervisionStatus)); + //Use following code for change notification. + + //Listen for change event of location triggering + //supervision status. + //Attached to the key + User::LeaveIfError(iProperty.Attach( + KPSUidLbtStatusInformation, + KLbtLocationTriggeringSupervisionStatus)); + + TRequestStatus status; + iProperty.Subscribe(status); + User::WaitForRequest(status); + + //Get the new value + User::LeaveIfError(status.Int()); + User::LeaveIfError(iProperty.Get( + KPSUidLbtStatusInformation, + KLbtLocationTriggeringSupervisionStatus, + ltSupervisionStatus)); + + iProperty.Close(); + + //Return value + return KErrNone;*/ +return KErrNone; + } + + + // ----------------------------------------------------------------------------- +// CClientServerSetup::FindServer +// Description :: This Method is Testing Connect and +// Close functanality of RLbtServer. +// Return Value :: On Success KErrNone else System wide error code. +// ----------------------------------------------------------------------------- +// +TInt CClientServerSetup::killLBTServerL( CStifItemParser& aItem ) + { + // Print to UI + TestModuleIf().Printf( 0, _L("CClientServerSetup"),_L("killLBTServer")); + //collecting logs + iLog->Log(_L("Find Server")); + _LIT(KProcessName,"lbtserver.exe") ; + TFindServer findLBTServer(KProcessName); + TInt result; + TFullName name; + result = findLBTServer.Next(name); + + if (result == KErrNone) + { + //TInt res; + _LIT(KProcessName,"lbtserver.exe") ; + RProcess aProcess; + TInt res = aProcess.Open(KProcessName); + aProcess.Kill(0); + +// return KErrNone; + } + else + { + + } + result = findLBTServer.Next(name); + if (result == KErrNone) + { + iLog->Log(_L("server started again")); + } + +return KErrNone; + } + + + + + /**********************Code starts here********************** + + TFindProcess aProcess2(_L("*")); + TFullName aResult; + + while(aProcess2.Next(aResult)==KErrNone){ + TInt idx = aPtr.Find(aResult); + if(idx!=KErrNotFound){//found process + RProcess aProcess; + aProcess.Open(aProcess2); + aProcess.Kill(0); + aProcess.Close(); + InitProcessList(); + break; + } + } + +**********************Code ends here************************/ + + + + + + +// ----------------------------------------------------------------------------- +// CClientServerSetup::?member_function +// ?implementation_description +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +/* +TInt CClientServerSetup::?member_function( + CItemParser& aItem ) + { + + ?code + + } +*/ + +// ========================== OTHER EXPORTED FUNCTIONS ========================= +// None + +// End of File