diff -r 9ba4404ef423 -r 759dc5235cdb ipsservices/ipssosplugin/inc/ipsplgdeleteoperation.h --- a/ipsservices/ipssosplugin/inc/ipsplgdeleteoperation.h Thu May 27 12:43:55 2010 +0300 +++ b/ipsservices/ipssosplugin/inc/ipsplgdeleteoperation.h Fri Jun 11 13:27:14 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); // // class renamed + comments removed virtual ~CIpsPlgDeleteOperation(); @@ -59,6 +77,11 @@ virtual const TDesC8& ProgressL(); // +// + protected: + void SignalFSObserver( TInt aStatus ); +// + private: // enum TIpsPlgDeleteMessagesState @@ -76,7 +99,14 @@ CIpsPlgDeleteOperation( CMsvSession& aMsvSession, TRequestStatus& aObserverRequestStatus ); - // + // + // + CIpsPlgDeleteOperation( + CMsvSession& aMsvSession, + TRequestStatus& aObserverRequestStatus, + MFSMailRequestObserver& aOperationObserver, + const TInt aRequestId); + // // /** * 2nd phase constructor @@ -128,6 +158,9 @@ CMsvOperation* iOperation; // owned CMsvEntry* iEntry; // owned CMsvEntrySelection* iEntrySelection; // owned + MFSMailRequestObserver* iOperationObserver; // not owned + TFSProgress iFSProgress; + TInt iFSRequestId; // removed member iEntryCount TInt iSetFlagIndex; CMsvEntry* iSetFlagEntry; // owned