From 8224082fa8ebaf0e78bc6d6a72ed4f04bb277586 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Wed, 17 Jan 2018 13:53:59 +0500 Subject: Add poiLayer field to User/Server model --- src/org/traccar/model/Server.java | 12 +++++++++++- src/org/traccar/model/User.java | 12 +++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Server.java b/src/org/traccar/model/Server.java index 072e85d55..c6161397b 100644 --- a/src/org/traccar/model/Server.java +++ b/src/org/traccar/model/Server.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 - 2016 Anton Tananaev (anton@traccar.org) + * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -157,4 +157,14 @@ public class Server extends ExtendedModel { public void setLimitCommands(boolean limitCommands) { this.limitCommands = limitCommands; } + + private String poiLayer; + + public String getPoiLayer() { + return poiLayer; + } + + public void setPoiLayer(String poiLayer) { + this.poiLayer = poiLayer; + } } diff --git a/src/org/traccar/model/User.java b/src/org/traccar/model/User.java index b1883213c..7f97d4781 100644 --- a/src/org/traccar/model/User.java +++ b/src/org/traccar/model/User.java @@ -1,5 +1,5 @@ /* - * Copyright 2013 - 2017 Anton Tananaev (anton@traccar.org) + * Copyright 2013 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -230,6 +230,16 @@ public class User extends ExtendedModel { this.limitCommands = limitCommands; } + private String poiLayer; + + public String getPoiLayer() { + return poiLayer; + } + + public void setPoiLayer(String poiLayer) { + this.poiLayer = poiLayer; + } + @QueryIgnore public String getPassword() { return null; -- cgit v1.2.3 From 5e49661ef6b3f5811f354075a16a2d1b9fc0837a Mon Sep 17 00:00:00 2001 From: parveenkumaryadav Date: Sat, 20 Jan 2018 17:40:11 +0530 Subject: NPE bug fix for the Position's serverTime --- src/org/traccar/model/Position.java | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java index 4f78867c2..2e3099774 100644 --- a/src/org/traccar/model/Position.java +++ b/src/org/traccar/model/Position.java @@ -131,6 +131,10 @@ public class Position extends Message { public static final String ALARM_TAMPERING = "tampering"; public static final String ALARM_REMOVING = "removing"; + public Position() { + this.serverTime = new Date(); + } + private String protocol; public String getProtocol() { -- cgit v1.2.3 From d6b498b1798b1ff2059a1338ca68e958699ef028 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sun, 21 Jan 2018 09:55:10 +1300 Subject: Clean up the code --- src/org/traccar/model/Position.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java index 2e3099774..5f7439ae5 100644 --- a/src/org/traccar/model/Position.java +++ b/src/org/traccar/model/Position.java @@ -132,7 +132,7 @@ public class Position extends Message { public static final String ALARM_REMOVING = "removing"; public Position() { - this.serverTime = new Date(); + serverTime = new Date(); } private String protocol; -- cgit v1.2.3 From 58ade656e2070387f95984f5851cbc41990467ba Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Mon, 22 Jan 2018 19:33:56 +1300 Subject: Add new position constructor --- src/org/traccar/BaseProtocolDecoder.java | 3 +-- src/org/traccar/model/Position.java | 6 +++++- src/org/traccar/protocol/AdmProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/AisProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AlematicsProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ApelProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AplicomProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AppelloProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AquilaProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Ardi01ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ArknavProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ArknavX8ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ArnaviProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AstraProtocolDecoder.java | 3 +-- src/org/traccar/protocol/At2000ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AtrackProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/AuroProtocolDecoder.java | 3 +-- src/org/traccar/protocol/AutoFonProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/AutoGradeProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Avl301ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/BceProtocolDecoder.java | 3 +-- src/org/traccar/protocol/BlackKiteProtocolDecoder.java | 5 ++--- src/org/traccar/protocol/BoxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/CalAmpProtocolDecoder.java | 3 +-- src/org/traccar/protocol/CarTrackProtocolDecoder.java | 3 +-- src/org/traccar/protocol/CarcellProtocolDecoder.java | 3 +-- src/org/traccar/protocol/CarscopProtocolDecoder.java | 3 +-- src/org/traccar/protocol/CastelProtocolDecoder.java | 6 ++---- .../traccar/protocol/CellocatorProtocolDecoder.java | 3 +-- src/org/traccar/protocol/CguardProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/CityeasyProtocolDecoder.java | 3 +-- .../traccar/protocol/CradlepointProtocolDecoder.java | 3 +-- src/org/traccar/protocol/DishaProtocolDecoder.java | 3 +-- src/org/traccar/protocol/DmtHttpProtocolDecoder.java | 3 +-- src/org/traccar/protocol/DmtProtocolDecoder.java | 3 +-- src/org/traccar/protocol/DwayProtocolDecoder.java | 3 +-- src/org/traccar/protocol/EasyTrackProtocolDecoder.java | 3 +-- src/org/traccar/protocol/EelinkProtocolDecoder.java | 12 ++++-------- src/org/traccar/protocol/EnforaProtocolDecoder.java | 3 +-- src/org/traccar/protocol/EskyProtocolDecoder.java | 3 +-- .../traccar/protocol/ExtremTracProtocolDecoder.java | 3 +-- src/org/traccar/protocol/FifotrackProtocolDecoder.java | 3 +-- src/org/traccar/protocol/FlespiProtocolDecoder.java | 3 +-- src/org/traccar/protocol/FlexCommProtocolDecoder.java | 3 +-- src/org/traccar/protocol/FlextrackProtocolDecoder.java | 3 +-- src/org/traccar/protocol/FoxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/FreedomProtocolDecoder.java | 3 +-- src/org/traccar/protocol/GalileoProtocolDecoder.java | 5 ++--- src/org/traccar/protocol/GatorProtocolDecoder.java | 3 +-- src/org/traccar/protocol/GenxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Gl100ProtocolDecoder.java | 3 +-- .../traccar/protocol/Gl200BinaryProtocolDecoder.java | 12 ++++-------- src/org/traccar/protocol/Gl200TextProtocolDecoder.java | 15 +++++---------- src/org/traccar/protocol/GlobalSatProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/GnxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/GoSafeProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/GotopProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Gps056ProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/Gps103ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/GpsGateProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/GpsMarkerProtocolDecoder.java | 3 +-- src/org/traccar/protocol/GpsmtaProtocolDecoder.java | 3 +-- src/org/traccar/protocol/GranitProtocolDecoder.java | 9 +++------ src/org/traccar/protocol/Gt02ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Gt06ProtocolDecoder.java | 15 +++++---------- src/org/traccar/protocol/Gt30ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/H02ProtocolDecoder.java | 15 +++++---------- src/org/traccar/protocol/HaicomProtocolDecoder.java | 3 +-- src/org/traccar/protocol/HomtecsProtocolDecoder.java | 3 +-- src/org/traccar/protocol/HuaShengProtocolDecoder.java | 3 +-- src/org/traccar/protocol/HuabaoProtocolDecoder.java | 3 +-- src/org/traccar/protocol/HunterProProtocolDecoder.java | 3 +-- src/org/traccar/protocol/IdplProtocolDecoder.java | 3 +-- .../traccar/protocol/IntellitracProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Ivt401ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/JpKorjarProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Jt600ProtocolDecoder.java | 9 +++------ src/org/traccar/protocol/KenjiProtocolDecoder.java | 3 +-- src/org/traccar/protocol/KhdProtocolDecoder.java | 3 +-- src/org/traccar/protocol/L100ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/LaipacProtocolDecoder.java | 3 +-- src/org/traccar/protocol/M2cProtocolDecoder.java | 3 +-- src/org/traccar/protocol/M2mProtocolDecoder.java | 3 +-- src/org/traccar/protocol/MaestroProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ManPowerProtocolDecoder.java | 3 +-- src/org/traccar/protocol/MegastekProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/MeiligaoProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/MeitrackProtocolDecoder.java | 12 ++++-------- .../traccar/protocol/MiniFinderProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Mta6ProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/MtxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/MxtProtocolDecoder.java | 3 +-- src/org/traccar/protocol/NavigilProtocolDecoder.java | 18 ++++++------------ src/org/traccar/protocol/NavisProtocolDecoder.java | 3 +-- src/org/traccar/protocol/NoranProtocolDecoder.java | 3 +-- src/org/traccar/protocol/NvsProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ObdDongleProtocolDecoder.java | 3 +-- src/org/traccar/protocol/OigoProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/OkoProtocolDecoder.java | 3 +-- src/org/traccar/protocol/OrionProtocolDecoder.java | 3 +-- src/org/traccar/protocol/OsmAndProtocolDecoder.java | 3 +-- src/org/traccar/protocol/OwnTracksProtocolDecoder.java | 3 +-- src/org/traccar/protocol/PathAwayProtocolDecoder.java | 3 +-- src/org/traccar/protocol/PiligrimProtocolDecoder.java | 3 +-- src/org/traccar/protocol/PretraceProtocolDecoder.java | 3 +-- src/org/traccar/protocol/PricolProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ProgressProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Pt3000ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Pt502ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/RaveonProtocolDecoder.java | 3 +-- src/org/traccar/protocol/RecodaProtocolDecoder.java | 3 +-- src/org/traccar/protocol/RitiProtocolDecoder.java | 3 +-- src/org/traccar/protocol/RuptelaProtocolDecoder.java | 9 +++------ src/org/traccar/protocol/SanavProtocolDecoder.java | 3 +-- src/org/traccar/protocol/SigfoxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/SiwiProtocolDecoder.java | 3 +-- src/org/traccar/protocol/SkypatrolProtocolDecoder.java | 3 +-- src/org/traccar/protocol/SmokeyProtocolDecoder.java | 3 +-- src/org/traccar/protocol/SpotProtocolDecoder.java | 3 +-- src/org/traccar/protocol/StarLinkProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Stl060ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/SuntechProtocolDecoder.java | 9 +++------ src/org/traccar/protocol/SupermateProtocolDecoder.java | 3 +-- src/org/traccar/protocol/T55ProtocolDecoder.java | 12 ++++-------- src/org/traccar/protocol/T57ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/T800xProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TaipProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TelicProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TeltonikaProtocolDecoder.java | 3 +-- src/org/traccar/protocol/ThinkRaceProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Tk102ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Tk103ProtocolDecoder.java | 15 +++++---------- src/org/traccar/protocol/Tlt2hProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TlvProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TmgProtocolDecoder.java | 3 +-- .../traccar/protocol/TopflytechProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TotemProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Tr20ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Tr900ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TrackboxProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TrakMateProtocolDecoder.java | 9 +++------ src/org/traccar/protocol/TramigoProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TrvProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/Tt8850ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TytanProtocolDecoder.java | 3 +-- src/org/traccar/protocol/TzoneProtocolDecoder.java | 3 +-- src/org/traccar/protocol/UlbotechProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/UproProtocolDecoder.java | 3 +-- src/org/traccar/protocol/V680ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/VisiontekProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Vt200ProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/VtfmsProtocolDecoder.java | 3 +-- src/org/traccar/protocol/WatchProtocolDecoder.java | 15 +++++---------- src/org/traccar/protocol/WialonProtocolDecoder.java | 6 ++---- src/org/traccar/protocol/WondexProtocolDecoder.java | 10 +++++----- src/org/traccar/protocol/XexunProtocolDecoder.java | 3 +-- src/org/traccar/protocol/XirgoProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Xt013ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/Xt2400ProtocolDecoder.java | 3 +-- src/org/traccar/protocol/YwtProtocolDecoder.java | 3 +-- 160 files changed, 234 insertions(+), 452 deletions(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/BaseProtocolDecoder.java b/src/org/traccar/BaseProtocolDecoder.java index e412134d1..18b0bc04a 100644 --- a/src/org/traccar/BaseProtocolDecoder.java +++ b/src/org/traccar/BaseProtocolDecoder.java @@ -229,8 +229,7 @@ public abstract class BaseProtocolDecoder extends ExtendedObjectDecoder { protected Object handleEmptyMessage(Channel channel, SocketAddress remoteAddress, Object msg) { DeviceSession deviceSession = getDeviceSession(channel, remoteAddress); if (Context.getConfig().getBoolean("database.saveEmpty") && deviceSession != null) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); return position; diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java index 5f7439ae5..3943c1ef9 100644 --- a/src/org/traccar/model/Position.java +++ b/src/org/traccar/model/Position.java @@ -132,7 +132,11 @@ public class Position extends Message { public static final String ALARM_REMOVING = "removing"; public Position() { - serverTime = new Date(); + } + + public Position(String protocol) { + this.protocol = protocol; + this.serverTime = new Date(); } private String protocol; diff --git a/src/org/traccar/protocol/AdmProtocolDecoder.java b/src/org/traccar/protocol/AdmProtocolDecoder.java index f93c55e18..4ae16017a 100644 --- a/src/org/traccar/protocol/AdmProtocolDecoder.java +++ b/src/org/traccar/protocol/AdmProtocolDecoder.java @@ -46,8 +46,7 @@ public class AdmProtocolDecoder extends BaseProtocolDecoder { } if (BitUtil.to(type, 2) == 0) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_VERSION_FW, buf.readUnsignedByte()); @@ -124,8 +123,7 @@ public class AdmProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/AisProtocolDecoder.java b/src/org/traccar/protocol/AisProtocolDecoder.java index 1f7a12595..842260e98 100644 --- a/src/org/traccar/protocol/AisProtocolDecoder.java +++ b/src/org/traccar/protocol/AisProtocolDecoder.java @@ -61,8 +61,7 @@ public class AisProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date()); diff --git a/src/org/traccar/protocol/AlematicsProtocolDecoder.java b/src/org/traccar/protocol/AlematicsProtocolDecoder.java index da0704242..b83081cc1 100644 --- a/src/org/traccar/protocol/AlematicsProtocolDecoder.java +++ b/src/org/traccar/protocol/AlematicsProtocolDecoder.java @@ -113,8 +113,7 @@ public class AlematicsProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_TYPE, parser.nextInt()); position.set(Position.KEY_INDEX, parser.nextInt()); diff --git a/src/org/traccar/protocol/ApelProtocolDecoder.java b/src/org/traccar/protocol/ApelProtocolDecoder.java index 6e16e02be..a107f7d6f 100644 --- a/src/org/traccar/protocol/ApelProtocolDecoder.java +++ b/src/org/traccar/protocol/ApelProtocolDecoder.java @@ -136,8 +136,7 @@ public class ApelProtocolDecoder extends BaseProtocolDecoder { } for (int j = 0; j < recordCount; j++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); int subtype = type; diff --git a/src/org/traccar/protocol/AplicomProtocolDecoder.java b/src/org/traccar/protocol/AplicomProtocolDecoder.java index c1d7ab087..7ed187937 100644 --- a/src/org/traccar/protocol/AplicomProtocolDecoder.java +++ b/src/org/traccar/protocol/AplicomProtocolDecoder.java @@ -608,8 +608,7 @@ public class AplicomProtocolDecoder extends BaseProtocolDecoder { selector = buf.readUnsignedMedium(); } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, imei); if (deviceSession == null) { return null; diff --git a/src/org/traccar/protocol/AppelloProtocolDecoder.java b/src/org/traccar/protocol/AppelloProtocolDecoder.java index 30dec3941..bf95b4068 100644 --- a/src/org/traccar/protocol/AppelloProtocolDecoder.java +++ b/src/org/traccar/protocol/AppelloProtocolDecoder.java @@ -65,8 +65,7 @@ public class AppelloProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (parser.hasNext(6)) { diff --git a/src/org/traccar/protocol/AquilaProtocolDecoder.java b/src/org/traccar/protocol/AquilaProtocolDecoder.java index 773210b04..638affdc3 100644 --- a/src/org/traccar/protocol/AquilaProtocolDecoder.java +++ b/src/org/traccar/protocol/AquilaProtocolDecoder.java @@ -138,8 +138,7 @@ public class AquilaProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_EVENT, parser.nextInt(0)); diff --git a/src/org/traccar/protocol/Ardi01ProtocolDecoder.java b/src/org/traccar/protocol/Ardi01ProtocolDecoder.java index 7a5bd217c..dea9e3483 100644 --- a/src/org/traccar/protocol/Ardi01ProtocolDecoder.java +++ b/src/org/traccar/protocol/Ardi01ProtocolDecoder.java @@ -56,8 +56,7 @@ public class Ardi01ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/ArknavProtocolDecoder.java b/src/org/traccar/protocol/ArknavProtocolDecoder.java index 927c50c29..aeea4a734 100644 --- a/src/org/traccar/protocol/ArknavProtocolDecoder.java +++ b/src/org/traccar/protocol/ArknavProtocolDecoder.java @@ -58,8 +58,7 @@ public class ArknavProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/ArknavX8ProtocolDecoder.java b/src/org/traccar/protocol/ArknavX8ProtocolDecoder.java index 8a80901b5..47cc267fe 100644 --- a/src/org/traccar/protocol/ArknavX8ProtocolDecoder.java +++ b/src/org/traccar/protocol/ArknavX8ProtocolDecoder.java @@ -65,8 +65,7 @@ public class ArknavX8ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_TYPE, parser.next()); diff --git a/src/org/traccar/protocol/ArnaviProtocolDecoder.java b/src/org/traccar/protocol/ArnaviProtocolDecoder.java index 9c4ab5d05..ec96343fe 100644 --- a/src/org/traccar/protocol/ArnaviProtocolDecoder.java +++ b/src/org/traccar/protocol/ArnaviProtocolDecoder.java @@ -65,8 +65,7 @@ public class ArnaviProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/AstraProtocolDecoder.java b/src/org/traccar/protocol/AstraProtocolDecoder.java index 8d86cd2be..79c7eba3f 100644 --- a/src/org/traccar/protocol/AstraProtocolDecoder.java +++ b/src/org/traccar/protocol/AstraProtocolDecoder.java @@ -63,8 +63,7 @@ public class AstraProtocolDecoder extends BaseProtocolDecoder { while (buf.readableBytes() > 2) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.readUnsignedByte(); // index diff --git a/src/org/traccar/protocol/At2000ProtocolDecoder.java b/src/org/traccar/protocol/At2000ProtocolDecoder.java index 70840c37d..06d80c497 100644 --- a/src/org/traccar/protocol/At2000ProtocolDecoder.java +++ b/src/org/traccar/protocol/At2000ProtocolDecoder.java @@ -114,8 +114,7 @@ public class At2000ProtocolDecoder extends BaseProtocolDecoder { while (buf.readableBytes() >= 63) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.readUnsignedShort(); // index diff --git a/src/org/traccar/protocol/AtrackProtocolDecoder.java b/src/org/traccar/protocol/AtrackProtocolDecoder.java index 23cb67e15..236b608d6 100644 --- a/src/org/traccar/protocol/AtrackProtocolDecoder.java +++ b/src/org/traccar/protocol/AtrackProtocolDecoder.java @@ -217,8 +217,7 @@ public class AtrackProtocolDecoder extends BaseProtocolDecoder { .compile(); private Position decodeString(Channel channel, SocketAddress remoteAddress, String sentence) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); getLastLocation(position, null); @@ -288,8 +287,7 @@ public class AtrackProtocolDecoder extends BaseProtocolDecoder { while (buf.readableBytes() >= MIN_DATA_LENGTH) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (longDate) { diff --git a/src/org/traccar/protocol/AuroProtocolDecoder.java b/src/org/traccar/protocol/AuroProtocolDecoder.java index a45d14709..3cb3a440c 100644 --- a/src/org/traccar/protocol/AuroProtocolDecoder.java +++ b/src/org/traccar/protocol/AuroProtocolDecoder.java @@ -62,8 +62,7 @@ public class AuroProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_INDEX, parser.nextInt(0)); diff --git a/src/org/traccar/protocol/AutoFonProtocolDecoder.java b/src/org/traccar/protocol/AutoFonProtocolDecoder.java index 32b4bfa74..e243b93ea 100644 --- a/src/org/traccar/protocol/AutoFonProtocolDecoder.java +++ b/src/org/traccar/protocol/AutoFonProtocolDecoder.java @@ -62,8 +62,7 @@ public class AutoFonProtocolDecoder extends BaseProtocolDecoder { private Position decodePosition(DeviceSession deviceSession, ChannelBuffer buf, boolean history) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (!history) { @@ -167,8 +166,7 @@ public class AutoFonProtocolDecoder extends BaseProtocolDecoder { } else if (type == MSG_45_LOCATION) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); short status = buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/AutoGradeProtocolDecoder.java b/src/org/traccar/protocol/AutoGradeProtocolDecoder.java index 753509f31..b98c68cbd 100644 --- a/src/org/traccar/protocol/AutoGradeProtocolDecoder.java +++ b/src/org/traccar/protocol/AutoGradeProtocolDecoder.java @@ -72,8 +72,7 @@ public class AutoGradeProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/Avl301ProtocolDecoder.java b/src/org/traccar/protocol/Avl301ProtocolDecoder.java index cc61be91b..056395d35 100644 --- a/src/org/traccar/protocol/Avl301ProtocolDecoder.java +++ b/src/org/traccar/protocol/Avl301ProtocolDecoder.java @@ -88,9 +88,8 @@ public class Avl301ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); DateBuilder dateBuilder = new DateBuilder() .setDate(buf.readUnsignedByte(), buf.readUnsignedByte(), buf.readUnsignedByte()) diff --git a/src/org/traccar/protocol/BceProtocolDecoder.java b/src/org/traccar/protocol/BceProtocolDecoder.java index b472ac6c9..22d6a5aa8 100644 --- a/src/org/traccar/protocol/BceProtocolDecoder.java +++ b/src/org/traccar/protocol/BceProtocolDecoder.java @@ -67,8 +67,7 @@ public class BceProtocolDecoder extends BaseProtocolDecoder { while (buf.readerIndex() < dataEnd) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); int structEnd = buf.readUnsignedByte() + buf.readerIndex(); diff --git a/src/org/traccar/protocol/BlackKiteProtocolDecoder.java b/src/org/traccar/protocol/BlackKiteProtocolDecoder.java index 561d7c18b..7fc39fc7c 100644 --- a/src/org/traccar/protocol/BlackKiteProtocolDecoder.java +++ b/src/org/traccar/protocol/BlackKiteProtocolDecoder.java @@ -76,8 +76,7 @@ public class BlackKiteProtocolDecoder extends BaseProtocolDecoder { List positions = new LinkedList<>(); Set tags = new HashSet<>(); boolean hasLocation = false; - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); while (buf.readerIndex() < length) { @@ -89,7 +88,7 @@ public class BlackKiteProtocolDecoder extends BaseProtocolDecoder { } tags.clear(); hasLocation = false; - position = new Position(); + position = new Position(getProtocolName()); } tags.add(tag); diff --git a/src/org/traccar/protocol/BoxProtocolDecoder.java b/src/org/traccar/protocol/BoxProtocolDecoder.java index 562731657..63238bcef 100644 --- a/src/org/traccar/protocol/BoxProtocolDecoder.java +++ b/src/org/traccar/protocol/BoxProtocolDecoder.java @@ -77,9 +77,8 @@ public class BoxProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); position.setTime(parser.nextDateTime()); diff --git a/src/org/traccar/protocol/CalAmpProtocolDecoder.java b/src/org/traccar/protocol/CalAmpProtocolDecoder.java index 557e2d6e6..f717d3c5d 100644 --- a/src/org/traccar/protocol/CalAmpProtocolDecoder.java +++ b/src/org/traccar/protocol/CalAmpProtocolDecoder.java @@ -66,9 +66,8 @@ public class CalAmpProtocolDecoder extends BaseProtocolDecoder { private Position decodePosition(DeviceSession deviceSession, int type, ChannelBuffer buf) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); position.setTime(new Date(buf.readUnsignedInt() * 1000)); if (type != MSG_MINI_EVENT_REPORT) { diff --git a/src/org/traccar/protocol/CarTrackProtocolDecoder.java b/src/org/traccar/protocol/CarTrackProtocolDecoder.java index 3064bbb35..94215379d 100644 --- a/src/org/traccar/protocol/CarTrackProtocolDecoder.java +++ b/src/org/traccar/protocol/CarTrackProtocolDecoder.java @@ -65,8 +65,7 @@ public class CarTrackProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/CarcellProtocolDecoder.java b/src/org/traccar/protocol/CarcellProtocolDecoder.java index fc5710f09..52b777b81 100644 --- a/src/org/traccar/protocol/CarcellProtocolDecoder.java +++ b/src/org/traccar/protocol/CarcellProtocolDecoder.java @@ -85,8 +85,7 @@ public class CarcellProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_ARCHIVE, parser.next().equals("%")); position.setValid(true); diff --git a/src/org/traccar/protocol/CarscopProtocolDecoder.java b/src/org/traccar/protocol/CarscopProtocolDecoder.java index 2a081bcdd..7f9dcc3b7 100644 --- a/src/org/traccar/protocol/CarscopProtocolDecoder.java +++ b/src/org/traccar/protocol/CarscopProtocolDecoder.java @@ -73,9 +73,8 @@ public class CarscopProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); DateBuilder dateBuilder = new DateBuilder() .setTime(parser.nextInt(0), parser.nextInt(0), parser.nextInt(0)); diff --git a/src/org/traccar/protocol/CastelProtocolDecoder.java b/src/org/traccar/protocol/CastelProtocolDecoder.java index 5eedc69f9..022a5b023 100644 --- a/src/org/traccar/protocol/CastelProtocolDecoder.java +++ b/src/org/traccar/protocol/CastelProtocolDecoder.java @@ -100,8 +100,7 @@ public class CastelProtocolDecoder extends BaseProtocolDecoder { private Position readPosition(DeviceSession deviceSession, ChannelBuffer buf) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -131,8 +130,7 @@ public class CastelProtocolDecoder extends BaseProtocolDecoder { private Position createPosition(DeviceSession deviceSession) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/CellocatorProtocolDecoder.java b/src/org/traccar/protocol/CellocatorProtocolDecoder.java index 7ef013e28..67db9aa7d 100644 --- a/src/org/traccar/protocol/CellocatorProtocolDecoder.java +++ b/src/org/traccar/protocol/CellocatorProtocolDecoder.java @@ -100,8 +100,7 @@ public class CellocatorProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_CLIENT_STATUS) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, String.valueOf(deviceUniqueId)); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/CguardProtocolDecoder.java b/src/org/traccar/protocol/CguardProtocolDecoder.java index 54f83fb73..2e20537c8 100644 --- a/src/org/traccar/protocol/CguardProtocolDecoder.java +++ b/src/org/traccar/protocol/CguardProtocolDecoder.java @@ -58,8 +58,7 @@ public class CguardProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime()); @@ -84,8 +83,7 @@ public class CguardProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, parser.nextDateTime()); diff --git a/src/org/traccar/protocol/CityeasyProtocolDecoder.java b/src/org/traccar/protocol/CityeasyProtocolDecoder.java index 9a614730f..7a1d8119d 100644 --- a/src/org/traccar/protocol/CityeasyProtocolDecoder.java +++ b/src/org/traccar/protocol/CityeasyProtocolDecoder.java @@ -91,8 +91,7 @@ public class CityeasyProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (parser.hasNext(15)) { diff --git a/src/org/traccar/protocol/CradlepointProtocolDecoder.java b/src/org/traccar/protocol/CradlepointProtocolDecoder.java index e8f95a60c..f74830756 100644 --- a/src/org/traccar/protocol/CradlepointProtocolDecoder.java +++ b/src/org/traccar/protocol/CradlepointProtocolDecoder.java @@ -65,8 +65,7 @@ public class CradlepointProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); int time = parser.nextInt(); diff --git a/src/org/traccar/protocol/DishaProtocolDecoder.java b/src/org/traccar/protocol/DishaProtocolDecoder.java index ab0a63215..a4e567b34 100644 --- a/src/org/traccar/protocol/DishaProtocolDecoder.java +++ b/src/org/traccar/protocol/DishaProtocolDecoder.java @@ -65,8 +65,7 @@ public class DishaProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/DmtHttpProtocolDecoder.java b/src/org/traccar/protocol/DmtHttpProtocolDecoder.java index dbcc7a6f8..200a20759 100644 --- a/src/org/traccar/protocol/DmtHttpProtocolDecoder.java +++ b/src/org/traccar/protocol/DmtHttpProtocolDecoder.java @@ -64,8 +64,7 @@ public class DmtHttpProtocolDecoder extends BaseHttpProtocolDecoder { JsonArray records = root.getJsonArray("Records"); for (int i = 0; i < records.size(); i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); JsonObject record = records.getJsonObject(i); diff --git a/src/org/traccar/protocol/DmtProtocolDecoder.java b/src/org/traccar/protocol/DmtProtocolDecoder.java index 39462a469..d7dc545a6 100644 --- a/src/org/traccar/protocol/DmtProtocolDecoder.java +++ b/src/org/traccar/protocol/DmtProtocolDecoder.java @@ -96,8 +96,7 @@ public class DmtProtocolDecoder extends BaseProtocolDecoder { int recordEnd = buf.readerIndex() + buf.readUnsignedShort(); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_INDEX, buf.readUnsignedInt()); diff --git a/src/org/traccar/protocol/DwayProtocolDecoder.java b/src/org/traccar/protocol/DwayProtocolDecoder.java index 121681588..8ddd62b83 100644 --- a/src/org/traccar/protocol/DwayProtocolDecoder.java +++ b/src/org/traccar/protocol/DwayProtocolDecoder.java @@ -76,8 +76,7 @@ public class DwayProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setValid(true); diff --git a/src/org/traccar/protocol/EasyTrackProtocolDecoder.java b/src/org/traccar/protocol/EasyTrackProtocolDecoder.java index 799254b65..50b21841b 100644 --- a/src/org/traccar/protocol/EasyTrackProtocolDecoder.java +++ b/src/org/traccar/protocol/EasyTrackProtocolDecoder.java @@ -63,8 +63,7 @@ public class EasyTrackProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/EelinkProtocolDecoder.java b/src/org/traccar/protocol/EelinkProtocolDecoder.java index 98a9f7d6d..0ed81c925 100644 --- a/src/org/traccar/protocol/EelinkProtocolDecoder.java +++ b/src/org/traccar/protocol/EelinkProtocolDecoder.java @@ -115,9 +115,8 @@ public class EelinkProtocolDecoder extends BaseProtocolDecoder { private Position decodeOld(DeviceSession deviceSession, ChannelBuffer buf, int type, int index) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); position.set(Position.KEY_INDEX, index); @@ -173,9 +172,8 @@ public class EelinkProtocolDecoder extends BaseProtocolDecoder { private Position decodeNew(DeviceSession deviceSession, ChannelBuffer buf, int index) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); position.set(Position.KEY_INDEX, index); @@ -282,9 +280,8 @@ public class EelinkProtocolDecoder extends BaseProtocolDecoder { private Position decodeResult(DeviceSession deviceSession, ChannelBuffer buf, int index) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); position.set(Position.KEY_INDEX, index); @@ -362,9 +359,8 @@ public class EelinkProtocolDecoder extends BaseProtocolDecoder { } else if (type == MSG_HEARTBEAT && buf.readableBytes() >= 2) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/EnforaProtocolDecoder.java b/src/org/traccar/protocol/EnforaProtocolDecoder.java index f0b79aa1f..c5500c3b3 100644 --- a/src/org/traccar/protocol/EnforaProtocolDecoder.java +++ b/src/org/traccar/protocol/EnforaProtocolDecoder.java @@ -95,8 +95,7 @@ public class EnforaProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/EskyProtocolDecoder.java b/src/org/traccar/protocol/EskyProtocolDecoder.java index b509d821f..60ef4f846 100644 --- a/src/org/traccar/protocol/EskyProtocolDecoder.java +++ b/src/org/traccar/protocol/EskyProtocolDecoder.java @@ -65,8 +65,7 @@ public class EskyProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_SATELLITES, parser.nextInt()); diff --git a/src/org/traccar/protocol/ExtremTracProtocolDecoder.java b/src/org/traccar/protocol/ExtremTracProtocolDecoder.java index 79e3306df..553720f1e 100644 --- a/src/org/traccar/protocol/ExtremTracProtocolDecoder.java +++ b/src/org/traccar/protocol/ExtremTracProtocolDecoder.java @@ -61,8 +61,7 @@ public class ExtremTracProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/FifotrackProtocolDecoder.java b/src/org/traccar/protocol/FifotrackProtocolDecoder.java index 304f6a2c3..cb7a23315 100644 --- a/src/org/traccar/protocol/FifotrackProtocolDecoder.java +++ b/src/org/traccar/protocol/FifotrackProtocolDecoder.java @@ -78,8 +78,7 @@ public class FifotrackProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_ALARM, parser.next()); diff --git a/src/org/traccar/protocol/FlespiProtocolDecoder.java b/src/org/traccar/protocol/FlespiProtocolDecoder.java index 6cba234e5..be0e4a07f 100644 --- a/src/org/traccar/protocol/FlespiProtocolDecoder.java +++ b/src/org/traccar/protocol/FlespiProtocolDecoder.java @@ -60,9 +60,8 @@ public class FlespiProtocolDecoder extends BaseHttpProtocolDecoder { if (deviceSession == null) { continue; } - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); decodePosition(message, position); positions.add(position); } diff --git a/src/org/traccar/protocol/FlexCommProtocolDecoder.java b/src/org/traccar/protocol/FlexCommProtocolDecoder.java index f401145b9..8bd4dcee0 100644 --- a/src/org/traccar/protocol/FlexCommProtocolDecoder.java +++ b/src/org/traccar/protocol/FlexCommProtocolDecoder.java @@ -78,8 +78,7 @@ public class FlexCommProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_STATUS, parser.nextInt()); diff --git a/src/org/traccar/protocol/FlextrackProtocolDecoder.java b/src/org/traccar/protocol/FlextrackProtocolDecoder.java index ab2e4d24c..8f7525147 100644 --- a/src/org/traccar/protocol/FlextrackProtocolDecoder.java +++ b/src/org/traccar/protocol/FlextrackProtocolDecoder.java @@ -103,8 +103,7 @@ public class FlextrackProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); sendAcknowledgement(channel, parser.next()); diff --git a/src/org/traccar/protocol/FoxProtocolDecoder.java b/src/org/traccar/protocol/FoxProtocolDecoder.java index 9b2cf0e1d..16f8fce27 100644 --- a/src/org/traccar/protocol/FoxProtocolDecoder.java +++ b/src/org/traccar/protocol/FoxProtocolDecoder.java @@ -88,8 +88,7 @@ public class FoxProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_STATUS, parser.nextInt(0)); diff --git a/src/org/traccar/protocol/FreedomProtocolDecoder.java b/src/org/traccar/protocol/FreedomProtocolDecoder.java index 56b6b9e19..28456c617 100644 --- a/src/org/traccar/protocol/FreedomProtocolDecoder.java +++ b/src/org/traccar/protocol/FreedomProtocolDecoder.java @@ -53,8 +53,7 @@ public class FreedomProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GalileoProtocolDecoder.java b/src/org/traccar/protocol/GalileoProtocolDecoder.java index 494111e2c..d8a1651bb 100644 --- a/src/org/traccar/protocol/GalileoProtocolDecoder.java +++ b/src/org/traccar/protocol/GalileoProtocolDecoder.java @@ -249,7 +249,7 @@ public class GalileoProtocolDecoder extends BaseProtocolDecoder { boolean hasLocation = false; DeviceSession deviceSession = null; - Position position = new Position(); + Position position = new Position(getProtocolName()); while (buf.readerIndex() < length) { @@ -260,7 +260,7 @@ public class GalileoProtocolDecoder extends BaseProtocolDecoder { } tags.clear(); hasLocation = false; - position = new Position(); // new position starts + position = new Position(getProtocolName()); // new position starts } tags.add(tag); @@ -296,7 +296,6 @@ public class GalileoProtocolDecoder extends BaseProtocolDecoder { sendReply(channel, buf.readUnsignedShort()); for (Position p : positions) { - p.setProtocol(getProtocolName()); p.setDeviceId(deviceSession.getDeviceId()); } diff --git a/src/org/traccar/protocol/GatorProtocolDecoder.java b/src/org/traccar/protocol/GatorProtocolDecoder.java index 2ad4be3d3..9cd746f51 100644 --- a/src/org/traccar/protocol/GatorProtocolDecoder.java +++ b/src/org/traccar/protocol/GatorProtocolDecoder.java @@ -90,8 +90,7 @@ public class GatorProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_POSITION_DATA || type == MSG_ROLLCALL_RESPONSE || type == MSG_ALARM_DATA || type == MSG_BLIND_AREA) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, "1" + id, id); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GenxProtocolDecoder.java b/src/org/traccar/protocol/GenxProtocolDecoder.java index 3b38227dc..d4a348ce1 100644 --- a/src/org/traccar/protocol/GenxProtocolDecoder.java +++ b/src/org/traccar/protocol/GenxProtocolDecoder.java @@ -48,8 +48,7 @@ public class GenxProtocolDecoder extends BaseProtocolDecoder { String[] values = ((String) msg).split(","); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setValid(true); for (int i = 0; i < Math.min(values.length, reportColumns.length); i++) { diff --git a/src/org/traccar/protocol/Gl100ProtocolDecoder.java b/src/org/traccar/protocol/Gl100ProtocolDecoder.java index 945edfff0..405090695 100644 --- a/src/org/traccar/protocol/Gl100ProtocolDecoder.java +++ b/src/org/traccar/protocol/Gl100ProtocolDecoder.java @@ -72,8 +72,7 @@ public class Gl100ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Gl200BinaryProtocolDecoder.java b/src/org/traccar/protocol/Gl200BinaryProtocolDecoder.java index 071960e49..ba3baaa75 100644 --- a/src/org/traccar/protocol/Gl200BinaryProtocolDecoder.java +++ b/src/org/traccar/protocol/Gl200BinaryProtocolDecoder.java @@ -108,8 +108,7 @@ public class Gl200BinaryProtocolDecoder extends BaseProtocolDecoder { time += 1; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); switch (BitUtil.from(buf.getUnsignedByte(buf.readerIndex()), 8 - 2)) { @@ -156,8 +155,7 @@ public class Gl200BinaryProtocolDecoder extends BaseProtocolDecoder { for (int i = 0; i < count; i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_BATTERY_LEVEL, battery); @@ -206,8 +204,7 @@ public class Gl200BinaryProtocolDecoder extends BaseProtocolDecoder { private Position decodeEvent(Channel channel, SocketAddress remoteAddress, ChannelBuffer buf) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); int type = buf.readUnsignedByte(); @@ -313,8 +310,7 @@ public class Gl200BinaryProtocolDecoder extends BaseProtocolDecoder { private Position decodeInformation(Channel channel, SocketAddress remoteAddress, ChannelBuffer buf) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); int type = buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/Gl200TextProtocolDecoder.java b/src/org/traccar/protocol/Gl200TextProtocolDecoder.java index 9429cff2f..31325d2f8 100644 --- a/src/org/traccar/protocol/Gl200TextProtocolDecoder.java +++ b/src/org/traccar/protocol/Gl200TextProtocolDecoder.java @@ -356,8 +356,7 @@ public class Gl200TextProtocolDecoder extends BaseProtocolDecoder { channel.write("+SACK:GTHBD," + protocolVersion + "," + parser.next() + "$", remoteAddress); } } else { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, parser.nextDateTime()); position.setValid(false); @@ -372,8 +371,7 @@ public class Gl200TextProtocolDecoder extends BaseProtocolDecoder { if (parser.matches()) { DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession != null) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); return position; } @@ -528,8 +526,7 @@ public class Gl200TextProtocolDecoder extends BaseProtocolDecoder { } private Object decodeCan(Channel channel, SocketAddress remoteAddress, String sentence) throws ParseException { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); int index = 0; String[] values = sentence.split(","); @@ -681,8 +678,7 @@ public class Gl200TextProtocolDecoder extends BaseProtocolDecoder { Parser itemParser = new Parser(PATTERN_LOCATION, parser.next()); while (itemParser.find()) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_VIN, vin); @@ -741,8 +737,7 @@ public class Gl200TextProtocolDecoder extends BaseProtocolDecoder { Parser itemParser = new Parser(PATTERN_LOCATION, parser.next()); while (itemParser.find()) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); decodeLocation(position, itemParser); diff --git a/src/org/traccar/protocol/GlobalSatProtocolDecoder.java b/src/org/traccar/protocol/GlobalSatProtocolDecoder.java index c45a937d4..4361e0c2f 100644 --- a/src/org/traccar/protocol/GlobalSatProtocolDecoder.java +++ b/src/org/traccar/protocol/GlobalSatProtocolDecoder.java @@ -76,8 +76,7 @@ public class GlobalSatProtocolDecoder extends BaseProtocolDecoder { } String[] values = sentence.split(","); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); for (int formatIndex = 0, valueIndex = 1; formatIndex < format.length() && valueIndex < values.length; formatIndex++) { @@ -207,8 +206,7 @@ public class GlobalSatProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GnxProtocolDecoder.java b/src/org/traccar/protocol/GnxProtocolDecoder.java index 2274ec164..b3a636d14 100644 --- a/src/org/traccar/protocol/GnxProtocolDecoder.java +++ b/src/org/traccar/protocol/GnxProtocolDecoder.java @@ -80,8 +80,7 @@ public class GnxProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GoSafeProtocolDecoder.java b/src/org/traccar/protocol/GoSafeProtocolDecoder.java index 62f6212e2..13ce839ea 100644 --- a/src/org/traccar/protocol/GoSafeProtocolDecoder.java +++ b/src/org/traccar/protocol/GoSafeProtocolDecoder.java @@ -135,8 +135,7 @@ public class GoSafeProtocolDecoder extends BaseProtocolDecoder { private Position decodePosition(DeviceSession deviceSession, Parser parser, Date time) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (time != null) { @@ -226,8 +225,7 @@ public class GoSafeProtocolDecoder extends BaseProtocolDecoder { if (pattern == PATTERN_OLD) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/GotopProtocolDecoder.java b/src/org/traccar/protocol/GotopProtocolDecoder.java index f938887e2..29e8d87dd 100644 --- a/src/org/traccar/protocol/GotopProtocolDecoder.java +++ b/src/org/traccar/protocol/GotopProtocolDecoder.java @@ -55,8 +55,7 @@ public class GotopProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Gps056ProtocolDecoder.java b/src/org/traccar/protocol/Gps056ProtocolDecoder.java index 7248365b0..ccb389250 100644 --- a/src/org/traccar/protocol/Gps056ProtocolDecoder.java +++ b/src/org/traccar/protocol/Gps056ProtocolDecoder.java @@ -93,8 +93,7 @@ public class Gps056ProtocolDecoder extends BaseProtocolDecoder { } else if (type.startsWith("GPSL")) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -116,8 +115,7 @@ public class Gps056ProtocolDecoder extends BaseProtocolDecoder { } else if (type.startsWith("SYNC")) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/Gps103ProtocolDecoder.java b/src/org/traccar/protocol/Gps103ProtocolDecoder.java index 099047aa0..85b4dcada 100644 --- a/src/org/traccar/protocol/Gps103ProtocolDecoder.java +++ b/src/org/traccar/protocol/Gps103ProtocolDecoder.java @@ -174,8 +174,7 @@ public class Gps103ProtocolDecoder extends BaseProtocolDecoder { } } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); Parser parser = new Parser(PATTERN_NETWORK, sentence); if (parser.matches()) { diff --git a/src/org/traccar/protocol/GpsGateProtocolDecoder.java b/src/org/traccar/protocol/GpsGateProtocolDecoder.java index ca1d6453e..5c7096276 100644 --- a/src/org/traccar/protocol/GpsGateProtocolDecoder.java +++ b/src/org/traccar/protocol/GpsGateProtocolDecoder.java @@ -118,8 +118,7 @@ public class GpsGateProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -143,8 +142,7 @@ public class GpsGateProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GpsMarkerProtocolDecoder.java b/src/org/traccar/protocol/GpsMarkerProtocolDecoder.java index f65f5b2bb..ca5bdcbed 100644 --- a/src/org/traccar/protocol/GpsMarkerProtocolDecoder.java +++ b/src/org/traccar/protocol/GpsMarkerProtocolDecoder.java @@ -61,8 +61,7 @@ public class GpsMarkerProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GpsmtaProtocolDecoder.java b/src/org/traccar/protocol/GpsmtaProtocolDecoder.java index 11777bece..c71162078 100644 --- a/src/org/traccar/protocol/GpsmtaProtocolDecoder.java +++ b/src/org/traccar/protocol/GpsmtaProtocolDecoder.java @@ -57,8 +57,7 @@ public class GpsmtaProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/GranitProtocolDecoder.java b/src/org/traccar/protocol/GranitProtocolDecoder.java index 8e935ae9e..50d879bb4 100644 --- a/src/org/traccar/protocol/GranitProtocolDecoder.java +++ b/src/org/traccar/protocol/GranitProtocolDecoder.java @@ -158,8 +158,7 @@ public class GranitProtocolDecoder extends BaseProtocolDecoder { if (deviceSession != null && indexTilde == -1) { String bufString = buf.toString(StandardCharsets.US_ASCII); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date()); @@ -186,8 +185,7 @@ public class GranitProtocolDecoder extends BaseProtocolDecoder { if (channel != null) { sendResponseCurrent(channel, deviceId, unixTime); } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(unixTime * 1000)); @@ -219,8 +217,7 @@ public class GranitProtocolDecoder extends BaseProtocolDecoder { int timeIncrement = buf.getUnsignedShort(buf.readerIndex() + 120); for (int i = 0; i < 6; i++) { if (buf.getUnsignedByte(buf.readerIndex()) != 0xFE) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date((unixTime + i * timeIncrement) * 1000)); decodeStructure(buf, position); diff --git a/src/org/traccar/protocol/Gt02ProtocolDecoder.java b/src/org/traccar/protocol/Gt02ProtocolDecoder.java index a520bff13..a4f1a4161 100644 --- a/src/org/traccar/protocol/Gt02ProtocolDecoder.java +++ b/src/org/traccar/protocol/Gt02ProtocolDecoder.java @@ -47,8 +47,7 @@ public class Gt02ProtocolDecoder extends BaseProtocolDecoder { buf.skipBytes(2); // header buf.readByte(); // size - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); // Zero for location messages int power = buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/Gt06ProtocolDecoder.java b/src/org/traccar/protocol/Gt06ProtocolDecoder.java index 37f64ee02..d6cc2fa86 100644 --- a/src/org/traccar/protocol/Gt06ProtocolDecoder.java +++ b/src/org/traccar/protocol/Gt06ProtocolDecoder.java @@ -415,9 +415,8 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { } else if (type == MSG_HEARTBEAT) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); getLastLocation(position, null); @@ -453,9 +452,8 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { } else if (type == MSG_X1_GPS) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); buf.readUnsignedInt(); // data and alarm @@ -501,9 +499,8 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { private Object decodeWifi(ChannelBuffer buf, DeviceSession deviceSession) throws Exception { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); DateBuilder dateBuilder = new DateBuilder() .setYear(BcdUtil.readInteger(buf, 2)) @@ -540,9 +537,8 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { private Object decodeBasicOther(Channel channel, ChannelBuffer buf, DeviceSession deviceSession, int type, int dataLength) throws Exception { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); if (type == MSG_LBS_MULTIPLE || type == MSG_LBS_EXTEND || type == MSG_LBS_WIFI || type == MSG_LBS_2 || type == MSG_WIFI_3) { @@ -648,9 +644,8 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); buf.readUnsignedShort(); // length int type = buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/Gt30ProtocolDecoder.java b/src/org/traccar/protocol/Gt30ProtocolDecoder.java index 51135c80a..27081a108 100644 --- a/src/org/traccar/protocol/Gt30ProtocolDecoder.java +++ b/src/org/traccar/protocol/Gt30ProtocolDecoder.java @@ -84,8 +84,7 @@ public class Gt30ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (parser.hasNext()) { diff --git a/src/org/traccar/protocol/H02ProtocolDecoder.java b/src/org/traccar/protocol/H02ProtocolDecoder.java index 4414870d2..5ee663ee1 100644 --- a/src/org/traccar/protocol/H02ProtocolDecoder.java +++ b/src/org/traccar/protocol/H02ProtocolDecoder.java @@ -101,8 +101,7 @@ public class H02ProtocolDecoder extends BaseProtocolDecoder { private Position decodeBinary(ChannelBuffer buf, Channel channel, SocketAddress remoteAddress) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); buf.readByte(); // marker @@ -267,8 +266,7 @@ public class H02ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (parser.hasNext()) { @@ -348,8 +346,7 @@ public class H02ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -388,8 +385,7 @@ public class H02ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -422,8 +418,7 @@ public class H02ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/HaicomProtocolDecoder.java b/src/org/traccar/protocol/HaicomProtocolDecoder.java index 37898a9bc..94ec93cfb 100644 --- a/src/org/traccar/protocol/HaicomProtocolDecoder.java +++ b/src/org/traccar/protocol/HaicomProtocolDecoder.java @@ -62,8 +62,7 @@ public class HaicomProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/HomtecsProtocolDecoder.java b/src/org/traccar/protocol/HomtecsProtocolDecoder.java index 508de173c..f4ae54d1f 100644 --- a/src/org/traccar/protocol/HomtecsProtocolDecoder.java +++ b/src/org/traccar/protocol/HomtecsProtocolDecoder.java @@ -66,8 +66,7 @@ public class HomtecsProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.YMD_HMS)); diff --git a/src/org/traccar/protocol/HuaShengProtocolDecoder.java b/src/org/traccar/protocol/HuaShengProtocolDecoder.java index 96f87fd94..88f23b28c 100644 --- a/src/org/traccar/protocol/HuaShengProtocolDecoder.java +++ b/src/org/traccar/protocol/HuaShengProtocolDecoder.java @@ -103,8 +103,7 @@ public class HuaShengProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); int status = buf.readUnsignedShort(); diff --git a/src/org/traccar/protocol/HuabaoProtocolDecoder.java b/src/org/traccar/protocol/HuabaoProtocolDecoder.java index c31c6af1c..8643f39af 100644 --- a/src/org/traccar/protocol/HuabaoProtocolDecoder.java +++ b/src/org/traccar/protocol/HuabaoProtocolDecoder.java @@ -129,8 +129,7 @@ public class HuabaoProtocolDecoder extends BaseProtocolDecoder { } else if (type == MSG_LOCATION_REPORT) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_ALARM, decodeAlarm(buf.readUnsignedInt())); diff --git a/src/org/traccar/protocol/HunterProProtocolDecoder.java b/src/org/traccar/protocol/HunterProProtocolDecoder.java index b1e3f84a2..fa470c065 100644 --- a/src/org/traccar/protocol/HunterProProtocolDecoder.java +++ b/src/org/traccar/protocol/HunterProProtocolDecoder.java @@ -56,8 +56,7 @@ public class HunterProProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/IdplProtocolDecoder.java b/src/org/traccar/protocol/IdplProtocolDecoder.java index e56a0f022..9990e0da5 100644 --- a/src/org/traccar/protocol/IdplProtocolDecoder.java +++ b/src/org/traccar/protocol/IdplProtocolDecoder.java @@ -69,8 +69,7 @@ public class IdplProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_TYPE, parser.nextInt(0)); diff --git a/src/org/traccar/protocol/IntellitracProtocolDecoder.java b/src/org/traccar/protocol/IntellitracProtocolDecoder.java index 4a526376e..5b66fa7ec 100644 --- a/src/org/traccar/protocol/IntellitracProtocolDecoder.java +++ b/src/org/traccar/protocol/IntellitracProtocolDecoder.java @@ -72,8 +72,7 @@ public class IntellitracProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Ivt401ProtocolDecoder.java b/src/org/traccar/protocol/Ivt401ProtocolDecoder.java index f209ee09e..936965707 100644 --- a/src/org/traccar/protocol/Ivt401ProtocolDecoder.java +++ b/src/org/traccar/protocol/Ivt401ProtocolDecoder.java @@ -68,8 +68,7 @@ public class Ivt401ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); diff --git a/src/org/traccar/protocol/JpKorjarProtocolDecoder.java b/src/org/traccar/protocol/JpKorjarProtocolDecoder.java index 654b3e3d0..8766115ce 100644 --- a/src/org/traccar/protocol/JpKorjarProtocolDecoder.java +++ b/src/org/traccar/protocol/JpKorjarProtocolDecoder.java @@ -60,8 +60,7 @@ public class JpKorjarProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Jt600ProtocolDecoder.java b/src/org/traccar/protocol/Jt600ProtocolDecoder.java index e935c1449..f5d8a79a4 100644 --- a/src/org/traccar/protocol/Jt600ProtocolDecoder.java +++ b/src/org/traccar/protocol/Jt600ProtocolDecoder.java @@ -73,8 +73,7 @@ public class Jt600ProtocolDecoder extends BaseProtocolDecoder { while (buf.readableBytes() > 1) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -215,8 +214,7 @@ public class Jt600ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setLongitude(parser.nextCoordinate()); @@ -274,8 +272,7 @@ public class Jt600ProtocolDecoder extends BaseProtocolDecoder { String type = parser.next(); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); diff --git a/src/org/traccar/protocol/KenjiProtocolDecoder.java b/src/org/traccar/protocol/KenjiProtocolDecoder.java index 4216da0c3..374cb9c25 100644 --- a/src/org/traccar/protocol/KenjiProtocolDecoder.java +++ b/src/org/traccar/protocol/KenjiProtocolDecoder.java @@ -76,8 +76,7 @@ public class KenjiProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/KhdProtocolDecoder.java b/src/org/traccar/protocol/KhdProtocolDecoder.java index d63219736..d1b5413e5 100644 --- a/src/org/traccar/protocol/KhdProtocolDecoder.java +++ b/src/org/traccar/protocol/KhdProtocolDecoder.java @@ -71,8 +71,7 @@ public class KhdProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_ON_DEMAND || type == MSG_POSITION_UPLOAD || type == MSG_POSITION_REUPLOAD || type == MSG_ALARM || type == MSG_REPLY || type == MSG_PERIPHERAL) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, readSerialNumber(buf)); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/L100ProtocolDecoder.java b/src/org/traccar/protocol/L100ProtocolDecoder.java index 618448080..de966d7af 100644 --- a/src/org/traccar/protocol/L100ProtocolDecoder.java +++ b/src/org/traccar/protocol/L100ProtocolDecoder.java @@ -83,8 +83,7 @@ public class L100ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/LaipacProtocolDecoder.java b/src/org/traccar/protocol/LaipacProtocolDecoder.java index 32d4ff0e6..99189d012 100644 --- a/src/org/traccar/protocol/LaipacProtocolDecoder.java +++ b/src/org/traccar/protocol/LaipacProtocolDecoder.java @@ -71,8 +71,7 @@ public class LaipacProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/M2cProtocolDecoder.java b/src/org/traccar/protocol/M2cProtocolDecoder.java index b0f40a88c..c11136f4c 100644 --- a/src/org/traccar/protocol/M2cProtocolDecoder.java +++ b/src/org/traccar/protocol/M2cProtocolDecoder.java @@ -75,8 +75,7 @@ public class M2cProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_INDEX, parser.nextInt()); diff --git a/src/org/traccar/protocol/M2mProtocolDecoder.java b/src/org/traccar/protocol/M2mProtocolDecoder.java index a3c2ada2f..b30919865 100644 --- a/src/org/traccar/protocol/M2mProtocolDecoder.java +++ b/src/org/traccar/protocol/M2mProtocolDecoder.java @@ -68,8 +68,7 @@ public class M2mProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/MaestroProtocolDecoder.java b/src/org/traccar/protocol/MaestroProtocolDecoder.java index 7d779a0a0..6068c93b9 100644 --- a/src/org/traccar/protocol/MaestroProtocolDecoder.java +++ b/src/org/traccar/protocol/MaestroProtocolDecoder.java @@ -70,8 +70,7 @@ public class MaestroProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setValid(parser.nextInt(0) == 1); diff --git a/src/org/traccar/protocol/ManPowerProtocolDecoder.java b/src/org/traccar/protocol/ManPowerProtocolDecoder.java index 6cff8b961..0b1c410c3 100644 --- a/src/org/traccar/protocol/ManPowerProtocolDecoder.java +++ b/src/org/traccar/protocol/ManPowerProtocolDecoder.java @@ -57,8 +57,7 @@ public class ManPowerProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/MegastekProtocolDecoder.java b/src/org/traccar/protocol/MegastekProtocolDecoder.java index ad0f20a24..91618b534 100644 --- a/src/org/traccar/protocol/MegastekProtocolDecoder.java +++ b/src/org/traccar/protocol/MegastekProtocolDecoder.java @@ -147,8 +147,7 @@ public class MegastekProtocolDecoder extends BaseProtocolDecoder { } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); if (!parseLocation(location, position)) { return null; } @@ -285,8 +284,7 @@ public class MegastekProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (parser.next().equals("S")) { diff --git a/src/org/traccar/protocol/MeiligaoProtocolDecoder.java b/src/org/traccar/protocol/MeiligaoProtocolDecoder.java index 435e2ab14..9f7b8abf7 100644 --- a/src/org/traccar/protocol/MeiligaoProtocolDecoder.java +++ b/src/org/traccar/protocol/MeiligaoProtocolDecoder.java @@ -346,8 +346,7 @@ public class MeiligaoProtocolDecoder extends BaseProtocolDecoder { String sentence = buf.readBytes(endIndex - buf.readerIndex()).toString(StandardCharsets.US_ASCII); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position = decodeRegular(position, sentence); @@ -403,8 +402,7 @@ public class MeiligaoProtocolDecoder extends BaseProtocolDecoder { } else { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); if (command == MSG_ALARM) { short alarmCode = buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/MeitrackProtocolDecoder.java b/src/org/traccar/protocol/MeitrackProtocolDecoder.java index b0195d09f..11e38194f 100644 --- a/src/org/traccar/protocol/MeitrackProtocolDecoder.java +++ b/src/org/traccar/protocol/MeitrackProtocolDecoder.java @@ -126,8 +126,7 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { @@ -287,8 +286,7 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { while (buf.readableBytes() >= 0x34) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_EVENT, buf.readUnsignedByte()); @@ -361,8 +359,7 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { int count = buf.readUnsignedShort(); for (int i = 0; i < count; i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.readUnsignedShort(); // length @@ -475,8 +472,7 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { photo.writeBytes(buf.readBytes(buf.readableBytes() - 1 - 2 - 2)); if (current == total - 1) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(getDeviceSession(channel, remoteAddress, imei).getDeviceId()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/MiniFinderProtocolDecoder.java b/src/org/traccar/protocol/MiniFinderProtocolDecoder.java index 8e6e56e80..ab046eca3 100644 --- a/src/org/traccar/protocol/MiniFinderProtocolDecoder.java +++ b/src/org/traccar/protocol/MiniFinderProtocolDecoder.java @@ -146,8 +146,7 @@ public class MiniFinderProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); String type = sentence.substring(1, 2); diff --git a/src/org/traccar/protocol/Mta6ProtocolDecoder.java b/src/org/traccar/protocol/Mta6ProtocolDecoder.java index 0fda94eef..c26e00c56 100644 --- a/src/org/traccar/protocol/Mta6ProtocolDecoder.java +++ b/src/org/traccar/protocol/Mta6ProtocolDecoder.java @@ -120,8 +120,7 @@ public class Mta6ProtocolDecoder extends BaseProtocolDecoder { try { while (buf.readable()) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); short flags = buf.readUnsignedByte(); @@ -200,9 +199,8 @@ public class Mta6ProtocolDecoder extends BaseProtocolDecoder { } private Position parseFormatA1(DeviceSession deviceSession, ChannelBuffer buf) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); short flags = buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/MtxProtocolDecoder.java b/src/org/traccar/protocol/MtxProtocolDecoder.java index d7b572670..412eac493 100644 --- a/src/org/traccar/protocol/MtxProtocolDecoder.java +++ b/src/org/traccar/protocol/MtxProtocolDecoder.java @@ -68,8 +68,7 @@ public class MtxProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/MxtProtocolDecoder.java b/src/org/traccar/protocol/MxtProtocolDecoder.java index 6d82e4a4b..9fe1924c0 100644 --- a/src/org/traccar/protocol/MxtProtocolDecoder.java +++ b/src/org/traccar/protocol/MxtProtocolDecoder.java @@ -82,8 +82,7 @@ public class MxtProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_POSITION) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.readUnsignedByte(); // protocol diff --git a/src/org/traccar/protocol/NavigilProtocolDecoder.java b/src/org/traccar/protocol/NavigilProtocolDecoder.java index 360b9c81c..4f3b4ad74 100644 --- a/src/org/traccar/protocol/NavigilProtocolDecoder.java +++ b/src/org/traccar/protocol/NavigilProtocolDecoder.java @@ -81,8 +81,7 @@ public class NavigilProtocolDecoder extends BaseProtocolDecoder { private Position parseUnitReport( DeviceSession deviceSession, ChannelBuffer buf, int sequenceNumber) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setValid(true); position.set(Position.KEY_INDEX, sequenceNumber); @@ -116,8 +115,7 @@ public class NavigilProtocolDecoder extends BaseProtocolDecoder { private Position parseTg2Report( DeviceSession deviceSession, ChannelBuffer buf, int sequenceNumber) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setValid(true); position.set(Position.KEY_INDEX, sequenceNumber); @@ -154,8 +152,7 @@ public class NavigilProtocolDecoder extends BaseProtocolDecoder { private Position parsePositionReport( DeviceSession deviceSession, ChannelBuffer buf, int sequenceNumber, long timestamp) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_INDEX, sequenceNumber); position.setDeviceId(deviceSession.getDeviceId()); @@ -177,8 +174,7 @@ public class NavigilProtocolDecoder extends BaseProtocolDecoder { private Position parsePositionReport2( DeviceSession deviceSession, ChannelBuffer buf, int sequenceNumber, long timestamp) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_INDEX, sequenceNumber); position.setDeviceId(deviceSession.getDeviceId()); @@ -202,8 +198,7 @@ public class NavigilProtocolDecoder extends BaseProtocolDecoder { private Position parseSnapshot4( DeviceSession deviceSession, ChannelBuffer buf, int sequenceNumber) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_INDEX, sequenceNumber); position.setDeviceId(deviceSession.getDeviceId()); @@ -241,8 +236,7 @@ public class NavigilProtocolDecoder extends BaseProtocolDecoder { private Position parseTrackingData( DeviceSession deviceSession, ChannelBuffer buf, int sequenceNumber, long timestamp) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_INDEX, sequenceNumber); position.setDeviceId(deviceSession.getDeviceId()); diff --git a/src/org/traccar/protocol/NavisProtocolDecoder.java b/src/org/traccar/protocol/NavisProtocolDecoder.java index 8d4e367ab..6881fb8ed 100644 --- a/src/org/traccar/protocol/NavisProtocolDecoder.java +++ b/src/org/traccar/protocol/NavisProtocolDecoder.java @@ -76,8 +76,7 @@ public class NavisProtocolDecoder extends BaseProtocolDecoder { } private ParseResult parsePosition(DeviceSession deviceSession, ChannelBuffer buf) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); diff --git a/src/org/traccar/protocol/NoranProtocolDecoder.java b/src/org/traccar/protocol/NoranProtocolDecoder.java index 990f50484..e10332ece 100644 --- a/src/org/traccar/protocol/NoranProtocolDecoder.java +++ b/src/org/traccar/protocol/NoranProtocolDecoder.java @@ -80,8 +80,7 @@ public class NoranProtocolDecoder extends BaseProtocolDecoder { newFormat = true; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); if (type == MSG_CONTROL_RESPONSE) { buf.readUnsignedInt(); // GIS ip diff --git a/src/org/traccar/protocol/NvsProtocolDecoder.java b/src/org/traccar/protocol/NvsProtocolDecoder.java index 0e82fae69..db8347d3c 100644 --- a/src/org/traccar/protocol/NvsProtocolDecoder.java +++ b/src/org/traccar/protocol/NvsProtocolDecoder.java @@ -76,8 +76,7 @@ public class NvsProtocolDecoder extends BaseProtocolDecoder { int count = buf.readUnsignedByte(); for (int i = 0; i < count; i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(buf.readUnsignedInt() * 1000)); diff --git a/src/org/traccar/protocol/ObdDongleProtocolDecoder.java b/src/org/traccar/protocol/ObdDongleProtocolDecoder.java index e5ae5e93f..5310c90fd 100644 --- a/src/org/traccar/protocol/ObdDongleProtocolDecoder.java +++ b/src/org/traccar/protocol/ObdDongleProtocolDecoder.java @@ -91,8 +91,7 @@ public class ObdDongleProtocolDecoder extends BaseProtocolDecoder { buf.readUnsignedByte(); // event id - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(buf.readUnsignedInt() * 1000)); diff --git a/src/org/traccar/protocol/OigoProtocolDecoder.java b/src/org/traccar/protocol/OigoProtocolDecoder.java index 54360c932..2874d0455 100644 --- a/src/org/traccar/protocol/OigoProtocolDecoder.java +++ b/src/org/traccar/protocol/OigoProtocolDecoder.java @@ -68,8 +68,7 @@ public class OigoProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_EVENT, buf.readUnsignedByte()); @@ -178,8 +177,7 @@ public class OigoProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.skipBytes(8); // imsi diff --git a/src/org/traccar/protocol/OkoProtocolDecoder.java b/src/org/traccar/protocol/OkoProtocolDecoder.java index e86acf0b8..0ebe63ca3 100644 --- a/src/org/traccar/protocol/OkoProtocolDecoder.java +++ b/src/org/traccar/protocol/OkoProtocolDecoder.java @@ -72,8 +72,7 @@ public class OkoProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/OrionProtocolDecoder.java b/src/org/traccar/protocol/OrionProtocolDecoder.java index c65924337..ada864fba 100644 --- a/src/org/traccar/protocol/OrionProtocolDecoder.java +++ b/src/org/traccar/protocol/OrionProtocolDecoder.java @@ -79,9 +79,8 @@ public class OrionProtocolDecoder extends BaseProtocolDecoder { for (int i = 0; i < (header & 0x0f); i++) { - Position position = new Position(); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); - position.setProtocol(getProtocolName()); position.set(Position.KEY_EVENT, buf.readUnsignedByte()); buf.readUnsignedByte(); // length diff --git a/src/org/traccar/protocol/OsmAndProtocolDecoder.java b/src/org/traccar/protocol/OsmAndProtocolDecoder.java index 61855311a..03abdd588 100644 --- a/src/org/traccar/protocol/OsmAndProtocolDecoder.java +++ b/src/org/traccar/protocol/OsmAndProtocolDecoder.java @@ -53,8 +53,7 @@ public class OsmAndProtocolDecoder extends BaseHttpProtocolDecoder { params = decoder.getParameters(); } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setValid(true); Network network = new Network(); diff --git a/src/org/traccar/protocol/OwnTracksProtocolDecoder.java b/src/org/traccar/protocol/OwnTracksProtocolDecoder.java index 49d1cff96..120995dfb 100644 --- a/src/org/traccar/protocol/OwnTracksProtocolDecoder.java +++ b/src/org/traccar/protocol/OwnTracksProtocolDecoder.java @@ -50,8 +50,7 @@ public class OwnTracksProtocolDecoder extends BaseHttpProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setValid(true); position.setLatitude(root.getJsonNumber("lat").doubleValue()); diff --git a/src/org/traccar/protocol/PathAwayProtocolDecoder.java b/src/org/traccar/protocol/PathAwayProtocolDecoder.java index 1c4531612..845a5e892 100644 --- a/src/org/traccar/protocol/PathAwayProtocolDecoder.java +++ b/src/org/traccar/protocol/PathAwayProtocolDecoder.java @@ -72,8 +72,7 @@ public class PathAwayProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); diff --git a/src/org/traccar/protocol/PiligrimProtocolDecoder.java b/src/org/traccar/protocol/PiligrimProtocolDecoder.java index 9d5bb9e24..f2ec16c59 100644 --- a/src/org/traccar/protocol/PiligrimProtocolDecoder.java +++ b/src/org/traccar/protocol/PiligrimProtocolDecoder.java @@ -97,8 +97,7 @@ public class PiligrimProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_GPS || type == MSG_GPS_SENSORS) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/PretraceProtocolDecoder.java b/src/org/traccar/protocol/PretraceProtocolDecoder.java index 77d94068f..24d707a1c 100644 --- a/src/org/traccar/protocol/PretraceProtocolDecoder.java +++ b/src/org/traccar/protocol/PretraceProtocolDecoder.java @@ -71,8 +71,7 @@ public class PretraceProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setValid(parser.next().equals("A")); diff --git a/src/org/traccar/protocol/PricolProtocolDecoder.java b/src/org/traccar/protocol/PricolProtocolDecoder.java index a33e19b90..577665dcc 100644 --- a/src/org/traccar/protocol/PricolProtocolDecoder.java +++ b/src/org/traccar/protocol/PricolProtocolDecoder.java @@ -47,8 +47,7 @@ public class PricolProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set("eventType", buf.readUnsignedByte()); diff --git a/src/org/traccar/protocol/ProgressProtocolDecoder.java b/src/org/traccar/protocol/ProgressProtocolDecoder.java index 1820ea926..d85b6acb3 100644 --- a/src/org/traccar/protocol/ProgressProtocolDecoder.java +++ b/src/org/traccar/protocol/ProgressProtocolDecoder.java @@ -96,8 +96,7 @@ public class ProgressProtocolDecoder extends BaseProtocolDecoder { } for (int j = 0; j < recordCount; j++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (type == MSG_LOGMSG) { diff --git a/src/org/traccar/protocol/Pt3000ProtocolDecoder.java b/src/org/traccar/protocol/Pt3000ProtocolDecoder.java index c36be7976..f4540afe8 100644 --- a/src/org/traccar/protocol/Pt3000ProtocolDecoder.java +++ b/src/org/traccar/protocol/Pt3000ProtocolDecoder.java @@ -56,8 +56,7 @@ public class Pt3000ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Pt502ProtocolDecoder.java b/src/org/traccar/protocol/Pt502ProtocolDecoder.java index 330ba7643..bc7647744 100644 --- a/src/org/traccar/protocol/Pt502ProtocolDecoder.java +++ b/src/org/traccar/protocol/Pt502ProtocolDecoder.java @@ -94,8 +94,7 @@ public class Pt502ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); String type = parser.next(); diff --git a/src/org/traccar/protocol/RaveonProtocolDecoder.java b/src/org/traccar/protocol/RaveonProtocolDecoder.java index cbe6026a2..ac52493ad 100644 --- a/src/org/traccar/protocol/RaveonProtocolDecoder.java +++ b/src/org/traccar/protocol/RaveonProtocolDecoder.java @@ -68,8 +68,7 @@ public class RaveonProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setLatitude(parser.nextCoordinate(Parser.CoordinateFormat.HEM_DEG_MIN)); diff --git a/src/org/traccar/protocol/RecodaProtocolDecoder.java b/src/org/traccar/protocol/RecodaProtocolDecoder.java index 8db582d35..7bd4d3dae 100644 --- a/src/org/traccar/protocol/RecodaProtocolDecoder.java +++ b/src/org/traccar/protocol/RecodaProtocolDecoder.java @@ -64,8 +64,7 @@ public class RecodaProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(buf.readLong())); diff --git a/src/org/traccar/protocol/RitiProtocolDecoder.java b/src/org/traccar/protocol/RitiProtocolDecoder.java index 5c298e8c5..637867908 100644 --- a/src/org/traccar/protocol/RitiProtocolDecoder.java +++ b/src/org/traccar/protocol/RitiProtocolDecoder.java @@ -56,8 +56,7 @@ public class RitiProtocolDecoder extends BaseProtocolDecoder { buf.skipBytes(2); // header - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, String.valueOf(buf.readUnsignedShort())); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/RuptelaProtocolDecoder.java b/src/org/traccar/protocol/RuptelaProtocolDecoder.java index 8752d30c0..87ee8246a 100644 --- a/src/org/traccar/protocol/RuptelaProtocolDecoder.java +++ b/src/org/traccar/protocol/RuptelaProtocolDecoder.java @@ -49,8 +49,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { public static final int MSG_EXTENDED_RECORDS = 68; private Position decodeCommandResponse(DeviceSession deviceSession, int type, ChannelBuffer buf) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); @@ -135,8 +134,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { int count = buf.readUnsignedByte(); for (int i = 0; i < count; i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(buf.readUnsignedInt() * 1000)); @@ -210,8 +208,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { int count = buf.readUnsignedByte(); for (int i = 0; i < count; i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.readUnsignedByte(); // reserved diff --git a/src/org/traccar/protocol/SanavProtocolDecoder.java b/src/org/traccar/protocol/SanavProtocolDecoder.java index 151c55795..714bb15d5 100644 --- a/src/org/traccar/protocol/SanavProtocolDecoder.java +++ b/src/org/traccar/protocol/SanavProtocolDecoder.java @@ -59,8 +59,7 @@ public class SanavProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/SigfoxProtocolDecoder.java b/src/org/traccar/protocol/SigfoxProtocolDecoder.java index 7cf57681f..65ab2cc55 100644 --- a/src/org/traccar/protocol/SigfoxProtocolDecoder.java +++ b/src/org/traccar/protocol/SigfoxProtocolDecoder.java @@ -55,8 +55,7 @@ public class SigfoxProtocolDecoder extends BaseHttpProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(json.getInt("time") * 1000L)); diff --git a/src/org/traccar/protocol/SiwiProtocolDecoder.java b/src/org/traccar/protocol/SiwiProtocolDecoder.java index 198df24d5..66b6465fa 100644 --- a/src/org/traccar/protocol/SiwiProtocolDecoder.java +++ b/src/org/traccar/protocol/SiwiProtocolDecoder.java @@ -70,8 +70,7 @@ public class SiwiProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_EVENT, parser.next()); diff --git a/src/org/traccar/protocol/SkypatrolProtocolDecoder.java b/src/org/traccar/protocol/SkypatrolProtocolDecoder.java index f4dded972..a85595a07 100644 --- a/src/org/traccar/protocol/SkypatrolProtocolDecoder.java +++ b/src/org/traccar/protocol/SkypatrolProtocolDecoder.java @@ -67,8 +67,7 @@ public class SkypatrolProtocolDecoder extends BaseProtocolDecoder { // Binary position report if (apiNumber == 5 && commandType == 2 && messageType == 1 && BitUtil.check(mask, 0)) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); if (BitUtil.check(mask, 1)) { position.set(Position.KEY_STATUS, buf.readUnsignedInt()); diff --git a/src/org/traccar/protocol/SmokeyProtocolDecoder.java b/src/org/traccar/protocol/SmokeyProtocolDecoder.java index 2dcfeb86f..9c4cb4e21 100644 --- a/src/org/traccar/protocol/SmokeyProtocolDecoder.java +++ b/src/org/traccar/protocol/SmokeyProtocolDecoder.java @@ -84,8 +84,7 @@ public class SmokeyProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_DATE_RECORD) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_VERSION_FW, buf.readUnsignedShort()); diff --git a/src/org/traccar/protocol/SpotProtocolDecoder.java b/src/org/traccar/protocol/SpotProtocolDecoder.java index dc4e272ca..a8e666a32 100644 --- a/src/org/traccar/protocol/SpotProtocolDecoder.java +++ b/src/org/traccar/protocol/SpotProtocolDecoder.java @@ -72,8 +72,7 @@ public class SpotProtocolDecoder extends BaseHttpProtocolDecoder { DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, xPath.evaluate("esnName", node)); if (deviceSession != null) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setValid(true); diff --git a/src/org/traccar/protocol/StarLinkProtocolDecoder.java b/src/org/traccar/protocol/StarLinkProtocolDecoder.java index 79f013fac..f2c9d2c50 100644 --- a/src/org/traccar/protocol/StarLinkProtocolDecoder.java +++ b/src/org/traccar/protocol/StarLinkProtocolDecoder.java @@ -111,8 +111,7 @@ public class StarLinkProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setValid(true); diff --git a/src/org/traccar/protocol/Stl060ProtocolDecoder.java b/src/org/traccar/protocol/Stl060ProtocolDecoder.java index 26817a5c8..64d4655c5 100644 --- a/src/org/traccar/protocol/Stl060ProtocolDecoder.java +++ b/src/org/traccar/protocol/Stl060ProtocolDecoder.java @@ -75,8 +75,7 @@ public class Stl060ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/SuntechProtocolDecoder.java b/src/org/traccar/protocol/SuntechProtocolDecoder.java index 6dfc6f77f..58e670307 100644 --- a/src/org/traccar/protocol/SuntechProtocolDecoder.java +++ b/src/org/traccar/protocol/SuntechProtocolDecoder.java @@ -76,8 +76,7 @@ public class SuntechProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); if (type.equals("Emergency") || type.equals("Alert")) { @@ -172,8 +171,7 @@ public class SuntechProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_TYPE, type); @@ -289,8 +287,7 @@ public class SuntechProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_TYPE, type); diff --git a/src/org/traccar/protocol/SupermateProtocolDecoder.java b/src/org/traccar/protocol/SupermateProtocolDecoder.java index d9b58a7f4..be325ea29 100644 --- a/src/org/traccar/protocol/SupermateProtocolDecoder.java +++ b/src/org/traccar/protocol/SupermateProtocolDecoder.java @@ -65,8 +65,7 @@ public class SupermateProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); String imei = parser.next(); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, imei); diff --git a/src/org/traccar/protocol/T55ProtocolDecoder.java b/src/org/traccar/protocol/T55ProtocolDecoder.java index bfddf74ac..dbc467993 100644 --- a/src/org/traccar/protocol/T55ProtocolDecoder.java +++ b/src/org/traccar/protocol/T55ProtocolDecoder.java @@ -110,8 +110,7 @@ public class T55ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); if (deviceSession != null) { position.setDeviceId(deviceSession.getDeviceId()); @@ -165,8 +164,7 @@ public class T55ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -188,8 +186,7 @@ public class T55ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date()); @@ -209,8 +206,7 @@ public class T55ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime()); diff --git a/src/org/traccar/protocol/T57ProtocolDecoder.java b/src/org/traccar/protocol/T57ProtocolDecoder.java index db5f94cbb..65dfc46e3 100644 --- a/src/org/traccar/protocol/T57ProtocolDecoder.java +++ b/src/org/traccar/protocol/T57ProtocolDecoder.java @@ -63,8 +63,7 @@ public class T57ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); diff --git a/src/org/traccar/protocol/T800xProtocolDecoder.java b/src/org/traccar/protocol/T800xProtocolDecoder.java index 6430b1344..1fd37864e 100644 --- a/src/org/traccar/protocol/T800xProtocolDecoder.java +++ b/src/org/traccar/protocol/T800xProtocolDecoder.java @@ -105,8 +105,7 @@ public class T800xProtocolDecoder extends BaseProtocolDecoder { if (type == MSG_GPS || type == MSG_ALARM) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_INDEX, index); diff --git a/src/org/traccar/protocol/TaipProtocolDecoder.java b/src/org/traccar/protocol/TaipProtocolDecoder.java index e7117a5c9..9c98799fb 100644 --- a/src/org/traccar/protocol/TaipProtocolDecoder.java +++ b/src/org/traccar/protocol/TaipProtocolDecoder.java @@ -101,8 +101,7 @@ public class TaipProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); Integer event = null; diff --git a/src/org/traccar/protocol/TelicProtocolDecoder.java b/src/org/traccar/protocol/TelicProtocolDecoder.java index 2c0d714c6..197db059b 100644 --- a/src/org/traccar/protocol/TelicProtocolDecoder.java +++ b/src/org/traccar/protocol/TelicProtocolDecoder.java @@ -87,8 +87,7 @@ public class TelicProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/TeltonikaProtocolDecoder.java b/src/org/traccar/protocol/TeltonikaProtocolDecoder.java index fcbdfc564..9e249247a 100644 --- a/src/org/traccar/protocol/TeltonikaProtocolDecoder.java +++ b/src/org/traccar/protocol/TeltonikaProtocolDecoder.java @@ -382,8 +382,7 @@ public class TeltonikaProtocolDecoder extends BaseProtocolDecoder { } for (int i = 0; i < count; i++) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); diff --git a/src/org/traccar/protocol/ThinkRaceProtocolDecoder.java b/src/org/traccar/protocol/ThinkRaceProtocolDecoder.java index 4a97fa1a1..f7dd18f51 100644 --- a/src/org/traccar/protocol/ThinkRaceProtocolDecoder.java +++ b/src/org/traccar/protocol/ThinkRaceProtocolDecoder.java @@ -87,8 +87,7 @@ public class ThinkRaceProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(new Date(buf.readUnsignedInt() * 1000)); diff --git a/src/org/traccar/protocol/Tk102ProtocolDecoder.java b/src/org/traccar/protocol/Tk102ProtocolDecoder.java index 41d5b7436..50dd45676 100644 --- a/src/org/traccar/protocol/Tk102ProtocolDecoder.java +++ b/src/org/traccar/protocol/Tk102ProtocolDecoder.java @@ -117,8 +117,7 @@ public class Tk102ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/Tk103ProtocolDecoder.java b/src/org/traccar/protocol/Tk103ProtocolDecoder.java index eda29e3f8..22a73469f 100644 --- a/src/org/traccar/protocol/Tk103ProtocolDecoder.java +++ b/src/org/traccar/protocol/Tk103ProtocolDecoder.java @@ -228,8 +228,7 @@ public class Tk103ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); @@ -263,8 +262,7 @@ public class Tk103ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); @@ -286,8 +284,7 @@ public class Tk103ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); decodeType(position, parser.next(), "0"); @@ -331,8 +328,7 @@ public class Tk103ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); @@ -380,8 +376,7 @@ public class Tk103ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); boolean alternative = parser.next() != null; diff --git a/src/org/traccar/protocol/Tlt2hProtocolDecoder.java b/src/org/traccar/protocol/Tlt2hProtocolDecoder.java index 4be1fc865..a5a195afa 100644 --- a/src/org/traccar/protocol/Tlt2hProtocolDecoder.java +++ b/src/org/traccar/protocol/Tlt2hProtocolDecoder.java @@ -123,8 +123,7 @@ public class Tlt2hProtocolDecoder extends BaseProtocolDecoder { parser = new Parser(PATTERN_POSITION, message); if (parser.matches()) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); parser.next(); // base station info diff --git a/src/org/traccar/protocol/TlvProtocolDecoder.java b/src/org/traccar/protocol/TlvProtocolDecoder.java index 41d65be09..0cf68acb8 100644 --- a/src/org/traccar/protocol/TlvProtocolDecoder.java +++ b/src/org/traccar/protocol/TlvProtocolDecoder.java @@ -83,8 +83,7 @@ public class TlvProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setValid(true); diff --git a/src/org/traccar/protocol/TmgProtocolDecoder.java b/src/org/traccar/protocol/TmgProtocolDecoder.java index 4a3055932..cb10eedd7 100644 --- a/src/org/traccar/protocol/TmgProtocolDecoder.java +++ b/src/org/traccar/protocol/TmgProtocolDecoder.java @@ -99,8 +99,7 @@ public class TmgProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); switch (type) { diff --git a/src/org/traccar/protocol/TopflytechProtocolDecoder.java b/src/org/traccar/protocol/TopflytechProtocolDecoder.java index 837ca2557..b3a8fa845 100644 --- a/src/org/traccar/protocol/TopflytechProtocolDecoder.java +++ b/src/org/traccar/protocol/TopflytechProtocolDecoder.java @@ -53,8 +53,7 @@ public class TopflytechProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/TotemProtocolDecoder.java b/src/org/traccar/protocol/TotemProtocolDecoder.java index a3e8c9921..2f205ba58 100644 --- a/src/org/traccar/protocol/TotemProtocolDecoder.java +++ b/src/org/traccar/protocol/TotemProtocolDecoder.java @@ -329,8 +329,7 @@ public class TotemProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Tr20ProtocolDecoder.java b/src/org/traccar/protocol/Tr20ProtocolDecoder.java index 403a2fda2..579d575b0 100644 --- a/src/org/traccar/protocol/Tr20ProtocolDecoder.java +++ b/src/org/traccar/protocol/Tr20ProtocolDecoder.java @@ -70,8 +70,7 @@ public class Tr20ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Tr900ProtocolDecoder.java b/src/org/traccar/protocol/Tr900ProtocolDecoder.java index 7dbdc5697..0ce4158e4 100644 --- a/src/org/traccar/protocol/Tr900ProtocolDecoder.java +++ b/src/org/traccar/protocol/Tr900ProtocolDecoder.java @@ -63,8 +63,7 @@ public class Tr900ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/TrackboxProtocolDecoder.java b/src/org/traccar/protocol/TrackboxProtocolDecoder.java index 7e542af93..2c113fb76 100644 --- a/src/org/traccar/protocol/TrackboxProtocolDecoder.java +++ b/src/org/traccar/protocol/TrackboxProtocolDecoder.java @@ -77,8 +77,7 @@ public class TrackboxProtocolDecoder extends BaseProtocolDecoder { } sendResponse(channel); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/TrakMateProtocolDecoder.java b/src/org/traccar/protocol/TrakMateProtocolDecoder.java index 8965a18b4..28fd1c64d 100644 --- a/src/org/traccar/protocol/TrakMateProtocolDecoder.java +++ b/src/org/traccar/protocol/TrakMateProtocolDecoder.java @@ -112,8 +112,7 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setLatitude(parser.nextDouble(0)); @@ -139,8 +138,7 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); parser.next(); // seq @@ -170,8 +168,7 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); parser.next(); // seq diff --git a/src/org/traccar/protocol/TramigoProtocolDecoder.java b/src/org/traccar/protocol/TramigoProtocolDecoder.java index b1e28e17d..2605346a9 100644 --- a/src/org/traccar/protocol/TramigoProtocolDecoder.java +++ b/src/org/traccar/protocol/TramigoProtocolDecoder.java @@ -61,8 +61,7 @@ public class TramigoProtocolDecoder extends BaseProtocolDecoder { long id = buf.readUnsignedInt(); buf.readUnsignedInt(); // time - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.set(Position.KEY_INDEX, index); position.setValid(true); diff --git a/src/org/traccar/protocol/TrvProtocolDecoder.java b/src/org/traccar/protocol/TrvProtocolDecoder.java index 918748f7b..e0cebc9a5 100644 --- a/src/org/traccar/protocol/TrvProtocolDecoder.java +++ b/src/org/traccar/protocol/TrvProtocolDecoder.java @@ -144,8 +144,7 @@ public class TrvProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); @@ -167,8 +166,7 @@ public class TrvProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() diff --git a/src/org/traccar/protocol/Tt8850ProtocolDecoder.java b/src/org/traccar/protocol/Tt8850ProtocolDecoder.java index 5e30d0994..0134f4764 100644 --- a/src/org/traccar/protocol/Tt8850ProtocolDecoder.java +++ b/src/org/traccar/protocol/Tt8850ProtocolDecoder.java @@ -69,8 +69,7 @@ public class Tt8850ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/TytanProtocolDecoder.java b/src/org/traccar/protocol/TytanProtocolDecoder.java index de0330250..a65ad4cfc 100644 --- a/src/org/traccar/protocol/TytanProtocolDecoder.java +++ b/src/org/traccar/protocol/TytanProtocolDecoder.java @@ -146,8 +146,7 @@ public class TytanProtocolDecoder extends BaseProtocolDecoder { while (buf.readableBytes() > 2) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); int end = buf.readerIndex() + buf.readUnsignedByte(); diff --git a/src/org/traccar/protocol/TzoneProtocolDecoder.java b/src/org/traccar/protocol/TzoneProtocolDecoder.java index 079ad3126..984891bb6 100644 --- a/src/org/traccar/protocol/TzoneProtocolDecoder.java +++ b/src/org/traccar/protocol/TzoneProtocolDecoder.java @@ -128,8 +128,7 @@ public class TzoneProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_VERSION_HW, hardware); diff --git a/src/org/traccar/protocol/UlbotechProtocolDecoder.java b/src/org/traccar/protocol/UlbotechProtocolDecoder.java index 31a3d2cfe..f5ca9190b 100644 --- a/src/org/traccar/protocol/UlbotechProtocolDecoder.java +++ b/src/org/traccar/protocol/UlbotechProtocolDecoder.java @@ -188,8 +188,7 @@ public class UlbotechProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); DateBuilder dateBuilder = new DateBuilder() @@ -216,8 +215,7 @@ public class UlbotechProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); long seconds = buf.readUnsignedInt() & 0x7fffffffL; diff --git a/src/org/traccar/protocol/UproProtocolDecoder.java b/src/org/traccar/protocol/UproProtocolDecoder.java index 7a0dca8a2..28f3d0249 100644 --- a/src/org/traccar/protocol/UproProtocolDecoder.java +++ b/src/org/traccar/protocol/UproProtocolDecoder.java @@ -116,8 +116,7 @@ public class UproProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); String type = parser.next(); diff --git a/src/org/traccar/protocol/V680ProtocolDecoder.java b/src/org/traccar/protocol/V680ProtocolDecoder.java index 079a8eb08..caa06a863 100644 --- a/src/org/traccar/protocol/V680ProtocolDecoder.java +++ b/src/org/traccar/protocol/V680ProtocolDecoder.java @@ -70,8 +70,7 @@ public class V680ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession; if (parser.hasNext()) { diff --git a/src/org/traccar/protocol/VisiontekProtocolDecoder.java b/src/org/traccar/protocol/VisiontekProtocolDecoder.java index f32c9fbfe..33c555c6b 100644 --- a/src/org/traccar/protocol/VisiontekProtocolDecoder.java +++ b/src/org/traccar/protocol/VisiontekProtocolDecoder.java @@ -81,8 +81,7 @@ public class VisiontekProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next(), parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Vt200ProtocolDecoder.java b/src/org/traccar/protocol/Vt200ProtocolDecoder.java index 2ae24efbb..30fd88615 100644 --- a/src/org/traccar/protocol/Vt200ProtocolDecoder.java +++ b/src/org/traccar/protocol/Vt200ProtocolDecoder.java @@ -68,8 +68,7 @@ public class Vt200ProtocolDecoder extends BaseProtocolDecoder { if (type == 0x2086 || type == 0x2084 || type == 0x2082) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); buf.readUnsignedByte(); // data type @@ -103,8 +102,7 @@ public class Vt200ProtocolDecoder extends BaseProtocolDecoder { } else if (type == 0x3088) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/VtfmsProtocolDecoder.java b/src/org/traccar/protocol/VtfmsProtocolDecoder.java index 5fb687e6d..dc2171022 100644 --- a/src/org/traccar/protocol/VtfmsProtocolDecoder.java +++ b/src/org/traccar/protocol/VtfmsProtocolDecoder.java @@ -106,8 +106,7 @@ public class VtfmsProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.set(Position.KEY_ALARM, decodeAlarm(parser.nextInt())); diff --git a/src/org/traccar/protocol/WatchProtocolDecoder.java b/src/org/traccar/protocol/WatchProtocolDecoder.java index 86dc9456d..fe62874b5 100644 --- a/src/org/traccar/protocol/WatchProtocolDecoder.java +++ b/src/org/traccar/protocol/WatchProtocolDecoder.java @@ -164,8 +164,7 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { if (buf.readable()) { String[] values = buf.toString(StandardCharsets.US_ASCII).split(","); if (values.length >= 3) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); @@ -188,8 +187,7 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); @@ -225,8 +223,7 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { if (buf.readable()) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, new Date()); @@ -242,8 +239,7 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { } else if (type.equals("img")) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); @@ -256,8 +252,7 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { } else if (type.equals("TK")) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, null); diff --git a/src/org/traccar/protocol/WialonProtocolDecoder.java b/src/org/traccar/protocol/WialonProtocolDecoder.java index 4eb3b9b8e..5bc3e9972 100644 --- a/src/org/traccar/protocol/WialonProtocolDecoder.java +++ b/src/org/traccar/protocol/WialonProtocolDecoder.java @@ -80,8 +80,7 @@ public class WialonProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); position.setTime(parser.nextDateTime(Parser.DateTimeFormat.DMY_HMS)); @@ -179,8 +178,7 @@ public class WialonProtocolDecoder extends BaseProtocolDecoder { } else if (sentence.startsWith("#M#")) { DeviceSession deviceSession = getDeviceSession(channel, remoteAddress); if (deviceSession != null) { - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, new Date()); position.setValid(false); diff --git a/src/org/traccar/protocol/WondexProtocolDecoder.java b/src/org/traccar/protocol/WondexProtocolDecoder.java index e27745f38..a0fa436e4 100644 --- a/src/org/traccar/protocol/WondexProtocolDecoder.java +++ b/src/org/traccar/protocol/WondexProtocolDecoder.java @@ -70,17 +70,17 @@ public class WondexProtocolDecoder extends BaseProtocolDecoder { return null; } else if (buf.toString(StandardCharsets.US_ASCII).startsWith("$OK:") || buf.toString(StandardCharsets.US_ASCII).startsWith("$ERR:") - || buf.toString(StandardCharsets.US_ASCII).startsWith("$MSG:")) { + || buf.toString(StandardCharsets.US_ASCII).startsWith("$MSG:")) { DeviceSession deviceSession = getDeviceSession(channel, remoteAddress); - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, new Date()); position.set(Position.KEY_RESULT, buf.toString(StandardCharsets.US_ASCII)); return position; + } else { Parser parser = new Parser(PATTERN, buf.toString(StandardCharsets.US_ASCII)); @@ -88,8 +88,7 @@ public class WondexProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { @@ -120,6 +119,7 @@ public class WondexProtocolDecoder extends BaseProtocolDecoder { position.set(Position.KEY_OUTPUT, parser.next()); return position; + } } diff --git a/src/org/traccar/protocol/XexunProtocolDecoder.java b/src/org/traccar/protocol/XexunProtocolDecoder.java index bb4b4f48c..a06a86021 100644 --- a/src/org/traccar/protocol/XexunProtocolDecoder.java +++ b/src/org/traccar/protocol/XexunProtocolDecoder.java @@ -106,8 +106,7 @@ public class XexunProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); if (full) { position.set("serial", parser.next()); diff --git a/src/org/traccar/protocol/XirgoProtocolDecoder.java b/src/org/traccar/protocol/XirgoProtocolDecoder.java index b1442170d..10dd298fd 100644 --- a/src/org/traccar/protocol/XirgoProtocolDecoder.java +++ b/src/org/traccar/protocol/XirgoProtocolDecoder.java @@ -125,8 +125,7 @@ public class XirgoProtocolDecoder extends BaseProtocolDecoder { } } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Xt013ProtocolDecoder.java b/src/org/traccar/protocol/Xt013ProtocolDecoder.java index f1214fdb4..a92afd778 100644 --- a/src/org/traccar/protocol/Xt013ProtocolDecoder.java +++ b/src/org/traccar/protocol/Xt013ProtocolDecoder.java @@ -65,8 +65,7 @@ public class Xt013ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, parser.next()); if (deviceSession == null) { diff --git a/src/org/traccar/protocol/Xt2400ProtocolDecoder.java b/src/org/traccar/protocol/Xt2400ProtocolDecoder.java index 15e8558be..98d639fc8 100644 --- a/src/org/traccar/protocol/Xt2400ProtocolDecoder.java +++ b/src/org/traccar/protocol/Xt2400ProtocolDecoder.java @@ -116,8 +116,7 @@ public class Xt2400ProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); for (byte tag : format) { switch ((int) tag) { diff --git a/src/org/traccar/protocol/YwtProtocolDecoder.java b/src/org/traccar/protocol/YwtProtocolDecoder.java index 6a98ab9e7..3182b838d 100644 --- a/src/org/traccar/protocol/YwtProtocolDecoder.java +++ b/src/org/traccar/protocol/YwtProtocolDecoder.java @@ -76,8 +76,7 @@ public class YwtProtocolDecoder extends BaseProtocolDecoder { return null; } - Position position = new Position(); - position.setProtocol(getProtocolName()); + Position position = new Position(getProtocolName()); String type = parser.next(); -- cgit v1.2.3 From 48a5bd364b496de70a1a3eff8dd5c57c5d8fec9d Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Mon, 22 Jan 2018 19:53:48 +1300 Subject: Optimize date assignment --- findbugs.xml | 8 ++++++ src/org/traccar/model/Event.java | 12 ++------- src/org/traccar/model/Position.java | 36 +++++---------------------- src/org/traccar/model/Statistics.java | 12 ++------- src/org/traccar/model/User.java | 12 ++------- src/org/traccar/reports/model/StopReport.java | 24 +++--------------- src/org/traccar/reports/model/TripReport.java | 24 +++--------------- test/org/traccar/ProtocolTest.java | 8 +++--- test/org/traccar/reports/ReportUtilsTest.java | 4 +-- 9 files changed, 32 insertions(+), 108 deletions(-) (limited to 'src/org/traccar/model') diff --git a/findbugs.xml b/findbugs.xml index 18fba5c9a..d7890baac 100644 --- a/findbugs.xml +++ b/findbugs.xml @@ -1,5 +1,13 @@ + + + + + + + + diff --git a/src/org/traccar/model/Event.java b/src/org/traccar/model/Event.java index 47b60af01..465afeb35 100644 --- a/src/org/traccar/model/Event.java +++ b/src/org/traccar/model/Event.java @@ -64,19 +64,11 @@ public class Event extends Message { private Date serverTime; public Date getServerTime() { - if (serverTime != null) { - return new Date(serverTime.getTime()); - } else { - return null; - } + return serverTime; } public void setServerTime(Date serverTime) { - if (serverTime != null) { - this.serverTime = new Date(serverTime.getTime()); - } else { - this.serverTime = null; - } + this.serverTime = serverTime; } private long positionId; diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java index 3943c1ef9..981c2292f 100644 --- a/src/org/traccar/model/Position.java +++ b/src/org/traccar/model/Position.java @@ -152,55 +152,31 @@ public class Position extends Message { private Date serverTime; public Date getServerTime() { - if (serverTime != null) { - return new Date(serverTime.getTime()); - } else { - return null; - } + return serverTime; } public void setServerTime(Date serverTime) { - if (serverTime != null) { - this.serverTime = new Date(serverTime.getTime()); - } else { - this.serverTime = null; - } + this.serverTime = serverTime; } private Date deviceTime; public Date getDeviceTime() { - if (deviceTime != null) { - return new Date(deviceTime.getTime()); - } else { - return null; - } + return deviceTime; } public void setDeviceTime(Date deviceTime) { - if (deviceTime != null) { - this.deviceTime = new Date(deviceTime.getTime()); - } else { - this.deviceTime = null; - } + this.deviceTime = deviceTime; } private Date fixTime; public Date getFixTime() { - if (fixTime != null) { - return new Date(fixTime.getTime()); - } else { - return null; - } + return fixTime; } public void setFixTime(Date fixTime) { - if (fixTime != null) { - this.fixTime = new Date(fixTime.getTime()); - } else { - this.fixTime = null; - } + this.fixTime = fixTime; } public void setTime(Date time) { diff --git a/src/org/traccar/model/Statistics.java b/src/org/traccar/model/Statistics.java index 2acf8514f..cb72c91dd 100644 --- a/src/org/traccar/model/Statistics.java +++ b/src/org/traccar/model/Statistics.java @@ -22,19 +22,11 @@ public class Statistics extends ExtendedModel { private Date captureTime; public Date getCaptureTime() { - if (captureTime != null) { - return new Date(captureTime.getTime()); - } else { - return null; - } + return captureTime; } public void setCaptureTime(Date captureTime) { - if (captureTime != null) { - this.captureTime = new Date(captureTime.getTime()); - } else { - this.captureTime = null; - } + this.captureTime = captureTime; } private int activeUsers; diff --git a/src/org/traccar/model/User.java b/src/org/traccar/model/User.java index 7f97d4781..1a131a4e8 100644 --- a/src/org/traccar/model/User.java +++ b/src/org/traccar/model/User.java @@ -158,19 +158,11 @@ public class User extends ExtendedModel { private Date expirationTime; public Date getExpirationTime() { - if (expirationTime != null) { - return new Date(expirationTime.getTime()); - } else { - return null; - } + return expirationTime; } public void setExpirationTime(Date expirationTime) { - if (expirationTime != null) { - this.expirationTime = new Date(expirationTime.getTime()); - } else { - this.expirationTime = null; - } + this.expirationTime = expirationTime; } private int deviceLimit; diff --git a/src/org/traccar/reports/model/StopReport.java b/src/org/traccar/reports/model/StopReport.java index 6b2e86299..245292b63 100644 --- a/src/org/traccar/reports/model/StopReport.java +++ b/src/org/traccar/reports/model/StopReport.java @@ -53,37 +53,21 @@ public class StopReport extends BaseReport { private Date startTime; public Date getStartTime() { - if (startTime != null) { - return new Date(startTime.getTime()); - } else { - return null; - } + return startTime; } public void setStartTime(Date startTime) { - if (startTime != null) { - this.startTime = new Date(startTime.getTime()); - } else { - this.startTime = null; - } + this.startTime = startTime; } private Date endTime; public Date getEndTime() { - if (endTime != null) { - return new Date(endTime.getTime()); - } else { - return null; - } + return endTime; } public void setEndTime(Date endTime) { - if (endTime != null) { - this.endTime = new Date(endTime.getTime()); - } else { - this.endTime = null; - } + this.endTime = endTime; } private String address; diff --git a/src/org/traccar/reports/model/TripReport.java b/src/org/traccar/reports/model/TripReport.java index 42a4240b7..3140f3019 100644 --- a/src/org/traccar/reports/model/TripReport.java +++ b/src/org/traccar/reports/model/TripReport.java @@ -83,19 +83,11 @@ public class TripReport extends BaseReport { private Date startTime; public Date getStartTime() { - if (startTime != null) { - return new Date(startTime.getTime()); - } else { - return null; - } + return startTime; } public void setStartTime(Date startTime) { - if (startTime != null) { - this.startTime = new Date(startTime.getTime()); - } else { - this.startTime = null; - } + this.startTime = startTime; } private String startAddress; @@ -111,19 +103,11 @@ public class TripReport extends BaseReport { private Date endTime; public Date getEndTime() { - if (endTime != null) { - return new Date(endTime.getTime()); - } else { - return null; - } + return endTime; } public void setEndTime(Date endTime) { - if (endTime != null) { - this.endTime = new Date(endTime.getTime()); - } else { - this.endTime = null; - } + this.endTime = endTime; } private String endAddress; diff --git a/test/org/traccar/ProtocolTest.java b/test/org/traccar/ProtocolTest.java index 1daefabd6..5cbb651bf 100644 --- a/test/org/traccar/ProtocolTest.java +++ b/test/org/traccar/ProtocolTest.java @@ -27,11 +27,9 @@ public class ProtocolTest extends BaseTest { Position position = new Position(); - if (time != null) { - DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); - dateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); - position.setTime(dateFormat.parse(time)); - } + DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + dateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); + position.setTime(dateFormat.parse(time)); position.setValid(valid); position.setLatitude(lat); position.setLongitude(lon); diff --git a/test/org/traccar/reports/ReportUtilsTest.java b/test/org/traccar/reports/ReportUtilsTest.java index 4f7a4eb68..0e26c7e75 100644 --- a/test/org/traccar/reports/ReportUtilsTest.java +++ b/test/org/traccar/reports/ReportUtilsTest.java @@ -35,9 +35,7 @@ public class ReportUtilsTest extends BaseTest { Position position = new Position(); - if (time != null) { - position.setTime(date(time)); - } + position.setTime(date(time)); position.setValid(true); position.setSpeed(speed); position.set(Position.KEY_TOTAL_DISTANCE, totalDistance); -- cgit v1.2.3 From 9b74f4a691354db61a3096794f3daeec575b8517 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Tue, 23 Jan 2018 12:16:46 +0500 Subject: Implement scheduled notifications --- schema/changelog-3.16.xml | 6 +++++ src/org/traccar/api/BaseObjectResource.java | 15 ++++++++++-- src/org/traccar/database/NotificationManager.java | 16 ++++++++---- src/org/traccar/model/Geofence.java | 12 +-------- src/org/traccar/model/Notification.java | 4 +-- src/org/traccar/model/ScheduledModel.java | 30 +++++++++++++++++++++++ 6 files changed, 63 insertions(+), 20 deletions(-) create mode 100644 src/org/traccar/model/ScheduledModel.java (limited to 'src/org/traccar/model') diff --git a/schema/changelog-3.16.xml b/schema/changelog-3.16.xml index 4e8e1cda9..615222676 100644 --- a/schema/changelog-3.16.xml +++ b/schema/changelog-3.16.xml @@ -20,5 +20,11 @@ + + + + + + diff --git a/src/org/traccar/api/BaseObjectResource.java b/src/org/traccar/api/BaseObjectResource.java index 3914f8cce..e4e00938f 100644 --- a/src/org/traccar/api/BaseObjectResource.java +++ b/src/org/traccar/api/BaseObjectResource.java @@ -1,6 +1,6 @@ /* - * Copyright 2017 Anton Tananaev (anton@traccar.org) - * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org) + * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,9 +33,11 @@ import org.traccar.database.ManagableObjects; import org.traccar.database.SimpleObjectManager; import org.traccar.helper.LogAction; import org.traccar.model.BaseModel; +import org.traccar.model.Calendar; import org.traccar.model.Command; import org.traccar.model.Device; import org.traccar.model.Group; +import org.traccar.model.ScheduledModel; import org.traccar.model.User; public abstract class BaseObjectResource extends BaseResource { @@ -77,6 +79,9 @@ public abstract class BaseObjectResource extends BaseResour Context.getPermissionsManager().checkDeviceLimit(getUserId()); } else if (baseClass.equals(Command.class)) { Context.getPermissionsManager().checkLimitCommands(getUserId()); + } else if (entity instanceof ScheduledModel) { + Context.getPermissionsManager().checkPermission(Calendar.class, getUserId(), + ((ScheduledModel) entity).getCalendarId()); } BaseObjectManager manager = Context.getManager(baseClass); @@ -106,6 +111,9 @@ public abstract class BaseObjectResource extends BaseResour Context.getPermissionsManager().checkUserUpdate(getUserId(), before, (User) entity); } else if (baseClass.equals(Command.class)) { Context.getPermissionsManager().checkLimitCommands(getUserId()); + } else if (entity instanceof ScheduledModel) { + Context.getPermissionsManager().checkPermission(Calendar.class, getUserId(), + ((ScheduledModel) entity).getCalendarId()); } Context.getPermissionsManager().checkPermission(baseClass, getUserId(), entity.getId()); @@ -151,6 +159,9 @@ public abstract class BaseObjectResource extends BaseResour } else { Context.getPermissionsManager().refreshAllExtendedPermissions(); } + } else if (baseClass.equals(Calendar.class)) { + Context.getGeofenceManager().refreshItems(); + Context.getNotificationManager().refreshItems(); } return Response.noContent().build(); } diff --git a/src/org/traccar/database/NotificationManager.java b/src/org/traccar/database/NotificationManager.java index 4e6114001..c666f27ce 100644 --- a/src/org/traccar/database/NotificationManager.java +++ b/src/org/traccar/database/NotificationManager.java @@ -1,6 +1,6 @@ /* - * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org) - * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org) + * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2016 - 2018 Andrey Kunitsyn (andrey@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ package org.traccar.database; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.sql.SQLException; +import java.util.Date; import java.util.HashSet; import java.util.Map; import java.util.Map.Entry; @@ -26,6 +27,7 @@ import java.util.Set; import org.traccar.Context; import org.traccar.helper.Log; +import org.traccar.model.Calendar; import org.traccar.model.Event; import org.traccar.model.Notification; import org.traccar.model.Position; @@ -42,12 +44,16 @@ public class NotificationManager extends ExtendedObjectManager { geocodeOnRequest = Context.getConfig().getBoolean("geocoder.onRequest"); } - private Set getEffectiveNotifications(long userId, long deviceId) { + private Set getEffectiveNotifications(long userId, long deviceId, Date date) { Set result = new HashSet<>(); Set deviceNotifications = getAllDeviceItems(deviceId); for (long itemId : getUserItems(userId)) { if (getById(itemId).getAlways() || deviceNotifications.contains(itemId)) { - result.add(itemId); + long calendarId = getById(itemId).getCalendarId(); + Calendar calendar = calendarId != 0 ? Context.getCalendarManager().getById(calendarId) : null; + if (calendar == null || calendar.checkMoment(date)) { + result.add(itemId); + } } } return result; @@ -73,7 +79,7 @@ public class NotificationManager extends ExtendedObjectManager { boolean sentWeb = false; boolean sentMail = false; boolean sentSms = Context.getSmppManager() == null; - for (long notificationId : getEffectiveNotifications(userId, deviceId)) { + for (long notificationId : getEffectiveNotifications(userId, deviceId, event.getServerTime())) { Notification notification = getById(notificationId); if (getById(notificationId).getType().equals(event.getType())) { if (!sentWeb && notification.getWeb()) { diff --git a/src/org/traccar/model/Geofence.java b/src/org/traccar/model/Geofence.java index 21c196da9..7042325dc 100644 --- a/src/org/traccar/model/Geofence.java +++ b/src/org/traccar/model/Geofence.java @@ -26,7 +26,7 @@ import org.traccar.geofence.GeofencePolyline; import com.fasterxml.jackson.annotation.JsonIgnore; -public class Geofence extends ExtendedModel { +public class Geofence extends ScheduledModel { public static final String TYPE_GEOFENCE_CILCLE = "geofenceCircle"; public static final String TYPE_GEOFENCE_POLYGON = "geofencePolygon"; @@ -87,14 +87,4 @@ public class Geofence extends ExtendedModel { area = geometry.toWkt(); this.geometry = geometry; } - - private long calendarId; - - public long getCalendarId() { - return calendarId; - } - - public void setCalendarId(long calendarId) { - this.calendarId = calendarId; - } } diff --git a/src/org/traccar/model/Notification.java b/src/org/traccar/model/Notification.java index 9d6034fff..cc80f2ae2 100644 --- a/src/org/traccar/model/Notification.java +++ b/src/org/traccar/model/Notification.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 Anton Tananaev (anton@traccar.org) + * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,7 +15,7 @@ */ package org.traccar.model; -public class Notification extends ExtendedModel { +public class Notification extends ScheduledModel { private boolean always; diff --git a/src/org/traccar/model/ScheduledModel.java b/src/org/traccar/model/ScheduledModel.java new file mode 100644 index 000000000..9e6a4b9a6 --- /dev/null +++ b/src/org/traccar/model/ScheduledModel.java @@ -0,0 +1,30 @@ +/* + * Copyright 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.traccar.model; + +public class ScheduledModel extends ExtendedModel { + + private long calendarId; + + public long getCalendarId() { + return calendarId; + } + + public void setCalendarId(long calendarId) { + this.calendarId = calendarId; + } +} -- cgit v1.2.3 From bda31d967673477331caba9597c1ab57553c4b8d Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Mon, 29 Jan 2018 09:40:53 +0500 Subject: Fix ScheduledModel objects permission check --- src/org/traccar/api/BaseObjectResource.java | 11 ++++++++-- src/org/traccar/model/Device.java | 14 ++----------- src/org/traccar/model/Group.java | 14 ++----------- src/org/traccar/model/GroupedModel.java | 31 +++++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 26 deletions(-) create mode 100644 src/org/traccar/model/GroupedModel.java (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/api/BaseObjectResource.java b/src/org/traccar/api/BaseObjectResource.java index e4e00938f..596195cae 100644 --- a/src/org/traccar/api/BaseObjectResource.java +++ b/src/org/traccar/api/BaseObjectResource.java @@ -37,6 +37,7 @@ import org.traccar.model.Calendar; import org.traccar.model.Command; import org.traccar.model.Device; import org.traccar.model.Group; +import org.traccar.model.GroupedModel; import org.traccar.model.ScheduledModel; import org.traccar.model.User; @@ -79,7 +80,10 @@ public abstract class BaseObjectResource extends BaseResour Context.getPermissionsManager().checkDeviceLimit(getUserId()); } else if (baseClass.equals(Command.class)) { Context.getPermissionsManager().checkLimitCommands(getUserId()); - } else if (entity instanceof ScheduledModel) { + } else if (entity instanceof GroupedModel && ((GroupedModel) entity).getGroupId() != 0) { + Context.getPermissionsManager().checkPermission(Group.class, getUserId(), + ((GroupedModel) entity).getGroupId()); + } else if (entity instanceof ScheduledModel && ((ScheduledModel) entity).getCalendarId() != 0) { Context.getPermissionsManager().checkPermission(Calendar.class, getUserId(), ((ScheduledModel) entity).getCalendarId()); } @@ -111,7 +115,10 @@ public abstract class BaseObjectResource extends BaseResour Context.getPermissionsManager().checkUserUpdate(getUserId(), before, (User) entity); } else if (baseClass.equals(Command.class)) { Context.getPermissionsManager().checkLimitCommands(getUserId()); - } else if (entity instanceof ScheduledModel) { + } else if (entity instanceof GroupedModel && ((GroupedModel) entity).getGroupId() != 0) { + Context.getPermissionsManager().checkPermission(Group.class, getUserId(), + ((GroupedModel) entity).getGroupId()); + } else if (entity instanceof ScheduledModel && ((ScheduledModel) entity).getCalendarId() != 0) { Context.getPermissionsManager().checkPermission(Calendar.class, getUserId(), ((ScheduledModel) entity).getCalendarId()); } diff --git a/src/org/traccar/model/Device.java b/src/org/traccar/model/Device.java index 51b479b09..0c9be932d 100644 --- a/src/org/traccar/model/Device.java +++ b/src/org/traccar/model/Device.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 - 2016 Anton Tananaev (anton@traccar.org) + * Copyright 2012 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,7 +21,7 @@ import java.util.List; import org.traccar.database.QueryExtended; import org.traccar.database.QueryIgnore; -public class Device extends ExtendedModel { +public class Device extends GroupedModel { private String name; @@ -88,16 +88,6 @@ public class Device extends ExtendedModel { this.positionId = positionId; } - private long groupId; - - public long getGroupId() { - return groupId; - } - - public void setGroupId(long groupId) { - this.groupId = groupId; - } - private List geofenceIds; @QueryIgnore diff --git a/src/org/traccar/model/Group.java b/src/org/traccar/model/Group.java index aad206aad..91ea2319d 100644 --- a/src/org/traccar/model/Group.java +++ b/src/org/traccar/model/Group.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 Anton Tananaev (anton@traccar.org) + * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,7 +15,7 @@ */ package org.traccar.model; -public class Group extends ExtendedModel { +public class Group extends GroupedModel { private String name; @@ -27,14 +27,4 @@ public class Group extends ExtendedModel { this.name = name; } - private long groupId; - - public long getGroupId() { - return groupId; - } - - public void setGroupId(long groupId) { - this.groupId = groupId; - } - } diff --git a/src/org/traccar/model/GroupedModel.java b/src/org/traccar/model/GroupedModel.java new file mode 100644 index 000000000..6b1aa75b1 --- /dev/null +++ b/src/org/traccar/model/GroupedModel.java @@ -0,0 +1,31 @@ +/* + * Copyright 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.traccar.model; + +public class GroupedModel extends ExtendedModel { + + private long groupId; + + public long getGroupId() { + return groupId; + } + + public void setGroupId(long groupId) { + this.groupId = groupId; + } + +} -- cgit v1.2.3 From 0aa78a779f764cad80d54d4710118212d52402c1 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Wed, 14 Mar 2018 07:09:40 +1300 Subject: Decode Xirgo events and alarms --- src/org/traccar/model/Position.java | 1 + src/org/traccar/protocol/XirgoProtocolDecoder.java | 65 +++++++++++++++++++++- 2 files changed, 64 insertions(+), 2 deletions(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java index 981c2292f..49e3231c3 100644 --- a/src/org/traccar/model/Position.java +++ b/src/org/traccar/model/Position.java @@ -115,6 +115,7 @@ public class Position extends Message { public static final String ALARM_GPS_ANTENNA_CUT = "gpsAntennaCut"; public static final String ALARM_ACCIDENT = "accident"; public static final String ALARM_TOW = "tow"; + public static final String ALARM_IDLE = "idle"; public static final String ALARM_ACCELERATION = "hardAcceleration"; public static final String ALARM_BRAKING = "hardBraking"; public static final String ALARM_CORNERING = "hardCornering"; diff --git a/src/org/traccar/protocol/XirgoProtocolDecoder.java b/src/org/traccar/protocol/XirgoProtocolDecoder.java index 10dd298fd..1a753cb3e 100644 --- a/src/org/traccar/protocol/XirgoProtocolDecoder.java +++ b/src/org/traccar/protocol/XirgoProtocolDecoder.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org) + * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -95,6 +95,67 @@ public class XirgoProtocolDecoder extends BaseProtocolDecoder { .any() .compile(); + private void decodeEvent(Position position, int event) { + + position.set(Position.KEY_EVENT, event); + + switch (event) { + case 4005: + position.set(Position.KEY_CHARGE, false); + break; + case 6002: + position.set(Position.KEY_ALARM, Position.ALARM_OVERSPEED); + break; + case 6006: + position.set(Position.KEY_ALARM, Position.ALARM_ACCELERATION); + break; + case 6007: + position.set(Position.KEY_ALARM, Position.ALARM_BRAKING); + break; + case 6008: + position.set(Position.KEY_ALARM, Position.ALARM_LOW_POWER); + break; + case 6009: + position.set(Position.KEY_ALARM, Position.ALARM_POWER_CUT); + break; + case 6010: + position.set(Position.KEY_ALARM, Position.ALARM_POWER_RESTORED); + break; + case 6011: + case 6013: + position.set(Position.KEY_IGNITION, true); + break; + case 6012: + case 6014: + position.set(Position.KEY_IGNITION, false); + break; + case 6016: + position.set(Position.KEY_ALARM, Position.ALARM_IDLE); + break; + case 6017: + position.set(Position.KEY_ALARM, Position.ALARM_TOW); + break; + case 6030: + case 6071: + position.set(Position.KEY_MOTION, true); + break; + case 6031: + position.set(Position.KEY_MOTION, false); + break; + case 6032: + position.set(Position.KEY_ALARM, Position.ALARM_PARKING); + break; + case 6090: + position.set(Position.KEY_ALARM, Position.ALARM_REMOVING); + break; + case 6091: + position.set(Position.KEY_ALARM, Position.ALARM_LOW_BATTERY); + break; + default: + break; + } + } + @Override protected Object decode( Channel channel, SocketAddress remoteAddress, Object msg) throws Exception { @@ -133,7 +194,7 @@ public class XirgoProtocolDecoder extends BaseProtocolDecoder { } position.setDeviceId(deviceSession.getDeviceId()); - position.set(Position.KEY_EVENT, parser.next()); + decodeEvent(position, parser.nextInt()); position.setTime(parser.nextDateTime()); -- cgit v1.2.3 From 2a768a85e6de2a0b7049764b1f936d8cbcbe23bc Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Fri, 6 Apr 2018 04:46:51 +1200 Subject: Decode Totem IO values --- src/org/traccar/model/Position.java | 1 + src/org/traccar/protocol/TotemProtocolDecoder.java | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java index 49e3231c3..fca0f16e3 100644 --- a/src/org/traccar/model/Position.java +++ b/src/org/traccar/model/Position.java @@ -58,6 +58,7 @@ public class Position extends Message { public static final String KEY_TYPE = "type"; public static final String KEY_IGNITION = "ignition"; public static final String KEY_FLAGS = "flags"; + public static final String KEY_ANTENNA = "antenna"; public static final String KEY_CHARGE = "charge"; public static final String KEY_IP = "ip"; public static final String KEY_ARCHIVE = "archive"; diff --git a/src/org/traccar/protocol/TotemProtocolDecoder.java b/src/org/traccar/protocol/TotemProtocolDecoder.java index 8da188f60..d6dd933b5 100644 --- a/src/org/traccar/protocol/TotemProtocolDecoder.java +++ b/src/org/traccar/protocol/TotemProtocolDecoder.java @@ -243,12 +243,23 @@ public class TotemProtocolDecoder extends BaseProtocolDecoder { position.set(Position.KEY_HDOP, parser.nextDouble()); } - position.set(Position.PREFIX_IO + 1, parser.next()); + String io = parser.next(); if (pattern == PATTERN1) { + for (int i = 1; i <= 4; i++) { + position.set(Position.PREFIX_IN + i, io.charAt(3 + i) == '1'); + } position.set(Position.KEY_BATTERY, parser.nextDouble(0) * 0.01); } else { + position.set(Position.KEY_ANTENNA, io.charAt(0) == '1'); + position.set(Position.KEY_CHARGE, io.charAt(1) == '1'); + for (int i = 1; i <= 6; i++) { + position.set(Position.PREFIX_IN + i, io.charAt(1 + i) == '1'); + } position.set(Position.KEY_BATTERY, parser.nextDouble(0) * 0.1); } + for (int i = 1; i <= 4; i++) { + position.set(Position.PREFIX_OUT + i, io.charAt(7 + i) == '1'); + } position.set(Position.KEY_POWER, parser.nextDouble(0)); position.set(Position.PREFIX_ADC + 1, parser.next()); -- cgit v1.2.3 From 63dc8265e5e1bc55a2c32a46b37470395c65bcb4 Mon Sep 17 00:00:00 2001 From: Ivan Martinez Date: Sun, 8 Apr 2018 10:21:13 -0300 Subject: use geofence attribute to permit per polyline distance configuration --- src/org/traccar/model/Geofence.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Geofence.java b/src/org/traccar/model/Geofence.java index 7042325dc..acc81c203 100644 --- a/src/org/traccar/model/Geofence.java +++ b/src/org/traccar/model/Geofence.java @@ -65,7 +65,9 @@ public class Geofence extends ScheduledModel { } else if (area.startsWith("POLYGON")) { geometry = new GeofencePolygon(area); } else if (area.startsWith("LINESTRING")) { - geometry = new GeofencePolyline(area, Context.getConfig().getDouble("geofence.polylineDistance", 25)); + final double distance = getDouble("polylineDistance"); + geometry = new GeofencePolyline(area, distance >= 1 ? distance + : Context.getConfig().getDouble("geofence.polylineDistance", 25)); } else { throw new ParseException("Unknown geometry type", 0); } -- cgit v1.2.3 From 9ff9232e779f7e137fa8b0cba2e0b424ff4879f9 Mon Sep 17 00:00:00 2001 From: Ivan Martinez Date: Sun, 8 Apr 2018 18:53:02 -0300 Subject: just consider zero to check if defined --- src/org/traccar/model/Geofence.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/org/traccar/model') diff --git a/src/org/traccar/model/Geofence.java b/src/org/traccar/model/Geofence.java index acc81c203..8560d22e9 100644 --- a/src/org/traccar/model/Geofence.java +++ b/src/org/traccar/model/Geofence.java @@ -66,7 +66,7 @@ public class Geofence extends ScheduledModel { geometry = new GeofencePolygon(area); } else if (area.startsWith("LINESTRING")) { final double distance = getDouble("polylineDistance"); - geometry = new GeofencePolyline(area, distance >= 1 ? distance + geometry = new GeofencePolyline(area, distance > 0 ? distance : Context.getConfig().getDouble("geofence.polylineDistance", 25)); } else { throw new ParseException("Unknown geometry type", 0); -- cgit v1.2.3 From f7a4d1977e71797b231ebb9a55308fee7c2b64d7 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Wed, 11 Apr 2018 14:55:11 +0500 Subject: Add support of multiple Maintenances --- schema/changelog-3.17.xml | 70 +++++++++++++++++++++ schema/changelog-master.xml | 1 + src/org/traccar/Context.java | 14 ++++- src/org/traccar/api/resource/EventResource.java | 4 ++ .../traccar/api/resource/MaintenanceResource.java | 36 +++++++++++ src/org/traccar/database/DataManager.java | 3 + src/org/traccar/database/MaintenancesManager.java | 27 ++++++++ src/org/traccar/database/NotificationManager.java | 6 +- src/org/traccar/database/PermissionsManager.java | 11 +++- .../traccar/events/MaintenanceEventHandler.java | 43 ++++++------- src/org/traccar/model/Event.java | 10 +++ src/org/traccar/model/Maintenance.java | 51 +++++++++++++++ src/org/traccar/notification/EventForwarder.java | 8 +++ .../notification/NotificationFormatter.java | 7 ++- src/org/traccar/reports/Events.java | 22 ++++++- templates/export/events.xlsx | Bin 12336 -> 8738 bytes templates/mail/maintenance.vm | 2 +- templates/sms/maintenance.vm | 2 +- 18 files changed, 281 insertions(+), 36 deletions(-) create mode 100644 schema/changelog-3.17.xml create mode 100644 src/org/traccar/api/resource/MaintenanceResource.java create mode 100644 src/org/traccar/database/MaintenancesManager.java create mode 100644 src/org/traccar/model/Maintenance.java (limited to 'src/org/traccar/model') diff --git a/schema/changelog-3.17.xml b/schema/changelog-3.17.xml new file mode 100644 index 000000000..e0b7de10a --- /dev/null +++ b/schema/changelog-3.17.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/schema/changelog-master.xml b/schema/changelog-master.xml index 0c6941eed..3e7944238 100644 --- a/schema/changelog-master.xml +++ b/schema/changelog-master.xml @@ -17,4 +17,5 @@ + diff --git a/src/org/traccar/Context.java b/src/org/traccar/Context.java index 09e3c619b..a1a5f5a8e 100644 --- a/src/org/traccar/Context.java +++ b/src/org/traccar/Context.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org) + * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ import org.traccar.database.DeviceManager; import org.traccar.database.DriversManager; import org.traccar.database.IdentityManager; import org.traccar.database.LdapProvider; +import org.traccar.database.MaintenancesManager; import org.traccar.database.MediaManager; import org.traccar.database.NotificationManager; import org.traccar.database.PermissionsManager; @@ -64,6 +65,7 @@ import org.traccar.model.Device; import org.traccar.model.Driver; import org.traccar.model.Geofence; import org.traccar.model.Group; +import org.traccar.model.Maintenance; import org.traccar.model.Notification; import org.traccar.model.User; import org.traccar.geolocation.GoogleGeolocationProvider; @@ -232,6 +234,12 @@ public final class Context { return commandsManager; } + private static MaintenancesManager maintenancesManager; + + public static MaintenancesManager getMaintenancesManager() { + return maintenancesManager; + } + private static StatisticsManager statisticsManager; public static StatisticsManager getStatisticsManager() { @@ -385,6 +393,8 @@ public final class Context { commandsManager = new CommandsManager(dataManager); + maintenancesManager = new MaintenancesManager(dataManager); + statisticsManager = new StatisticsManager(); if (config.getBoolean("sms.smpp.enable")) { @@ -469,6 +479,8 @@ public final class Context { return (BaseObjectManager) driversManager; } else if (clazz.equals(Command.class)) { return (BaseObjectManager) commandsManager; + } else if (clazz.equals(Maintenance.class)) { + return (BaseObjectManager) maintenancesManager; } else if (clazz.equals(Notification.class)) { return (BaseObjectManager) notificationManager; } diff --git a/src/org/traccar/api/resource/EventResource.java b/src/org/traccar/api/resource/EventResource.java index a7cf9edbd..e0ccf7020 100644 --- a/src/org/traccar/api/resource/EventResource.java +++ b/src/org/traccar/api/resource/EventResource.java @@ -13,6 +13,7 @@ import org.traccar.Context; import org.traccar.api.BaseResource; import org.traccar.model.Event; import org.traccar.model.Geofence; +import org.traccar.model.Maintenance; @Path("events") @Produces(MediaType.APPLICATION_JSON) @@ -28,6 +29,9 @@ public class EventResource extends BaseResource { if (event.getGeofenceId() != 0) { Context.getPermissionsManager().checkPermission(Geofence.class, getUserId(), event.getGeofenceId()); } + if (event.getMaintenanceId() != 0) { + Context.getPermissionsManager().checkPermission(Maintenance.class, getUserId(), event.getMaintenanceId()); + } return event; } diff --git a/src/org/traccar/api/resource/MaintenanceResource.java b/src/org/traccar/api/resource/MaintenanceResource.java new file mode 100644 index 000000000..b3726b429 --- /dev/null +++ b/src/org/traccar/api/resource/MaintenanceResource.java @@ -0,0 +1,36 @@ +/* + * Copyright 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.traccar.api.resource; + +import javax.ws.rs.Consumes; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; + +import org.traccar.api.ExtendedObjectResource; +import org.traccar.model.Maintenance; + +@Path("maintenances") +@Produces(MediaType.APPLICATION_JSON) +@Consumes(MediaType.APPLICATION_JSON) +public class MaintenanceResource extends ExtendedObjectResource { + + public MaintenanceResource() { + super(Maintenance.class); + } + +} diff --git a/src/org/traccar/database/DataManager.java b/src/org/traccar/database/DataManager.java index a997a89f6..84f8f0394 100644 --- a/src/org/traccar/database/DataManager.java +++ b/src/org/traccar/database/DataManager.java @@ -48,6 +48,7 @@ import org.traccar.model.Driver; import org.traccar.model.Event; import org.traccar.model.Geofence; import org.traccar.model.Group; +import org.traccar.model.Maintenance; import org.traccar.model.ManagedUser; import org.traccar.model.Notification; import org.traccar.model.Permission; @@ -405,6 +406,8 @@ public class DataManager { return Calendar.class; case "command": return Command.class; + case "maintenance": + return Maintenance.class; case "notification": return Notification.class; default: diff --git a/src/org/traccar/database/MaintenancesManager.java b/src/org/traccar/database/MaintenancesManager.java new file mode 100644 index 000000000..4e266cb78 --- /dev/null +++ b/src/org/traccar/database/MaintenancesManager.java @@ -0,0 +1,27 @@ +/* + * Copyright 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.traccar.database; + +import org.traccar.model.Maintenance; + +public class MaintenancesManager extends ExtendedObjectManager { + + public MaintenancesManager(DataManager dataManager) { + super(dataManager, Maintenance.class); + } + +} diff --git a/src/org/traccar/database/NotificationManager.java b/src/org/traccar/database/NotificationManager.java index 1c59a8666..9f2606f7f 100644 --- a/src/org/traccar/database/NotificationManager.java +++ b/src/org/traccar/database/NotificationManager.java @@ -78,8 +78,10 @@ public class NotificationManager extends ExtendedObjectManager { usersToForward = new HashSet<>(); } for (long userId : users) { - if (event.getGeofenceId() == 0 || Context.getGeofenceManager() != null - && Context.getGeofenceManager().checkItemPermission(userId, event.getGeofenceId())) { + if ((event.getGeofenceId() == 0 || Context.getGeofenceManager() != null + && Context.getGeofenceManager().checkItemPermission(userId, event.getGeofenceId())) + && (event.getMaintenanceId() == 0 + || Context.getMaintenancesManager().checkItemPermission(userId, event.getMaintenanceId()))) { if (usersToForward != null) { usersToForward.add(userId); } diff --git a/src/org/traccar/database/PermissionsManager.java b/src/org/traccar/database/PermissionsManager.java index 3ae5961ce..b5f062d2b 100644 --- a/src/org/traccar/database/PermissionsManager.java +++ b/src/org/traccar/database/PermissionsManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org) + * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,6 +25,7 @@ import org.traccar.model.Device; import org.traccar.model.Driver; import org.traccar.model.Geofence; import org.traccar.model.Group; +import org.traccar.model.Maintenance; import org.traccar.model.ManagedUser; import org.traccar.model.Notification; import org.traccar.model.Permission; @@ -337,6 +338,8 @@ public class PermissionsManager { manager = Context.getCalendarManager(); } else if (object.equals(Command.class)) { manager = Context.getCommandsManager(); + } else if (object.equals(Maintenance.class)) { + manager = Context.getMaintenancesManager(); } else if (object.equals(Notification.class)) { manager = Context.getNotificationManager(); } else { @@ -362,6 +365,7 @@ public class PermissionsManager { Context.getDriversManager().refreshUserItems(); Context.getAttributesManager().refreshUserItems(); Context.getCommandsManager().refreshUserItems(); + Context.getMaintenancesManager().refreshUserItems(); if (Context.getNotificationManager() != null) { Context.getNotificationManager().refreshUserItems(); } @@ -374,6 +378,7 @@ public class PermissionsManager { Context.getDriversManager().refreshExtendedPermissions(); Context.getAttributesManager().refreshExtendedPermissions(); Context.getCommandsManager().refreshExtendedPermissions(); + Context.getMaintenancesManager().refreshExtendedPermissions(); } public void refreshPermissions(Permission permission) { @@ -394,6 +399,8 @@ public class PermissionsManager { Context.getCalendarManager().refreshUserItems(); } else if (permission.getPropertyClass().equals(Command.class)) { Context.getCommandsManager().refreshUserItems(); + } else if (permission.getPropertyClass().equals(Maintenance.class)) { + Context.getMaintenancesManager().refreshUserItems(); } else if (permission.getPropertyClass().equals(Notification.class) && Context.getNotificationManager() != null) { Context.getNotificationManager().refreshUserItems(); @@ -407,6 +414,8 @@ public class PermissionsManager { Context.getAttributesManager().refreshExtendedPermissions(); } else if (permission.getPropertyClass().equals(Command.class)) { Context.getCommandsManager().refreshExtendedPermissions(); + } else if (permission.getPropertyClass().equals(Maintenance.class)) { + Context.getMaintenancesManager().refreshExtendedPermissions(); } else if (permission.getPropertyClass().equals(Notification.class) && Context.getNotificationManager() != null) { Context.getNotificationManager().refreshExtendedPermissions(); diff --git a/src/org/traccar/events/MaintenanceEventHandler.java b/src/org/traccar/events/MaintenanceEventHandler.java index 86abf7c17..001b414c0 100644 --- a/src/org/traccar/events/MaintenanceEventHandler.java +++ b/src/org/traccar/events/MaintenanceEventHandler.java @@ -1,6 +1,6 @@ /* - * Copyright 2016 Anton Tananaev (anton@traccar.org) - * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org) + * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2016 - 2018 Andrey Kunitsyn (andrey@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,35 +16,24 @@ */ package org.traccar.events; -import java.util.Collections; +import java.util.HashMap; import java.util.Map; import org.traccar.BaseEventHandler; import org.traccar.Context; -import org.traccar.model.Device; import org.traccar.model.Event; +import org.traccar.model.Maintenance; import org.traccar.model.Position; public class MaintenanceEventHandler extends BaseEventHandler { - public static final String ATTRIBUTE_MAINTENANCE_START = "maintenance.start"; - public static final String ATTRIBUTE_MAINTENANCE_INTERVAL = "maintenance.interval"; - @Override protected Map analyzePosition(Position position) { - Device device = Context.getIdentityManager().getById(position.getDeviceId()); - if (device == null || !Context.getIdentityManager().isLatestPosition(position)) { + if (Context.getIdentityManager().getById(position.getDeviceId()) == null + || !Context.getIdentityManager().isLatestPosition(position)) { return null; } - double maintenanceInterval = Context.getDeviceManager() - .lookupAttributeDouble(device.getId(), ATTRIBUTE_MAINTENANCE_INTERVAL, 0, false); - if (maintenanceInterval == 0) { - return null; - } - double maintenanceStart = Context.getDeviceManager() - .lookupAttributeDouble(device.getId(), ATTRIBUTE_MAINTENANCE_START, 0, false); - double oldTotalDistance = 0.0; double newTotalDistance = 0.0; @@ -54,16 +43,20 @@ public class MaintenanceEventHandler extends BaseEventHandler { } newTotalDistance = position.getDouble(Position.KEY_TOTAL_DISTANCE); - oldTotalDistance -= maintenanceStart; - newTotalDistance -= maintenanceStart; - - if ((long) (oldTotalDistance / maintenanceInterval) < (long) (newTotalDistance / maintenanceInterval)) { - Event event = new Event(Event.TYPE_MAINTENANCE, position.getDeviceId(), position.getId()); - event.set(Position.KEY_TOTAL_DISTANCE, newTotalDistance); - return Collections.singletonMap(event, position); + Map events = new HashMap<>(); + for (long maintenanceId : Context.getMaintenancesManager().getAllDeviceItems(position.getDeviceId())) { + Maintenance maintenance = Context.getMaintenancesManager().getById(maintenanceId); + if (maintenance.getLapse() != 0 + && (long) ((oldTotalDistance - maintenance.getStart()) / maintenance.getLapse()) + < (long) ((newTotalDistance - maintenance.getStart()) / maintenance.getLapse())) { + Event event = new Event(Event.TYPE_MAINTENANCE, position.getDeviceId(), position.getId()); + event.setMaintenanceId(maintenanceId); + event.set(Position.KEY_TOTAL_DISTANCE, newTotalDistance); + events.put(event, position); + } } - return null; + return events; } } diff --git a/src/org/traccar/model/Event.java b/src/org/traccar/model/Event.java index 465afeb35..ee7fcc679 100644 --- a/src/org/traccar/model/Event.java +++ b/src/org/traccar/model/Event.java @@ -91,4 +91,14 @@ public class Event extends Message { this.geofenceId = geofenceId; } + private long maintenanceId = 0; + + public long getMaintenanceId() { + return maintenanceId; + } + + public void setMaintenanceId(long maintenanceId) { + this.maintenanceId = maintenanceId; + } + } diff --git a/src/org/traccar/model/Maintenance.java b/src/org/traccar/model/Maintenance.java new file mode 100644 index 000000000..827fd3b85 --- /dev/null +++ b/src/org/traccar/model/Maintenance.java @@ -0,0 +1,51 @@ +/* + * Copyright 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.traccar.model; + +public class Maintenance extends ExtendedModel { + + private String name; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + private double start; + + public double getStart() { + return start; + } + + public void setStart(double start) { + this.start = start; + } + + private double lapse; + + public double getLapse() { + return lapse; + } + + public void setLapse(double lapse) { + this.lapse = lapse; + } + +} diff --git a/src/org/traccar/notification/EventForwarder.java b/src/org/traccar/notification/EventForwarder.java index b13f8fe43..9d2181e21 100644 --- a/src/org/traccar/notification/EventForwarder.java +++ b/src/org/traccar/notification/EventForwarder.java @@ -25,6 +25,7 @@ import org.traccar.helper.Log; import org.traccar.model.Device; import org.traccar.model.Event; import org.traccar.model.Geofence; +import org.traccar.model.Maintenance; import org.traccar.model.Position; import java.nio.charset.StandardCharsets; @@ -48,6 +49,7 @@ public abstract class EventForwarder { private static final String KEY_EVENT = "event"; private static final String KEY_GEOFENCE = "geofence"; private static final String KEY_DEVICE = "device"; + private static final String KEY_MAINTENANCE = "maintenance"; private static final String KEY_USERS = "users"; public final void forwardEvent(Event event, Position position, Set users) { @@ -98,6 +100,12 @@ public abstract class EventForwarder { data.put(KEY_GEOFENCE, geofence); } } + if (event.getMaintenanceId() != 0) { + Maintenance maintenance = Context.getMaintenancesManager().getById(event.getMaintenanceId()); + if (maintenance != null) { + data.put(KEY_MAINTENANCE, maintenance); + } + } data.put(KEY_USERS, Context.getUsersManager().getItems(users)); try { return Context.getObjectMapper().writeValueAsString(data); diff --git a/src/org/traccar/notification/NotificationFormatter.java b/src/org/traccar/notification/NotificationFormatter.java index 114825a83..524153721 100644 --- a/src/org/traccar/notification/NotificationFormatter.java +++ b/src/org/traccar/notification/NotificationFormatter.java @@ -1,6 +1,6 @@ /* - * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org) - * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org) + * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -57,6 +57,9 @@ public final class NotificationFormatter { if (event.getGeofenceId() != 0) { velocityContext.put("geofence", Context.getGeofenceManager().getById(event.getGeofenceId())); } + if (event.getMaintenanceId() != 0) { + velocityContext.put("maintenance", Context.getMaintenancesManager().getById(event.getMaintenanceId())); + } String driverUniqueId = event.getString(Position.KEY_DRIVER_UNIQUE_ID); if (driverUniqueId != null) { velocityContext.put("driver", Context.getDriversManager().getDriverByUniqueId(driverUniqueId)); diff --git a/src/org/traccar/reports/Events.java b/src/org/traccar/reports/Events.java index 7cb6ef6eb..66d9e708d 100644 --- a/src/org/traccar/reports/Events.java +++ b/src/org/traccar/reports/Events.java @@ -1,6 +1,6 @@ /* - * Copyright 2016 Anton Tananaev (anton@traccar.org) - * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org) + * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2016 - 2018 Andrey Kunitsyn (andrey@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,6 +33,7 @@ import org.traccar.model.Device; import org.traccar.model.Event; import org.traccar.model.Geofence; import org.traccar.model.Group; +import org.traccar.model.Maintenance; import org.traccar.reports.model.DeviceReport; public final class Events { @@ -51,7 +52,10 @@ public final class Events { for (Event event : events) { if (all || types.contains(event.getType())) { long geofenceId = event.getGeofenceId(); - if (geofenceId == 0 || Context.getGeofenceManager().checkItemPermission(userId, geofenceId)) { + long maintenanceId = event.getMaintenanceId(); + if ((geofenceId == 0 || Context.getGeofenceManager().checkItemPermission(userId, geofenceId)) + && (maintenanceId == 0 + || Context.getMaintenancesManager().checkItemPermission(userId, maintenanceId))) { result.add(event); } } @@ -67,6 +71,7 @@ public final class Events { ArrayList devicesEvents = new ArrayList<>(); ArrayList sheetNames = new ArrayList<>(); HashMap geofenceNames = new HashMap<>(); + HashMap maintenanceNames = new HashMap<>(); for (long deviceId: ReportUtils.getDeviceList(deviceIds, groupIds)) { Context.getPermissionsManager().checkDevice(userId, deviceId); Collection events = Context.getDataManager().getEvents(deviceId, from, to); @@ -75,6 +80,7 @@ public final class Events { Event event = iterator.next(); if (all || types.contains(event.getType())) { long geofenceId = event.getGeofenceId(); + long maintenanceId = event.getMaintenanceId(); if (geofenceId != 0) { if (Context.getGeofenceManager().checkItemPermission(userId, geofenceId)) { Geofence geofence = Context.getGeofenceManager().getById(geofenceId); @@ -84,6 +90,15 @@ public final class Events { } else { iterator.remove(); } + } else if (maintenanceId != 0) { + if (Context.getMaintenancesManager().checkItemPermission(userId, maintenanceId)) { + Maintenance maintenance = Context.getMaintenancesManager().getById(maintenanceId); + if (maintenance != null) { + maintenanceNames.put(maintenanceId, maintenance.getName()); + } + } else { + iterator.remove(); + } } } else { iterator.remove(); @@ -109,6 +124,7 @@ public final class Events { jxlsContext.putVar("devices", devicesEvents); jxlsContext.putVar("sheetNames", sheetNames); jxlsContext.putVar("geofenceNames", geofenceNames); + jxlsContext.putVar("maintenanceNames", maintenanceNames); jxlsContext.putVar("from", from); jxlsContext.putVar("to", to); ReportUtils.processTemplateWithSheets(inputStream, outputStream, jxlsContext); diff --git a/templates/export/events.xlsx b/templates/export/events.xlsx index f3151d11c..5c5633f3a 100644 Binary files a/templates/export/events.xlsx and b/templates/export/events.xlsx differ diff --git a/templates/mail/maintenance.vm b/templates/mail/maintenance.vm index 7f69b6c0d..c6973f97a 100644 --- a/templates/mail/maintenance.vm +++ b/templates/mail/maintenance.vm @@ -3,7 +3,7 @@ Device: $device.name
-Maintenance is required
+Maintenance is required: $maintenance.name
Time: $dateTool.format("YYYY-MM-dd HH:mm:ss", $event.serverTime, $locale, $timezone)
Point: #{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}
diff --git a/templates/sms/maintenance.vm b/templates/sms/maintenance.vm index 554b74400..621beae46 100644 --- a/templates/sms/maintenance.vm +++ b/templates/sms/maintenance.vm @@ -1 +1 @@ -$device.name maintenance is required at $dateTool.format("YYYY-MM-dd HH:mm:ss", $event.serverTime, $locale, $timezone) +$device.name maintenance $maintenance.name is required at $dateTool.format("YYYY-MM-dd HH:mm:ss", $event.serverTime, $locale, $timezone) -- cgit v1.2.3 From 87de21e95c34936e7d7635c3dd8c07f6221f46eb Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Thu, 12 Apr 2018 15:39:11 +0500 Subject: Make analyzed attribute configurable for Maintenance --- schema/changelog-3.17.xml | 7 ++++-- .../traccar/events/MaintenanceEventHandler.java | 26 +++++++++++----------- src/org/traccar/model/Maintenance.java | 10 +++++++++ 3 files changed, 28 insertions(+), 15 deletions(-) (limited to 'src/org/traccar/model') diff --git a/schema/changelog-3.17.xml b/schema/changelog-3.17.xml index e0b7de10a..5e67fe75d 100644 --- a/schema/changelog-3.17.xml +++ b/schema/changelog-3.17.xml @@ -19,10 +19,13 @@ - + - + + + + diff --git a/src/org/traccar/events/MaintenanceEventHandler.java b/src/org/traccar/events/MaintenanceEventHandler.java index 001b414c0..b556e1003 100644 --- a/src/org/traccar/events/MaintenanceEventHandler.java +++ b/src/org/traccar/events/MaintenanceEventHandler.java @@ -34,25 +34,25 @@ public class MaintenanceEventHandler extends BaseEventHandler { return null; } - double oldTotalDistance = 0.0; - double newTotalDistance = 0.0; - Position lastPosition = Context.getIdentityManager().getLastPosition(position.getDeviceId()); - if (lastPosition != null) { - oldTotalDistance = lastPosition.getDouble(Position.KEY_TOTAL_DISTANCE); + if (lastPosition == null) { + return null; } - newTotalDistance = position.getDouble(Position.KEY_TOTAL_DISTANCE); Map events = new HashMap<>(); for (long maintenanceId : Context.getMaintenancesManager().getAllDeviceItems(position.getDeviceId())) { Maintenance maintenance = Context.getMaintenancesManager().getById(maintenanceId); - if (maintenance.getLapse() != 0 - && (long) ((oldTotalDistance - maintenance.getStart()) / maintenance.getLapse()) - < (long) ((newTotalDistance - maintenance.getStart()) / maintenance.getLapse())) { - Event event = new Event(Event.TYPE_MAINTENANCE, position.getDeviceId(), position.getId()); - event.setMaintenanceId(maintenanceId); - event.set(Position.KEY_TOTAL_DISTANCE, newTotalDistance); - events.put(event, position); + if (maintenance.getLapse() != 0) { + double oldValue = lastPosition.getDouble(maintenance.getType()); + double newValue = position.getDouble(maintenance.getType()); + if (oldValue != 0.0 && newValue != 0.0 + && (long) ((oldValue - maintenance.getStart()) / maintenance.getLapse()) + < (long) ((newValue - maintenance.getStart()) / maintenance.getLapse())) { + Event event = new Event(Event.TYPE_MAINTENANCE, position.getDeviceId(), position.getId()); + event.setMaintenanceId(maintenanceId); + event.set(maintenance.getType(), newValue); + events.put(event, position); + } } } diff --git a/src/org/traccar/model/Maintenance.java b/src/org/traccar/model/Maintenance.java index 827fd3b85..82052e160 100644 --- a/src/org/traccar/model/Maintenance.java +++ b/src/org/traccar/model/Maintenance.java @@ -28,6 +28,16 @@ public class Maintenance extends ExtendedModel { this.name = name; } + private String type; + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + private double start; public double getStart() { -- cgit v1.2.3 From 30ae3d104e9b0446364ebc316dc10d0f811e1480 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Fri, 13 Apr 2018 12:21:05 +0500 Subject: - Rename field to Period - Remove unnecessary check for null - Move MaintenanceManager initialization with other event related managers --- schema/changelog-3.17.xml | 2 +- src/org/traccar/Context.java | 3 +-- src/org/traccar/database/NotificationManager.java | 4 ++-- src/org/traccar/events/MaintenanceEventHandler.java | 6 +++--- src/org/traccar/model/Maintenance.java | 10 +++++----- 5 files changed, 12 insertions(+), 13 deletions(-) (limited to 'src/org/traccar/model') diff --git a/schema/changelog-3.17.xml b/schema/changelog-3.17.xml index 5e67fe75d..ef296fe25 100644 --- a/schema/changelog-3.17.xml +++ b/schema/changelog-3.17.xml @@ -25,7 +25,7 @@ - + diff --git a/src/org/traccar/Context.java b/src/org/traccar/Context.java index a1a5f5a8e..67fd02f75 100644 --- a/src/org/traccar/Context.java +++ b/src/org/traccar/Context.java @@ -393,8 +393,6 @@ public final class Context { commandsManager = new CommandsManager(dataManager); - maintenancesManager = new MaintenancesManager(dataManager); - statisticsManager = new StatisticsManager(); if (config.getBoolean("sms.smpp.enable")) { @@ -429,6 +427,7 @@ public final class Context { geofenceManager = new GeofenceManager(dataManager); calendarManager = new CalendarManager(dataManager); + maintenancesManager = new MaintenancesManager(dataManager); notificationManager = new NotificationManager(dataManager); Properties velocityProperties = new Properties(); velocityProperties.setProperty("file.resource.loader.path", diff --git a/src/org/traccar/database/NotificationManager.java b/src/org/traccar/database/NotificationManager.java index 9f2606f7f..3bc048356 100644 --- a/src/org/traccar/database/NotificationManager.java +++ b/src/org/traccar/database/NotificationManager.java @@ -78,8 +78,8 @@ public class NotificationManager extends ExtendedObjectManager { usersToForward = new HashSet<>(); } for (long userId : users) { - if ((event.getGeofenceId() == 0 || Context.getGeofenceManager() != null - && Context.getGeofenceManager().checkItemPermission(userId, event.getGeofenceId())) + if ((event.getGeofenceId() == 0 + || Context.getGeofenceManager().checkItemPermission(userId, event.getGeofenceId())) && (event.getMaintenanceId() == 0 || Context.getMaintenancesManager().checkItemPermission(userId, event.getMaintenanceId()))) { if (usersToForward != null) { diff --git a/src/org/traccar/events/MaintenanceEventHandler.java b/src/org/traccar/events/MaintenanceEventHandler.java index b556e1003..4a6122826 100644 --- a/src/org/traccar/events/MaintenanceEventHandler.java +++ b/src/org/traccar/events/MaintenanceEventHandler.java @@ -42,12 +42,12 @@ public class MaintenanceEventHandler extends BaseEventHandler { Map events = new HashMap<>(); for (long maintenanceId : Context.getMaintenancesManager().getAllDeviceItems(position.getDeviceId())) { Maintenance maintenance = Context.getMaintenancesManager().getById(maintenanceId); - if (maintenance.getLapse() != 0) { + if (maintenance.getPeriod() != 0) { double oldValue = lastPosition.getDouble(maintenance.getType()); double newValue = position.getDouble(maintenance.getType()); if (oldValue != 0.0 && newValue != 0.0 - && (long) ((oldValue - maintenance.getStart()) / maintenance.getLapse()) - < (long) ((newValue - maintenance.getStart()) / maintenance.getLapse())) { + && (long) ((oldValue - maintenance.getStart()) / maintenance.getPeriod()) + < (long) ((newValue - maintenance.getStart()) / maintenance.getPeriod())) { Event event = new Event(Event.TYPE_MAINTENANCE, position.getDeviceId(), position.getId()); event.setMaintenanceId(maintenanceId); event.set(maintenance.getType(), newValue); diff --git a/src/org/traccar/model/Maintenance.java b/src/org/traccar/model/Maintenance.java index 82052e160..73f67ea96 100644 --- a/src/org/traccar/model/Maintenance.java +++ b/src/org/traccar/model/Maintenance.java @@ -48,14 +48,14 @@ public class Maintenance extends ExtendedModel { this.start = start; } - private double lapse; + private double period; - public double getLapse() { - return lapse; + public double getPeriod() { + return period; } - public void setLapse(double lapse) { - this.lapse = lapse; + public void setPeriod(double period) { + this.period = period; } } -- cgit v1.2.3