added boat/no-boat case distinction for (potentially redundantly) registering competitors with store upon initial load

Change-Id: I4eaaad279f7911eee440695581c807154fb923ac
This commit is contained in:
Axel Uhl committed 2018-03-19 22:13:10 +01:00
1 parent 2bdb4c6bf5
commit fe638dff7e
1 file changed
+13 -4
@@ -96,6 +96,7 @@ import com.sap.sailing.domain.base.configuration.DeviceConfigurationMatcher;
import com.sap.sailing.domain.base.configuration.RegattaConfiguration;
import com.sap.sailing.domain.base.configuration.impl.DeviceConfigurationMapImpl;
import com.sap.sailing.domain.base.impl.DynamicCompetitor;
import com.sap.sailing.domain.base.impl.DynamicCompetitorWithBoat;
import com.sap.sailing.domain.base.impl.EventImpl;
import com.sap.sailing.domain.base.impl.RegattaImpl;
import com.sap.sailing.domain.base.impl.RemoteSailingServerReferenceImpl;
@@ -3037,10 +3038,18 @@ public class RacingEventServiceImpl implements RacingEventService, ClearStateTes
// the following should actually be redundant because during de-serialization the Competitor objects,
// whose classes implement IsManagedByCache, should already have been got/created from/in the
// competitor store
competitorStore.getOrCreateCompetitor(dynamicCompetitor.getId(), dynamicCompetitor.getName(), dynamicCompetitor.getShortName(),
dynamicCompetitor.getColor(), dynamicCompetitor.getEmail(), dynamicCompetitor.getFlagImage(),
dynamicCompetitor.getTeam(), dynamicCompetitor.getTimeOnTimeFactor(),
dynamicCompetitor.getTimeOnDistanceAllowancePerNauticalMile(), dynamicCompetitor.getSearchTag());
if (dynamicCompetitor.hasBoat()) {
competitorStore.getOrCreateCompetitorWithBoat(dynamicCompetitor.getId(), dynamicCompetitor.getName(), dynamicCompetitor.getShortName(),
dynamicCompetitor.getColor(), dynamicCompetitor.getEmail(), dynamicCompetitor.getFlagImage(),
dynamicCompetitor.getTeam(), dynamicCompetitor.getTimeOnTimeFactor(),
dynamicCompetitor.getTimeOnDistanceAllowancePerNauticalMile(), dynamicCompetitor.getSearchTag(),
((DynamicCompetitorWithBoat) dynamicCompetitor).getBoat());
} else {
competitorStore.getOrCreateCompetitor(dynamicCompetitor.getId(), dynamicCompetitor.getName(), dynamicCompetitor.getShortName(),
dynamicCompetitor.getColor(), dynamicCompetitor.getEmail(), dynamicCompetitor.getFlagImage(),
dynamicCompetitor.getTeam(), dynamicCompetitor.getTimeOnTimeFactor(),
dynamicCompetitor.getTimeOnDistanceAllowancePerNauticalMile(), dynamicCompetitor.getSearchTag());
}
}
logoutput.append("Received " + competitorStore.getCompetitorsCount() + " NEW competitors\n");