--- a/buildverification/smoketest/messaging/Src/TestMessSharedData.cpp Fri Jun 11 16:24:17 2010 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,276 +0,0 @@
-// Copyright (c) 2004-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:
-// This contains CTestMessSharedData
-//
-//
-
-#include "TestMessSharedData.h"
-
-#include <mtclbase.h>
-#include <msvids.h>
-#include <e32std.h>
-#include <imapcmds.h>
-
-_LIT(KName, "name");
-
-CTestMessSharedData* CTestMessSharedData::NewL()
-/**
- * @return - Instance of the test server
- * Same code for Secure and non-secure variants
- * Called inside the MainL() function to create and start the
- * CTestServer derived server.
- */
- {
- CTestMessSharedData* sharedData = new (ELeave) CTestMessSharedData();
- CleanupStack::PushL(sharedData);
- sharedData->ConstructL();
- CleanupStack::Pop(sharedData);
- return sharedData;
- }
-
-CTestMessSharedData::CTestMessSharedData()
-: CBase()
-, iSession(NULL)
-, iMtmRegistry(NULL)
-, iList(NULL)
-, iAnyPostStepToDo(NULL)
-, iDeleteTestStep(EFalse)
- {
- }
-
-void CTestMessSharedData::ConstructL()
- {
- iSession=CMsvSession::OpenSyncL(*this);
- iMtmRegistry=CClientMtmRegistry::NewL(*iSession);
- }
-
-CTestMessSharedData::~CTestMessSharedData()
- {
- while ( iList != NULL )
- {
- CMsgEntry* entry=iList;
- iList=iList->iNext;
- delete entry;
- }
- delete iMtmRegistry;
- iMtmRegistry=NULL;
- delete iSession;
- iSession=NULL;
- }
-
-void CTestMessSharedData::DoProcessL()
- {
- if ( iAnyPostStepToDo != NULL )
- {
- if (iDeleteTestStep)
- {
- iAnyPostStepToDo->DoCancelProcessL();
- iDeleteTestStep=EFalse;
- }
- else
- {
- iAnyPostStepToDo->DoProcessL(*iMtmRegistry);
- }
- iAnyPostStepToDo=NULL;
- }
- }
-
-void CTestMessSharedData::IMAP4ConnectAndSyncCompleteAfterDisconnectL(TUid aMtmId, TMsvId aMsvId, CTestStep& aStep)
- {
- iList=CMsgIMAP4ConnectAndSyncComplete::NewL(aMtmId, aMsvId, aStep, iList);
- iAnyPostStepToDo=iList;
- }
-
-TInt CTestMessSharedData::DeleteEntryL(CTestStep& aStep)
- {
- TInt ret=KErrNone;
- TPtrC name;
-
- if ( !aStep.GetStringFromConfig(aStep.ConfigSection(), KName, name) )
- {
- aStep.ERR_PRINTF1(_L("Name not found"));
- aStep.SetTestStepResult(EFail);
- ret=KErrArgument;
- }
- else
- {
- aStep.INFO_PRINTF2(_L("Name : %S"), &name);
-
- CMsgEntry* msgParent=NULL;
- CMsgEntry* msgEntry=iList;
- TBool found=EFalse;
-
- while ( (msgEntry!=NULL) && !found )
- {
- if ( msgEntry->iName.Compare(name) == 0 )
- {
- if ( msgParent!=NULL )
- {
- msgParent->iNext=msgEntry->iNext;
- }
- else
- {
- iList=msgEntry->iNext;
- }
- iDeleteTestStep=ETrue;
- iAnyPostStepToDo=msgEntry;
- found=ETrue;
- }
- else
- {
- msgParent=msgEntry;
- msgEntry=msgEntry->iNext;
- }
- }
-
- if ( !found )
- {
- aStep.ERR_PRINTF1(_L("Message Entry not found"));
- aStep.SetTestStepResult(EFail);
- ret=KErrNotFound;
- }
- }
-
- return ret;
- }
-
-CTestMessSharedData::CMsgEntry::CMsgEntry(CMsgEntry* aList)
-: CActive(EPriorityStandard)
-, iNext(aList)
-, iReadyToBeDeleted(EFalse)
- {
- }
-
-void CTestMessSharedData::CMsgEntry::ConstructL(CTestStep& aStep)
- {
- TPtrC name;
-
- // Read in name tag
- if ( !aStep.GetStringFromConfig(aStep.ConfigSection(), KName, name) )
- {
- aStep.ERR_PRINTF1(_L("Name not found"));
- aStep.SetTestStepResult(EFail);
- }
- else
- {
- aStep.INFO_PRINTF2(_L("Name : %S"), &name);
- iName.Copy(name);
- }
- }
-
-CTestMessSharedData::CMsgEntry::~CMsgEntry()
- {
- }
-
-void CTestMessSharedData::CMsgEntry::DoCancel()
- {
- }
-
-void CTestMessSharedData::CMsgEntry::RunL()
- {
- iReadyToBeDeleted=ETrue;
- }
-
-CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete* CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::NewL(TUid aMtmId, TMsvId aMsvId, CTestStep& aStep, CMsgEntry* aList)
- {
- CMsgIMAP4ConnectAndSyncComplete* self= new (ELeave) CMsgIMAP4ConnectAndSyncComplete(aMtmId, aMsvId, aList);
- CleanupStack::PushL(self);
- self->ConstructL(aStep);
- CleanupStack::Pop(self);
- return self;
- }
-
-CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::CMsgIMAP4ConnectAndSyncComplete(TUid aMtmId, TMsvId aMsvId, CMsgEntry* aList)
-: CMsgEntry(aList)
-, iMtmId(aMtmId)
-, iMsvId(aMsvId)
-, iBaseMtm(NULL)
-, iOperation(NULL)
- {
- }
-
-CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::~CMsgIMAP4ConnectAndSyncComplete()
- {
- if ( iOperation != NULL )
- {
- delete iOperation;
- iOperation=NULL;
- }
- delete iBaseMtm;
- iBaseMtm=NULL;
- }
-
-void CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::RunL()
- {
- CMsgEntry::RunL();
- delete iOperation;
- iOperation=NULL;
- delete iBaseMtm;
- iBaseMtm=NULL;
-
- }
-
-void CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::DoProcessL(CClientMtmRegistry& aMtmRegistry)
- {
- iBaseMtm=aMtmRegistry.NewMtmL(iMtmId);
- CActiveScheduler::Add(this);
-
- iBaseMtm->SwitchCurrentEntryL(iMsvId);
- CMsvEntrySelection* selection=new (ELeave) CMsvEntrySelection();
- CleanupStack::PushL(selection);
- selection->Reset();
- selection->AppendL(iMsvId);
- selection->AppendL(iMsvId); // remote inbox
-
- TPckg<MMsvImapConnectionObserver*> parameter(this);
- iOperation=iBaseMtm->InvokeAsyncFunctionL(KIMAP4MTMConnectAndSyncCompleteAfterDisconnect, *selection, parameter, iStatus);
- CleanupStack::PopAndDestroy(selection);
- SetActive();
- }
-
-void CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::DoCancelProcessL()
- {
- if ( iOperation != NULL )
- {
- iOperation->Cancel();
- }
- }
-
-void CTestMessSharedData::CMsgIMAP4ConnectAndSyncComplete::HandleImapConnectionEvent(TImapConnectionEvent aConnectionEvent)
- {
- switch (aConnectionEvent)
- {
- /** Connecting to server. */
- case EConnectingToServer:
- break;
- /** Synchronising folder list. */
- case ESynchronisingFolderList:
- break;
- /** Synchronising inbox. */
- case ESynchronisingInbox:
- break;
- /** Synchronising folders. */
- case ESynchronisingFolders:
- break;
- /** Synchronisation complete. */
- case ESynchronisationComplete:
- break;
- /** Disconnecting. */
- case EDisconnecting:
- break;
- /** Connection completed. */
- case EConnectionCompleted:
- break;
- }
- }