harvesterplugins/notes/inc/notesplugin.h
changeset 26 367228f82b66
parent 15 df6898e696c6
child 27 7a8855317cbd
--- a/harvesterplugins/notes/inc/notesplugin.h	Tue Sep 28 11:50:55 2010 +0530
+++ b/harvesterplugins/notes/inc/notesplugin.h	Tue Oct 05 13:32:14 2010 +0530
@@ -38,7 +38,18 @@
 
 class CNotesPlugin : public CIndexingPlugin, public MDelayedCallbackObserver, public MCalChangeCallBack2
 {
-public: // Constructors and destructor
+public: // Constructors and destructo
+
+	enum THarvesterState
+        {
+        EHarvesterIdleState,
+        EHarvesterStartHarvest        
+        };
+    struct TRecord 
+        {
+        TCalLocalUid iLocalUid;
+        TCPixActionType iActionType;
+        };
     /*
      * NewL
      * @return instance of Notes plugin
@@ -57,6 +68,8 @@
 public: // From CIndexingPlugin
 	void StartPluginL();
 	void StartHarvestingL(const TDesC& aQualifiedBaseAppClass);
+    void PausePluginL();
+    void ResumePluginL();
 	
 public:	// From MCalChangeCallBack2
 	
@@ -90,6 +103,10 @@
      * Leaves in case of errors.
      */
 	void InitTimeValuesL( TTime& aStartTime, TTime& aEndTime );
+	
+	void OverWriteOrAddToQueueL(const TCalLocalUid& aLocalUid, TCPixActionType aActionType);
+	        
+	void IndexQueuedItems();
 
 private: // Constructors
 	
@@ -126,6 +143,13 @@
 	//Notes count
 	TInt iNoteCount;
 	
+	//State of harvester either to pause/resume
+    TBool iIndexState;    
+    // Queue of documents to be indexed
+    RArray<TRecord> iJobQueue;    
+    //harvesting state
+    THarvesterState iHarvestState;
+	
 	//for unit testing.
 	#ifdef HARVESTERPLUGINTESTER_FRIEND
 	    friend class CHarvesterPluginTester;