mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-16 17:21:00 +00:00
Fix reload of tracks when start/end of tracking changes
This commit is contained in:
1 parent
cd203a6895
commit
853578e74a
1 file changed
+29
-11
+29
-11
@@ -755,6 +755,9 @@ public abstract class TrackedRaceImpl extends TrackedRaceWithWindEssentials impl
|
||||
final Pair<TimePoint, TimePoint> trackingTimesFromRaceLog = this.getTrackingTimesFromRaceLogs();
|
||||
final Pair<TimePoint, TimePoint> startAndFinishedTimesFromRaceLog = this.getStartAndFinishedTimeFromRaceLogs();
|
||||
|
||||
TimePoint oldStartOfTracking = getStartOfTracking();
|
||||
TimePoint oldEndOfTracking = getEndOfTracking();
|
||||
|
||||
boolean startOfTrackingFound = false;
|
||||
boolean endOfTrackingFound = false;
|
||||
|
||||
@@ -825,6 +828,9 @@ public abstract class TrackedRaceImpl extends TrackedRaceWithWindEssentials impl
|
||||
endOfTracking = latestMappingEnd;
|
||||
}
|
||||
}
|
||||
|
||||
startOfTrackingChanged(oldStartOfTracking, false);
|
||||
endOfTrackingChanged(oldEndOfTracking, false);
|
||||
}
|
||||
|
||||
private TimePoint getUpdatedEarliestMappingStart(TimePoint earliestMappingStart, final TimePoint from) {
|
||||
@@ -1976,14 +1982,19 @@ public abstract class TrackedRaceImpl extends TrackedRaceWithWindEssentials impl
|
||||
}
|
||||
|
||||
protected void setStartOfTrackingReceived(final TimePoint startOfTracking, final boolean waitForGPSFixesToLoad) {
|
||||
final TimePoint oldStartOfTracking = this.startOfTrackingReceived;
|
||||
final TimePoint oldStartOfTracking = getStartOfTracking();
|
||||
this.startOfTrackingReceived = startOfTracking;
|
||||
if (!Util.equalsWithNull(oldStartOfTracking, startOfTracking) &&
|
||||
(startOfTracking == null || (oldStartOfTracking != null && startOfTracking.before(oldStartOfTracking)))) {
|
||||
logger.info("Loading fixes after start of tracking for "+getRace()+" has been extended from "+oldStartOfTracking+" to "+startOfTracking);
|
||||
loadGPSFixesForExtendedTimeRange(startOfTracking, oldStartOfTracking, waitForGPSFixesToLoad);
|
||||
}
|
||||
updateStartAndEndOfTracking();
|
||||
startOfTrackingChanged(oldStartOfTracking, waitForGPSFixesToLoad);
|
||||
}
|
||||
|
||||
private void startOfTrackingChanged(final TimePoint oldStartOfTracking, boolean waitForGPSFixesToLoad){
|
||||
TimePoint inferedStartOfTracking = getStartOfTracking();
|
||||
if (!Util.equalsWithNull(oldStartOfTracking, inferedStartOfTracking) &&
|
||||
(inferedStartOfTracking == null || (oldStartOfTracking != null && inferedStartOfTracking.before(oldStartOfTracking)))) {
|
||||
logger.info("Loading fixes after start of tracking for "+getRace()+" has been extended from "+oldStartOfTracking+" to "+inferedStartOfTracking);
|
||||
loadGPSFixesForExtendedTimeRange(inferedStartOfTracking, oldStartOfTracking, waitForGPSFixesToLoad);
|
||||
}
|
||||
}
|
||||
|
||||
private void loadGPSFixesForExtendedTimeRange(final TimePoint start, final TimePoint end, final boolean waitForGPSFixesToLoad) {
|
||||
@@ -1996,12 +2007,19 @@ public abstract class TrackedRaceImpl extends TrackedRaceWithWindEssentials impl
|
||||
protected void setEndOfTrackingReceived(final TimePoint endOfTracking, final boolean waitForGPSFixesToLoad) {
|
||||
final TimePoint oldEndOfTracking = this.endOfTrackingReceived;
|
||||
this.endOfTrackingReceived = endOfTracking;
|
||||
if (!Util.equalsWithNull(oldEndOfTracking, endOfTracking) &&
|
||||
(endOfTracking == null || (oldEndOfTracking != null && endOfTracking.after(oldEndOfTracking)))) {
|
||||
logger.info("Loading fixes after end of tracking for "+getRace()+" has been extended from "+oldEndOfTracking+" to "+endOfTracking);
|
||||
loadGPSFixesForExtendedTimeRange(oldEndOfTracking, endOfTracking, waitForGPSFixesToLoad);
|
||||
}
|
||||
updateStartAndEndOfTracking();
|
||||
endOfTrackingChanged(oldEndOfTracking, waitForGPSFixesToLoad);
|
||||
}
|
||||
|
||||
private void endOfTrackingChanged(final TimePoint oldEndOfTracking, boolean waitForGPSFixesToLoad){
|
||||
TimePoint inferedEndOfTracking = getEndOfTracking();
|
||||
|
||||
if (!Util.equalsWithNull(oldEndOfTracking, inferedEndOfTracking) &&
|
||||
(inferedEndOfTracking == null || (oldEndOfTracking != null && inferedEndOfTracking.after(oldEndOfTracking)))) {
|
||||
logger.info("Loading fixes after end of tracking for "+getRace()+" has been extended from "+oldEndOfTracking+" to "+inferedEndOfTracking);
|
||||
loadGPSFixesForExtendedTimeRange(oldEndOfTracking, inferedEndOfTracking, waitForGPSFixesToLoad);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user