--- 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
- */
- // <qmail> aDoRemoveAfterDisconnect parameter removed
- // <qmail> 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:
+
- // <qmail> Connected() used from baseclass
-
- // <qmail> new function in this op
- TIpsOpType IpsOpType() const;
- // </qmail>
-
-protected: // From CActive
- void DoRunL();
-
-private:
+ /**
+ * From CActive
+ */
+ void DoRunL();
+
+ private:
- // <qmail> aDoRemoveAfterDisconnect parameter removed
- // <qmail> 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<TPop3Progress> iPopProgress;
- TPckgBuf<TImap4CompoundProgress> iImapProgress;
- TMsvEntry iTEntry;
- // <qmail> iDisconnected; removed; using baseclass's Connected() instead
- // <qmail> iDoRemoveAfterDisconnect removed; not a task for disconnect op
+
+ private: // Data
+
+ TPckgBuf<TPop3Progress> iPopProgress;
+ TPckgBuf<TImap4CompoundProgress> iImapProgress;
+ TMsvEntry iTEntry;
+ TBool iDisconnected;
+ TBool iDoRemoveAfterDisconnect;
+
};
#endif //IPSPLGDISCONNECTOP_H