diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2018-07-26 01:33:29 +1200 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2018-07-26 01:33:29 +1200 |
commit | 78d7d9cb121115b064a6c9ed8fcaccc2dfd0a825 (patch) | |
tree | de4e660d2b1569fc9f86d9952d2161301baab4d6 /src/org | |
parent | 7c8e00eba940fdbcde3ea2b60e6094caa9098b99 (diff) | |
download | traccar-server-78d7d9cb121115b064a6c9ed8fcaccc2dfd0a825.tar.gz traccar-server-78d7d9cb121115b064a6c9ed8fcaccc2dfd0a825.tar.bz2 traccar-server-78d7d9cb121115b064a6c9ed8fcaccc2dfd0a825.zip |
Make Huabao timezone configurable
Diffstat (limited to 'src/org')
-rw-r--r-- | src/org/traccar/BaseProtocolDecoder.java | 6 | ||||
-rw-r--r-- | src/org/traccar/protocol/HuabaoProtocolDecoder.java | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/org/traccar/BaseProtocolDecoder.java b/src/org/traccar/BaseProtocolDecoder.java index fe41bd857..d7ccb6460 100644 --- a/src/org/traccar/BaseProtocolDecoder.java +++ b/src/org/traccar/BaseProtocolDecoder.java @@ -82,7 +82,11 @@ public abstract class BaseProtocolDecoder extends ExtendedObjectDecoder { } protected TimeZone getTimeZone(long deviceId) { - TimeZone result = TimeZone.getTimeZone("UTC"); + return getTimeZone(deviceId, "UTC"); + } + + protected TimeZone getTimeZone(long deviceId, String defaultTimeZone) { + TimeZone result = TimeZone.getTimeZone(defaultTimeZone); String timeZoneName = null; if (Context.getDeviceManager() != null) { timeZoneName = Context.getDeviceManager().lookupAttributeString( diff --git a/src/org/traccar/protocol/HuabaoProtocolDecoder.java b/src/org/traccar/protocol/HuabaoProtocolDecoder.java index b92840dfc..e5ee30fcf 100644 --- a/src/org/traccar/protocol/HuabaoProtocolDecoder.java +++ b/src/org/traccar/protocol/HuabaoProtocolDecoder.java @@ -120,6 +120,10 @@ public class HuabaoProtocolDecoder extends BaseProtocolDecoder { return null; } + if (deviceSession.getTimeZone() == null) { + deviceSession.setTimeZone(getTimeZone(deviceSession.getDeviceId(), "GMT+8")); + } + if (type == MSG_TERMINAL_REGISTER) { if (channel != null) { @@ -180,7 +184,7 @@ public class HuabaoProtocolDecoder extends BaseProtocolDecoder { position.setSpeed(UnitsConverter.knotsFromKph(buf.readUnsignedShort() * 0.1)); position.setCourse(buf.readUnsignedShort()); - DateBuilder dateBuilder = new DateBuilder(TimeZone.getTimeZone("GMT+8")) + DateBuilder dateBuilder = new DateBuilder(deviceSession.getTimeZone()) .setYear(BcdUtil.readInteger(buf, 2)) .setMonth(BcdUtil.readInteger(buf, 2)) .setDay(BcdUtil.readInteger(buf, 2)) |