mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-17 01:31:01 +00:00
implemented listener of tracking provider for course design changes
This commit is contained in:
1 parent
6274127bcb
commit
8cb047681b
11 files changed
+75
-4
No files matched your search
+9
@@ -0,0 +1,9 @@
|
||||
package com.sap.sailing.domain.tracking;
|
||||
|
||||
import com.sap.sailing.domain.base.CourseData;
|
||||
|
||||
public interface CourseDesignChangedListener {
|
||||
|
||||
void courseDesignChanged(CourseData newCourseDesign);
|
||||
|
||||
}
|
||||
@@ -486,5 +486,16 @@ public interface TrackedRace extends Serializable {
|
||||
*/
|
||||
RaceLog getRaceLog();
|
||||
|
||||
/**
|
||||
* whenever a new course design is published by the race committee and the appropriate event occures in the race log, this method is
|
||||
* called to propagate the course design to the tracking provider.
|
||||
* @param courseDesign the new course design to be published
|
||||
*/
|
||||
void onCourseDesignChangedByRaceCommittee(CourseData courseDesign);
|
||||
|
||||
/**
|
||||
* a setter for the listener on course design changes. The listener is mostly part of the tracking provider adapter.
|
||||
* @param listener the listener to operate with.
|
||||
*/
|
||||
void setCourseDesignChangedListener(CourseDesignChangedListener listener);
|
||||
}
|
||||
+4
-2
@@ -654,8 +654,10 @@ DynamicTrackedRace, GPSTrackListener<Competitor, GPSFixMoving> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCourseDesignChangedByRaceCommittee(CourseData courseDesign) {
|
||||
|
||||
public void onCourseDesignChangedByRaceCommittee(CourseData newCourseDesign) {
|
||||
if (courseDesignChangedListener != null) {
|
||||
courseDesignChangedListener.courseDesignChanged(newCourseDesign);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+8
-1
@@ -70,6 +70,7 @@ import com.sap.sailing.domain.confidence.Weigher;
|
||||
import com.sap.sailing.domain.confidence.impl.HyperbolicTimeDifferenceWeigher;
|
||||
import com.sap.sailing.domain.confidence.impl.PositionAndTimePointWeigher;
|
||||
import com.sap.sailing.domain.racelog.RaceLog;
|
||||
import com.sap.sailing.domain.tracking.CourseDesignChangedListener;
|
||||
import com.sap.sailing.domain.tracking.GPSFix;
|
||||
import com.sap.sailing.domain.tracking.GPSFixMoving;
|
||||
import com.sap.sailing.domain.tracking.GPSFixTrack;
|
||||
@@ -79,7 +80,6 @@ import com.sap.sailing.domain.tracking.MarkPassing;
|
||||
import com.sap.sailing.domain.tracking.TrackedLeg;
|
||||
import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor;
|
||||
import com.sap.sailing.domain.tracking.TrackedRace;
|
||||
import com.sap.sailing.domain.tracking.TrackedRaceLogListener;
|
||||
import com.sap.sailing.domain.tracking.TrackedRaceStatus;
|
||||
import com.sap.sailing.domain.tracking.TrackedRegatta;
|
||||
import com.sap.sailing.domain.tracking.Wind;
|
||||
@@ -223,6 +223,8 @@ public abstract class TrackedRaceImpl implements TrackedRace, CourseListener {
|
||||
private transient RaceLog attachedRaceLog;
|
||||
|
||||
private transient TrackedRaceLogListener raceLogListener;
|
||||
|
||||
protected transient CourseDesignChangedListener courseDesignChangedListener;
|
||||
|
||||
/**
|
||||
* The time delay to the current point in time in milliseconds.
|
||||
@@ -2292,4 +2294,9 @@ public abstract class TrackedRaceImpl implements TrackedRace, CourseListener {
|
||||
public RaceLog getRaceLog() {
|
||||
return attachedRaceLog;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCourseDesignChangedListener(CourseDesignChangedListener listener) {
|
||||
this.courseDesignChangedListener = listener;
|
||||
}
|
||||
}
|
||||
+2
-1
@@ -1,4 +1,4 @@
|
||||
package com.sap.sailing.domain.tracking;
|
||||
package com.sap.sailing.domain.tracking.impl;
|
||||
|
||||
import com.sap.sailing.domain.racelog.RaceLogCourseAreaChangedEvent;
|
||||
import com.sap.sailing.domain.racelog.RaceLogCourseDesignChangedEvent;
|
||||
@@ -7,6 +7,7 @@ import com.sap.sailing.domain.racelog.RaceLogFlagEvent;
|
||||
import com.sap.sailing.domain.racelog.RaceLogPassChangeEvent;
|
||||
import com.sap.sailing.domain.racelog.RaceLogRaceStatusEvent;
|
||||
import com.sap.sailing.domain.racelog.RaceLogStartTimeEvent;
|
||||
import com.sap.sailing.domain.tracking.TrackedRace;
|
||||
|
||||
public class TrackedRaceLogListener implements RaceLogEventVisitor {
|
||||
|
||||
Reference in new issue
Block a user