--- a/ipsservices/ipssosplugin/inc/ipsplgdisconnectop.h Thu Aug 19 09:38:05 2010 +0300
+++ b/ipsservices/ipssosplugin/inc/ipsplgdisconnectop.h Tue Aug 31 15:04:17 2010 +0300
@@ -18,99 +18,90 @@
#ifndef IPSPLGDISCONNECTOP_H
#define IPSPLGDISCONNECTOP_H
-
#include "ipsplgonlineoperation.h"
-
/**
-* Disconnect operation.
-*
+* Disconnect operation
+* Handles both POP and IMAP cases
*/
-class CIpsPlgDisconnectOp :
+NONSHARABLE_CLASS ( CIpsPlgDisconnectOp ) :
public CIpsPlgOnlineOperation
{
- public:
-
- /**
- *
- */
- static CIpsPlgDisconnectOp* NewL(
- CMsvSession& aMsvSession,
- TRequestStatus& aObserverRequestStatus,
- TMsvId aService,
- CIpsPlgTimerOperation& aActivityTimer,
- TFSMailMsgId aFSMailBoxId,
- MFSMailRequestObserver& aFSOperationObserver,
- TInt aFSRequestId,
- TBool aDoRemoveAfterDisconnect = EFalse );
-
- /**
- *
- */
- virtual ~CIpsPlgDisconnectOp();
+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 );
- /**
- *
- */
- const TDesC8& ProgressL();
+ virtual ~CIpsPlgDisconnectOp();
- /**
- *
- */
- const TDesC8& GetErrorProgressL( TInt aError );
-
- /**
- *
- */
- TFSProgress GetFSProgressL() const;
-
- /**
- *
- */
- TBool Connected() const;
+ /**
+ * From MsvOperation
+ * Gets information on the progress of the operation
+ * (see MsvOperation header)
+ */
+ const TDesC8& ProgressL();
- protected:
-
+ /**
+ * From CIpsPlgBaseOperation
+ * For reporting if DoRunL leaves
+ */
+ const TDesC8& GetErrorProgressL( TInt aError );
+
+ TFSProgress GetFSProgressL() const;
- /**
- * From CActive
- */
- void DoRunL();
-
- private:
+ // <qmail> Connected() used from baseclass
+
+ // <qmail> new function in this op
+ TIpsOpType IpsOpType() const;
+ // </qmail>
+
+protected: // From CActive
+ void DoRunL();
+
+private:
- /**
- *
- */
- CIpsPlgDisconnectOp(
- CMsvSession& aMsvSession,
- TRequestStatus& aObserverRequestStatus,
- TMsvId aServiceId,
- CIpsPlgTimerOperation& aActivityTimer,
- TFSMailMsgId aFSMailBoxId,
- MFSMailRequestObserver& aFSOperationObserver,
- TInt aFSRequestId,
- TBool aDoRemoveAfterDisconnect );
+ // <qmail> aDoRemoveAfterDisconnect parameter removed
+ // <qmail> MFSMailRequestObserver& changed to pointer
+ CIpsPlgDisconnectOp(
+ CMsvSession& aMsvSession,
+ TRequestStatus& aObserverRequestStatus,
+ TMsvId aServiceId,
+ CIpsPlgTimerOperation& aActivityTimer,
+ TFSMailMsgId aFSMailBoxId,
+ MFSMailRequestObserver* aFSOperationObserver,
+ TInt aFSRequestId );
- /**
- *
- */
- void ConstructL();
+ void ConstructL();
- /**
- *
- */
- void DoDisconnectL();
+ /**
+ * Sends the disconnect command to MsvServer
+ */
+ void DoDisconnectL();
-
- private: // Data
-
- TPckgBuf<TPop3Progress> iPopProgress;
- TPckgBuf<TImap4CompoundProgress> iImapProgress;
- TMsvEntry iTEntry;
- TBool iDisconnected;
- TBool iDoRemoveAfterDisconnect;
-
+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
};
#endif //IPSPLGDISCONNECTOP_H