aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java')
-rw-r--r--src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java40
1 files changed, 13 insertions, 27 deletions
diff --git a/src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java b/src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java
index e0dfab9b2..2be3f6489 100644
--- a/src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java
+++ b/src/main/java/org/traccar/protocol/SigfoxProtocolDecoder.java
@@ -209,42 +209,28 @@ public class SigfoxProtocolDecoder extends BaseHttpProtocolDecoder {
while (buf.isReadable()) {
int type = buf.readUnsignedByte();
switch (type) {
- case 0x01:
+ case 0x01 -> {
position.setValid(true);
position.setLatitude(buf.readMedium());
position.setLongitude(buf.readMedium());
- break;
- case 0x02:
+ }
+ case 0x02 -> {
position.setValid(true);
position.setLatitude(buf.readFloat());
position.setLongitude(buf.readFloat());
- break;
- case 0x03:
- position.set(Position.PREFIX_TEMP + 1, buf.readByte() * 0.5);
- break;
- case 0x04:
- position.set(Position.KEY_BATTERY, buf.readUnsignedByte() * 0.1);
- break;
- case 0x05:
- position.set(Position.KEY_BATTERY_LEVEL, buf.readUnsignedByte());
- break;
- case 0x06:
+ }
+ case 0x03 -> position.set(Position.PREFIX_TEMP + 1, buf.readByte() * 0.5);
+ case 0x04 -> position.set(Position.KEY_BATTERY, buf.readUnsignedByte() * 0.1);
+ case 0x05 -> position.set(Position.KEY_BATTERY_LEVEL, buf.readUnsignedByte());
+ case 0x06 -> {
String mac = ByteBufUtil.hexDump(buf.readSlice(6)).replaceAll("(..)", "$1:");
position.setNetwork(new Network(WifiAccessPoint.from(
mac.substring(0, mac.length() - 1), buf.readUnsignedByte())));
- break;
- case 0x07:
- buf.skipBytes(10); // wifi extended
- break;
- case 0x08:
- buf.skipBytes(6); // accelerometer
- break;
- case 0x09:
- position.setSpeed(UnitsConverter.knotsFromKph(buf.readUnsignedByte()));
- break;
- default:
- buf.readUnsignedByte(); // fence number
- break;
+ }
+ case 0x07 -> buf.skipBytes(10); // wifi extended
+ case 0x08 -> buf.skipBytes(6); // accelerometer
+ case 0x09 -> position.setSpeed(UnitsConverter.knotsFromKph(buf.readUnsignedByte()));
+ default -> buf.readUnsignedByte(); // fence number
}
}
} finally {