# deserialization uses field names...

This commit is contained in:
Lukas Niemeier committed 2013-02-05 19:39:44 +01:00
1 parent ba03950f23
commit 5bf9cd4e10
7 files changed
+34 -14

No files matched your search

@@ -14,7 +14,8 @@ import com.sap.sailing.server.gateway.serialization.ExtensionJsonSerializer;
import com.sap.sailing.server.gateway.serialization.JsonSerializer;
public class FleetWithRaceNamesOfSeriesExtensionSerializer extends ExtensionJsonSerializer<Series, FleetWithRaceNames> {
public static final String FIELD_FLEETS = "fleets";
public FleetWithRaceNamesOfSeriesExtensionSerializer(
JsonSerializer<FleetWithRaceNames> extensionSerializer) {
super(extensionSerializer);
@@ -22,7 +23,7 @@ public class FleetWithRaceNamesOfSeriesExtensionSerializer extends ExtensionJson
@Override
public String getExtensionFieldName() {
return "fleets";
return FIELD_FLEETS;
}
@Override
@@ -9,7 +9,10 @@ import com.sap.sailing.server.gateway.serialization.ExtensionJsonSerializer;
public class LeaderboardJsonSerializer extends ExtendableJsonSerializer<Leaderboard> {
public static final String FIELD_NAME = "name";
public static final String FIELD_COURSE_AREA = "courseArea";
public LeaderboardJsonSerializer(
ExtensionJsonSerializer<Leaderboard, ?> extensionSerializer) {
super(extensionSerializer);
@@ -19,8 +22,8 @@ public class LeaderboardJsonSerializer extends ExtendableJsonSerializer<Leaderbo
protected JSONObject serializeFields(Leaderboard object) {
JSONObject result = new JSONObject();
result.put("name", object.getName());
result.put("courseArea", "tdb");
result.put(FIELD_NAME, object.getName());
result.put(FIELD_COURSE_AREA, "tdb");
return result;
}
@@ -19,6 +19,8 @@ import com.sap.sailing.server.gateway.serialization.ExtensionJsonSerializer;
import com.sap.sailing.server.gateway.serialization.JsonSerializer;
public class SeriesOfLeaderboardExtensionSerializer extends ExtensionJsonSerializer<Leaderboard, Series> {
public static final String FIELD_SERIES = "series";
public SeriesOfLeaderboardExtensionSerializer(JsonSerializer<Series> extensionSerializer) {
super(extensionSerializer);
@@ -26,7 +28,7 @@ public class SeriesOfLeaderboardExtensionSerializer extends ExtensionJsonSeriali
@Override
public String getExtensionFieldName() {
return "series";
return FIELD_SERIES;
}
@Override
@@ -8,6 +8,7 @@ import com.sap.sailing.domain.common.Color;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.deserialization.impl.Helpers;
import com.sap.sailing.server.gateway.serialization.impl.regatta.FleetJsonSerializer;
public class FleetDeserializer implements JsonDeserializer<Fleet> {
@@ -20,11 +21,11 @@ public class FleetDeserializer implements JsonDeserializer<Fleet> {
public Fleet deserialize(JSONObject object)
throws JsonDeserializationException {
Color color = null;
if (object.containsKey("color")) {
color = colorDeserializer.deserialize(Helpers.getNestedObjectSafe(object, "color"));
if (object.containsKey(FleetJsonSerializer.FIELD_COLOR)) {
color = colorDeserializer.deserialize(Helpers.getNestedObjectSafe(object, FleetJsonSerializer.FIELD_COLOR));
}
String name = object.get("name").toString();
Number ordering = (Number) object.get("ordering");
String name = object.get(FleetJsonSerializer.FIELD_NAME).toString();
Number ordering = (Number) object.get(FleetJsonSerializer.FIELD_ORDERING);
return new FleetImpl(name, ordering.intValue(), color);
}
@@ -11,6 +11,7 @@ import com.sap.sailing.domain.base.impl.FleetWithRaceNamesImpl;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.deserialization.impl.Helpers;
import com.sap.sailing.server.gateway.serialization.impl.leaderboard.FleetWithRaceNamesJsonSerializer;
public class FleetWithRaceNamesDeserializer implements JsonDeserializer<FleetWithRaceNames> {
@@ -25,7 +26,9 @@ public class FleetWithRaceNamesDeserializer implements JsonDeserializer<FleetWit
Fleet fleet = fleetDeserializer.deserialize(object);
Collection<String> raceNames = new ArrayList<String>();
for (Object raceName : Helpers.getNestedArraySafe(object, "races")) {
for (Object raceName : Helpers.getNestedArraySafe(
object,
FleetWithRaceNamesJsonSerializer.FIELD_RACES)) {
raceNames.add(raceName.toString());
}
@@ -11,6 +11,8 @@ import com.sap.sailing.domain.base.impl.RaceGroupImpl;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.deserialization.impl.Helpers;
import com.sap.sailing.server.gateway.serialization.impl.leaderboard.LeaderboardJsonSerializer;
import com.sap.sailing.server.gateway.serialization.impl.leaderboard.SeriesOfLeaderboardExtensionSerializer;
public class RaceGroupDeserializer implements JsonDeserializer<RaceGroup> {
@@ -22,9 +24,14 @@ public class RaceGroupDeserializer implements JsonDeserializer<RaceGroup> {
public RaceGroup deserialize(JSONObject object)
throws JsonDeserializationException {
String name = object.get("name").toString();
String name = object.get(LeaderboardJsonSerializer.FIELD_NAME).toString();
// CourseArea ...
Collection<SeriesData> series = new ArrayList<SeriesData>();
for (Object seriesObject : Helpers.getNestedArraySafe(object, "series")) {
for (Object seriesObject : Helpers.getNestedArraySafe(
object,
SeriesOfLeaderboardExtensionSerializer.FIELD_SERIES)) {
JSONObject seriesJson = Helpers.toJSONObjectSafe(seriesObject);
series.add(seriesDeserializer.deserialize(seriesJson));
}
@@ -11,6 +11,7 @@ import com.sap.sailing.racecommittee.app.domain.impl.SeriesDataImpl;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.deserialization.impl.Helpers;
import com.sap.sailing.server.gateway.serialization.impl.leaderboard.FleetWithRaceNamesOfSeriesExtensionSerializer;
public class SeriesDataDeserializer implements JsonDeserializer<SeriesData> {
@@ -26,7 +27,9 @@ public class SeriesDataDeserializer implements JsonDeserializer<SeriesData> {
boolean isMedal = (Boolean) object.get("isMedal");
Collection<FleetWithRaceNames> fleets = new ArrayList<FleetWithRaceNames>();
for (Object fleetObject : Helpers.getNestedArraySafe(object, "fleets")) {
for (Object fleetObject : Helpers.getNestedArraySafe(
object,
FleetWithRaceNamesOfSeriesExtensionSerializer.FIELD_FLEETS)) {
JSONObject fleetJson = Helpers.toJSONObjectSafe(fleetObject);
fleets.add(fleetDeserializer.deserialize(fleetJson));
}