harvester/harvesterserver/src/cindexingmanager.cpp
changeset 2 6c1a2771f4b7
parent 1 6f2c1c46032b
child 7 a5fbfefd615f
equal deleted inserted replaced
1:6f2c1c46032b 2:6c1a2771f4b7
   443 
   443 
   444 // -----------------------------------------------------------------------------
   444 // -----------------------------------------------------------------------------
   445 // CIndexingManager::RemoveHarvestingQueue()
   445 // CIndexingManager::RemoveHarvestingQueue()
   446 // -----------------------------------------------------------------------------
   446 // -----------------------------------------------------------------------------
   447 //
   447 //
   448 void CIndexingManager::RemoveHarvestingQueue(CIndexingPlugin* aPlugin, const TDesC& aQualifiedBaseAppClass)
   448 void CIndexingManager::RemoveHarvestingQueue(CIndexingPlugin* aPlugin, const TDesC& aQualifiedBaseAppClass,TBool aRemovePersist)
   449 	{
   449 	{
   450     OstTraceExt1( TRACE_NORMAL, CINDEXINGMANAGER_REMOVEHARVESTINGQUEUE, "CIndexingManager::RemoveHarvestingQueue;De-Queuing requested for <%S>", aQualifiedBaseAppClass );
   450     OstTraceExt1( TRACE_NORMAL, CINDEXINGMANAGER_REMOVEHARVESTINGQUEUE, "CIndexingManager::RemoveHarvestingQueue;De-Queuing requested for <%S>", aQualifiedBaseAppClass );
   451     CPIXLOGSTRING2("CIndexingManager::RemoveHarvestingQueue(): De-queuing requested for <%S>.", &aQualifiedBaseAppClass);	
   451     CPIXLOGSTRING2("CIndexingManager::RemoveHarvestingQueue(): De-queuing requested for <%S>.", &aQualifiedBaseAppClass);	
   452 
   452 
   453     // Find if this harvesting task exists
   453     // Find if this harvesting task exists
   459 			// Found, hibernate it
   459 			// Found, hibernate it
   460 			if (iHarvesterArray[i].iStatus == EHarvesterStatusWaiting)
   460 			if (iHarvesterArray[i].iStatus == EHarvesterStatusWaiting)
   461 				{
   461 				{
   462 				// No need to set iHarvesterArrayChanged when changing the status only (which is not saved)
   462 				// No need to set iHarvesterArrayChanged when changing the status only (which is not saved)
   463 				iHarvesterArray[i].iStatus = EHarvesterStatusHibernate;
   463 				iHarvesterArray[i].iStatus = EHarvesterStatusHibernate;
       
   464 				}
       
   465 			if(aRemovePersist) //Plugin want this to be removed from queue and saved to disk as well
       
   466 				{
       
   467 				CPIXLOGSTRING("CIndexingManager::RemoveHarvestingQueue(): aRemovePersist is true so removing");		
       
   468 				iHarvesterArray.Remove(i);
       
   469 				Externalize(); //Save to disk	
       
   470 				CPIXLOGSTRING("CIndexingManager::RemoveHarvestingQueue(): aRemovePersist Externalize successful");		
   464 				}
   471 				}
   465 			OstTrace0( TRACE_NORMAL, DUP1_CINDEXINGMANAGER_REMOVEHARVESTINGQUEUE, "CIndexingManager::RemoveHarvestingQueue(): Harvester de-queued successfully." );
   472 			OstTrace0( TRACE_NORMAL, DUP1_CINDEXINGMANAGER_REMOVEHARVESTINGQUEUE, "CIndexingManager::RemoveHarvestingQueue(): Harvester de-queued successfully." );
   466 			CPIXLOGSTRING("CIndexingManager::RemoveHarvestingQueue(): Harvester de-queued successfully.");	
   473 			CPIXLOGSTRING("CIndexingManager::RemoveHarvestingQueue(): Harvester de-queued successfully.");	
   467 			return;
   474 			return;
   468 			}
   475 			}