omadm/lawmo/lawmoplugins/messagingplugin/src/lawmomessagingasyncwipe.cpp
branchRCL_3
changeset 70 5d5344402085
parent 65 450d1facd418
child 73 5042b6604f6f
--- a/omadm/lawmo/lawmoplugins/messagingplugin/src/lawmomessagingasyncwipe.cpp	Wed Sep 15 11:58:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,285 +0,0 @@
-/*
-* Copyright (c) 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: Active object for wiping messages, called by lawmomessagingplugin.
-*
-*/
-
-#include <msvids.h>
-#include <f32file.h>
-#include <e32base.h>
-#include "lawmomessagingasyncwipe.h"
-#include "fdebug.h"
-
-// ----------------------------------------------------------------------------- 
-// CActiveWipeObject::CActiveWipeObject
-// Description: CActiveWipeObject constructer . Initializes datamember of MLawmoPluginWipeObserver 
-// ----------------------------------------------------------------------------- 
-//
-CActiveWipeObject::CActiveWipeObject(MLawmoPluginWipeObserver* aObserver) :
-    CActive(EPriorityStandard), iObserver(aObserver), iSession(NULL)
-    {
-    FLOG(
-            _L(" Messaging: CActiveWipeObject::CActiveWipeObject(MLawmoPluginWipeObserver* aObserver) >>"));
-    // See ConstructL() for initialisation completion.
-    FLOG(
-            _L(" Messaging: CActiveWipeObject::CActiveWipeObject(MLawmoPluginWipeObserver* aObserver) <<"));
-    }
-
-// ----------------------------------------------------------------------------- 
-// CActiveWipeObject::NewL
-// Description: CActiveWipeObject constructer 
-// ----------------------------------------------------------------------------- 
-//
-CActiveWipeObject* CActiveWipeObject::NewL(MLawmoPluginWipeObserver* aObserver)
-    {
-    FLOG(_L(" Messaging: CActiveWipeObject* CActiveWipeObject::NewL(MLawmoPluginWipeObserver* aObserver) >>"));
-    CActiveWipeObject* self=new(ELeave) CActiveWipeObject(aObserver);  
-    CleanupStack::PushL(self);
-    self->ConstructL(); 
-    CleanupStack::Pop();
-    FLOG(_L(" Messaging: CActiveWipeObject* CActiveWipeObject::NewL(MLawmoPluginWipeObserver* aObserver) <<"));
-    return self;
-    }
-
-// ----------------------------------------------------------------------------------------
-// CActiveWipeObject::ConstructL
-// ----------------------------------------------------------------------------------------
-void CActiveWipeObject::ConstructL()
-    {
-    FLOG(_L(" Messaging: CActiveWipeObject::ConstructL() >>"));
-
-    iTimer.CreateLocal();
-    User::LeaveIfError(iWs.Connect());
-    CActiveScheduler::Add(this); // Add to scheduler
-    iDummyObserver = new CDummyObserver();
-    FLOG(_L(" Messaging: CActiveWipeObject::ConstructL() <<"));
-    }
-
-void CActiveWipeObject::Close()
-    {
-    FLOG(_L(" Messaging: void CActiveWipeObject::Close() >>"));
-    if (iSession)
-        {
-        FLOG(_L("  delete iSession;"));
-        delete iSession;
-        iSession = NULL;
-        }
-    FLOG(_L(" Messaging: void CActiveWipeObject::Close() <<"));
-    }
-
-//
-//----------------------------------------------------------------------------- 
-// CActiveWipeObject:: CActiveWipeObject
-// Description: CActiveWipeObject Destructer
-// ----------------------------------------------------------------------------- 
-// 
-CActiveWipeObject::~CActiveWipeObject()
-    {
-    FLOG(_L(" Messaging: CActiveWipeObject::~CActiveWipeObject() >>"));
-    Close();
-    if (iDummyObserver)
-        delete iDummyObserver;
-    iWs.Close();
-    iTimer.Close();
-    FLOG(_L(" Messaging: CActiveWipeObject::~CActiveWipeObject() <<"));
-    }
-
-//
-// Description: Deletes message entries one by one. If used by message application, force deletes.
-//
-void CActiveWipeObject::DoJobL(CMsvEntry* aContext)
-    {
-    FLOG(_L(" Messaging: void CLAWMOMessagingplugin::doJobL() >>"));
-
-    TMsvId entryID;
-    CMsvEntrySelection* entries;
-
-    entries = aContext->ChildrenL();
-    CleanupStack::PushL(entries);
-
-    TInt msgCount= entries->Count();
-    FLOG(_L("  msgCount= %d "), msgCount );
-    
-    for (TInt i=msgCount-1; i>=0; i--)
-    { 
-         entryID = entries->At(i);
-         CMsvEntry* entry = iSession->GetEntryL(entryID);
-         CleanupStack::PushL(entry);
-         TRAPD(err, entry->DeleteL(entryID));                                                                            
-         CleanupStack::PopAndDestroy(entry);
-         if(err)
-         {
-             FLOG(_L("  Deleteing entry failed with err= %d "), err);
-             // Force removal of the entry. If no any other way only.  
-             iSession->RemoveEntry(entryID);             
-         }
-    }                
-
-    CleanupStack::PopAndDestroy(entries);
-    FLOG(_L(" Messaging: void CLAWMOMessagingplugin::doJobL() <<"));
-    }
-
-void CActiveWipeObject::InitializeL()
-    {
-    FLOG(_L(" Messaging: void CActiveWipeObject::InitializeL() >>"));
-    iSession = CMsvSession::OpenSyncL(*iDummyObserver);
-    FLOG(_L(" Messaging: void CActiveWipeObject::InitializeL() <<"));
-    }
-
-//
-//----------------------------------------------------------------------------- 
-// CActiveWipeObject::WipeAsyncL
-// Description: Wipes the logs 
-// ---------------------------------------------------------------------------- 
-//
-
-void CActiveWipeObject::WipeAsyncL()
-    {
-    FLOG(_L(" Messaging: void CActiveWipeObject::WipeAsyncL () >>"));
-        
-    if ( !WaitTillMessageAppKilled()) //Application is closed already
-        {
-        TRequestStatus* status = &iStatus;
-        FLOG(_L("  SetActive()"));
-        SetActive();
-        User::RequestComplete(status, KErrNone);
-        }
-    FLOG(_L(" Messaging: void CActiveWipeObject::WipeAsyncL () <<"));
-    }
-
-//
-// Description: Wipes Inbox, Sent Items, Drafts, Outbox messages.
-//
-//
-void CActiveWipeObject::WipeAllL()
-    {
-    FLOG(_L(" Messaging: void  CActiveWipeObject::wipeAll() >>"));
-
-    CMsvEntry* context = NULL;
-    TMsvSelectionOrdering sort;
-
-    sort.SetShowInvisibleEntries(ETrue); // we want to handle also the invisible entries
-    context = CMsvEntry::NewL(*iSession, KMsvGlobalInBoxIndexEntryId, sort); // Reading Messages from Inbox Folder
-    DoJobL(context);
-    delete context;
-
-    context = CMsvEntry::NewL(*iSession, KMsvGlobalOutBoxIndexEntryId, sort); // Reading Messages from Outbox Folderif(KErrNone)
-    DoJobL(context);
-    delete context;
-
-    context = CMsvEntry::NewL(*iSession, KMsvSentEntryId, sort); // Reading Messages from Sent Folder
-    DoJobL(context);
-    delete context;
-
-    context = CMsvEntry::NewL(*iSession, KMsvDraftEntryId, sort); // Reading Messages from Draft Folder
-    DoJobL(context);
-    delete context;
-    FLOG(_L(" Messaging: void  CActiveWipeObject::wipeAll() <<"));
-    }
-
-//
-//----------------------------------------------------------------------------- 
-// CActiveWipeObject::RunError
-// Description: This returns error 
-//----------------------------------------------------------------------------- 
-//
-
-TInt CActiveWipeObject::RunError(TInt aError)
-    {
-    FLOG(_L(" Messaging: TInt CActiveWipeObject::RunError(TInt aError) >>"));
-
-    FLOG(_L(" Messaging: RunError error %d"), aError);
-    iObserver->HandleWipeCompleted(aError);
-
-    FLOG(_L(" Messaging: TInt CActiveWipeObject::RunError(TInt aError) <<"));
-    return KErrNone;
-    }
-
-//
-//----------------------------------------------------------------------------- 
-// CActiveWipeObject::DoCancel
-// Description: This calls CActive's Cancel 
-//----------------------------------------------------------------------------- 
-//
-void CActiveWipeObject::DoCancel()
-    {
-    FLOG(_L(" Messaging: void CActiveWipeObject::DoCancel() >>"));
-    iTimer.Cancel();
-    FLOG(_L(" Messaging: void CActiveWipeObject::DoCancel() <<"));
-    }
-
-//
-//-----------------------------------------------------------------------------
-// CActiveWipeObject::WaitTillMessageAppKilled
-// Description: This function checks for the Messaging applicaiton being run. If running then kill it.
-//-----------------------------------------------------------------------------
-
-TBool CActiveWipeObject::WaitTillMessageAppKilled()
-    {
-    FLOG(_L(" void CTTPAPITestAppUi::WaitTillMessageAppKilled() >>"));
-    TBool ret(EFalse);
-    TBool flag(ETrue);
-
-    TApaTaskList list(iWs);
-    TUid uid =
-        {
-        KMessagingAppUid
-        };
-
-    while (flag)
-        {
-        TApaTask task( list.FindApp( uid ) );
-        if (task.Exists())
-            {
-            FLOG(_L("Killing one instance..."));
-            task.EndTask();
-            User::After(500000);
-            ret = ETrue;
-            }
-        else
-            {
-            flag = EFalse;
-            }
-        }
-    
-    if (ret)
-        {
-        FLOG(_L(" WaitTillMessageAppKilled: iTimer.After(iStatus,2000); "));  
-        iTimer.After(iStatus,2000); // 0.002 sec
-        SetActive();
-        }
-    
-     FLOG(_L(" void CTTPAPITestAppUi::WaitTillMessageAppKilled(), ret = %d <<"), ret);
-     return ret;
-    }
-
-
-
-//
-//----------------------------------------------------------------------------- 
-// CActiveWipeObject::RunL 
-// Description: CActive::RunL implementation which will either stop the
-// Scheduler or increment the count
-//----------------------------------------------------------------------------- 
-//
-void CActiveWipeObject::RunL()
-    {
-    FLOG(_L(" Messaging: void CActiveWipeObject::RunL() >>"));
-    
-    FLOG(_L("void CActiveWipeObject::RunL(): iStatus= %d "), iStatus.Int());
-    InitializeL();    
-    WipeAllL();
-    iObserver->HandleWipeCompleted(KErrNone);
-    FLOG(_L(" Messaging: void CActiveWipeObject::RunL() <<"));
-    }