telephonyserverplugins/common_tsy/commontsy/src/mmpacket/Cmmpacketservicetsy.cpp
changeset 23 6b1d113cdff3
parent 20 244d7c5f118e
child 24 6638e7f4bd8f
child 26 8767c6acf334
child 44 8b72faa1200f
equal deleted inserted replaced
20:244d7c5f118e 23:6b1d113cdff3
  2890  	return ret;	
  2890  	return ret;	
  2891     
  2891     
  2892     }
  2892     }
  2893 
  2893 
  2894 //----------------------------------------------------------------------------
  2894 //----------------------------------------------------------------------------
  2895 // CMmPacketServiceTsy::CompleteUpdateMbmsMonitorServiceListL
  2895 // CMmPacketServiceTsy::CompleteUpdateMbmsMonitorServiceList
  2896 // Completes update monitored service list request
  2896 // Completes update monitored service list request
  2897 //----------------------------------------------------------------------------
  2897 //----------------------------------------------------------------------------
  2898 //
  2898 //
  2899 void CMmPacketServiceTsy::CompleteUpdateMbmsMonitorServiceList( 
  2899 void CMmPacketServiceTsy::CompleteUpdateMbmsMonitorServiceList( 
  2900     CMmDataPackage* aDataPackage, 
  2900     CMmDataPackage* aDataPackage, 
  2901     const TInt aResult)
  2901     const TInt aResult)
  2902 	{
  2902 	{
  2903 	TFLOGSTRING( "TSY: CMmPacketServiceTsy::CompleteUpdateMbmsMonitorServiceListL." );
  2903 	TFLOGSTRING( "TSY: CMmPacketServiceTsy::CompleteUpdateMbmsMonitorServiceListL." );
  2904 
  2904 
  2905 	TInt result= aResult;
  2905 	TInt result= aResult;
       
  2906 	TInt err(KErrNone);
  2906 	// Reset request handle. Returns the deleted request handle
  2907 	// Reset request handle. Returns the deleted request handle
  2907 	const TTsyReqHandle reqHandle( iTsyReqHandleStore->ResetTsyReqHandle(
  2908 	const TTsyReqHandle reqHandle( iTsyReqHandleStore->ResetTsyReqHandle(
  2908 	        EMultimodePacketServiceUpdateMBMSMonitorServiceList ) );
  2909 	        EMultimodePacketServiceUpdateMBMSMonitorServiceList ) );
  2909 	        
  2910 	        
  2910 	if( aResult == KErrNone )
  2911 	if( aResult == KErrNone )
  2911 		{
  2912 		{
  2912 		result = iMBMSMonitoredList->ProcessEntriesL(NULL, iActionType);
  2913 		TRAP( err, result = iMBMSMonitoredList->ProcessEntriesL( NULL, iActionType ) );
  2913         CompleteNotifyMbmsServiceAvailabilityChangeL( NULL, aResult );		
  2914 		if ( !err )
       
  2915 		    TRAP( err, CompleteNotifyMbmsServiceAvailabilityChangeL( NULL, aResult ) );		
  2914 		}
  2916 		}
  2915 	//there were problem managing entries
  2917 	//there were problem managing entries
  2916 	else if( (aResult == KErrMbmsImpreciseServiceEntries) && (aDataPackage != NULL) )
  2918 	else if( (aResult == KErrMbmsImpreciseServiceEntries) && (aDataPackage != NULL) )
  2917 		{
  2919 		{
  2918 		CPcktMbmsMonitoredServiceList* failedMonitorEntries = NULL;
  2920 		CPcktMbmsMonitoredServiceList* failedMonitorEntries = NULL;
  2919 		aDataPackage->UnPackData( &failedMonitorEntries ); 
  2921 		aDataPackage->UnPackData( &failedMonitorEntries ); 
  2920 		// there were a problems with some entries, 
  2922 		// there were a problems with some entries, 
  2921 		// Check failed entries exists and add succesful entries to main list
  2923 		// Check failed entries exists and add succesful entries to main list
  2922 		if( failedMonitorEntries != NULL )
  2924 		if( failedMonitorEntries != NULL )
  2923 			{
  2925 			{
  2924 			iMBMSMonitoredList->ProcessEntriesL( failedMonitorEntries, iActionType );
  2926 			TRAP( err, iMBMSMonitoredList->ProcessEntriesL( failedMonitorEntries, iActionType ) );
  2925 			}
  2927 			}
  2926 		else // There was a general error, don't add anything to main list
  2928 		else // There was a general error, don't add anything to main list
  2927 			{
  2929 			{
  2928 			iMBMSMonitoredList->ResetTempListL();
  2930 			TRAP( err, iMBMSMonitoredList->ResetTempListL() );
  2929 			}
  2931 			}
  2930 		}
  2932 		}
  2931 	 if( EMultimodePacketServiceReqHandleUnknown != reqHandle )
  2933 	 if( EMultimodePacketServiceReqHandleUnknown != reqHandle )
  2932 		 {
  2934 		 {
       
  2935          // If there was an error due to a function leaving, complete to the client with that error.
       
  2936          if (err)
       
  2937              {
       
  2938              result = err;
       
  2939              }
  2933 		 //complete with error to client
  2940 		 //complete with error to client
  2934 		 CMmPacketServiceTsy::ReqCompleted( reqHandle, result );
  2941 		 CMmPacketServiceTsy::ReqCompleted( reqHandle, result );
  2935 		 }
  2942 		 }
  2936 	    
  2943 	    
  2937 	}
  2944 	}