diff --git a/java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/OperationalTransformationTest.java b/java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/OperationalTransformationTest.java index 608b710cbcb..fb38c03df29 100755 --- a/java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/OperationalTransformationTest.java +++ b/java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/OperationalTransformationTest.java @@ -16,12 +16,12 @@ import com.sap.sailing.operationaltransformation.Peer; import com.sap.sailing.operationaltransformation.Peer.Role; import com.sap.sailing.operationaltransformation.PeerImpl; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; import com.sap.sailing.server.impl.RacingEventServiceImpl; import com.sap.sailing.server.operationaltransformation.AddColumnToLeaderboard; import com.sap.sailing.server.operationaltransformation.CreateLeaderboard; import com.sap.sailing.server.operationaltransformation.MoveLeaderboardColumnUp; import com.sap.sailing.server.operationaltransformation.OperationalTransformer; -import com.sap.sailing.server.operationaltransformation.RacingEventServiceOperation; import com.sap.sailing.server.operationaltransformation.RemoveLeaderboard; public class OperationalTransformationTest { diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/OperationExecutionListener.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/OperationExecutionListener.java new file mode 100755 index 00000000000..32fe48cba0e --- /dev/null +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/OperationExecutionListener.java @@ -0,0 +1,5 @@ +package com.sap.sailing.server; + +public interface OperationExecutionListener { + void executed(RacingEventServiceOperation operation); +} diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventService.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventService.java index abee5d33f6b..cdb73d948c8 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventService.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventService.java @@ -40,7 +40,6 @@ import com.sap.sailing.domain.tractracadapter.DomainFactory; import com.sap.sailing.domain.tractracadapter.RaceRecord; import com.sap.sailing.domain.tractracadapter.TracTracRaceTracker; import com.sap.sailing.expeditionconnector.ExpeditionListener; -import com.sap.sailing.server.operationaltransformation.RacingEventServiceOperation; /** * An OSGi service that can be used to track boat races using a TracTrac connector that pushes @@ -339,8 +338,13 @@ public interface RacingEventService extends TrackedEventRegistry, EventFetcher, void updateLeaderboardGroup(String oldName, String newName, String description, List leaderboardNames); /** - * Executes an operation whose effects need to be replicated to any replica of this service known. + * Executes an operation whose effects need to be replicated to any replica of this service known and + * {@link OperationExecutionListener#executed(RacingEventServiceOperation) notifies} all registered + * operation execution listeners about the execution of the operation. */ T apply(RacingEventServiceOperation operation); + void addOperationExecutionListener(OperationExecutionListener listener); + + void removeOperationExecutionListener(OperationExecutionListener listener); } diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RacingEventServiceOperation.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventServiceOperation.java similarity index 81% rename from java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RacingEventServiceOperation.java rename to java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventServiceOperation.java index 91f46c6096b..78650325156 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RacingEventServiceOperation.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/RacingEventServiceOperation.java @@ -1,10 +1,16 @@ -package com.sap.sailing.server.operationaltransformation; +package com.sap.sailing.server; import java.io.Serializable; import com.sap.sailing.operationaltransformation.Operation; import com.sap.sailing.operationaltransformation.Transformer; -import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.operationaltransformation.AddColumnToLeaderboard; +import com.sap.sailing.server.operationaltransformation.CreateLeaderboard; +import com.sap.sailing.server.operationaltransformation.MoveLeaderboardColumnDown; +import com.sap.sailing.server.operationaltransformation.MoveLeaderboardColumnUp; +import com.sap.sailing.server.operationaltransformation.RemoveLeaderboard; +import com.sap.sailing.server.operationaltransformation.RemoveLeaderboardColumn; +import com.sap.sailing.server.operationaltransformation.RenameLeaderboardColumn; public interface RacingEventServiceOperation extends Operation, Serializable { /** @@ -13,6 +19,11 @@ public interface RacingEventServiceOperation extends Operation eventTrackingCache; + + private final Set operationExecutionListeners; public RacingEventServiceImpl() { tractracDomainFactory = DomainFactory.INSTANCE; @@ -135,6 +138,7 @@ public class RacingEventServiceImpl implements RacingEventService { raceTrackersByID = new HashMap(); leaderboardGroupsByName = new HashMap(); leaderboardsByName = new HashMap(); + operationExecutionListeners = new HashSet(); // Add one default leaderboard that aggregates all races currently tracked by this service. // This is more for debugging purposes than for anything else. addLeaderboard(DefaultLeaderboardName.DEFAULT_LEADERBOARD_NAME, new int[] { 5, 8 }); @@ -918,9 +922,24 @@ public class RacingEventServiceImpl implements RacingEventService { @Override public T apply(RacingEventServiceOperation operation) { try { - return operation.internalApplyTo(this); + T result = operation.internalApplyTo(this); + for (OperationExecutionListener listener : operationExecutionListeners) { + listener.executed(operation); + } + return result; } catch (Exception e) { throw new RuntimeException(e); } } + + @Override + public void addOperationExecutionListener(OperationExecutionListener listener) { + operationExecutionListeners.add(listener); + } + + @Override + public void removeOperationExecutionListener(OperationExecutionListener listener) { + operationExecutionListeners.remove(listener); + } + } diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AbstractRacingEventServiceOperation.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AbstractRacingEventServiceOperation.java index c4cdd6a0c23..0748145c8e1 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AbstractRacingEventServiceOperation.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AbstractRacingEventServiceOperation.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; @@ -14,6 +15,14 @@ import com.sap.sailing.server.RacingEventService; public abstract class AbstractRacingEventServiceOperation implements RacingEventServiceOperation { private static final long serialVersionUID = 3888231857034991271L; + /** + * This default implementation requests synchronous execution. + */ + @Override + public boolean requiresSynchronousExecution() { + return true; + } + /** * Ignores the actual result of {@link #internalApplyTo(RacingEventService)} and returns toState which * for the operational transformation algorithm is the "next state reached." diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddColumnToLeaderboard.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddColumnToLeaderboard.java index 752a261da93..b65afce6a4a 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddColumnToLeaderboard.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddColumnToLeaderboard.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; /** * Doesn't transform for the {@link RemoveLeaderboardColumn} because only existing leaderboards can be removed, diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddEvent.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddEvent.java index e9522de932c..bde8927d725 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddEvent.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddEvent.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class AddEvent extends AbstractRacingEventServiceOperation { private static final long serialVersionUID = -3550383541066673065L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddRaceDefinition.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddRaceDefinition.java index c5de658cfe8..0afd7650099 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddRaceDefinition.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/AddRaceDefinition.java @@ -3,6 +3,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.base.RaceDefinition; import com.sap.sailing.domain.common.EventIdentifier; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class AddRaceDefinition extends AbstractRacingEventServiceOperation { private static final long serialVersionUID = -2282997511967012426L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/ConnectTrackedRaceToLeaderboardColumn.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/ConnectTrackedRaceToLeaderboardColumn.java index 6c03dc873c0..effd538c334 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/ConnectTrackedRaceToLeaderboardColumn.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/ConnectTrackedRaceToLeaderboardColumn.java @@ -5,6 +5,7 @@ import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.domain.leaderboard.RaceInLeaderboard; import com.sap.sailing.domain.tracking.TrackedRace; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class ConnectTrackedRaceToLeaderboardColumn extends AbstractLeaderboardColumnOperation { private static final long serialVersionUID = -1336511401516212508L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboard.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboard.java index fd991cee1f0..ed5a4374ade 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboard.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboard.java @@ -2,6 +2,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class CreateLeaderboard extends AbstractLeaderboardOperation { private static final long serialVersionUID = 891352705068098580L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboardGroup.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboardGroup.java index 0b35014ca99..46e8e16cc33 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboardGroup.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateLeaderboardGroup.java @@ -4,6 +4,7 @@ import java.util.List; import com.sap.sailing.domain.leaderboard.LeaderboardGroup; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class CreateLeaderboardGroup extends AbstractLeaderboardGroupOperation { private static final long serialVersionUID = -5028997286564650805L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateTrackedRace.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateTrackedRace.java index ceee6f66398..325dc4de7f8 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateTrackedRace.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/CreateTrackedRace.java @@ -8,6 +8,7 @@ import com.sap.sailing.domain.tracking.TrackedEvent; import com.sap.sailing.domain.tracking.TrackedRace; import com.sap.sailing.domain.tracking.impl.EmptyWindStore; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; /** * Creates a tracked race for a race identifier by a {@link RaceIdentifier}. The operation assumes that the diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/DisconnectLeaderboardColumnFromTrackedRace.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/DisconnectLeaderboardColumnFromTrackedRace.java index ab2559e3d25..f5a63410c68 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/DisconnectLeaderboardColumnFromTrackedRace.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/DisconnectLeaderboardColumnFromTrackedRace.java @@ -3,6 +3,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.domain.leaderboard.RaceInLeaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class DisconnectLeaderboardColumnFromTrackedRace extends AbstractLeaderboardColumnOperation { diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnDown.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnDown.java index dc02235b2f2..454a4870ba3 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnDown.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnDown.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class MoveLeaderboardColumnDown extends AbstractLeaderboardColumnOperation { diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnUp.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnUp.java index 2d1a361cc21..45c2a842a56 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnUp.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/MoveLeaderboardColumnUp.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class MoveLeaderboardColumnUp extends AbstractLeaderboardColumnOperation { diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/OperationalTransformer.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/OperationalTransformer.java index d2528d35b2f..9fbc518c362 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/OperationalTransformer.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/OperationalTransformer.java @@ -2,6 +2,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.operationaltransformation.ClientServerOperationPair; import com.sap.sailing.operationaltransformation.Transformer; +import com.sap.sailing.server.RacingEventServiceOperation; public class OperationalTransformer implements Transformer> { diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveAndUntrackRace.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveAndUntrackRace.java index b4e719160c5..6c3445882fd 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveAndUntrackRace.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveAndUntrackRace.java @@ -6,6 +6,7 @@ import com.sap.sailing.domain.base.Event; import com.sap.sailing.domain.base.RaceDefinition; import com.sap.sailing.domain.common.EventAndRaceIdentifier; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RemoveAndUntrackRace extends AbstractRaceOperation { private static final long serialVersionUID = 4260421466093529004L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboard.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboard.java index 5293b069173..35e44514a44 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboard.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboard.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RemoveLeaderboard extends AbstractLeaderboardOperation { private static final long serialVersionUID = -6491003416450255268L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardColumn.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardColumn.java index 13888606b72..52451f00e7c 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardColumn.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardColumn.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RemoveLeaderboardColumn extends AbstractLeaderboardColumnOperation { private static final long serialVersionUID = 5425526859417359535L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardGroup.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardGroup.java index 324026298e6..12a09d919dd 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardGroup.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RemoveLeaderboardGroup.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RemoveLeaderboardGroup extends AbstractLeaderboardGroupOperation { private static final long serialVersionUID = 3177217793859319236L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboard.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboard.java index 312fd796baa..b57e7dbe714 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboard.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboard.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RenameLeaderboard extends AbstractLeaderboardOperation { private static final long serialVersionUID = 8874599127010526971L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardColumn.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardColumn.java index 3719f598114..096ca90c133 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardColumn.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardColumn.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RenameLeaderboardColumn extends AbstractLeaderboardColumnOperation { private static final long serialVersionUID = -1238503068559477351L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardGroup.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardGroup.java index 2a7a43c7af4..b34d1011680 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardGroup.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/RenameLeaderboardGroup.java @@ -1,6 +1,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class RenameLeaderboardGroup extends AbstractLeaderboardGroupOperation { private static final long serialVersionUID = -5007784579411727148L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetRaceIsKnownToStartUpwind.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetRaceIsKnownToStartUpwind.java index 5a6ef722fd2..1d03a2c15cb 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetRaceIsKnownToStartUpwind.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetRaceIsKnownToStartUpwind.java @@ -3,6 +3,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.common.EventAndRaceIdentifier; import com.sap.sailing.domain.tracking.DynamicTrackedRace; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class SetRaceIsKnownToStartUpwind extends AbstractRaceOperation { private static final long serialVersionUID = 272403191741207144L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetWindSourcesToExclude.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetWindSourcesToExclude.java index 468ac5d2677..e193a47dbc5 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetWindSourcesToExclude.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/SetWindSourcesToExclude.java @@ -4,6 +4,7 @@ import com.sap.sailing.domain.common.EventAndRaceIdentifier; import com.sap.sailing.domain.common.WindSource; import com.sap.sailing.domain.tracking.DynamicTrackedRace; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class SetWindSourcesToExclude extends AbstractRaceOperation { private static final long serialVersionUID = 7639288885720509529L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingEvent.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingEvent.java index 9279abfbb72..367521d0bdc 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingEvent.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingEvent.java @@ -6,6 +6,7 @@ import java.net.MalformedURLException; import com.sap.sailing.domain.base.Event; import com.sap.sailing.domain.common.EventIdentifier; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class StopTrackingEvent extends AbstractRacingEventServiceOperation { private static final long serialVersionUID = -651066062098923320L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingRace.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingRace.java index 7c661d0690e..e00a1f5ead3 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingRace.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/StopTrackingRace.java @@ -4,6 +4,7 @@ import com.sap.sailing.domain.base.Event; import com.sap.sailing.domain.base.RaceDefinition; import com.sap.sailing.domain.common.EventAndRaceIdentifier; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class StopTrackingRace extends AbstractRaceOperation { private static final long serialVersionUID = -6074168525544219596L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/TrackEvent.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/TrackEvent.java index b3aa461800c..8e43b88bf09 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/TrackEvent.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/TrackEvent.java @@ -4,6 +4,7 @@ import com.sap.sailing.domain.base.Event; import com.sap.sailing.domain.common.EventIdentifier; import com.sap.sailing.domain.tracking.DynamicTrackedEvent; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class TrackEvent extends AbstractRacingEventServiceOperation { private static final long serialVersionUID = 7891960455598410633L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateCompetitorDisplayNameInLeaderboard.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateCompetitorDisplayNameInLeaderboard.java index 07364b8f652..b6244057750 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateCompetitorDisplayNameInLeaderboard.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateCompetitorDisplayNameInLeaderboard.java @@ -3,6 +3,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.base.Competitor; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateCompetitorDisplayNameInLeaderboard extends AbstractLeaderboardOperation { private static final long serialVersionUID = 366335484317671148L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateIsMedalRace.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateIsMedalRace.java index f6d44198090..85d33cfdbc4 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateIsMedalRace.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateIsMedalRace.java @@ -2,6 +2,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateIsMedalRace extends AbstractLeaderboardColumnOperation { private static final long serialVersionUID = 5925081961634860757L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboard.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboard.java index d1a8c37fc22..e488dbfb0fd 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboard.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboard.java @@ -5,6 +5,7 @@ import java.util.Arrays; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.domain.leaderboard.impl.ResultDiscardingRuleImpl; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateLeaderboard extends AbstractLeaderboardOperation { private static final long serialVersionUID = -8040361040050151768L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardCarryValue.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardCarryValue.java index bf6b10c436a..27aae9690c7 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardCarryValue.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardCarryValue.java @@ -3,6 +3,7 @@ package com.sap.sailing.server.operationaltransformation; import com.sap.sailing.domain.base.Competitor; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateLeaderboardCarryValue extends AbstractLeaderboardOperation { private static final long serialVersionUID = 5467731814788887426L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardGroup.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardGroup.java index 7ad49e33bee..b642796f21c 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardGroup.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardGroup.java @@ -3,6 +3,7 @@ package com.sap.sailing.server.operationaltransformation; import java.util.List; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateLeaderboardGroup extends AbstractLeaderboardGroupOperation { private static final long serialVersionUID = -1822477339916802467L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardMaxPointsReason.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardMaxPointsReason.java index 7c7fea007f0..69fa1cc4341 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardMaxPointsReason.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardMaxPointsReason.java @@ -12,6 +12,7 @@ import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.domain.leaderboard.Leaderboard.Entry; import com.sap.sailing.domain.leaderboard.RaceInLeaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateLeaderboardMaxPointsReason extends AbstractLeaderboardColumnOperation> { private static final long serialVersionUID = -492130952256848047L; diff --git a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardScoreCorrection.java b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardScoreCorrection.java index a3e1a5b7526..7887a927703 100755 --- a/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardScoreCorrection.java +++ b/java/com.sap.sailing.server/src/com/sap/sailing/server/operationaltransformation/UpdateLeaderboardScoreCorrection.java @@ -9,6 +9,7 @@ import com.sap.sailing.domain.common.impl.Util.Pair; import com.sap.sailing.domain.leaderboard.Leaderboard; import com.sap.sailing.domain.leaderboard.RaceInLeaderboard; import com.sap.sailing.server.RacingEventService; +import com.sap.sailing.server.RacingEventServiceOperation; public class UpdateLeaderboardScoreCorrection extends AbstractLeaderboardColumnOperation> { private static final long serialVersionUID = -977025759476022993L;