mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-02 17:19:37 +00:00
# added serialization of base domain objects to shared (server + apps) bundle
This commit is contained in:
1 parent
4cc0741166
commit
2c841ccd5a
15 files changed
+261
-2
No files matched your search
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>com.sap.sailing.server.gateway.serialization</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.pde.PluginNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
@@ -0,0 +1,7 @@
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
||||
@@ -0,0 +1,11 @@
|
||||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: Serialization
|
||||
Bundle-SymbolicName: com.sap.sailing.server.gateway.serialization
|
||||
Bundle-Version: 1.0.0.qualifier
|
||||
Bundle-Vendor: SAP
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||
Import-Package: org.json.simple
|
||||
Require-Bundle: com.sap.sailing.domain;bundle-version="1.0.0",
|
||||
com.sap.sailing.domain.common;bundle-version="1.0.0"
|
||||
Export-Package: com.sap.sailing.server.gateway.serialization
|
||||
@@ -0,0 +1,4 @@
|
||||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.sap.sailing.domain.base.BoatClass;
|
||||
|
||||
public class BoatClassJsonSerializer implements JsonSerializer<BoatClass> {
|
||||
|
||||
@Override
|
||||
public JSONObject serialize(BoatClass object) {
|
||||
JSONObject result = new JSONObject();
|
||||
result.put("name", object.getName());
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONArray;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.sap.sailing.domain.base.CourseArea;
|
||||
import com.sap.sailing.domain.base.RaceDefinition;
|
||||
|
||||
public class CourseAreaJsonSerializer implements JsonSerializer<CourseArea>
|
||||
{
|
||||
|
||||
@Override
|
||||
public JSONObject serialize(CourseArea object) {
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
result.put("name", object.getName());
|
||||
JSONArray races = new JSONArray();
|
||||
for (RaceDefinition race : object.getRaces())
|
||||
{
|
||||
races.add(race.getId().toString());
|
||||
}
|
||||
result.put("races", races);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.sap.sailing.domain.base.Event;
|
||||
import com.sap.sailing.domain.base.Venue;
|
||||
|
||||
public class EventJsonSerializer implements JsonSerializer<Event>
|
||||
{
|
||||
private JsonSerializer<Venue> venueSerializer;
|
||||
|
||||
public EventJsonSerializer(JsonSerializer<Venue> venueSerializer)
|
||||
{
|
||||
this.venueSerializer = venueSerializer;
|
||||
}
|
||||
|
||||
public JSONObject serialize(Event object) {
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
result.put("id", object.getId().toString());
|
||||
result.put("name", object.getName());
|
||||
result.put("publicationUrl", object.getPublicationUrl());
|
||||
result.put("venue", venueSerializer.serialize(object.getVenue()));
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
public interface JsonSerializer<T>
|
||||
{
|
||||
JSONObject serialize(T object);
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.sap.sailing.domain.base.RaceDefinition;
|
||||
|
||||
public class RaceDefinitionJsonSerializer implements JsonSerializer<RaceDefinition> {
|
||||
|
||||
@Override
|
||||
public JSONObject serialize(RaceDefinition object) {
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
result.put("id", object.getId().toString());
|
||||
result.put("name", object.getName());
|
||||
result.put("course", "tbd");
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONArray;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.sap.sailing.domain.base.BoatClass;
|
||||
import com.sap.sailing.domain.base.RaceDefinition;
|
||||
import com.sap.sailing.domain.base.Regatta;
|
||||
|
||||
public class RegattaJsonSerializer implements JsonSerializer<Regatta> {
|
||||
|
||||
private JsonSerializer<BoatClass> boatClassSerializer;
|
||||
private JsonSerializer<RaceDefinition> raceDefinitionSerializer;
|
||||
|
||||
public RegattaJsonSerializer(
|
||||
JsonSerializer<BoatClass> boatClassSerializer,
|
||||
JsonSerializer<RaceDefinition> raceDefinitionSerializer)
|
||||
{
|
||||
this.boatClassSerializer = boatClassSerializer;
|
||||
this.raceDefinitionSerializer = raceDefinitionSerializer;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject serialize(Regatta object) {
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
result.put("id", object.getId().toString());
|
||||
result.put("baseName", object.getBaseName());
|
||||
result.put("boatClass", boatClassSerializer.serialize(object.getBoatClass()));
|
||||
|
||||
JSONArray races = new JSONArray();
|
||||
for (RaceDefinition race : object.getAllRaces())
|
||||
{
|
||||
races.add(raceDefinitionSerializer.serialize(race));
|
||||
}
|
||||
result.put("races", races);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
package com.sap.sailing.server.gateway.serialization;
|
||||
|
||||
import org.json.simple.JSONArray;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.sap.sailing.domain.base.CourseArea;
|
||||
import com.sap.sailing.domain.base.Venue;
|
||||
|
||||
|
||||
public class VenueJsonSerializer implements JsonSerializer<Venue>
|
||||
{
|
||||
|
||||
private JsonSerializer<CourseArea> areaSerializer;
|
||||
|
||||
public VenueJsonSerializer(JsonSerializer<CourseArea> areaSerializer)
|
||||
{
|
||||
this.areaSerializer = areaSerializer;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject serialize(Venue object) {
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
result.put("name", object.getName());
|
||||
JSONArray areas = new JSONArray();
|
||||
for (CourseArea area : object.getCourseAreas())
|
||||
{
|
||||
areas.add(areaSerializer.serialize(area));
|
||||
}
|
||||
result.put("courseAreas", areas);
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -21,7 +21,8 @@ Require-Bundle: com.sap.sailing.domain,
|
||||
com.mongodb.driver;bundle-version="2.6.2",
|
||||
javax.servlet;bundle-version="2.5.0",
|
||||
com.sap.sailing.domain.common,
|
||||
com.sap.sailing.udpconnector
|
||||
com.sap.sailing.udpconnector,
|
||||
com.sap.sailing.server.gateway.serialization;bundle-version="1.0.0"
|
||||
Bundle-ClassPath: .,
|
||||
lib/rome-1.0.jar,
|
||||
lib/org.jdom_1.0.0.v201005080400.jar
|
||||
|
||||
@@ -13,6 +13,34 @@
|
||||
<servlet-name>AdminApp</servlet-name>
|
||||
<url-pattern>/admin</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>RCRegattas</servlet-name>
|
||||
<servlet-class>com.sap.sailing.server.gateway.impl.RegattasRaceCommitteeServlet</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>RCRegattas</servlet-name>
|
||||
<url-pattern>/rc/events/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>RCEvents</servlet-name>
|
||||
<servlet-class>com.sap.sailing.server.gateway.impl.EventsRaceCommitteeServlet</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>RCEvents</servlet-name>
|
||||
<url-pattern>/rc/events</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
|
||||
<servlet>
|
||||
<servlet-name>RCEventTrack</servlet-name>
|
||||
<servlet-class>com.sap.sailing.server.gateway.impl.EventTrackRaceCommitteeServlet</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>RCEventTrack</servlet-name>
|
||||
<url-pattern>/rc/eventTrack</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>RegattaAndRaceDataJsonExportServlet</servlet-name>
|
||||
|
||||
@@ -24,5 +24,5 @@
|
||||
<booleanAttribute key="tracing" value="false"/>
|
||||
<booleanAttribute key="useCustomFeatures" value="false"/>
|
||||
<booleanAttribute key="useDefaultConfigArea" value="false"/>
|
||||
<stringAttribute key="workspace_bundles" value="com.google.gwt.osgi@default:default,com.googlecode.java-diff-utils@default:default,com.mongodb.driver@default:default,com.sap.sailing.declination@default:default,com.sap.sailing.domain.common@default:default,com.sap.sailing.domain.persistence@default:default,com.sap.sailing.domain.swisstimingadapter.persistence@default:default,com.sap.sailing.domain.swisstimingadapter@default:default,com.sap.sailing.domain.swisstimingreplayadapter@default:default,com.sap.sailing.domain.tractracadapter.persistence@default:default,com.sap.sailing.domain.tractracadapter@default:default,com.sap.sailing.domain@default:default,com.sap.sailing.ess40.resultimport@default:default,com.sap.sailing.expeditionconnector@default:default,com.sap.sailing.freg.resultimport@default:default,com.sap.sailing.geocoding@default:default,com.sap.sailing.gwt.ui@default:default,com.sap.sailing.kiworesultimport@default:default,com.sap.sailing.mongodb@default:default,com.sap.sailing.operationaltransformation@default:default,com.sap.sailing.server.gateway@default:default,com.sap.sailing.server.replication@default:default,com.sap.sailing.server@default:default,com.sap.sailing.udpconnector@default:default,com.sap.sailing.www.events@default:default,com.sap.sailing.www@default:default,com.sap.sailing.xcelsiusadapter@default:default,com.tractrac.clientmodule@default:default,org.json.simple@default:default,org.moxieapps.gwt.highcharts@default:default"/>
|
||||
<stringAttribute key="workspace_bundles" value="com.google.gwt.osgi@default:default,com.googlecode.java-diff-utils@default:default,com.mongodb.driver@default:default,com.sap.sailing.declination@default:default,com.sap.sailing.domain.common@default:default,com.sap.sailing.domain.persistence@default:default,com.sap.sailing.domain.swisstimingadapter.persistence@default:default,com.sap.sailing.domain.swisstimingadapter@default:default,com.sap.sailing.domain.swisstimingreplayadapter@default:default,com.sap.sailing.domain.tractracadapter.persistence@default:default,com.sap.sailing.domain.tractracadapter@default:default,com.sap.sailing.domain@default:default,com.sap.sailing.ess40.resultimport@default:default,com.sap.sailing.expeditionconnector@default:default,com.sap.sailing.freg.resultimport@default:default,com.sap.sailing.geocoding@default:default,com.sap.sailing.gwt.ui@default:default,com.sap.sailing.kiworesultimport@default:default,com.sap.sailing.mongodb@default:default,com.sap.sailing.operationaltransformation@default:default,com.sap.sailing.server.gateway.serialization@default:default,com.sap.sailing.server.gateway@default:default,com.sap.sailing.server.replication@default:default,com.sap.sailing.server@default:default,com.sap.sailing.udpconnector@default:default,com.sap.sailing.www.events@default:default,com.sap.sailing.www@default:default,com.sap.sailing.xcelsiusadapter@default:default,com.tractrac.clientmodule@default:default,org.json.simple@default:default,org.moxieapps.gwt.highcharts@default:default"/>
|
||||
</launchConfiguration>
|
||||
Reference in new issue
Block a user