locationrequestmgmt/networkrequesthandler/src/privacyadvancednotifierhandler.cpp
changeset 45 15a2125aa2f3
parent 0 9cfd9a3ee49c
equal deleted inserted replaced
40:18280709ae43 45:15a2125aa2f3
   146 
   146 
   147 	
   147 	
   148 	// Record the highest session Id so far.
   148 	// Record the highest session Id so far.
   149 	// We need this in case we need to check if a new request
   149 	// We need this in case we need to check if a new request
   150 	// is actually a repeat of an old request.
   150 	// is actually a repeat of an old request.
   151 	if (aSessionId.SessionNum() > iHighestSessionId.SessionNum())
   151 	if ((aSessionId.SessionNum() > iHighestSessionId.SessionNum()) &&
       
   152 	    (aNetPosRequestPrivacy.RequestAdvice() == TLbsNetPosRequestPrivacyInt::ERequestAdviceVerify))
   152 		{
   153 		{
   153 		iHighestSessionId = aSessionId;
   154 		iHighestSessionId = aSessionId;
   154 		}
   155 		}
   155 
   156 
   156 	// Add this new request to the buffer
   157 	// Add this new request to the buffer
   591 				// then assume that it is for a request that has already been processed.
   592 				// then assume that it is for a request that has already been processed.
   592 				// (This should only happen if a client has called
   593 				// (This should only happen if a client has called
   593 				// NotifyVerificationTimeout() on the Network Privacy API.)
   594 				// NotifyVerificationTimeout() on the Network Privacy API.)
   594 				// We should use a different notification reason for these
   595 				// We should use a different notification reason for these
   595 				// types of request.
   596 				// types of request.
   596 				if (request->SessionId().SessionNum() < iHighestSessionId.SessionNum())
   597 				if (request->SessionId().SessionNum() <= iHighestSessionId.SessionNum())
   597 					{
   598 					{
   598 					data.iNotificationReason = EPosVerificationTimeout;
   599 					data.iNotificationReason = EPosVerificationTimeout;
       
   600 					data.iRequestDecision = (aRequestPrivacy.RequestAction() == TLbsNetPosRequestPrivacyInt::ERequestActionAllow) ? EPosDecisionAccepted : EPosDecisionRejected;
   599 					}
   601 					}
   600 				else
   602 				else
   601 					{
   603 					{
   602 					data.iNotificationReason = EPosDecisionByRequestSource;
   604 					data.iNotificationReason = EPosDecisionByRequestSource;
   603 					}
   605 					}