--- a/cbsref/telephonyrefplugins/atltsy/integrationtest/src/testltsymodel.cpp Tue Aug 31 16:23:08 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,276 +0,0 @@
-// TestTelephonyModel.cpp
-// Copyright (c) Symbian Software Ltd 2008. All rights reserved.
-//
-// Implementation of the Class CTestTelephonyModel
-
-// CTSY include
-#include <bautils.h>
-
-#include "TestLtsyModel.h"
-#include "testltsycallshareddata.h"
-#include "TestLtsyPktSharedData.h"
-#include "TestLtsySmsSharedData.h"
-#include "TestLtsyPhoneStoreSharedData.h"
-
-// the file used to identify if we run on real environment
-//_LIT(KCTsyRealEnvFilePath, "z:\\systemtest\\testdata\\telephony\\ctsyrealenv.txt");
-//_LIT(KMmTsyModuleName, "PhoneTsy");
-
-/**
- * Factory function
- *
- */
-CTestLtsyModel* CTestLtsyModel::NewL()
- {
- CTestLtsyModel* self = new (ELeave) CTestLtsyModel();
- CleanupStack::PushL(self);
- self->ConstructL();
- CleanupStack::Pop();
- return self;
- }
-
-/**
- * Destructor
- *
- */
-CTestLtsyModel::~CTestLtsyModel()
- {
- delete iSharedPhoneEnv;
- delete iCallSharedData;
- delete iPktSharedData;
- delete iSmsSharedData;
- delete iPhoneStoreSharedData;
- }
-
-/**
- * 2nd Constructor
- *
- */
-void CTestLtsyModel::ConstructL()
- {
- iSharedPhoneEnv = CTestLtsySharedEnv::NewL();
- iCallSharedData = CTestLtsyCallSharedData::NewL();
- iPktSharedData = CTestLtsyPktSharedData::NewL();
- iSmsSharedData = CTestLtsySmsSharedData::NewL();
- iPhoneStoreSharedData = CTestLtsyPhoneStoreSharedData::NewL();
- }
-
-//=============================================================================
-// class CTestTelephonyAdaptorEnv
-//=============================================================================
-/**
- * Constructor
- *
- */
-CTestLtsySharedEnv::CTestLtsySharedEnv()
- {
- // reset iPhoneInitialized
- iPhoneInitialized = EFalse;
- iPhoneIndex = -1;
- }
-
-/**
- * Destructor
- */
-CTestLtsySharedEnv::~CTestLtsySharedEnv()
- {
- ClosePhone();
- DestroyTelephony();
- }
-
-/**
- * Factory function
- *
- */
-CTestLtsySharedEnv* CTestLtsySharedEnv::NewL()
- {
- CTestLtsySharedEnv* self = new (ELeave) CTestLtsySharedEnv();
- CleanupStack::PushL(self);
- self->ConstructL();
- CleanupStack::Pop();
- return self;
- }
-
-/**
- * 2nd constructor
- */
-void CTestLtsySharedEnv::ConstructL()
- {
- }
-
-/**
- * Load phone module
- *
- * @param const TDesC& aModuleName The phone module used by ETel server for loading a specific TSY
- */
-void CTestLtsySharedEnv::LoadModuleL(const TDesC& aModuleName)
- {
-
- RFs fs;
- User::LeaveIfError(fs.Connect());
- CleanupClosePushL(fs);
- CleanupStack::PopAndDestroy(&fs);
-
- TInt ret = iSharedTelServer.LoadPhoneModule(aModuleName);
-
- if (ret != KErrNone)
- {
- iSharedTelServer.Close();
- User::Leave(ret);
- }
- }
-
-/**
- * Open the shared phone
- *
- * @param const TDesC& aModuleName The phone module used by ETel server for loading a specific TSY
- */
-void CTestLtsySharedEnv::OpenPhoneL(const TDesC& aModuleName)
- {
- THandleInfo handleInfo;
- iSharedTelServer.HandleInfo(&handleInfo);
- if(iPhoneInitialized)
- {
- // a panic occurs if handleInfo.iNumThreads <= 0
- if(handleInfo.iNumThreads <= 0)
- {
- iSharedPhone = NULL;
- iPhoneInitialized = EFalse;
- iSharedTelServer.Close();
- }
- else
- {
- // return if phone has already been opened before
- return;
- }
- }
-
- // make sure this pointer was NULL
- ASSERT(iSharedPhone == NULL);
-
- // make a copy of module name
- iModuleName.Copy(aModuleName);
-
- // start connect to ETel server
- User::LeaveIfError(iSharedTelServer.Connect());
- User::LeaveIfError(iSharedTelServer.ShareAuto());
-
- // start load module
- LoadModuleL(aModuleName);
-
- // check if we can find corresponding phone object according to passed TSY module name
- if(!FindPhoneIndex())
- {
- // the phone index could not be found
- User::Leave(KErrNotFound);
- }
-
- // create a new RMobilePhone instance
- iSharedPhone = new (ELeave) RMobilePhone();
- RTelServer::TPhoneInfo phoneInfo;
- User::LeaveIfError(iSharedTelServer.GetPhoneInfo(iPhoneIndex,phoneInfo));
-
- // start openning phone
- TInt ret = iSharedPhone->Open(iSharedTelServer,phoneInfo.iName);
- if(ret != KErrNone)
- {
- User::Leave(ret);
- }
-
- iPhoneInitialized = ETrue;
- }
-
-/**
- * Find the phone index according to TSY name
- *
- */
-TBool CTestLtsySharedEnv::FindPhoneIndex()
- {
- TInt phoneNum = 0;
- TInt err = iSharedTelServer.EnumeratePhones(phoneNum);
- if(err != KErrNone)
- {
- return EFalse;
- }
-
- TBool found = EFalse;
- for(TInt i = 0; i < phoneNum; i++)
- {
- RTelServer::TPhoneInfo phoneInfo;
- TBuf<KModuleNameLen> moduleName;
- err = iSharedTelServer.GetTsyName(i,moduleName);
- if(err != KErrNone)
- {
- return EFalse;
- }
- else
- {
- if(moduleName.CompareF(iModuleName) == 0)
- {
- iPhoneIndex = i;
- found = ETrue;
- break;
- }
- }
- }
-
- return found;
- }
-
-/**
- * Close the shared phone and server
- * Client must call this function, if it has called OpenPhoneL().
- *
- */
-void CTestLtsySharedEnv::ClosePhone()
- {
- // close and delete the shared phone
- iSharedPhone->Close();
- delete iSharedPhone;
- iSharedPhone = NULL;
-
- // unload the phone module
- iSharedTelServer.UnloadPhoneModule(iModuleName);
- iSharedTelServer.Close();
-
- // reset iPhoneInitialized
- iPhoneInitialized = EFalse;
- }
-
-/**
- * Create a CTelephony object and related resource.
- *
- */
-void CTestLtsySharedEnv::CreateTelephonyL()
- {
- iActiveSchaduler = new (ELeave) CActiveScheduler();
- CActiveScheduler::Install(iActiveSchaduler);
-
- iTelephony = CTelephony::NewL();
- }
-
-/**
- * Delete CTelephony object related source.
- *
- */
-void CTestLtsySharedEnv::DestroyTelephony()
- {
-
- delete iActiveSchaduler;
- iActiveSchaduler = NULL;
- delete iTelephony;
- iTelephony = NULL;
-
- delete iSharedPhone;
- iSharedPhone = NULL;
-
- // reset iPhoneInitialized
- iPhoneInitialized = EFalse;
- }
-
-CTelephony* CTestLtsySharedEnv::Telephony()
- {
- return iTelephony;
- }
-
-// end of file