email/pop3andsmtpmtm/clientmtms/src/CONSYNC.CPP
changeset 76 60a8a215b0ec
parent 0 72b543305e3a
--- a/email/pop3andsmtpmtm/clientmtms/src/CONSYNC.CPP	Tue Oct 05 13:58:47 2010 +0530
+++ b/email/pop3andsmtpmtm/clientmtms/src/CONSYNC.CPP	Tue Oct 19 11:30:16 2010 +0530
@@ -39,6 +39,7 @@
 													CBaseMtm& aBaseMtm, TInt aPriority, 
 													TRequestStatus& aStatus, 
 													TImapConnectionCompletionState aCompletionState, 
+                                                    TInt aFunctionId,
 													MMsvImapConnectionObserver* aConnectionObserver)
 //
 //
@@ -46,7 +47,7 @@
 	{
 	CImapConnectAndSyncOp* self=new(ELeave) CImapConnectAndSyncOp(aSession, aSelection, aBaseMtm, aPriority, aStatus, aCompletionState, aConnectionObserver);
 	CleanupStack::PushL(self);
-	self->ConstructL(aSelection);
+	self->ConstructL(aSelection, aFunctionId);
 	CleanupStack::Pop(); //	self
 	return self;
 	}
@@ -68,7 +69,7 @@
 	iMtm=KUidMsgTypeIMAP4;
 	}
 
-void CImapConnectAndSyncOp::ConstructL(const CMsvEntrySelection& aSelection)
+void CImapConnectAndSyncOp::ConstructL(const CMsvEntrySelection& aSelection, TInt aFunctionId)
 //
 //
 //
@@ -97,7 +98,15 @@
 	// Start the connection operation
 	iSelection = aSelection.CopyL();
 	TBuf8<4> buf;
-	iOperation = iBaseMtm.InvokeAsyncFunctionL(KIMAP4MTMConnectAndSynchronise, *iSelection, buf, iStatus);
+	if(aFunctionId == KIMAP4MTMConnectAndSyncCompleteAfterFullSync)
+	    {
+        iOperation = iBaseMtm.InvokeAsyncFunctionL(KIMAP4MTMConnectAndSynchronise, *iSelection, buf, iStatus);
+	    }
+	else if(aFunctionId == KIMAP4MTMSilentConnectAndSyncCompleteAfterFullSync)
+	    {
+        iOperation = iBaseMtm.InvokeAsyncFunctionL(KIMAP4MTMSilentConnectAndSynchronise, *iSelection, buf, iStatus);
+	    }
+	    
 	SetActive();
 	iState = EConnecting;
 	iObserverRequestStatus=KRequestPending;