--- a/ipsservices/ipssosplugin/inc/ipsplgsmtpoperation.h Tue Feb 02 00:02:40 2010 +0200
+++ b/ipsservices/ipssosplugin/inc/ipsplgsmtpoperation.h Fri Apr 16 14:51:52 2010 +0300
@@ -21,8 +21,10 @@
#include <smtcmtm.h>
#include "ipsplgcommon.h"
+#include "ipsplgbaseoperation.h"
class CClientMtmRegistry;
+class MFSMailRequestObserver;
/**
* Class for smtp related operations
@@ -31,7 +33,7 @@
* @since FS 1.0
*/
//should this class inherited from online operation
-NONSHARABLE_CLASS( CIpsPlgSmtpOperation ) : public CMsvOperation
+NONSHARABLE_CLASS( CIpsPlgSmtpOperation ) : public CIpsPlgBaseOperation
{
public:
@@ -45,7 +47,8 @@
CMsvSession& aMsvSession,
TInt aPriority,
TRequestStatus& aObserverRequestStatus,
- TBool aUsePublishSubscribe );
+ MFSMailRequestObserver* aFSOperationObserver = NULL,
+ TInt aFSRequestId = KErrNotFound );
/**
* Symbian 2nd phase construcror
@@ -57,7 +60,8 @@
CMsvSession& aMsvSession,
TInt aPriority,
TRequestStatus& aObserverRequestStatus,
- TBool aUsePublishSubscribe );
+ MFSMailRequestObserver* aOperationObserver = NULL,
+ TInt aFSRequestId = KErrNotFound );
/**
* Class destructor
@@ -72,6 +76,12 @@
*/
virtual const TDesC8& ProgressL();
+ virtual const TDesC8& GetErrorProgressL( TInt aError );
+
+ virtual TFSProgress GetFSProgressL() const;
+
+ TInt IpsOpType() const;
+
/**
* Stard sending operation
*
@@ -96,8 +106,10 @@
CIpsPlgSmtpOperation(
CMsvSession& aMsvSession,
TInt aPriority,
- TRequestStatus& aObserverRequestStatus );
-
+ TRequestStatus& aObserverRequestStatus,
+ MFSMailRequestObserver* aFSOperationObserver,
+ TInt aFSRequestId );
+
/**
* Constructor for leaving methods
*
@@ -106,17 +118,6 @@
*/
void ConstructL( );
- /**
- * Completes observer with status aStatus
- * @param aStatus: Status of the operation.
- */
- void CompleteObserver( TInt aStatus = KErrNone );
-
- /**
- * Completes itself with KErrNone status
- */
- void CompleteThis();
-
private: // From CActive
enum TIpsSendState
@@ -131,6 +132,9 @@
* @since FS 1.0
*/
void RunL( );
+
+ TInt RunError( TInt aError );
+
void DoCancel( );
/**
@@ -161,12 +165,14 @@
private:
- CSmtpClientMtm* iSmtpMtm;
- CMsvOperation* iOperation;
- CMsvEntrySelection* iSelection;
- CClientMtmRegistry* iMtmRegistry;
- TInt iState;
- TMsvId iSmtpService;
+ CSmtpClientMtm* iSmtpMtm;
+ CMsvOperation* iOperation;
+ CMsvEntrySelection* iSelection;
+ CClientMtmRegistry* iMtmRegistry;
+ TInt iState;
+ TMsvId iSmtpService;
+ MFSMailRequestObserver* iFSOperationObserver;
+ TFSProgress iFSProgress;
};
#endif /* IPSPLGSENDOPERATION_H */