ipsservices/ipssosplugin/inc/ipsplgdeleteoperation.h
changeset 43 99bcbff212ad
parent 23 2dc6caa42ec3
--- a/ipsservices/ipssosplugin/inc/ipsplgdeleteoperation.h	Mon May 24 21:02:02 2010 +0300
+++ b/ipsservices/ipssosplugin/inc/ipsplgdeleteoperation.h	Fri May 28 13:56:43 2010 +0300
@@ -52,6 +52,24 @@
             CMsvSession& aMsvSession,
             TRequestStatus& aObserverRequestStatus,
             CMsvEntrySelection* aEntriesToDelete );
+        
+        /**
+        * Two-phased constructor
+        * 
+        * @param aMsvSession                client/server session to MsvServer
+        * @param aObserverRequestStatus     operations observer status
+        * @param aEntriesToDelete           Message entries to be deleted from server and locally
+        * @param aOperationObserver         observes the progress of this operation
+        * @param aRequestId                 identifier for this instance of operation, 
+        *                                   assigned by the client
+        * @return CIpsPlgCreateForwardMessageOperation* self pointer                                  
+        */
+        static CIpsPlgDeleteOperation* NewL(
+            CMsvSession& aMsvSession,
+            TRequestStatus& aObserverRequestStatus,
+            CMsvEntrySelection* aEntriesToDelete,
+            MFSMailRequestObserver& aOperationObserver,
+            const TInt aRequestId);
         // </qmail>    
 //<qmail> class renamed + comments removed
         virtual ~CIpsPlgDeleteOperation();
@@ -59,6 +77,11 @@
         virtual const TDesC8& ProgressL();
 //</qmail> 
 
+// <qmail>
+    protected:        
+        void SignalFSObserver( TInt aStatus );
+// </qmail>
+        
     private:
         // <qmail>   
         enum TIpsPlgDeleteMessagesState 
@@ -76,7 +99,14 @@
         CIpsPlgDeleteOperation(
             CMsvSession& aMsvSession,
             TRequestStatus& aObserverRequestStatus );
-		//</qmail>	
+		//</qmail>
+        //<qmail>
+        CIpsPlgDeleteOperation(
+            CMsvSession& aMsvSession,
+            TRequestStatus& aObserverRequestStatus,
+            MFSMailRequestObserver& aOperationObserver,
+            const TInt aRequestId);
+        //</qmail>
         // <qmail> 
         /**
         * 2nd phase constructor
@@ -128,6 +158,9 @@
         CMsvOperation*              iOperation; // owned
         CMsvEntry*                  iEntry; // owned
         CMsvEntrySelection*         iEntrySelection; // owned
+        MFSMailRequestObserver* iOperationObserver;  // not owned
+        TFSProgress iFSProgress;
+        TInt iFSRequestId;
         // <qmail> removed member iEntryCount
         TInt                        iSetFlagIndex;
         CMsvEntry*                  iSetFlagEntry; // owned