diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2017-03-18 12:05:09 +1300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-18 12:05:09 +1300 |
commit | 185dfcb02c504fbceae89ece513e51a630a39870 (patch) | |
tree | 837a2188c44afbe4f5c81d19d295c9495dc70d11 /src/org/traccar/protocol/TrakMateProtocolDecoder.java | |
parent | 8beecc6b90975c972ba76ffbb5a7c975de25530c (diff) | |
parent | 7f6280f725100d446405d5f92ca8bd9435d621f4 (diff) | |
download | trackermap-server-185dfcb02c504fbceae89ece513e51a630a39870.tar.gz trackermap-server-185dfcb02c504fbceae89ece513e51a630a39870.tar.bz2 trackermap-server-185dfcb02c504fbceae89ece513e51a630a39870.zip |
Merge pull request #3018 from jon-stumpf/jss-parse-nextDateTime
Date and time decoding improvements
Diffstat (limited to 'src/org/traccar/protocol/TrakMateProtocolDecoder.java')
-rw-r--r-- | src/org/traccar/protocol/TrakMateProtocolDecoder.java | 28 |
1 files changed, 9 insertions, 19 deletions
diff --git a/src/org/traccar/protocol/TrakMateProtocolDecoder.java b/src/org/traccar/protocol/TrakMateProtocolDecoder.java index 95eef67c8..03ec6cc67 100644 --- a/src/org/traccar/protocol/TrakMateProtocolDecoder.java +++ b/src/org/traccar/protocol/TrakMateProtocolDecoder.java @@ -19,7 +19,6 @@ import org.jboss.netty.channel.Channel; import org.traccar.BaseProtocolDecoder; import org.traccar.Context; import org.traccar.DeviceSession; -import org.traccar.helper.DateBuilder; import org.traccar.helper.Parser; import org.traccar.helper.PatternBuilder; import org.traccar.model.Position; @@ -42,8 +41,8 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { .expression("([^ ]+)|") // uid .number("(d+.d+)|") // latitude .number("(d+.d+)|") // longitude - .number("(dd)(dd)(dd)|") // time - .number("(dd)(dd)(dd)|") // date + .number("(dd)(dd)(dd)|") // time (hhmmss) + .number("(dd)(dd)(dd)|") // date (ddmmyy) .number("(d+.d+)|") // software ver .number("(d+.d+)|") // Hardware ver .any() @@ -55,8 +54,8 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { .number("(d+)|") // seq .number("(d+.d+)|") // latitude .number("(d+.d+)|") // longitude - .number("(dd)(dd)(dd)|") // time - .number("(dd)(dd)(dd)|") // date + .number("(dd)(dd)(dd)|") // time (hhmmss) + .number("(dd)(dd)(dd)|") // date (ddmmyy) .number("(d+.d+)|") // speed .number("(d+.d+)|") // heading .number("(d+)|") // ignition @@ -81,8 +80,8 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { .number("(d+)|") // Alert status .number("(d+.d+)|") // latitude .number("(d+.d+)|") // longitude - .number("(dd)(dd)(dd)|") // time - .number("(dd)(dd)(dd)|") // date + .number("(dd)(dd)(dd)|") // time (hhmmss) + .number("(dd)(dd)(dd)|") // date (ddmmyy) .number("(d+.d+)|") // speed .number("(d+.d+)|") // heading .any() @@ -120,10 +119,7 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { position.setLatitude(parser.nextDouble()); position.setLongitude(parser.nextDouble()); - DateBuilder dateBuilder = new DateBuilder(timeZone) - .setTime(parser.nextInt(), parser.nextInt(), parser.nextInt()) - .setDateReverse(parser.nextInt(), parser.nextInt(), parser.nextInt()); - position.setTime(dateBuilder.getDate()); + position.setTime(parser.nextDateTime(Parser.DateTimeFormat.HMS_DMY)); position.set(Position.KEY_VERSION_FW, parser.next()); position.set(Position.KEY_VERSION_HW, parser.next()); @@ -154,10 +150,7 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { position.setLatitude(parser.nextDouble()); position.setLongitude(parser.nextDouble()); - DateBuilder dateBuilder = new DateBuilder(timeZone) - .setTime(parser.nextInt(), parser.nextInt(), parser.nextInt()) - .setDateReverse(parser.nextInt(), parser.nextInt(), parser.nextInt()); - position.setTime(dateBuilder.getDate()); + position.setTime(parser.nextDateTime(Parser.DateTimeFormat.HMS_DMY)); position.setSpeed(parser.nextDouble()); position.setCourse(parser.nextDouble()); @@ -186,10 +179,7 @@ public class TrakMateProtocolDecoder extends BaseProtocolDecoder { position.setLatitude(parser.nextDouble()); position.setLongitude(parser.nextDouble()); - DateBuilder dateBuilder = new DateBuilder(timeZone) - .setTime(parser.nextInt(), parser.nextInt(), parser.nextInt()) - .setDateReverse(parser.nextInt(), parser.nextInt(), parser.nextInt()); - position.setTime(dateBuilder.getDate()); + position.setTime(parser.nextDateTime(Parser.DateTimeFormat.HMS_DMY)); position.setSpeed(parser.nextDouble()); position.setCourse(parser.nextDouble()); |