ipsservices/ipssosaoplugin/src/IpsSosAOMboxLogic.cpp
changeset 65 478bc57ad291
parent 59 16ed8d08d0b1
child 72 64e38f08e49c
--- a/ipsservices/ipssosaoplugin/src/IpsSosAOMboxLogic.cpp	Wed Aug 18 09:37:47 2010 +0300
+++ b/ipsservices/ipssosaoplugin/src/IpsSosAOMboxLogic.cpp	Thu Sep 02 20:15:00 2010 +0300
@@ -20,7 +20,6 @@
 
 //<QMail>
 const TInt KAOSecondsInMinute = 60;
-const TInt KAODefaultInboxSyncTimeSecs = 3600;
 //</QMail>
 const TInt KIpsSosAOMboxLogicMinGra = 1;
 
@@ -413,10 +412,7 @@
                     INFO_1("CIpsSosAOMBoxLogic: timer scheduled: %d", KIpsSosAOContinueWaitTime);
                     iTimer->After( KIpsSosAOContinueWaitTime );
                     }
-                else
-                    {
-                    event = EEventNop;
-                    }
+                event = EEventNop;
                 // ignore if in other states
                 break;
             case EEventStopAndRemoveOps:
@@ -481,6 +477,7 @@
         ( agentState == CIpsSosAOBaseAgent::EStateConnectAndSyncOnHold || 
           agentState == CIpsSosAOBaseAgent::EStatePopulateOnHold ) )
         {
+        iTimer->Cancel();
         iAgent->ContinueHoldOperations();
         NM_COMMENT("CIpsSosAOMBoxLogic: switching state: EStateSyncOngoing");
         iState = EStateSyncOngoing;
@@ -488,6 +485,7 @@
     else if ( iState == EStateSuspended && 
             agentState == CIpsSosAOBaseAgent::EStateFetchOnHold )
         {
+        iTimer->Cancel();
         iAgent->ContinueHoldOperations();
         NM_COMMENT("CIpsSosAOMBoxLogic: switching state: EStateFetchOngoing");
         iState = EStateFetchOngoing;
@@ -623,15 +621,15 @@
         {
         iAgent->HoldOperations();
         }
-    NM_COMMENT("CIpsSosAOMBoxLogic: switching state: EStateSuspended");
-    iState = EStateSuspended;
     // set suspend watchdog, if clien not continue this
     // ensure ao logic to continue
-    if ( !iTimer->IsActive() )
+    if ( !iTimer->IsActive() || iState == EStateSyncOngoing || iState == EStateFetchOngoing)
         {
         INFO_1("CIpsSosAOMBoxLogic: timer scheduled: %d", KIpsSosAOSuspendWatchdogTime);
         iTimer->After( KIpsSosAOSuspendWatchdogTime );
         }
+    NM_COMMENT("CIpsSosAOMBoxLogic: switching state: EStateSuspended");
+    iState = EStateSuspended;
     }
 
 // ----------------------------------------------------------------------------