diff options
Diffstat (limited to 'src/main/java/org/traccar/handler')
-rw-r--r-- | src/main/java/org/traccar/handler/ComputedAttributesHandler.java | 47 | ||||
-rw-r--r-- | src/main/java/org/traccar/handler/events/MaintenanceEventHandler.java | 16 |
2 files changed, 22 insertions, 41 deletions
diff --git a/src/main/java/org/traccar/handler/ComputedAttributesHandler.java b/src/main/java/org/traccar/handler/ComputedAttributesHandler.java index b7d7a5ed5..f4079f127 100644 --- a/src/main/java/org/traccar/handler/ComputedAttributesHandler.java +++ b/src/main/java/org/traccar/handler/ComputedAttributesHandler.java @@ -150,44 +150,29 @@ public class ComputedAttributesHandler extends BasePositionHandler { Object result = computeAttribute(attribute, position); if (result != null) { switch (attribute.getAttribute()) { - case "valid": - position.setValid((Boolean) result); - break; - case "latitude": - position.setLatitude(((Number) result).doubleValue()); - break; - case "longitude": - position.setLongitude(((Number) result).doubleValue()); - break; - case "altitude": - position.setAltitude(((Number) result).doubleValue()); - break; - case "speed": - position.setSpeed(((Number) result).doubleValue()); - break; - case "course": - position.setCourse(((Number) result).doubleValue()); - break; - case "address": - position.setAddress((String) result); - break; - case "accuracy": - position.setAccuracy(((Number) result).doubleValue()); - break; - default: + case "valid" -> position.setValid((Boolean) result); + case "latitude" -> position.setLatitude(((Number) result).doubleValue()); + case "longitude" -> position.setLongitude(((Number) result).doubleValue()); + case "altitude" -> position.setAltitude(((Number) result).doubleValue()); + case "speed" -> position.setSpeed(((Number) result).doubleValue()); + case "course" -> position.setCourse(((Number) result).doubleValue()); + case "address" -> position.setAddress((String) result); + case "accuracy" -> position.setAccuracy(((Number) result).doubleValue()); + default -> { switch (attribute.getType()) { - case "number": + case "number" -> { Number numberValue = (Number) result; position.getAttributes().put(attribute.getAttribute(), numberValue); - break; - case "boolean": + } + case "boolean" -> { Boolean booleanValue = (Boolean) result; position.getAttributes().put(attribute.getAttribute(), booleanValue); - break; - default: + } + default -> { position.getAttributes().put(attribute.getAttribute(), result.toString()); + } } - break; + } } } else { position.getAttributes().remove(attribute.getAttribute()); diff --git a/src/main/java/org/traccar/handler/events/MaintenanceEventHandler.java b/src/main/java/org/traccar/handler/events/MaintenanceEventHandler.java index 573ad4ad6..7fc6086aa 100644 --- a/src/main/java/org/traccar/handler/events/MaintenanceEventHandler.java +++ b/src/main/java/org/traccar/handler/events/MaintenanceEventHandler.java @@ -57,16 +57,12 @@ public class MaintenanceEventHandler extends BaseEventHandler { } private double getValue(Position position, String type) { - switch (type) { - case "serverTime": - return position.getServerTime().getTime(); - case "deviceTime": - return position.getDeviceTime().getTime(); - case "fixTime": - return position.getFixTime().getTime(); - default: - return position.getDouble(type); - } + return switch (type) { + case "serverTime" -> position.getServerTime().getTime(); + case "deviceTime" -> position.getDeviceTime().getTime(); + case "fixTime" -> position.getFixTime().getTime(); + default -> position.getDouble(type); + }; } } |