From 81beb5afb946d8c9ccfa2bbdfcfe884771a5bd3b Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Thu, 2 May 2013 22:16:14 +1200 Subject: Fix extended info XML format --- .../protocol/IntellitracProtocolDecoder.java | 23 +++++++++------------- 1 file changed, 9 insertions(+), 14 deletions(-) (limited to 'src/org/traccar/protocol/IntellitracProtocolDecoder.java') diff --git a/src/org/traccar/protocol/IntellitracProtocolDecoder.java b/src/org/traccar/protocol/IntellitracProtocolDecoder.java index 7b1cb3880..de1ce35de 100644 --- a/src/org/traccar/protocol/IntellitracProtocolDecoder.java +++ b/src/org/traccar/protocol/IntellitracProtocolDecoder.java @@ -24,6 +24,7 @@ import org.jboss.netty.channel.ChannelHandlerContext; import org.traccar.BaseProtocolDecoder; import org.traccar.ServerManager; import org.traccar.helper.Log; +import org.traccar.model.ExtendedInfoFormatter; import org.traccar.model.Position; public class IntellitracProtocolDecoder extends BaseProtocolDecoder { @@ -36,8 +37,8 @@ public class IntellitracProtocolDecoder extends BaseProtocolDecoder { "(?:.+,)?(\\d+)," + // Device Identifier "(\\d{4})(\\d{2})(\\d{2})" + // Date (YYYYMMDD) "(\\d{2})(\\d{2})(\\d{2})," + // Time (HHMMSS) - "(\\d+\\.\\d+)," + // Longitude - "(\\d+\\.\\d+)," + // Latitude + "(-?\\d+\\.\\d+)," + // Longitude + "(-?\\d+\\.\\d+)," + // Latitude "(\\d+\\.?\\d*)," + // Speed "(\\d+\\.?\\d*)," + // Course "(\\d+\\.?\\d*)," + // Altitude @@ -63,7 +64,7 @@ public class IntellitracProtocolDecoder extends BaseProtocolDecoder { // Create new position Position position = new Position(); - StringBuilder extendedInfo = new StringBuilder("intellitrac"); + ExtendedInfoFormatter extendedInfo = new ExtendedInfoFormatter("intellitrac"); Integer index = 1; // Detect device @@ -96,33 +97,27 @@ public class IntellitracProtocolDecoder extends BaseProtocolDecoder { // Satellites int satellites = Integer.valueOf(parser.group(index++)); position.setValid(satellites >= 3); - extendedInfo.append(""); - extendedInfo.append(satellites); - extendedInfo.append(""); + extendedInfo.set("satellites", satellites); // Report identifier position.setId(Long.valueOf(parser.group(index++))); // Input - extendedInfo.append(""); - extendedInfo.append(parser.group(index++)); - extendedInfo.append(""); + extendedInfo.set("input", parser.group(index++)); // Output - extendedInfo.append(""); - extendedInfo.append(parser.group(index++)); - extendedInfo.append(""); + extendedInfo.set("output", parser.group(index++)); // ADC1 String adc1 = parser.group(index++); if (adc1 != null) { - extendedInfo.append("").append(adc1).append(""); + extendedInfo.set("adc1", adc1); } // ADC2 String adc2 = parser.group(index++); if (adc2 != null) { - extendedInfo.append("").append(adc2).append(""); + extendedInfo.set("adc2", adc2); } position.setExtendedInfo(extendedInfo.toString()); -- cgit v1.2.3