--- a/harvesterplugins/messaging/inc/cmessagemonitor.h Mon Apr 19 14:40:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-/*
-* Copyright (c) 2010 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:
-*
-*/
-
-
-#ifndef CMESSAGEMONITOR_H
-#define CMESSAGEMONITOR_H
-
-// INCLUDES
-
-#include <e32base.h>
-#include <msvapi.h>
-#include "cmessageplugin.h"
-#include <common.h>
-
-// FORWARD DECLARATIONS
-
-class CMessageMonitor : public CActive
- {
- public:
- /**
- * NewL
- * @return
- */
- static CMessageMonitor* NewL( CMessagePlugin& aMessagePlugin, CMsvSession& aSession );
-
- /**
- * Destructor
- */
- virtual ~CMessageMonitor();
-
- /**
- * HandleMsgMovedL handle a moved message
- */
- void HandleMsgMovedL( const TMsvId aNewFolderId,
- const TMsvId aOldFolderId,
- const CMsvEntrySelection& aSelection );
-
- /**
- * HandleMsgCreatedChangedL handles a new or changed message
- * @param CMsvEntrySelection aSelection list of messages TMsvIds that have changed
- * @param TMsvId aFolderId Folder that contains these changed messages
- * @param MMsvSessionObserver::TMsvSessionEvent aEvent type of event, not used currently
- */
- void HandleMsgCreatedChangedL( const CMsvEntrySelection& aSelection,
- const TMsvId aFolderId,
- const MMsvSessionObserver::TMsvSessionEvent aEvent );
-
- /**
- * HandleMsgCreatedChangedL handles a deleted message
- * @param CMsvEntrySelection aSelection list of messages TMsvIds that have been deleted
- */
- void HandleMsgDeletedL( const CMsvEntrySelection& aSelection );
-
- protected:
- /**
- * inherited from CActive
- */
- void RunL();
- void DoCancel();
- TInt RunError(TInt aError);
-
- private:
-
- /**
- * From Constructor
- */
- CMessageMonitor( CMessagePlugin& aMessagePlugin, CMsvSession& aSession );
-
- /**
- * 2nd phase construction
- */
- void ConstructL();
-
- /**
- * OverwriteOrAddToQuereL is a helper for MessageItemL. Adds only unique TMsvId's to the processing queue.
- * @param TMsvId aMsvId message to be added to the list
- * @param TCPixActionType aAction action type to be added to the list
- * @param TMsvId aFolderId id of the folder where message is located
- */
- void OverwriteOrAddToQuereL(TMsvId aMsvId, TCPixActionType aAction, TMsvId aFolderId);
-
- /**
- * MessageItemL adds a message to the delayed queue, and schedules the RunL
- * @param TMsvId aMsvId message to be added to the list
- * @param TCPixActionType aAction action type to be added to the list
- * @param TMsvId aFolderId id of the folder where message is located
- */
- void MessageItemL(TMsvId aMsvId, TCPixActionType aAction, TMsvId aFolderId);
-
- private:
- enum TState
- {
- EStateNone = 0,
- EStateWaiting
- };
-
- struct TMessageRecord
- {
- TMsvId iMsvId;
- TCPixActionType iAction;
- TMsvId iFolderId;
- };
-
- private:
- // Queue of documents to be indexed
- RArray<TMessageRecord> iMessages;
-
- // State machine's state
- TState iState;
-
- // Timer which is used to delay indexing messages
- RTimer iTimer;
-
- CMsvSession& iMsvSession;
- CMessagePlugin& iMessagePlugin;
- };
-
-#endif // CMESSAGEMONITOR_H