diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-20 08:42:20 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-20 08:42:20 +1300 |
commit | 13c1b5a0f68cf3f9a6a8fee43a4e5c1406dac32a (patch) | |
tree | a7d3450db8ccb6698ed4e7794f27ceaf939807c9 /src/org/traccar/protocol/UproProtocolDecoder.java | |
parent | 301b44775fb4ed66fae5c801da3c52f7b88b9697 (diff) | |
download | trackermap-server-13c1b5a0f68cf3f9a6a8fee43a4e5c1406dac32a.tar.gz trackermap-server-13c1b5a0f68cf3f9a6a8fee43a4e5c1406dac32a.tar.bz2 trackermap-server-13c1b5a0f68cf3f9a6a8fee43a4e5c1406dac32a.zip |
Refactor protocols for network location
Diffstat (limited to 'src/org/traccar/protocol/UproProtocolDecoder.java')
-rw-r--r-- | src/org/traccar/protocol/UproProtocolDecoder.java | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/org/traccar/protocol/UproProtocolDecoder.java b/src/org/traccar/protocol/UproProtocolDecoder.java index e47dd8595..37536d1dd 100644 --- a/src/org/traccar/protocol/UproProtocolDecoder.java +++ b/src/org/traccar/protocol/UproProtocolDecoder.java @@ -24,6 +24,8 @@ import org.traccar.helper.BitUtil; import org.traccar.helper.DateBuilder; import org.traccar.helper.Parser; import org.traccar.helper.PatternBuilder; +import org.traccar.model.CellTower; +import org.traccar.model.Network; import org.traccar.model.Position; import java.net.SocketAddress; @@ -154,14 +156,11 @@ public class UproProtocolDecoder extends BaseProtocolDecoder { position.set(Position.KEY_ODOMETER, odometer * 2 * 1852 / 3600); break; case 'P': - position.set(Position.KEY_MCC, - Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII))); - position.set(Position.KEY_MNC, - Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII))); - position.set(Position.KEY_LAC, - Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII), 16)); - position.set(Position.KEY_CID, - Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII), 16)); + position.setNetwork(new Network(CellTower.from( + Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII)), + Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII)), + Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII), 16), + Integer.parseInt(data.readBytes(4).toString(StandardCharsets.US_ASCII), 16)))); break; case 'Q': position.set("obd-pid", ChannelBuffers.hexDump(data)); |