diff --git a/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/WindJsonDeserializer.java b/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/WindJsonDeserializer.java index e6bdb98fb09..63ceb4c42dd 100644 --- a/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/WindJsonDeserializer.java +++ b/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/WindJsonDeserializer.java @@ -27,10 +27,16 @@ public class WindJsonDeserializer implements JsonDeserializer { Position position = positionDeserializer.deserialize(positionJsonObject); Number timeStamp = (Number) object.get(WindJsonSerializer.FIELD_TIMEPOINT); - Number bearing = (Number) object.get(WindJsonSerializer.FIELD_BEARING); + Number direction = (Number) object.get(WindJsonSerializer.FIELD_DIRECTION); Number speedInKnots = (Number) object.get(WindJsonSerializer.FIELD_SPEED_IN_KNOTS); - Bearing degreeBearing = new DegreeBearingImpl(bearing.doubleValue()); + Bearing degreeBearing = null; + if (direction.doubleValue() >= 180) { + degreeBearing = new DegreeBearingImpl(direction.doubleValue()-180); + } else { + degreeBearing = new DegreeBearingImpl(direction.doubleValue()+180); + } + SpeedWithBearing speedBearing = new KnotSpeedWithBearingImpl(speedInKnots.doubleValue(), degreeBearing); Wind wind = new WindImpl(position, new MillisecondsTimePoint(timeStamp.longValue()), speedBearing); diff --git a/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/WindJsonSerializer.java b/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/WindJsonSerializer.java index 0a95970edf2..18183229425 100644 --- a/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/WindJsonSerializer.java +++ b/java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/WindJsonSerializer.java @@ -10,7 +10,7 @@ public class WindJsonSerializer implements JsonSerializer { public static final String FIELD_POSITION = "position"; public static final String FIELD_TIMEPOINT = "timepoint"; public static final String FIELD_SPEED_IN_KNOTS = "speedinknots"; - public static final String FIELD_BEARING = "bearing"; + public static final String FIELD_DIRECTION = "direction"; private final JsonSerializer positionSerializer; @@ -25,7 +25,7 @@ public class WindJsonSerializer implements JsonSerializer { result.put(FIELD_POSITION, positionSerializer.serialize(wind.getPosition())); result.put(FIELD_TIMEPOINT, wind.getTimePoint().asMillis()); result.put(FIELD_SPEED_IN_KNOTS, wind.getKnots()); - result.put(FIELD_BEARING, wind.getBearing().getDegrees()); + result.put(FIELD_DIRECTION, wind.getBearing().getDegrees()); return result; }