diff --git a/java/com.sap.sailing.server.gateway/WEB-INF/web.xml b/java/com.sap.sailing.server.gateway/WEB-INF/web.xml
index f59ec67e87f..73e0a3f4fc0 100644
--- a/java/com.sap.sailing.server.gateway/WEB-INF/web.xml
+++ b/java/com.sap.sailing.server.gateway/WEB-INF/web.xml
@@ -25,15 +25,6 @@
/rc/leaderboards
-
- RCRegattas
- com.sap.sailing.server.gateway.impl.rc.RegattasJsonExportServlet
-
-
- RCRegattas
- /rc/regattas
-
-
RCEvents
com.sap.sailing.server.gateway.impl.rc.EventsJsonExportServlet
diff --git a/java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/rc/RegattasJsonExportServlet.java b/java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/rc/RegattasJsonExportServlet.java
deleted file mode 100644
index c615846df2c..00000000000
--- a/java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/rc/RegattasJsonExportServlet.java
+++ /dev/null
@@ -1,131 +0,0 @@
-package com.sap.sailing.server.gateway.impl.rc;
-
-import java.io.IOException;
-import java.io.Serializable;
-import java.util.UUID;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.json.simple.JSONArray;
-
-import com.sap.sailing.domain.base.BoatClass;
-import com.sap.sailing.domain.base.Event;
-import com.sap.sailing.domain.base.RaceDefinition;
-import com.sap.sailing.domain.base.Regatta;
-import com.sap.sailing.domain.racelog.RaceLog;
-import com.sap.sailing.domain.tracking.TrackedRace;
-import com.sap.sailing.server.RacingEventService;
-import com.sap.sailing.server.gateway.impl.JsonExportServlet;
-import com.sap.sailing.server.gateway.serialization.JsonSerializer;
-import com.sap.sailing.server.gateway.serialization.filter.Filter;
-import com.sap.sailing.server.gateway.serialization.impl.BoatClassJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.race.RaceDefinitionJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.ColorJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.FleetJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.FleetWithRacesJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.FleetWithRacesOfSeriesExtensionSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.RegattaJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.SeriesJsonSerializer;
-import com.sap.sailing.server.gateway.serialization.impl.regatta.SeriesOfRegattaExtensionSerializer;
-
-
-public class RegattasJsonExportServlet extends JsonExportServlet {
- private static final long serialVersionUID = -5661776042560467182L;
-
- private static final String PARAM_EVENT_FILTER = "event";
- private static final String PARAM_COURSE_AREA_FILTER = "courseArea";
-
- private UUID toUuid(String idValue) throws IllegalArgumentException {
- return UUID.fromString(idValue);
- }
-
- @Override
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
-
- String eventFilter = request.getParameter(PARAM_EVENT_FILTER);
- String courseAreaFilter = request.getParameter(PARAM_COURSE_AREA_FILTER);
-
- Iterable regattas = getService().getAllRegattas();
-
- if (eventFilter != null) {
- try {
- Serializable eventId = toUuid(eventFilter);
- Event event = getService().getEvent(eventId);
- if (event == null) {
- response.sendError(
- HttpServletResponse.SC_NOT_FOUND,
- String.format("No event found with id %s", eventId));
- return;
- }
- regattas = event.getRegattas();
- } catch (IllegalArgumentException iae) {
- response.sendError(HttpServletResponse.SC_BAD_REQUEST, iae.getMessage());
- return;
- }
- }
-
- Filter raceFilter = null;
- if (courseAreaFilter != null) {
- raceFilter = createFilter(courseAreaFilter);
- } else {
- raceFilter = new Filter.NoFilter();
- }
-
- serializeRegattas(createSerializer(raceFilter), regattas, response);
- }
-
- private void serializeRegattas(
- JsonSerializer serializer,
- Iterable regattas,
- HttpServletResponse response) throws IOException {
-
- JSONArray result = new JSONArray();
- for (Regatta regatta : regattas)
- {
- result.add(serializer.serialize(regatta));
- }
- result.writeJSONString(response.getWriter());
-
- }
-
- private Filter createFilter(final String courseAreaId) {
- return new Filter() {
- @Override
- public boolean isFiltered(RaceDefinition race) {
- RacingEventService service = getService();
- Regatta regatta = service.getRememberedRegattaForRace(race.getId());
- if (regatta == null) {
- return true;
- } else {
- TrackedRace trackedRace = service.getTrackedRace(regatta, race);
- RaceLog log = trackedRace.getRaceLog();
- log.lockForRead();
-
- // filter for courseAreaId!
-
- log.unlockAfterRead();
- return trackedRace == null;
- }
- }
- };
- }
-
- private static JsonSerializer createSerializer(Filter raceFilter) {
- JsonSerializer boatClassSerializer = new BoatClassJsonSerializer();
- return new RegattaJsonSerializer(
- boatClassSerializer,
- new SeriesOfRegattaExtensionSerializer(
- new SeriesJsonSerializer(
- new FleetWithRacesOfSeriesExtensionSerializer(
- new FleetWithRacesJsonSerializer(
- new FleetJsonSerializer(
- new ColorJsonSerializer()),
- raceFilter,
- new RaceDefinitionJsonSerializer(
- boatClassSerializer))))));
- }
-
-}