mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-21 19:50:01 +00:00
factored commonalities for regatta configuration DTO production for the different racing procedures
Change-Id: I19e2e62cef59c114e2f884a29316c7f957db3e14
This commit is contained in:
1 parent
d365dab8c6
commit
43048a3a2b
2 files changed
+36
-19
No files matched your search
+31
-16
@@ -118,6 +118,7 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence;
|
||||
import com.sap.sailing.domain.base.Waypoint;
|
||||
import com.sap.sailing.domain.base.configuration.DeviceConfiguration;
|
||||
import com.sap.sailing.domain.base.configuration.DeviceConfigurationMatcher;
|
||||
import com.sap.sailing.domain.base.configuration.RacingProcedureConfiguration;
|
||||
import com.sap.sailing.domain.base.configuration.RegattaConfiguration;
|
||||
import com.sap.sailing.domain.base.configuration.impl.DeviceConfigurationImpl;
|
||||
import com.sap.sailing.domain.base.configuration.impl.DeviceConfigurationMatcherSingle;
|
||||
@@ -127,6 +128,8 @@ import com.sap.sailing.domain.base.configuration.impl.LeagueConfigurationImpl;
|
||||
import com.sap.sailing.domain.base.configuration.impl.RRS26ConfigurationImpl;
|
||||
import com.sap.sailing.domain.base.configuration.impl.RacingProcedureConfigurationImpl;
|
||||
import com.sap.sailing.domain.base.configuration.impl.RegattaConfigurationImpl;
|
||||
import com.sap.sailing.domain.base.configuration.impl.SWCConfigurationImpl;
|
||||
import com.sap.sailing.domain.base.configuration.procedures.LineStartConfiguration;
|
||||
import com.sap.sailing.domain.base.impl.BoatImpl;
|
||||
import com.sap.sailing.domain.base.impl.CourseDataImpl;
|
||||
import com.sap.sailing.domain.base.impl.CourseImpl;
|
||||
@@ -309,6 +312,7 @@ import com.sap.sailing.gwt.ui.shared.CoursePositionsDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceConfigurationDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceConfigurationDTO.RegattaConfigurationDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceConfigurationDTO.RegattaConfigurationDTO.RacingProcedureConfigurationDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceConfigurationDTO.RegattaConfigurationDTO.RacingProcedureWithConfigurableStartModeFlagConfigurationDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceConfigurationMatcherDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceIdentifierDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeviceMappingDTO;
|
||||
@@ -4852,39 +4856,44 @@ public class SailingServiceImpl extends ProxiedRemoteServiceServlet implements S
|
||||
|
||||
if (configuration.getRRS26Configuration() != null) {
|
||||
dto.rrs26Configuration = new DeviceConfigurationDTO.RegattaConfigurationDTO.RRS26ConfigurationDTO();
|
||||
dto.rrs26Configuration.classFlag = configuration.getRRS26Configuration().getClassFlag();
|
||||
dto.rrs26Configuration.hasIndividualRecall = configuration.getRRS26Configuration().hasIndividualRecall();
|
||||
dto.rrs26Configuration.isResultEntryEnabled = configuration.getRRS26Configuration().isResultEntryEnabled();
|
||||
dto.rrs26Configuration.startModeFlags = configuration.getRRS26Configuration().getStartModeFlags();
|
||||
copyBasicRacingProcedureProperties(configuration.getRRS26Configuration(), dto.rrs26Configuration);
|
||||
copyRacingProcedureWithConfigurableStartModeFlagProperties(configuration.getRRS26Configuration(), dto.rrs26Configuration);
|
||||
}
|
||||
if (configuration.getSWCConfiguration() != null) {
|
||||
dto.swcStartConfiguration = new DeviceConfigurationDTO.RegattaConfigurationDTO.SWCStartConfigurationDTO();
|
||||
copyBasicRacingProcedureProperties(configuration.getSWCConfiguration(), dto.swcStartConfiguration);
|
||||
copyRacingProcedureWithConfigurableStartModeFlagProperties(configuration.getSWCConfiguration(), dto.swcStartConfiguration);
|
||||
}
|
||||
if (configuration.getGateStartConfiguration() != null) {
|
||||
dto.gateStartConfiguration = new DeviceConfigurationDTO.RegattaConfigurationDTO.GateStartConfigurationDTO();
|
||||
dto.gateStartConfiguration.classFlag = configuration.getGateStartConfiguration().getClassFlag();
|
||||
dto.gateStartConfiguration.hasIndividualRecall = configuration.getGateStartConfiguration().hasIndividualRecall();
|
||||
dto.gateStartConfiguration.isResultEntryEnabled = configuration.getGateStartConfiguration().isResultEntryEnabled();
|
||||
copyBasicRacingProcedureProperties(configuration.getGateStartConfiguration(), dto.gateStartConfiguration);
|
||||
dto.gateStartConfiguration.hasPathfinder = configuration.getGateStartConfiguration().hasPathfinder();
|
||||
dto.gateStartConfiguration.hasAdditionalGolfDownTime = configuration.getGateStartConfiguration().hasAdditionalGolfDownTime();
|
||||
}
|
||||
if (configuration.getESSConfiguration() != null) {
|
||||
dto.essConfiguration = new DeviceConfigurationDTO.RegattaConfigurationDTO.ESSConfigurationDTO();
|
||||
dto.essConfiguration.classFlag = configuration.getESSConfiguration().getClassFlag();
|
||||
dto.essConfiguration.hasIndividualRecall = configuration.getESSConfiguration().hasIndividualRecall();
|
||||
dto.essConfiguration.isResultEntryEnabled = configuration.getESSConfiguration().isResultEntryEnabled();
|
||||
copyBasicRacingProcedureProperties(configuration.getESSConfiguration(), dto.essConfiguration);
|
||||
}
|
||||
if (configuration.getBasicConfiguration() != null) {
|
||||
dto.basicConfiguration = new DeviceConfigurationDTO.RegattaConfigurationDTO.RacingProcedureConfigurationDTO();
|
||||
dto.basicConfiguration.classFlag = configuration.getBasicConfiguration().getClassFlag();
|
||||
dto.basicConfiguration.hasIndividualRecall = configuration.getBasicConfiguration().hasIndividualRecall();
|
||||
dto.basicConfiguration.isResultEntryEnabled = configuration.getBasicConfiguration().isResultEntryEnabled();
|
||||
copyBasicRacingProcedureProperties(configuration.getBasicConfiguration(), dto.basicConfiguration);
|
||||
}
|
||||
if (configuration.getLeagueConfiguration() != null) {
|
||||
dto.leagueConfiguration = new DeviceConfigurationDTO.RegattaConfigurationDTO.LeagueConfigurationDTO();
|
||||
dto.leagueConfiguration.classFlag = configuration.getLeagueConfiguration().getClassFlag();
|
||||
dto.leagueConfiguration.hasIndividualRecall = configuration.getLeagueConfiguration().hasIndividualRecall();
|
||||
dto.leagueConfiguration.isResultEntryEnabled = configuration.getLeagueConfiguration().isResultEntryEnabled();
|
||||
copyBasicRacingProcedureProperties(configuration.getLeagueConfiguration(), dto.leagueConfiguration);
|
||||
}
|
||||
return dto;
|
||||
}
|
||||
|
||||
private void copyBasicRacingProcedureProperties(RacingProcedureConfiguration configuration, final RacingProcedureConfigurationDTO racingProcedureConfigurationDTO) {
|
||||
racingProcedureConfigurationDTO.classFlag = configuration.getClassFlag();
|
||||
racingProcedureConfigurationDTO.hasIndividualRecall = configuration.hasIndividualRecall();
|
||||
racingProcedureConfigurationDTO.isResultEntryEnabled = configuration.isResultEntryEnabled();
|
||||
}
|
||||
|
||||
private void copyRacingProcedureWithConfigurableStartModeFlagProperties(LineStartConfiguration configuration, final RacingProcedureWithConfigurableStartModeFlagConfigurationDTO racingProcedureConfigurationDTO) {
|
||||
racingProcedureConfigurationDTO.startModeFlags = configuration.getStartModeFlags();
|
||||
}
|
||||
|
||||
private DeviceConfigurationImpl convertToDeviceConfiguration(DeviceConfigurationDTO dto) {
|
||||
DeviceConfigurationImpl configuration = new DeviceConfigurationImpl(convertToRegattaConfiguration(dto.regattaConfiguration));
|
||||
@@ -4907,6 +4916,12 @@ public class SailingServiceImpl extends ProxiedRemoteServiceServlet implements S
|
||||
config.setStartModeFlags(dto.rrs26Configuration.startModeFlags);
|
||||
configuration.setRRS26Configuration(config);
|
||||
}
|
||||
if (dto.swcStartConfiguration != null) {
|
||||
SWCConfigurationImpl config = new SWCConfigurationImpl();
|
||||
applyGeneralRacingProcedureConfigProperties(dto.swcStartConfiguration, config);
|
||||
config.setStartModeFlags(dto.swcStartConfiguration.startModeFlags);
|
||||
configuration.setSWCConfiguration(config);
|
||||
}
|
||||
if (dto.gateStartConfiguration != null) {
|
||||
GateStartConfigurationImpl config = new GateStartConfigurationImpl();
|
||||
applyGeneralRacingProcedureConfigProperties(dto.gateStartConfiguration, config);
|
||||
|
||||
+5
-3
@@ -10,12 +10,14 @@ import com.sap.sailing.domain.common.racelog.RacingProcedureType;
|
||||
public class DeviceConfigurationDTO implements IsSerializable {
|
||||
|
||||
public static class RegattaConfigurationDTO implements IsSerializable {
|
||||
public static class RRS26ConfigurationDTO extends RacingProcedureConfigurationDTO {
|
||||
public static class RacingProcedureWithConfigurableStartModeFlagConfigurationDTO extends RacingProcedureConfigurationDTO {
|
||||
public List<Flags> startModeFlags;
|
||||
}
|
||||
|
||||
public static class RRS26ConfigurationDTO extends RacingProcedureWithConfigurableStartModeFlagConfigurationDTO {
|
||||
}
|
||||
|
||||
public static class SWCStartConfigurationDTO extends RacingProcedureConfigurationDTO {
|
||||
public List<Flags> startModeFlags;
|
||||
public static class SWCStartConfigurationDTO extends RacingProcedureWithConfigurableStartModeFlagConfigurationDTO {
|
||||
}
|
||||
|
||||
public static class GateStartConfigurationDTO extends RacingProcedureConfigurationDTO {
|
||||
|
||||
Reference in new issue
Block a user