From bb25fc796832890d745f24564f77e3cf4a815ef0 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 19 Sep 2017 12:56:54 +0200 Subject: [PATCH] Bug 4227: RacingEventServiceImpl now has a TrackedRegattaListenerManager instead of a TrackedRegattaListener --- .../tracking/EmptyTrackedRegattaListener.java | 16 ----------- .../impl/EmptyTrackedRegattaListener.java | 27 +++++++++++++++++++ .../server/impl/RacingEventServiceImpl.java | 9 +++---- 3 files changed, 31 insertions(+), 21 deletions(-) delete mode 100644 java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/EmptyTrackedRegattaListener.java create mode 100644 java/com.sap.sailing.server/src/com/sap/sailing/server/impl/EmptyTrackedRegattaListener.java diff --git a/java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/EmptyTrackedRegattaListener.java b/java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/EmptyTrackedRegattaListener.java deleted file mode 100644 index d1bc1d36783..00000000000 --- a/java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/EmptyTrackedRegattaListener.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.sap.sailing.domain.tracking; - -/** - * Empty implementation of {@link TrackedRegattaListener} e.g. used by tests. - */ -public enum EmptyTrackedRegattaListener implements TrackedRegattaListener { - INSTANCE; - - @Override - public void regattaAdded(TrackedRegatta trackedRegatta) { - } - - @Override - public void regattaRemoved(TrackedRegatta trackedRegatta) { - } -} diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/EmptyTrackedRegattaListener.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/EmptyTrackedRegattaListener.java new file mode 100644 index 00000000000..d5ebb478f67 --- /dev/null +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/EmptyTrackedRegattaListener.java @@ -0,0 +1,27 @@ +package com.sap.sailing.server.impl; + +import com.sap.sailing.domain.tracking.TrackedRegatta; +import com.sap.sailing.domain.tracking.TrackedRegattaListener; + +/** + * Empty implementation of {@link TrackedRegattaListener} e.g. used by tests. + */ +public enum EmptyTrackedRegattaListener implements TrackedRegattaListenerManager { + INSTANCE; + + @Override + public void regattaAdded(TrackedRegatta trackedRegatta) { + } + + @Override + public void regattaRemoved(TrackedRegatta trackedRegatta) { + } + + @Override + public void addListener(TrackedRegattaListener listener) { + } + + @Override + public void removeListener(TrackedRegattaListener listener) { + } +} diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/RacingEventServiceImpl.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/RacingEventServiceImpl.java index c0ea3b00004..b833bf9534b 100644 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/RacingEventServiceImpl.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/impl/RacingEventServiceImpl.java @@ -162,7 +162,6 @@ import com.sap.sailing.domain.statistics.Statistics; import com.sap.sailing.domain.tracking.DynamicSensorFixTrack; import com.sap.sailing.domain.tracking.DynamicTrackedRace; import com.sap.sailing.domain.tracking.DynamicTrackedRegatta; -import com.sap.sailing.domain.tracking.EmptyTrackedRegattaListener; import com.sap.sailing.domain.tracking.GPSFixTrack; import com.sap.sailing.domain.tracking.MarkPassing; import com.sap.sailing.domain.tracking.RaceChangeListener; @@ -173,7 +172,6 @@ import com.sap.sailing.domain.tracking.RaceTrackingConnectivityParameters; import com.sap.sailing.domain.tracking.TrackedRace; import com.sap.sailing.domain.tracking.TrackedRaceStatus; import com.sap.sailing.domain.tracking.TrackedRegatta; -import com.sap.sailing.domain.tracking.TrackedRegattaListener; import com.sap.sailing.domain.tracking.WindStore; import com.sap.sailing.domain.tracking.WindTracker; import com.sap.sailing.domain.tracking.WindTrackerFactory; @@ -184,6 +182,7 @@ import com.sap.sailing.expeditionconnector.ExpeditionWindTrackerFactory; import com.sap.sailing.server.RacingEventService; import com.sap.sailing.server.Replicator; import com.sap.sailing.server.anniversary.AnniversaryRaceDeterminator; +import com.sap.sailing.server.anniversary.RaceChangeObserverForAnniversaryDetection; import com.sap.sailing.server.anniversary.checker.QuarterChecker; import com.sap.sailing.server.anniversary.checker.SameDigitChecker; import com.sap.sailing.server.gateway.deserialization.impl.CourseAreaJsonDeserializer; @@ -456,7 +455,7 @@ public class RacingEventServiceImpl implements RacingEventService, ClearStateTes private SailingServerConfiguration sailingServerConfiguration; - private final TrackedRegattaListener trackedRegattaListener; + private final TrackedRegattaListenerManager trackedRegattaListener; private int numberOfTrackedRacesToRestore; @@ -530,7 +529,7 @@ public class RacingEventServiceImpl implements RacingEventService, ClearStateTes * statistics about TrackedRaces will be calculated. */ public RacingEventServiceImpl(boolean clearPersistentCompetitorStore, - final TypeBasedServiceFinderFactory serviceFinderFactory, TrackedRegattaListener trackedRegattaListener, + final TypeBasedServiceFinderFactory serviceFinderFactory, TrackedRegattaListenerManager trackedRegattaListener, SailingNotificationService sailingNotificationService, TrackedRaceStatisticsCache trackedRaceStatisticsCache, boolean restoreTrackedRaces) { this((final RaceLogResolver raceLogResolver) -> { @@ -653,7 +652,7 @@ public class RacingEventServiceImpl implements RacingEventService, ClearStateTes */ public RacingEventServiceImpl(Function constructorParametersProvider, MediaDB mediaDb, final WindStore windStore, final SensorFixStore sensorFixStore, - TypeBasedServiceFinderFactory serviceFinderFactory, TrackedRegattaListener trackedRegattaListener, + TypeBasedServiceFinderFactory serviceFinderFactory, TrackedRegattaListenerManager trackedRegattaListener, SailingNotificationService sailingNotificationService, TrackedRaceStatisticsCache trackedRaceStatisticsCache, boolean restoreTrackedRaces) { logger.info("Created " + this);