/// <summary> /// enhance data to give accurate response to customer /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <LocationResponse> Process(LocationRequest request) { _locationCache.UpdateUserLocation(request.DeviceID, new UserLocation() { LatestUserLocation = request.ComputedLocation, UpdateTime = DateTime.Now, UserId = request.DeviceID }); return(request.ToResponse()); }