aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/FilterHandler.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2015-07-12 13:05:10 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2015-07-12 13:05:10 +1200
commitf304021d16e433b261226a8293f03e7de30a08a4 (patch)
treebb908a0e437a4d80b7e5043346545d02e8b235af /src/org/traccar/FilterHandler.java
parent639b427eba5738534c10f591e285d707e8b060e5 (diff)
downloadtrackermap-server-f304021d16e433b261226a8293f03e7de30a08a4.tar.gz
trackermap-server-f304021d16e433b261226a8293f03e7de30a08a4.tar.bz2
trackermap-server-f304021d16e433b261226a8293f03e7de30a08a4.zip
Re-factor all channel handlers
Diffstat (limited to 'src/org/traccar/FilterHandler.java')
-rw-r--r--src/org/traccar/FilterHandler.java26
1 files changed, 3 insertions, 23 deletions
diff --git a/src/org/traccar/FilterHandler.java b/src/org/traccar/FilterHandler.java
index e5a06579c..a5be11463 100644
--- a/src/org/traccar/FilterHandler.java
+++ b/src/org/traccar/FilterHandler.java
@@ -15,16 +15,12 @@
*/
package org.traccar;
-import java.net.SocketAddress;
-import java.util.Iterator;
-import java.util.List;
import java.util.Properties;
-import org.jboss.netty.channel.Channel;
import org.traccar.helper.DistanceCalculator;
import org.traccar.helper.Log;
import org.traccar.model.Position;
-public class FilterHandler extends ExtendedObjectDecoder {
+public class FilterHandler extends BaseDataHandler {
private boolean filterInvalid;
private boolean filterZero;
@@ -144,24 +140,8 @@ public class FilterHandler extends ExtendedObjectDecoder {
}
@Override
- protected Object decode(
- Channel channel, SocketAddress remoteAddress, Object msg)
- throws Exception {
-
- if (msg instanceof Position) {
- if (filter((Position) msg)) {
- return null;
- }
- } else if (msg instanceof List) {
- Iterator<Position> i = ((List<Position>) msg).iterator();
- while (i.hasNext()) {
- if (filter(i.next())) {
- i.remove();
- }
- }
- }
-
- return msg;
+ protected Position handlePosition(Position position) {
+ return filter(position) ? null : position;
}
}