diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2015-07-12 13:05:10 +1200 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2015-07-12 13:05:10 +1200 |
commit | f304021d16e433b261226a8293f03e7de30a08a4 (patch) | |
tree | bb908a0e437a4d80b7e5043346545d02e8b235af /src/org/traccar/FilterHandler.java | |
parent | 639b427eba5738534c10f591e285d707e8b060e5 (diff) | |
download | trackermap-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.java | 26 |
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; } } |