Implemented lazy initialization of RaceViewState in RaceContext

This commit is contained in:
Steffen Schaefer committed 2015-07-06 08:55:07 +02:00
1 parent 308c5d79fa
commit 519bde9b46
1 file changed
+8
@@ -65,6 +65,7 @@ public class RaceContext {
private boolean startTimeCalculated = false;
private TimePoint finishTime;
private boolean finishTimeCalculated = false;
private RaceViewState raceViewState;
public RaceContext(Event event, Leaderboard leaderboard, RaceColumn raceColumn, Fleet fleet, RaceLogResolver raceLogResolver) {
this.event = event;
@@ -346,6 +347,13 @@ public class RaceContext {
}
private RaceViewState getLiveRaceViewState() {
if(raceViewState == null) {
raceViewState = calculateLiveRaceViewState();
}
return raceViewState;
}
private RaceViewState calculateLiveRaceViewState() {
TimePoint startTime = getStartTime();
TimePoint finishTime = getFinishTime();
RaceViewState raceState = RaceViewState.RUNNING;