From 9129b6f4eb6ab58a83107e47c888bb4a3bbf0f90 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Tue, 20 Jun 2017 13:44:35 +0500 Subject: - Combine 'DistanceHandler' and 'CoordinatesHandler' - Move 'DistanceHandler' closer to beginning of pipeline - Use KEY_DISTANCE instead of distance recalculation --- src/org/traccar/GeocoderHandler.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'src/org/traccar/GeocoderHandler.java') diff --git a/src/org/traccar/GeocoderHandler.java b/src/org/traccar/GeocoderHandler.java index c5f4d2f9a..2742ff1a7 100644 --- a/src/org/traccar/GeocoderHandler.java +++ b/src/org/traccar/GeocoderHandler.java @@ -22,7 +22,6 @@ import org.jboss.netty.channel.Channels; import org.jboss.netty.channel.MessageEvent; import org.traccar.geocoder.AddressFormat; import org.traccar.geocoder.Geocoder; -import org.traccar.helper.DistanceCalculator; import org.traccar.helper.Log; import org.traccar.model.Position; @@ -62,10 +61,7 @@ public class GeocoderHandler implements ChannelUpstreamHandler { if (geocoderReuseDistance != 0) { Position lastPosition = Context.getIdentityManager().getLastPosition(position.getDeviceId()); if (lastPosition != null && lastPosition.getAddress() != null) { - double distance = DistanceCalculator.distance( - position.getLatitude(), position.getLongitude(), - lastPosition.getLatitude(), lastPosition.getLongitude()); - if (distance <= geocoderReuseDistance) { + if (position.getDouble(Position.KEY_DISTANCE) <= geocoderReuseDistance) { position.setAddress(lastPosition.getAddress()); Channels.fireMessageReceived(ctx, position, event.getRemoteAddress()); return; -- cgit v1.2.3