mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-09 20:41:10 +00:00
made RecordMarkGPSFixForExistingTrack safe for non-found marks
Change-Id: I781b1068283fa6890899004c5b57793899561440
This commit is contained in:
1 parent
444f117d64
commit
bda19042ac
1 file changed
+9
-1
+9
-1
@@ -1,6 +1,7 @@
|
||||
package com.sap.sailing.server.operationaltransformation;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.sap.sailing.domain.base.Mark;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
@@ -9,6 +10,7 @@ import com.sap.sailing.domain.tracking.DynamicTrackedRace;
|
||||
import com.sap.sailing.server.RacingEventService;
|
||||
|
||||
public class RecordMarkGPSFixForExistingTrack extends RecordMarkGPSFix {
|
||||
private static final Logger logger = Logger.getLogger(RecordMarkGPSFixForExistingTrack.class.getName());
|
||||
private static final long serialVersionUID = -3953907832324217209L;
|
||||
private final Serializable markId;
|
||||
|
||||
@@ -33,7 +35,13 @@ public class RecordMarkGPSFixForExistingTrack extends RecordMarkGPSFix {
|
||||
DynamicTrackedRace trackedRace = getTrackedRace(toState);
|
||||
if (trackedRace != null) {
|
||||
Mark mark = getMarkById(trackedRace);
|
||||
trackedRace.recordFix(mark, getFix(), /* onlyWhenInTrackingTimeInterval */ false); // record the fix in any case
|
||||
if (mark != null) {
|
||||
trackedRace.recordFix(mark, getFix(), /* onlyWhenInTrackingTimeInterval */ false); // record the fix in any case
|
||||
} else {
|
||||
logger.warning("Received GPS fix for mark with ID "+markId+" which was not found in tracked race "+trackedRace.getRace().getName()+
|
||||
" in regatta "+trackedRace.getTrackedRegatta().getRegatta().getName()+
|
||||
". Maybe this event was processed after the mark had been removed.");
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user