diff -r d189ee25cf9d -r 3533d4323edc ipsservices/ipssosplugin/inc/ipsplgdisconnectop.h --- a/ipsservices/ipssosplugin/inc/ipsplgdisconnectop.h Tue Aug 31 15:04:17 2010 +0300 +++ b/ipsservices/ipssosplugin/inc/ipsplgdisconnectop.h Wed Sep 01 12:28:57 2010 +0100 @@ -18,90 +18,99 @@ #ifndef IPSPLGDISCONNECTOP_H #define IPSPLGDISCONNECTOP_H + #include "ipsplgonlineoperation.h" + /** -* Disconnect operation -* Handles both POP and IMAP cases +* Disconnect operation. +* */ -NONSHARABLE_CLASS ( CIpsPlgDisconnectOp ) : +class CIpsPlgDisconnectOp : public CIpsPlgOnlineOperation { -public: - /** - * Construction - * @param aMsvSession client/server session to MsvServer - * @param aObserverRequestStatus caller's status - * @param aService serviceId of the mailbox - * @param aActivityTimer mailbox specific activity timer - * @param aFSMailBoxId specifies mailbox - * @param aFSOperationObserver observer of the operation - * @param aFSRequestId identifier for this request instance - * @return instance of this operation class - */ - // aDoRemoveAfterDisconnect parameter removed - // MFSMailRequestObserver& changed to pointer - static CIpsPlgDisconnectOp* NewL( - CMsvSession& aMsvSession, - TRequestStatus& aObserverRequestStatus, - TMsvId aService, - CIpsPlgTimerOperation& aActivityTimer, - TFSMailMsgId aFSMailBoxId, - MFSMailRequestObserver* aFSOperationObserver, - TInt aFSRequestId ); + public: + + /** + * + */ + static CIpsPlgDisconnectOp* NewL( + CMsvSession& aMsvSession, + TRequestStatus& aObserverRequestStatus, + TMsvId aService, + CIpsPlgTimerOperation& aActivityTimer, + TFSMailMsgId aFSMailBoxId, + MFSMailRequestObserver& aFSOperationObserver, + TInt aFSRequestId, + TBool aDoRemoveAfterDisconnect = EFalse ); + + /** + * + */ + virtual ~CIpsPlgDisconnectOp(); - virtual ~CIpsPlgDisconnectOp(); + /** + * + */ + const TDesC8& ProgressL(); - /** - * From MsvOperation - * Gets information on the progress of the operation - * (see MsvOperation header) - */ - const TDesC8& ProgressL(); + /** + * + */ + const TDesC8& GetErrorProgressL( TInt aError ); + + /** + * + */ + TFSProgress GetFSProgressL() const; + + /** + * + */ + TBool Connected() const; - /** - * From CIpsPlgBaseOperation - * For reporting if DoRunL leaves - */ - const TDesC8& GetErrorProgressL( TInt aError ); - - TFSProgress GetFSProgressL() const; + protected: + - // Connected() used from baseclass - - // new function in this op - TIpsOpType IpsOpType() const; - // - -protected: // From CActive - void DoRunL(); - -private: + /** + * From CActive + */ + void DoRunL(); + + private: - // aDoRemoveAfterDisconnect parameter removed - // MFSMailRequestObserver& changed to pointer - CIpsPlgDisconnectOp( - CMsvSession& aMsvSession, - TRequestStatus& aObserverRequestStatus, - TMsvId aServiceId, - CIpsPlgTimerOperation& aActivityTimer, - TFSMailMsgId aFSMailBoxId, - MFSMailRequestObserver* aFSOperationObserver, - TInt aFSRequestId ); + /** + * + */ + CIpsPlgDisconnectOp( + CMsvSession& aMsvSession, + TRequestStatus& aObserverRequestStatus, + TMsvId aServiceId, + CIpsPlgTimerOperation& aActivityTimer, + TFSMailMsgId aFSMailBoxId, + MFSMailRequestObserver& aFSOperationObserver, + TInt aFSRequestId, + TBool aDoRemoveAfterDisconnect ); - void ConstructL(); + /** + * + */ + void ConstructL(); - /** - * Sends the disconnect command to MsvServer - */ - void DoDisconnectL(); + /** + * + */ + void DoDisconnectL(); -private: // Data - TPckgBuf iPopProgress; - TPckgBuf iImapProgress; - TMsvEntry iTEntry; - // iDisconnected; removed; using baseclass's Connected() instead - // iDoRemoveAfterDisconnect removed; not a task for disconnect op + + private: // Data + + TPckgBuf iPopProgress; + TPckgBuf iImapProgress; + TMsvEntry iTEntry; + TBool iDisconnected; + TBool iDoRemoveAfterDisconnect; + }; #endif //IPSPLGDISCONNECTOP_H