harvester/client/src/harvesterclient.cpp
branchRCL_3
changeset 21 85f623e1ef41
parent 20 f23c07ec56e2
child 22 29d87345eaeb
equal deleted inserted replaced
20:f23c07ec56e2 21:85f623e1ef41
   181     WRITELOG( "RHarvesterClient::Close()" );
   181     WRITELOG( "RHarvesterClient::Close()" );
   182     OstTrace0( TRACE_NORMAL, RHARVESTERCLIENT_CLOSE, "RHarvesterClient::Close" );
   182     OstTrace0( TRACE_NORMAL, RHARVESTERCLIENT_CLOSE, "RHarvesterClient::Close" );
   183     
   183     
   184     delete iSessionWatcher;
   184     delete iSessionWatcher;
   185     iSessionWatcher = NULL;
   185     iSessionWatcher = NULL;
   186     
   186 
   187     WRITELOG( "RHarvesterClient::Close() - cancelling pending harvesting requests" );
       
   188     if( iRequestQueue && iRequestQueue->RequestsPending() )
   187     if( iRequestQueue && iRequestQueue->RequestsPending() )
   189         {
   188         {
   190         iRequestQueue->Cancel();
   189         iRequestQueue->Cancel();
   191         }
   190         }
   192     
   191     
   193     WRITELOG( "RHarvesterClient::Close() - removing harvester client observer" );
   192     // cancels Harvest Complete request if it exist at server
   194     if( iObserver )
   193     if( iObserver )
   195         {
   194         {
   196         RemoveObserver( iObserver );
   195         RemoveObserver( iObserver );
   197         }
   196         }
   198     UnregisterHarvestComplete();
       
   199     
   197     
   200     WRITELOG( "RHarvesterClient::Close() - UnregisterHarvest done" );
   198     WRITELOG( "RHarvesterClient::Close() - UnregisterHarvest done" );
   201     
   199     
   202     WRITELOG( "RHarvesterClient::Close() - forcing remaining harvesting requests" );
       
   203     if( iRequestQueue && iRequestQueue->RequestsPending() )
   200     if( iRequestQueue && iRequestQueue->RequestsPending() )
   204         {
   201         {
   205         WRITELOG( "RHarvesterClient::Close() - Pending harvesting requests detected -> ForceHarvest" );
   202         WRITELOG( "RHarvesterClient::Close() - Pending harvesting requests detected -> ForceHarvest" );
   206         iRequestQueue->ForceRequests();
   203         iRequestQueue->ForceRequests();
   207         }
   204         }
   212     iRequestQueue = NULL;
   209     iRequestQueue = NULL;
   213     
   210     
   214     delete iHEO;
   211     delete iHEO;
   215     iHEO = NULL;
   212     iHEO = NULL;
   216     
   213     
   217     WRITELOG( "RHarvesterClient::Close() - deleting harvester client AO" );
       
   218     delete iHarvesterClientAO;
   214     delete iHarvesterClientAO;
   219     iHarvesterClientAO = NULL;
   215     iHarvesterClientAO = NULL;
   220     
   216     
   221     WRITELOG( "RHarvesterClient::Close() - Closing session" );
   217     WRITELOG( "RHarvesterClient::Close() - Closing session" );
   222     
   218     
   252 		{
   248 		{
   253 		WRITELOG( "RHarvesterClient::RemoveObserver() - deleting observer" );
   249 		WRITELOG( "RHarvesterClient::RemoveObserver() - deleting observer" );
   254 		
   250 		
   255 	    if ( iHarvesterClientAO )
   251 	    if ( iHarvesterClientAO )
   256 	        {
   252 	        {
   257 	        WRITELOG( "RHarvesterClient::RemoveObserver() - calling iHarvesterClientAO->RemoveObserver" );
       
   258 	        iHarvesterClientAO->RemoveObserver( aObserver );
   253 	        iHarvesterClientAO->RemoveObserver( aObserver );
   259 	        }
   254 	        }
   260 		
   255 		
   261 		iObserver = NULL;
   256 		iObserver = NULL;
   262 		}
   257 		}