mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-08 21:30:57 +00:00
addressing bug 623: removing DeprecatedRegattaDTO
This commit is contained in:
1 parent
fb6163f508
commit
460ad15b40
7 files changed
+56
-108
No files matched your search
+7
-10
@@ -15,16 +15,15 @@ import com.google.gwt.user.client.ui.HorizontalPanel;
|
||||
import com.google.gwt.user.client.ui.Label;
|
||||
import com.google.gwt.user.client.ui.ListBox;
|
||||
import com.google.gwt.user.client.ui.VerticalPanel;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.RaceIdentifier;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaDisplayer;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.gwt.ui.client.RaceSelectionChangeListener;
|
||||
import com.sap.sailing.gwt.ui.client.RaceSelectionProvider;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaDisplayer;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeprecatedRegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
|
||||
public class RacesListBoxPanel extends FormPanel implements RegattaDisplayer, RaceSelectionChangeListener {
|
||||
private final List<RaceDTO> raceList;
|
||||
@@ -72,11 +71,9 @@ public class RacesListBoxPanel extends FormPanel implements RegattaDisplayer, Ra
|
||||
public void fillRegattas(List<RegattaDTO> result) {
|
||||
raceList.clear();
|
||||
raceListBox.clear();
|
||||
for (RegattaDTO event : result) {
|
||||
for (DeprecatedRegattaDTO regatta : event.deprecatedRegattas) {
|
||||
for (RaceDTO race : regatta.races) {
|
||||
raceList.add(race);
|
||||
}
|
||||
for (RegattaDTO regatta : result) {
|
||||
for (RaceDTO race : regatta.races) {
|
||||
raceList.add(race);
|
||||
}
|
||||
}
|
||||
Collections.sort(raceList, new Comparator<RaceDTO>() {
|
||||
|
||||
+5
-7
@@ -412,13 +412,11 @@ public class TrackedRacesListComposite extends FormPanel implements RegattaDispl
|
||||
}
|
||||
List<RaceDTO> newAllRaces = new ArrayList<RaceDTO>();
|
||||
List<RegattaAndRaceIdentifier> newAllRaceIdentifiers = new ArrayList<RegattaAndRaceIdentifier>();
|
||||
for (RegattaDTO event : events) {
|
||||
for (DeprecatedRegattaDTO regatta : event.deprecatedRegattas) {
|
||||
for (RaceDTO race : regatta.races) {
|
||||
if (race != null) {
|
||||
newAllRaces.add(race);
|
||||
newAllRaceIdentifiers.add(race.getRaceIdentifier());
|
||||
}
|
||||
for (RegattaDTO regatta : events) {
|
||||
for (RaceDTO race : regatta.races) {
|
||||
if (race != null) {
|
||||
newAllRaces.add(race);
|
||||
newAllRaceIdentifiers.add(race.getRaceIdentifier());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+8
-11
@@ -12,14 +12,13 @@ import com.google.gwt.user.client.ui.Grid;
|
||||
import com.google.gwt.user.client.ui.VerticalPanel;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.gwt.ui.client.ErrorReporter;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.gwt.ui.client.RaceSelectionChangeListener;
|
||||
import com.sap.sailing.gwt.ui.client.RaceSelectionModel;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeprecatedRegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
|
||||
public class TrackedRacesManagementPanel extends AbstractEventManagementPanel implements RaceSelectionChangeListener {
|
||||
private RegattaAndRaceIdentifier singleSelectedRace;
|
||||
@@ -82,14 +81,12 @@ public class TrackedRacesManagementPanel extends AbstractEventManagementPanel im
|
||||
selectedRacePanel.setCaptionText(singleSelectedRace.getRaceName());
|
||||
selectedRacePanel.setVisible(true);
|
||||
|
||||
for (RegattaDTO event : savedEvents) {
|
||||
for (DeprecatedRegattaDTO regatta : event.deprecatedRegattas) {
|
||||
for (RaceDTO race : regatta.races) {
|
||||
if (race != null && race.getRaceIdentifier().equals(singleSelectedRace)) {
|
||||
this.selectedRaceDTO = race;
|
||||
refreshRaceData();
|
||||
break;
|
||||
}
|
||||
for (RegattaDTO regatta : savedEvents) {
|
||||
for (RaceDTO race : regatta.races) {
|
||||
if (race != null && race.getRaceIdentifier().equals(singleSelectedRace)) {
|
||||
this.selectedRaceDTO = race;
|
||||
refreshRaceData();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+4
-7
@@ -22,11 +22,10 @@ import com.sap.sailing.gwt.ui.client.RaceSelectionModel;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
|
||||
import com.sap.sailing.gwt.ui.client.Timer;
|
||||
import com.sap.sailing.gwt.ui.client.Timer.PlayModes;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardGroupDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeprecatedRegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.UserDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.panels.BreadcrumbPanel;
|
||||
|
||||
@@ -147,11 +146,9 @@ public class RaceBoardEntryPoint extends AbstractEntryPoint {
|
||||
private RaceDTO findRace(String regattaName, String raceName, List<RegattaDTO> regattas) {
|
||||
for (RegattaDTO regattaDTO : regattas) {
|
||||
if (regattaDTO.name.equals(regattaName)) {
|
||||
for (DeprecatedRegattaDTO deprecatedRegattaDTO : regattaDTO.deprecatedRegattas) {
|
||||
for (RaceDTO raceDTO: deprecatedRegattaDTO.races) {
|
||||
if (raceDTO.name.equals(raceName)) {
|
||||
return raceDTO;
|
||||
}
|
||||
for (RaceDTO raceDTO : regattaDTO.races) {
|
||||
if (raceDTO.name.equals(raceName)) {
|
||||
return raceDTO;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+6
-9
@@ -20,17 +20,17 @@ import com.google.gwt.user.client.ui.Label;
|
||||
import com.google.gwt.user.client.ui.MenuBar;
|
||||
import com.google.gwt.user.client.ui.ToggleButton;
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.RaceIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.WindSourceType;
|
||||
import com.sap.sailing.gwt.ui.actions.AsyncActionsExecutor;
|
||||
import com.sap.sailing.gwt.ui.client.CompetitorSelectionModel;
|
||||
import com.sap.sailing.gwt.ui.client.ErrorReporter;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaDisplayer;
|
||||
import com.sap.sailing.gwt.ui.client.RaceSelectionChangeListener;
|
||||
import com.sap.sailing.gwt.ui.client.RaceSelectionProvider;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimePanel;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaDisplayer;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.Timer;
|
||||
@@ -38,9 +38,8 @@ import com.sap.sailing.gwt.ui.client.UserAgentChecker.UserAgentTypes;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.LeaderboardPanel;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.LeaderboardSettings;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.LeaderboardSettingsFactory;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeprecatedRegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.UserDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.charts.AbstractChartPanel;
|
||||
import com.sap.sailing.gwt.ui.shared.charts.MultiChartPanel;
|
||||
@@ -369,11 +368,9 @@ public class RaceBoardPanel extends FormPanel implements RegattaDisplayer, RaceS
|
||||
public void fillRegattas(List<RegattaDTO> regattas) {
|
||||
racesByIdentifier.clear();
|
||||
for (RegattaDTO regatta : regattas) {
|
||||
for (DeprecatedRegattaDTO deprecatedRegatta : regatta.deprecatedRegattas) {
|
||||
for (RaceDTO race : deprecatedRegatta.races) {
|
||||
if (race != null && race.getRaceIdentifier() != null) {
|
||||
racesByIdentifier.put(race.getRaceIdentifier(), race);
|
||||
}
|
||||
for (RaceDTO race : regatta.races) {
|
||||
if (race != null && race.getRaceIdentifier() != null) {
|
||||
racesByIdentifier.put(race.getRaceIdentifier(), race);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+17
-49
@@ -35,13 +35,12 @@ import org.osgi.framework.BundleContext;
|
||||
import org.osgi.util.tracker.ServiceTracker;
|
||||
|
||||
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
|
||||
import com.sap.sailing.domain.base.BoatClass;
|
||||
import com.sap.sailing.domain.base.Buoy;
|
||||
import com.sap.sailing.domain.base.Competitor;
|
||||
import com.sap.sailing.domain.base.Course;
|
||||
import com.sap.sailing.domain.base.Regatta;
|
||||
import com.sap.sailing.domain.base.Leg;
|
||||
import com.sap.sailing.domain.base.RaceDefinition;
|
||||
import com.sap.sailing.domain.base.Regatta;
|
||||
import com.sap.sailing.domain.base.SpeedWithBearing;
|
||||
import com.sap.sailing.domain.base.Waypoint;
|
||||
import com.sap.sailing.domain.base.impl.KnotSpeedImpl;
|
||||
@@ -52,11 +51,6 @@ import com.sap.sailing.domain.common.Bearing;
|
||||
import com.sap.sailing.domain.common.CountryCode;
|
||||
import com.sap.sailing.domain.common.DetailType;
|
||||
import com.sap.sailing.domain.common.Distance;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaFetcher;
|
||||
import com.sap.sailing.domain.common.RegattaIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaName;
|
||||
import com.sap.sailing.domain.common.RegattaNameAndRaceName;
|
||||
import com.sap.sailing.domain.common.LegType;
|
||||
import com.sap.sailing.domain.common.MaxPointsReason;
|
||||
import com.sap.sailing.domain.common.NoWindError;
|
||||
@@ -65,6 +59,11 @@ import com.sap.sailing.domain.common.Placemark;
|
||||
import com.sap.sailing.domain.common.Position;
|
||||
import com.sap.sailing.domain.common.RaceFetcher;
|
||||
import com.sap.sailing.domain.common.RaceIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaFetcher;
|
||||
import com.sap.sailing.domain.common.RegattaIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaName;
|
||||
import com.sap.sailing.domain.common.RegattaNameAndRaceName;
|
||||
import com.sap.sailing.domain.common.Speed;
|
||||
import com.sap.sailing.domain.common.Tack;
|
||||
import com.sap.sailing.domain.common.TimePoint;
|
||||
@@ -112,7 +111,6 @@ import com.sap.sailing.gwt.ui.shared.BoatClassDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.CompetitorDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.CompetitorRaceDataDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.CourseDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.GPSFixDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardEntryDTO;
|
||||
@@ -132,7 +130,7 @@ import com.sap.sailing.gwt.ui.shared.RaceDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceInLeaderboardDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceMapDataDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceTimesInfoDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.DeprecatedRegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.ReplicaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.ReplicationMasterDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.ReplicationStateDTO;
|
||||
@@ -163,8 +161,8 @@ import com.sap.sailing.server.operationaltransformation.RenameLeaderboardColumn;
|
||||
import com.sap.sailing.server.operationaltransformation.RenameLeaderboardGroup;
|
||||
import com.sap.sailing.server.operationaltransformation.SetRaceIsKnownToStartUpwind;
|
||||
import com.sap.sailing.server.operationaltransformation.SetWindSourcesToExclude;
|
||||
import com.sap.sailing.server.operationaltransformation.StopTrackingRegatta;
|
||||
import com.sap.sailing.server.operationaltransformation.StopTrackingRace;
|
||||
import com.sap.sailing.server.operationaltransformation.StopTrackingRegatta;
|
||||
import com.sap.sailing.server.operationaltransformation.UpdateCompetitorDisplayNameInLeaderboard;
|
||||
import com.sap.sailing.server.operationaltransformation.UpdateIsMedalRace;
|
||||
import com.sap.sailing.server.operationaltransformation.UpdateLeaderboard;
|
||||
@@ -422,46 +420,18 @@ public class SailingServiceImpl extends RemoteServiceServlet implements SailingS
|
||||
List<RegattaDTO> result = new ArrayList<RegattaDTO>();
|
||||
for (Regatta regatta : getService().getAllRegattas()) {
|
||||
List<CompetitorDTO> competitorList = getCompetitorDTOs(regatta.getCompetitors());
|
||||
List<DeprecatedRegattaDTO> regattasList = getRegattaDTOs(regatta);
|
||||
RegattaDTO regattaDTO = new RegattaDTO(regatta.getName(), regattasList, competitorList);
|
||||
for (DeprecatedRegattaDTO deprecatedRegatta : regattasList) {
|
||||
deprecatedRegatta.setRegatta(regattaDTO);
|
||||
}
|
||||
if (!regattaDTO.deprecatedRegattas.isEmpty()) {
|
||||
RegattaDTO regattaDTO = new RegattaDTO(regatta.getName(), competitorList);
|
||||
regattaDTO.races = getRaceDTOs(regatta);
|
||||
if (!regattaDTO.races.isEmpty()) {
|
||||
result.add(regattaDTO);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private List<DeprecatedRegattaDTO> getRegattaDTOs(Regatta regatta) {
|
||||
Map<BoatClass, Set<RaceDefinition>> racesByBoatClass = new HashMap<BoatClass, Set<RaceDefinition>>();
|
||||
for (RaceDefinition r : regatta.getAllRaces()) {
|
||||
Set<RaceDefinition> racesForBoatClass = racesByBoatClass.get(r.getBoatClass());
|
||||
if (racesForBoatClass == null) {
|
||||
racesForBoatClass = new HashSet<RaceDefinition>();
|
||||
racesByBoatClass.put(r.getBoatClass(), racesForBoatClass);
|
||||
}
|
||||
racesForBoatClass.add(r);
|
||||
}
|
||||
List<DeprecatedRegattaDTO> result = new ArrayList<DeprecatedRegattaDTO>();
|
||||
for (Map.Entry<BoatClass, Set<RaceDefinition>> e : racesByBoatClass.entrySet()) {
|
||||
List<RaceDTO> raceDTOsInBoatClass = getRaceDTOs(regatta, e.getValue());
|
||||
if (!raceDTOsInBoatClass.isEmpty()) {
|
||||
DeprecatedRegattaDTO deprecatedRegatta = new DeprecatedRegattaDTO(new BoatClassDTO(e.getKey() == null ? "" : e.getKey().getName(), e
|
||||
.getKey().getHullLength().getMeters()), raceDTOsInBoatClass);
|
||||
for (RaceDTO race : raceDTOsInBoatClass) {
|
||||
race.setRegatta(deprecatedRegatta);
|
||||
}
|
||||
result.add(deprecatedRegatta);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private List<RaceDTO> getRaceDTOs(Regatta regatta, Set<RaceDefinition> races) {
|
||||
private List<RaceDTO> getRaceDTOs(Regatta regatta) {
|
||||
List<RaceDTO> result = new ArrayList<RaceDTO>();
|
||||
for (RaceDefinition r : races) {
|
||||
for (RaceDefinition r : regatta.getAllRaces()) {
|
||||
RaceDTO raceDTO = new RaceDTO(r.getName(), getCompetitorDTOs(r.getCompetitors()), getService().isRaceBeingTracked(r));
|
||||
TrackedRace trackedRace = getService().getExistingTrackedRace(new RegattaNameAndRaceName(regatta.getName(), r.getName()));
|
||||
if (trackedRace != null) {
|
||||
@@ -1183,12 +1153,10 @@ public class SailingServiceImpl extends RemoteServiceServlet implements SailingS
|
||||
@Override
|
||||
public List<LeaderboardDTO> getLeaderboardsByEvent(RegattaDTO regatta) {
|
||||
List<LeaderboardDTO> results = new ArrayList<LeaderboardDTO>();
|
||||
for (DeprecatedRegattaDTO deprecatedRegatta : regatta.deprecatedRegattas) {
|
||||
for (RaceDTO race : deprecatedRegatta.races) {
|
||||
List<LeaderboardDTO> leaderboard = getLeaderboardsByRace(race);
|
||||
if (leaderboard != null && !leaderboard.isEmpty()) {
|
||||
results.addAll(leaderboard);
|
||||
}
|
||||
for (RaceDTO race : regatta.races) {
|
||||
List<LeaderboardDTO> leaderboard = getLeaderboardsByRace(race);
|
||||
if (leaderboard != null && !leaderboard.isEmpty()) {
|
||||
results.addAll(leaderboard);
|
||||
}
|
||||
}
|
||||
// Removing duplicates
|
||||
|
||||
+9
-15
@@ -6,25 +6,24 @@ import java.util.List;
|
||||
import com.google.gwt.user.client.rpc.IsSerializable;
|
||||
|
||||
public class RegattaDTO extends NamedDTO implements IsSerializable {
|
||||
public List<DeprecatedRegattaDTO> deprecatedRegattas;
|
||||
public BoatClassDTO boatClass;
|
||||
public List<RaceDTO> races;
|
||||
public List<CompetitorDTO> competitors;
|
||||
|
||||
public RegattaDTO() {
|
||||
}
|
||||
|
||||
public RegattaDTO(String name, List<DeprecatedRegattaDTO> deprecatedRegattas, List<CompetitorDTO> competitors) {
|
||||
public RegattaDTO(String name, List<CompetitorDTO> competitors) {
|
||||
super(name);
|
||||
this.name = name;
|
||||
this.deprecatedRegattas = deprecatedRegattas;
|
||||
this.competitors = competitors;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return The start date of the first {@link RaceDTO Race} in the first {@link DeprecatedRegattaDTO Regatta}, or
|
||||
* <code>null</code> if the start date isn't set
|
||||
* @return The start date of the first {@link #races Race}, or <code>null</code> if the start date isn't set
|
||||
*/
|
||||
public Date getStartDate() {
|
||||
return deprecatedRegattas.get(0).races.get(0).startOfRace;
|
||||
return races.get(0).startOfRace;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -32,17 +31,12 @@ public class RegattaDTO extends NamedDTO implements IsSerializable {
|
||||
*/
|
||||
public boolean currentlyTracked() {
|
||||
boolean tracked = false;
|
||||
|
||||
regattaLoop:
|
||||
for (DeprecatedRegattaDTO deprecatedRegatta : deprecatedRegattas) {
|
||||
for (RaceDTO race : deprecatedRegatta.races) {
|
||||
tracked = race.currentlyTracked;
|
||||
if (tracked) {
|
||||
break regattaLoop;
|
||||
}
|
||||
for (RaceDTO race : races) {
|
||||
tracked = race.currentlyTracked;
|
||||
if (tracked) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return tracked;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user