mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-08 05:11:04 +00:00
Added comments to clear the problem that Events and TrackedEvents could be
inconsistent.
This commit is contained in:
1 parent
5a9ef811b5
commit
f0f017abac
3 files changed
+17
No files matched your search
@@ -1,5 +1,7 @@
|
||||
package com.sap.sailing.domain.base;
|
||||
|
||||
import com.sap.sailing.domain.tracking.TrackedEvent;
|
||||
|
||||
/**
|
||||
* The name shall be unique across all events tracked concurrently. In particular, if you want to
|
||||
* keep apart events in different boat classes, make sure the boat class name becomes part of the
|
||||
@@ -9,9 +11,17 @@ package com.sap.sailing.domain.base;
|
||||
*
|
||||
*/
|
||||
public interface Event extends Named {
|
||||
/**
|
||||
* Please note that the {@link RaceDefinition}s of the {@link Event} must not be synchronized {@link RaceDefinition}s
|
||||
* of {@link TrackedEvent}. The values could be inconsistent.
|
||||
* @return
|
||||
*/
|
||||
Iterable<RaceDefinition> getAllRaces();
|
||||
|
||||
/**
|
||||
* Please note that the {@link RaceDefinition} of {@link Event} must not be synchronized with the
|
||||
* {@link RaceDefinition} of {@link TrackedEvent}. The values could be inconsistent.
|
||||
*
|
||||
* @return <code>null</code>, if this event does not contain a race (see {@link #getAllRaces}) whose
|
||||
* {@link RaceDefinition#getName()} equals <code>raceName</code>
|
||||
*/
|
||||
|
||||
@@ -19,6 +19,10 @@ public interface RaceTracker {
|
||||
* Returns the races currently being tracked by this tracker. Non-blocking call that returns <code>null</code> if
|
||||
* the {@link RaceDefinition} for a TracTrac Event hasn't been created yet, e.g., because the course definition
|
||||
* hasn't been received yet or the listener for receiving course information hasn't been registered (yet).
|
||||
*
|
||||
* If the {@link RacingEventService} is getting a {@link RaceDefinition}, to look up a {@link TrackedRace}
|
||||
* for this {@link RaceDefinition} via {@link TrackedEvent} there could a issue. The issue appears if RaceDefinition
|
||||
* is currently changed by a tracker, either {@link SwissTimingRaceTracker} or {@link TracTacRaceTracker}.
|
||||
*/
|
||||
Set<RaceDefinition> getRaces();
|
||||
|
||||
|
||||
@@ -38,6 +38,9 @@ public interface TrackedEvent {
|
||||
/**
|
||||
* Obtains the tracked race for <code>race</code>. Blocks until the tracked race has been created
|
||||
* and added to this tracked event (see {@link #addTrackedRace(TrackedRace)}).
|
||||
*
|
||||
* Please note that the {@link RaceDefinition} of the {@link Event} must not be synchronized {@link RaceDefinition}
|
||||
* of {@link TrackedEvent}. The values could be inconsistent.
|
||||
*/
|
||||
TrackedRace getTrackedRace(RaceDefinition race);
|
||||
|
||||
|
||||
Reference in new issue
Block a user