avoid duplicates of IMPLIED_WIND addition to chart properties; avoid NPE for null implied wind

This commit is contained in:
Axel Uhl committed 2020-03-01 15:18:17 +01:00
1 parent d203fd6f3b
commit 0b1f9524ab
2 files changed
+4 -3

No files matched your search

@@ -440,7 +440,7 @@ public enum DetailType implements Serializable {
final Collection<DetailType> allowed = new LinkedHashSet<>();
allowed.add(RACE_CALCULATED_TIME_AT_ESTIMATED_ARRIVAL_AT_COMPETITOR_FARTHEST_AHEAD);
allowed.add(RACE_CALCULATED_TIME_TRAVELED);
allowed.add(DetailType.RACE_IMPLIED_WIND);
allowed.add(RACE_IMPLIED_WIND);
return allowed;
}
@@ -32,6 +32,7 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -3608,7 +3609,7 @@ public class SailingServiceImpl extends ResultCachingProxiedRemoteServiceServlet
(ORCPerformanceCurveRankingMetric) rankingMetric;
try {
final Speed impliedWind = orcPcsRankingMetric.getImpliedWind(competitor, timePoint, cache);
result = impliedWind.getKnots();
result = impliedWind == null ? null : impliedWind.getKnots();
} catch (MaxIterationsExceededException | FunctionEvaluationException e) {
logger.log(Level.WARNING, "Problem computing implied wind", e);
result = null;
@@ -8327,7 +8328,7 @@ public class SailingServiceImpl extends ResultCachingProxiedRemoteServiceServlet
@Override
public Iterable<DetailType> determineDetailTypesForCompetitorChart(String leaderboardGroupName, RegattaAndRaceIdentifier identifier) {
final List<DetailType> availableDetailsTypes = new ArrayList<>();
final LinkedHashSet<DetailType> availableDetailsTypes = new LinkedHashSet<>();
availableDetailsTypes.addAll(DetailType.getAutoplayDetailTypesForChart());
availableDetailsTypes.removeAll(DetailType.getRaceBravoDetailTypes());
final DynamicTrackedRace trackedRace = getService().getTrackedRace(identifier);