refactored and simplified RaceLogIdentifier logic (so it can be reused for RegattaLog-IDs)

This commit is contained in:
Fredrik Teschke committed 2014-12-05 17:36:00 +01:00
1 parent 0fba5717cb
commit 6d836fdfe4
23 files changed
+155 -325

No files matched your search

@@ -8,9 +8,9 @@ import com.sap.sailing.domain.base.RaceColumn;
import com.sap.sailing.domain.base.RaceColumnListener;
import com.sap.sailing.domain.leaderboard.ResultDiscardingRule;
import com.sap.sailing.domain.racelog.RaceLogIdentifier;
import com.sap.sailing.domain.racelog.RaceLogIdentifierTemplateResolver;
import com.sap.sailing.domain.racelog.impl.RaceLogOnLeaderboardIdentifier;
import com.sap.sailing.domain.racelog.impl.RaceLogOnRegattaIdentifier;
import com.sap.sailing.domain.regattalike.FlexibleLeaderboardAsRegattaLikeIdentifier;
import com.sap.sailing.domain.regattalike.RegattaAsRegattaLikeIdentifier;
import com.sap.sailing.domain.regattalike.RegattaLikeIdentifierResolver;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sailing.server.RacingEventServiceOperation;
import com.sap.sailing.server.Replicator;
@@ -38,11 +38,11 @@ public class RaceLogReplicator implements RaceColumnListener {
@Override
public void raceLogEventAdded(final RaceColumn raceColumn, final RaceLogIdentifier identifier, final RaceLogEvent event) {
identifier.getTemplate().resolve(new RaceLogIdentifierTemplateResolver() {
identifier.getRegattaLikeParent().resolve(new RegattaLikeIdentifierResolver() {
@Override
public void resolveOnRegattaIdentifierAndReplicate(RaceLogOnRegattaIdentifier identifierTemplate) {
public void resolveOnRegattaIdentifier(RegattaAsRegattaLikeIdentifier regattaLikeParent) {
RacingEventServiceOperation<?> operation = new RecordRaceLogEventOnRegatta(
identifierTemplate.getParentObjectName(),
regattaLikeParent.getName(),
raceColumn.getName(),
identifier.getFleetName(),
event);
@@ -50,9 +50,9 @@ public class RaceLogReplicator implements RaceColumnListener {
}
@Override
public void resolveOnLeaderboardIdentifierAndReplicate(RaceLogOnLeaderboardIdentifier identifierTemplate) {
public void resolveOnFlexibleLeaderboardIdentifier(FlexibleLeaderboardAsRegattaLikeIdentifier regattaLikeParent) {
RacingEventServiceOperation<?> operation = new RecordRaceLogEventOnLeaderboard(
identifierTemplate.getParentObjectName(),
regattaLikeParent.getName(),
raceColumn.getName(),
identifier.getFleetName(),
event);
@@ -99,7 +99,7 @@ public class RaceLogScoringReplicator implements RaceColumnListener {
}
private void handleFinishPositioningList(RaceColumn raceColumn, RaceLogIdentifier raceLogIdentifier, RaceLogEvent event) {
Leaderboard leaderboard = service.getLeaderboardByName(raceLogIdentifier.getTemplate().getParentObjectName());
Leaderboard leaderboard = service.getLeaderboardByName(raceLogIdentifier.getRegattaLikeParent().getName());
if (leaderboard != null) {
Fleet fleet = raceColumn.getFleetByName(raceLogIdentifier.getFleetName());
RaceLog raceLog = raceColumn.getRaceLog(fleet);
@@ -2634,7 +2634,7 @@ public class RacingEventServiceImpl implements RacingEventService, ClearStateTes
Fleet fleetImpl = raceColumn.getFleetByName(fleetName);
RaceLog racelog = raceColumn.getRaceLog(fleetImpl);
if (racelog != null) {
raceColumn.setOrReloadRaceLogInformation(raceColumn.getRaceLogInformation(), fleetImpl);
raceColumn.reloadRaceLog(fleetImpl);
logger.info("Reloaded race log for fleet " + fleetImpl + " for race column " + raceColumn.getName()
+ " for leaderboard " + leaderboard.getName());
}