Renamed RaceCommittee to RaceLog

This commit is contained in:
Armin Zamani committed 2013-02-02 16:34:53 +01:00
1 parent 12bf61007a
commit 02b225f307
116 files changed
+1544 -1546

No files matched your search

@@ -1,41 +1,41 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import java.util.UUID;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.base.impl.MillisecondsTimePoint;
import com.sap.sailing.domain.common.TimePoint;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.serialization.impl.EventJsonSerializer;
import com.sap.sailing.server.gateway.serialization.impl.BaseRaceCommitteeEventSerializer;
/// TODO deserialize involved boats
public abstract class BaseRaceCommitteeEventDeserializer implements JsonDeserializer<RaceCommitteeEvent> {
protected abstract RaceCommitteeEvent deserialize(JSONObject object, UUID id, TimePoint timePoint, int passId)
throws JsonDeserializationException;
@Override
public RaceCommitteeEvent deserialize(JSONObject object)
throws JsonDeserializationException {
// Factory handles class field and subclassing...
String id = object.get(BaseRaceCommitteeEventSerializer.FIELD_ID).toString();
long timeStamp = (Long) object.get(BaseRaceCommitteeEventSerializer.FIELD_TIMESTAMP);
int passId = (Integer) object.get(BaseRaceCommitteeEventSerializer.FIELD_PASS_ID);
UUID uuid = null;
try {
uuid = UUID.fromString(id);
} catch (IllegalArgumentException iae) {
throw new JsonDeserializationException(
String.format("Field %s with %s couldn't be parsed as UUID.", EventJsonSerializer.FIELD_ID, id),
iae);
}
return deserialize(object, uuid, new MillisecondsTimePoint(timeStamp), passId);
}
}
package com.sap.sailing.server.gateway.deserialization.impl;
import java.util.UUID;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.base.impl.MillisecondsTimePoint;
import com.sap.sailing.domain.common.TimePoint;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.serialization.impl.EventJsonSerializer;
import com.sap.sailing.server.gateway.serialization.impl.BaseRaceLogEventSerializer;
/// TODO deserialize involved boats
public abstract class BaseRaceLogEventDeserializer implements JsonDeserializer<RaceLogEvent> {
protected abstract RaceLogEvent deserialize(JSONObject object, UUID id, TimePoint timePoint, int passId)
throws JsonDeserializationException;
@Override
public RaceLogEvent deserialize(JSONObject object)
throws JsonDeserializationException {
// Factory handles class field and subclassing...
String id = object.get(BaseRaceLogEventSerializer.FIELD_ID).toString();
long timeStamp = (Long) object.get(BaseRaceLogEventSerializer.FIELD_TIMESTAMP);
int passId = (Integer) object.get(BaseRaceLogEventSerializer.FIELD_PASS_ID);
UUID uuid = null;
try {
uuid = UUID.fromString(id);
} catch (IllegalArgumentException iae) {
throw new JsonDeserializationException(
String.format("Field %s with %s couldn't be parsed as UUID.", EventJsonSerializer.FIELD_ID, id),
iae);
}
return deserialize(object, uuid, new MillisecondsTimePoint(timeStamp), passId);
}
}
@@ -1,41 +0,0 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.serialization.impl.BaseRaceCommitteeEventSerializer;
import com.sap.sailing.server.gateway.serialization.impl.RaceCommitteeFlagEventSerializer;
import com.sap.sailing.server.gateway.serialization.impl.RaceCommitteeStartTimeEventSerializer;
public class RaceCommitteeEventDeserializer implements JsonDeserializer<RaceCommitteeEvent> {
protected JsonDeserializer<RaceCommitteeEvent> flagEventDeserializer;
protected JsonDeserializer<RaceCommitteeEvent> startTimeEventDeserializer;
public RaceCommitteeEventDeserializer() {
flagEventDeserializer = new RaceCommitteeFlagEventDeserializer();
startTimeEventDeserializer = new RaceCommitteeStartTimeEventDeserializer();
}
protected JsonDeserializer<RaceCommitteeEvent> getDeserializer(
JSONObject object) throws JsonDeserializationException {
Object type = object.get(BaseRaceCommitteeEventSerializer.FIELD_CLASS);
if (type.equals(RaceCommitteeFlagEventSerializer.VALUE_CLASS)) {
return flagEventDeserializer;
} else if (type.equals(RaceCommitteeStartTimeEventSerializer.VALUE_CLASS)) {
return startTimeEventDeserializer;
}
throw new JsonDeserializationException(String.format(
"There is no deserializer defined for event type %s.", type));
}
@Override
public RaceCommitteeEvent deserialize(JSONObject object)
throws JsonDeserializationException {
return getDeserializer(object).deserialize(object);
}
}
@@ -1,34 +0,0 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import java.util.Collections;
import java.util.UUID;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.common.TimePoint;
import com.sap.sailing.domain.racecommittee.Flags;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.domain.racecommittee.impl.RaceCommitteeFlagEventImpl;
import com.sap.sailing.server.gateway.serialization.impl.RaceCommitteeFlagEventSerializer;
public class RaceCommitteeFlagEventDeserializer extends
BaseRaceCommitteeEventDeserializer {
@Override
protected RaceCommitteeEvent deserialize(JSONObject object, UUID id,
TimePoint timePoint, int passId) {
Flags upperFlag = Flags.valueOf(object.get(
RaceCommitteeFlagEventSerializer.FIELD_UPPER_FLAG).toString());
Flags lowerFlag = Flags.valueOf(object.get(
RaceCommitteeFlagEventSerializer.FIELD_LOWER_FLAG).toString());
boolean isDisplayed = (Boolean) object
.get(RaceCommitteeFlagEventSerializer.FIELD_DISPLAYED);
return new RaceCommitteeFlagEventImpl(timePoint, id,
Collections.<Competitor>emptyList(), passId, upperFlag,
lowerFlag, isDisplayed);
}
}
@@ -1,32 +0,0 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import java.util.Collections;
import java.util.UUID;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.base.impl.MillisecondsTimePoint;
import com.sap.sailing.domain.common.TimePoint;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.domain.racecommittee.impl.RaceCommitteeStartTimeEventImpl;
import com.sap.sailing.server.gateway.serialization.impl.RaceCommitteeStartTimeEventSerializer;
public class RaceCommitteeStartTimeEventDeserializer extends BaseRaceCommitteeEventDeserializer {
@Override
protected RaceCommitteeEvent deserialize(JSONObject object, UUID id,
TimePoint timePoint, int passId) {
long startTime = (Long) object.get(RaceCommitteeStartTimeEventSerializer.FIELD_START_TIME);
return new RaceCommitteeStartTimeEventImpl(
timePoint,
id,
Collections.<Competitor>emptyList(),
passId,
new MillisecondsTimePoint(startTime));
}
}
@@ -0,0 +1,41 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
import com.sap.sailing.server.gateway.serialization.impl.BaseRaceLogEventSerializer;
import com.sap.sailing.server.gateway.serialization.impl.RaceLogFlagEventSerializer;
import com.sap.sailing.server.gateway.serialization.impl.RaceLogStartTimeEventSerializer;
public class RaceLogEventDeserializer implements JsonDeserializer<RaceLogEvent> {
protected JsonDeserializer<RaceLogEvent> flagEventDeserializer;
protected JsonDeserializer<RaceLogEvent> startTimeEventDeserializer;
public RaceLogEventDeserializer() {
flagEventDeserializer = new RaceLogFlagEventDeserializer();
startTimeEventDeserializer = new RaceLogStartTimeEventDeserializer();
}
protected JsonDeserializer<RaceLogEvent> getDeserializer(
JSONObject object) throws JsonDeserializationException {
Object type = object.get(BaseRaceLogEventSerializer.FIELD_CLASS);
if (type.equals(RaceLogFlagEventSerializer.VALUE_CLASS)) {
return flagEventDeserializer;
} else if (type.equals(RaceLogStartTimeEventSerializer.VALUE_CLASS)) {
return startTimeEventDeserializer;
}
throw new JsonDeserializationException(String.format(
"There is no deserializer defined for event type %s.", type));
}
@Override
public RaceLogEvent deserialize(JSONObject object)
throws JsonDeserializationException {
return getDeserializer(object).deserialize(object);
}
}
@@ -0,0 +1,34 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import java.util.Collections;
import java.util.UUID;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.common.TimePoint;
import com.sap.sailing.domain.racelog.Flags;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.domain.racelog.impl.RaceLogFlagEventImpl;
import com.sap.sailing.server.gateway.serialization.impl.RaceLogFlagEventSerializer;
public class RaceLogFlagEventDeserializer extends
BaseRaceLogEventDeserializer {
@Override
protected RaceLogEvent deserialize(JSONObject object, UUID id,
TimePoint timePoint, int passId) {
Flags upperFlag = Flags.valueOf(object.get(
RaceLogFlagEventSerializer.FIELD_UPPER_FLAG).toString());
Flags lowerFlag = Flags.valueOf(object.get(
RaceLogFlagEventSerializer.FIELD_LOWER_FLAG).toString());
boolean isDisplayed = (Boolean) object
.get(RaceLogFlagEventSerializer.FIELD_DISPLAYED);
return new RaceLogFlagEventImpl(timePoint, id,
Collections.<Competitor>emptyList(), passId, upperFlag,
lowerFlag, isDisplayed);
}
}
@@ -0,0 +1,32 @@
package com.sap.sailing.server.gateway.deserialization.impl;
import java.util.Collections;
import java.util.UUID;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.base.impl.MillisecondsTimePoint;
import com.sap.sailing.domain.common.TimePoint;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.domain.racelog.impl.RaceLogStartTimeEventImpl;
import com.sap.sailing.server.gateway.serialization.impl.RaceLogStartTimeEventSerializer;
public class RaceLogStartTimeEventDeserializer extends BaseRaceLogEventDeserializer {
@Override
protected RaceLogEvent deserialize(JSONObject object, UUID id,
TimePoint timePoint, int passId) {
long startTime = (Long) object.get(RaceLogStartTimeEventSerializer.FIELD_START_TIME);
return new RaceLogStartTimeEventImpl(
timePoint,
id,
Collections.<Competitor>emptyList(),
passId,
new MillisecondsTimePoint(startTime));
}
}
@@ -1,27 +1,27 @@
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.server.gateway.serialization.JsonSerializer;
/// TODO serialize involved boats
public abstract class BaseRaceCommitteeEventSerializer implements JsonSerializer<RaceCommitteeEvent> {
public static final String FIELD_CLASS = "@class";
public static final String FIELD_ID = "id";
public static final String FIELD_TIMESTAMP = "timestamp";
public static final String FIELD_PASS_ID = "passId";
protected abstract String getClassFieldValue();
@Override
public JSONObject serialize(RaceCommitteeEvent object) {
JSONObject result = new JSONObject();
result.put(FIELD_CLASS, getClassFieldValue());
result.put(FIELD_ID, object.getId().toString());
result.put(FIELD_TIMESTAMP, object.getTimePoint().asMillis());
result.put(FIELD_PASS_ID, object.getPassId());
return result;
}
}
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.server.gateway.serialization.JsonSerializer;
/// TODO serialize involved boats
public abstract class BaseRaceLogEventSerializer implements JsonSerializer<RaceLogEvent> {
public static final String FIELD_CLASS = "@class";
public static final String FIELD_ID = "id";
public static final String FIELD_TIMESTAMP = "timestamp";
public static final String FIELD_PASS_ID = "passId";
protected abstract String getClassFieldValue();
@Override
public JSONObject serialize(RaceLogEvent object) {
JSONObject result = new JSONObject();
result.put(FIELD_CLASS, getClassFieldValue());
result.put(FIELD_ID, object.getId().toString());
result.put(FIELD_TIMESTAMP, object.getTimePoint().asMillis());
result.put(FIELD_PASS_ID, object.getPassId());
return result;
}
}
@@ -1,40 +0,0 @@
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.domain.racecommittee.RaceCommitteeFlagEvent;
import com.sap.sailing.domain.racecommittee.RaceCommitteeStartTimeEvent;
import com.sap.sailing.server.gateway.serialization.JsonSerializer;
public class RaceCommitteeEventSerializer implements JsonSerializer<RaceCommitteeEvent> {
private final JsonSerializer<RaceCommitteeEvent> flagEventSerializer;
private final JsonSerializer<RaceCommitteeEvent> startTimeSerializer;
public RaceCommitteeEventSerializer(
JsonSerializer<RaceCommitteeEvent> flagEventSerializer,
JsonSerializer<RaceCommitteeEvent> startTimeSerializer) {
this.flagEventSerializer = flagEventSerializer;
this.startTimeSerializer = startTimeSerializer;
}
protected JsonSerializer<RaceCommitteeEvent> getSerializer(
RaceCommitteeEvent event) {
if (event instanceof RaceCommitteeFlagEvent) {
return flagEventSerializer;
} else if (event instanceof RaceCommitteeStartTimeEvent) {
return startTimeSerializer;
}
throw new UnsupportedOperationException(String.format(
"There is no serializer defined for event type %s", event
.getClass().getName()));
}
@Override
public JSONObject serialize(RaceCommitteeEvent object) {
return getSerializer(object).serialize(object);
}
}
@@ -1,26 +0,0 @@
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.domain.racecommittee.RaceCommitteeStartTimeEvent;
public class RaceCommitteeStartTimeEventSerializer extends BaseRaceCommitteeEventSerializer {
public static final String VALUE_CLASS = RaceCommitteeStartTimeEvent.class.getSimpleName();
public static final String FIELD_START_TIME = "startTime";
@Override
protected String getClassFieldValue() {
return VALUE_CLASS;
}
@Override
public JSONObject serialize(RaceCommitteeEvent object) {
RaceCommitteeStartTimeEvent startTimeEvent = (RaceCommitteeStartTimeEvent) object;
JSONObject result = super.serialize(startTimeEvent);
result.put(FIELD_START_TIME, startTimeEvent.getStartTime().asMillis());
return result;
}
}
@@ -0,0 +1,40 @@
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.domain.racelog.RaceLogFlagEvent;
import com.sap.sailing.domain.racelog.RaceLogStartTimeEvent;
import com.sap.sailing.server.gateway.serialization.JsonSerializer;
public class RaceLogEventSerializer implements JsonSerializer<RaceLogEvent> {
private final JsonSerializer<RaceLogEvent> flagEventSerializer;
private final JsonSerializer<RaceLogEvent> startTimeSerializer;
public RaceLogEventSerializer(
JsonSerializer<RaceLogEvent> flagEventSerializer,
JsonSerializer<RaceLogEvent> startTimeSerializer) {
this.flagEventSerializer = flagEventSerializer;
this.startTimeSerializer = startTimeSerializer;
}
protected JsonSerializer<RaceLogEvent> getSerializer(
RaceLogEvent event) {
if (event instanceof RaceLogFlagEvent) {
return flagEventSerializer;
} else if (event instanceof RaceLogStartTimeEvent) {
return startTimeSerializer;
}
throw new UnsupportedOperationException(String.format(
"There is no serializer defined for event type %s", event
.getClass().getName()));
}
@Override
public JSONObject serialize(RaceLogEvent object) {
return getSerializer(object).serialize(object);
}
}
@@ -1,31 +1,31 @@
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racecommittee.RaceCommitteeEvent;
import com.sap.sailing.domain.racecommittee.RaceCommitteeFlagEvent;
public class RaceCommitteeFlagEventSerializer extends BaseRaceCommitteeEventSerializer {
public static final String VALUE_CLASS = RaceCommitteeFlagEvent.class.getSimpleName();
public static final String FIELD_UPPER_FLAG = "upperFlag";
public static final String FIELD_LOWER_FLAG = "lowerFlag";
public static final String FIELD_DISPLAYED = "displayed";
@Override
protected String getClassFieldValue() {
return VALUE_CLASS;
}
@Override
public JSONObject serialize(RaceCommitteeEvent object) {
RaceCommitteeFlagEvent flagEvent = (RaceCommitteeFlagEvent) object;
JSONObject result = super.serialize(flagEvent);
result.put(FIELD_UPPER_FLAG, flagEvent.getUpperFlag());
result.put(FIELD_LOWER_FLAG, flagEvent.getLowerFlag());
result.put(FIELD_DISPLAYED, flagEvent.isDisplayed());
return result;
}
}
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.domain.racelog.RaceLogFlagEvent;
public class RaceLogFlagEventSerializer extends BaseRaceLogEventSerializer {
public static final String VALUE_CLASS = RaceLogFlagEvent.class.getSimpleName();
public static final String FIELD_UPPER_FLAG = "upperFlag";
public static final String FIELD_LOWER_FLAG = "lowerFlag";
public static final String FIELD_DISPLAYED = "displayed";
@Override
protected String getClassFieldValue() {
return VALUE_CLASS;
}
@Override
public JSONObject serialize(RaceLogEvent object) {
RaceLogFlagEvent flagEvent = (RaceLogFlagEvent) object;
JSONObject result = super.serialize(flagEvent);
result.put(FIELD_UPPER_FLAG, flagEvent.getUpperFlag());
result.put(FIELD_LOWER_FLAG, flagEvent.getLowerFlag());
result.put(FIELD_DISPLAYED, flagEvent.isDisplayed());
return result;
}
}
@@ -0,0 +1,26 @@
package com.sap.sailing.server.gateway.serialization.impl;
import org.json.simple.JSONObject;
import com.sap.sailing.domain.racelog.RaceLogEvent;
import com.sap.sailing.domain.racelog.RaceLogStartTimeEvent;
public class RaceLogStartTimeEventSerializer extends BaseRaceLogEventSerializer {
public static final String VALUE_CLASS = RaceLogStartTimeEvent.class.getSimpleName();
public static final String FIELD_START_TIME = "startTime";
@Override
protected String getClassFieldValue() {
return VALUE_CLASS;
}
@Override
public JSONObject serialize(RaceLogEvent object) {
RaceLogStartTimeEvent startTimeEvent = (RaceLogStartTimeEvent) object;
JSONObject result = super.serialize(startTimeEvent);
result.put(FIELD_START_TIME, startTimeEvent.getStartTime().asMillis());
return result;
}
}