ipsservices/ipssosplugin/src/ipsplgonlineoperation.cpp
branchRCL_3
changeset 8 e1b6206813b4
parent 3 a4d6f1ea0416
child 24 d189ee25cf9d
equal deleted inserted replaced
4:e7aa27f58ae1 8:e1b6206813b4
   228 // ----------------------------------------------------------------------------
   228 // ----------------------------------------------------------------------------
   229 //
   229 //
   230 void CIpsPlgOnlineOperation::SignalFSObserver( TInt aStatus )
   230 void CIpsPlgOnlineOperation::SignalFSObserver( TInt aStatus )
   231     {
   231     {
   232     FUNC_LOG;
   232     FUNC_LOG;
   233     if( iSignallingAllowed )
   233     if ( iSignallingAllowed )
   234         {        
   234         {
   235         TFSProgress prog;
   235         TFSProgress prog;
   236         prog.iError = aStatus;
       
   237         // Initialize the progress data
   236         // Initialize the progress data
   238         // it would be better to get fs progress from inherited class
   237         // it would be better to get fs progress from inherited class
   239         // by calling FSProgressL method??
   238         // by calling FSProgressL method??
   240         if ( prog.iError == KErrCancel || prog.iError == KErrImapBadLogon )
   239         if ( aStatus == KErrCancel )
   241             {
   240             {
       
   241             prog.iError = KErrNone;
   242             prog.iProgressStatus = TFSProgress::EFSStatus_RequestCancelled;
   242             prog.iProgressStatus = TFSProgress::EFSStatus_RequestCancelled;
   243             }
   243             }
       
   244         else if ( aStatus == KErrImapBadLogon )
       
   245             {
       
   246             prog.iError = aStatus;
       
   247             prog.iProgressStatus = TFSProgress::EFSStatus_RequestCancelled;
       
   248             }
   244         else
   249         else
   245             {
   250             {
       
   251             prog.iError = aStatus;
   246             prog.iProgressStatus = TFSProgress::EFSStatus_RequestComplete;
   252             prog.iProgressStatus = TFSProgress::EFSStatus_RequestComplete;
   247             }
   253             }
   248         // At least in the attachment download, FS UI assumes that
   254         // At least in the attachment download, FS UI assumes that
   249         // the counter fields are greater than 0
   255         // the counter fields are greater than 0
   250         prog.iMaxCount = 1;  
   256         prog.iMaxCount = 1;  
   251         prog.iCounter = 1;
   257         prog.iCounter = 1;
   252         
   258 
   253         
       
   254         //in case of autoconnect, we don't have valid observer
   259         //in case of autoconnect, we don't have valid observer
   255         if( &iFSOperationObserver )
   260         if ( &iFSOperationObserver )
   256             {            
   261             {            
   257             TRAP_IGNORE( iFSOperationObserver.RequestResponseL( prog, iFSRequestId ) );
   262             TRAP_IGNORE( iFSOperationObserver.RequestResponseL( prog, iFSRequestId ) );
   258             }
   263             }
   259         }
   264         }
   260     }
   265     }