From a54bd7f41229a0244c2a44fc571fc70feebe13a0 Mon Sep 17 00:00:00 2001 From: jon-stumpf Date: Fri, 14 Nov 2014 15:07:44 -0500 Subject: Added option to choose if one ReverseGeoCodes invalid positions --- src/org/traccar/BasePipelineFactory.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/org/traccar/BasePipelineFactory.java') diff --git a/src/org/traccar/BasePipelineFactory.java b/src/org/traccar/BasePipelineFactory.java index 83207b91f..aba568de6 100644 --- a/src/org/traccar/BasePipelineFactory.java +++ b/src/org/traccar/BasePipelineFactory.java @@ -36,6 +36,7 @@ public abstract class BasePipelineFactory implements ChannelPipelineFactory { private final ReverseGeocoder reverseGeocoder; private FilterHandler filterHandler; private Integer resetDelay; + private Boolean processInvalidPositions; /** * Open channel handler @@ -100,6 +101,12 @@ public abstract class BasePipelineFactory implements ChannelPipelineFactory { if (enableFilter != null && Boolean.valueOf(enableFilter)) { filterHandler = new FilterHandler(serverManager); } + + if (reverseGeocoder != null) { + // Default behavior is to process invalid positions (i.e., the "null" case) + String invalidPositions = serverManager.getProperties().getProperty("geocode.processInvalidPositions"); + processInvalidPositions = (invalidPositions == null || Boolean.valueOf(invalidPositions)); + } } protected DataManager getDataManager() { @@ -123,7 +130,7 @@ public abstract class BasePipelineFactory implements ChannelPipelineFactory { pipeline.addLast("filter", filterHandler); } if (reverseGeocoder != null) { - pipeline.addLast("geocoder", new ReverseGeocoderHandler(reverseGeocoder)); + pipeline.addLast("geocoder", new ReverseGeocoderHandler(reverseGeocoder, processInvalidPositions)); } pipeline.addLast("handler", new TrackerEventHandler(dataManager)); return pipeline; -- cgit v1.2.3