mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-11 06:40:53 +00:00
added the necessary creation of a default fleet for legacy RaceColumns in leaderboard loading from Mongo;
added error message and robust handling in case a second RaceColumn by the same name is to be added to a leaderboard; this may happen under rare and erroneous circumstances, probably during replication issues, but shall not kill the replica. Also, fixed de-selection of tracked race after refactoring with fleets
This commit is contained in:
1 parent
0594f1c2ec
commit
9c6fcc0830
7 files changed
+30
-10
No files matched your search
+3
@@ -187,6 +187,9 @@ public class DomainObjectFactoryImpl implements DomainObjectFactory {
|
||||
}
|
||||
fleets.add(fleet);
|
||||
}
|
||||
if (fleets.isEmpty()) {
|
||||
fleets.add(result.getFleet(null));
|
||||
}
|
||||
RaceColumn raceColumn = result.addRaceColumn((String) dbRaceColumn.get(FieldNames.LEADERBOARD_COLUMN_NAME.name()),
|
||||
(Boolean) dbRaceColumn.get(FieldNames.LEADERBOARD_IS_MEDAL_RACE_COLUMN.name()), fleets.toArray(new Fleet[0]));
|
||||
for (Map.Entry<String, RaceIdentifier> e : raceIdentifiers.entrySet()) {
|
||||
|
||||
+3
-5
@@ -1,7 +1,5 @@
|
||||
package com.sap.sailing.domain.persistence.impl;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.Map;
|
||||
@@ -48,8 +46,8 @@ public class FlexibleLeaderboardImplWithDelayedCarriedPoints extends FlexibleLea
|
||||
private class RaceColumnForDelayedCarriedPoints extends RaceColumnImpl {
|
||||
private static final long serialVersionUID = -1243132535406059096L;
|
||||
|
||||
public RaceColumnForDelayedCarriedPoints(Leaderboard leaderboard, String name, boolean medalRace, Fleet... fleets) {
|
||||
super(name, medalRace, fleets==null ? Collections.singletonList(defaultFleet) : Arrays.asList(fleets));
|
||||
public RaceColumnForDelayedCarriedPoints(Leaderboard leaderboard, String name, boolean medalRace, Iterable<Fleet> fleets) {
|
||||
super(name, medalRace, fleets);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -80,7 +78,7 @@ public class FlexibleLeaderboardImplWithDelayedCarriedPoints extends FlexibleLea
|
||||
|
||||
@Override
|
||||
protected RaceColumnImpl createRaceColumn(String columnName, boolean medalRace, Fleet... fleets) {
|
||||
return new RaceColumnForDelayedCarriedPoints(this, columnName, medalRace, fleets);
|
||||
return new RaceColumnForDelayedCarriedPoints(this, columnName, medalRace, turnNullOrEmptyFleetsIntoDefaultFleet(fleets));
|
||||
}
|
||||
|
||||
public void setCarriedPoints(String competitorName, int carriedPoints) {
|
||||
|
||||
Reference in new issue
Block a user