aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/protocol/Jt600ProtocolDecoder.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2012-12-04 22:22:07 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2012-12-04 22:22:07 +1300
commit206600cd599e03eaa095619fc8a52b742d3413a1 (patch)
treeaf6c677f54c987c7c7ba5e1d75c1c30796e1b860 /src/org/traccar/protocol/Jt600ProtocolDecoder.java
parenta59ca5006a4d3547fbbb2931ad8a163f332ad65b (diff)
downloadtrackermap-server-206600cd599e03eaa095619fc8a52b742d3413a1.tar.gz
trackermap-server-206600cd599e03eaa095619fc8a52b742d3413a1.tar.bz2
trackermap-server-206600cd599e03eaa095619fc8a52b742d3413a1.zip
Added unknown device logging (fix #102)
Diffstat (limited to 'src/org/traccar/protocol/Jt600ProtocolDecoder.java')
-rw-r--r--src/org/traccar/protocol/Jt600ProtocolDecoder.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/org/traccar/protocol/Jt600ProtocolDecoder.java b/src/org/traccar/protocol/Jt600ProtocolDecoder.java
index 907eabb4b..d765c1b42 100644
--- a/src/org/traccar/protocol/Jt600ProtocolDecoder.java
+++ b/src/org/traccar/protocol/Jt600ProtocolDecoder.java
@@ -25,6 +25,7 @@ import org.jboss.netty.channel.Channel;
import org.jboss.netty.channel.ChannelHandlerContext;
import org.traccar.GenericProtocolDecoder;
import org.traccar.helper.ChannelBufferTools;
+import org.traccar.helper.Log;
import org.traccar.model.DataManager;
import org.traccar.model.Position;
@@ -51,7 +52,12 @@ public class Jt600ProtocolDecoder extends GenericProtocolDecoder {
// Get device by identifier
String id = Long.valueOf(ChannelBufferTools.readHexString(buf, 10)).toString();
- position.setDeviceId(getDataManager().getDeviceByImei(id).getId());
+ try {
+ position.setDeviceId(getDataManager().getDeviceByImei(id).getId());
+ } catch(Exception error) {
+ Log.warning("Unknown device - " + id);
+ return null;
+ }
buf.readByte(); // protocol version + data type
@@ -157,7 +163,12 @@ public class Jt600ProtocolDecoder extends GenericProtocolDecoder {
// Get device by identifier
String id = parser.group(index++);
- position.setDeviceId(getDataManager().getDeviceByImei(id).getId());
+ try {
+ position.setDeviceId(getDataManager().getDeviceByImei(id).getId());
+ } catch(Exception error) {
+ Log.warning("Unknown device - " + id);
+ return null;
+ }
// Longitude
Double lonlitude = Double.valueOf(parser.group(index++));