mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-30 09:26:44 +00:00
Merge remote-tracking branch 'origin/master'
Conflicts: java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingService.java java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceAsync.java java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
package com.sap.sailing.domain.base;
|
||||
|
||||
import com.sap.sailing.domain.common.Named;
|
||||
import com.sap.sailing.domain.common.RaceIdentifier;
|
||||
import com.sap.sailing.domain.common.Renamable;
|
||||
import com.sap.sailing.domain.common.impl.Util;
|
||||
import com.sap.sailing.domain.common.impl.Util.Pair;
|
||||
import com.sap.sailing.domain.leaderboard.Leaderboard;
|
||||
@@ -25,7 +25,7 @@ import com.sap.sailing.util.impl.RaceColumnListeners;
|
||||
* @author Axel Uhl (D043530)
|
||||
*
|
||||
*/
|
||||
public interface RaceColumn extends Renamable {
|
||||
public interface RaceColumn extends Named {
|
||||
/**
|
||||
* @return the fleets for each of which this column has a single race and therefore optionally a {@link TrackedRace}, in
|
||||
* ascending order; best fleets first
|
||||
|
||||
+1
-13
@@ -14,10 +14,8 @@ public abstract class AbstractRaceColumn extends SimpleAbstractRaceColumn implem
|
||||
private static final long serialVersionUID = -7801617988982540470L;
|
||||
|
||||
private final Map<Fleet, TrackedRace> trackedRaces;
|
||||
private String name;
|
||||
private final Map<Fleet, RaceIdentifier> raceIdentifiers;
|
||||
public AbstractRaceColumn(String name) {
|
||||
this.name = name;
|
||||
public AbstractRaceColumn() {
|
||||
this.trackedRaces = new HashMap<Fleet, TrackedRace>();
|
||||
this.raceIdentifiers = new HashMap<Fleet, RaceIdentifier>();
|
||||
}
|
||||
@@ -49,16 +47,6 @@ public abstract class AbstractRaceColumn extends SimpleAbstractRaceColumn implem
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setName(String newName) {
|
||||
this.name = newName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RaceIdentifier getRaceIdentifier(Fleet fleet) {
|
||||
return raceIdentifiers.get(fleet);
|
||||
|
||||
+7
-1
@@ -18,6 +18,7 @@ import com.sap.sailing.domain.tracking.TrackedRegattaRegistry;
|
||||
public class RaceColumnInSeriesImpl extends AbstractRaceColumn implements RaceColumnInSeries {
|
||||
private static final long serialVersionUID = -2199678838624406645L;
|
||||
private final Series series;
|
||||
private final String name;
|
||||
|
||||
/**
|
||||
* Making this transient will leave it <code>null</code> on a replica. This, however, is OK because
|
||||
@@ -34,11 +35,16 @@ public class RaceColumnInSeriesImpl extends AbstractRaceColumn implements RaceCo
|
||||
* carried out.
|
||||
*/
|
||||
public RaceColumnInSeriesImpl(String name, Series series, TrackedRegattaRegistry trackedRegattaRegistry) {
|
||||
super(name);
|
||||
this.name = name;
|
||||
this.series = series;
|
||||
this.trackedRegattaRegistry = trackedRegattaRegistry;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Regatta getRegatta() {
|
||||
return getSeries().getRegatta();
|
||||
|
||||
+1
@@ -3,5 +3,6 @@ package com.sap.sailing.domain.leaderboard;
|
||||
import com.sap.sailing.domain.base.RaceColumn;
|
||||
|
||||
public interface FlexibleRaceColumn extends RaceColumn {
|
||||
void setName(String newName);
|
||||
void setIsMedalRace(boolean isMedalRace);
|
||||
}
|
||||
|
||||
+14
-2
@@ -10,7 +10,8 @@ import com.sap.sailing.domain.leaderboard.FlexibleRaceColumn;
|
||||
|
||||
public class RaceColumnImpl extends AbstractRaceColumn implements FlexibleRaceColumn {
|
||||
private static final long serialVersionUID = -7801617988982540470L;
|
||||
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* All fleets for which this column can contain a race. This is the maximum set of keys possible for
|
||||
* {@link #trackedRaces} and {@link #raceIdentifiers}.
|
||||
@@ -19,7 +20,8 @@ public class RaceColumnImpl extends AbstractRaceColumn implements FlexibleRaceCo
|
||||
private boolean medalRace;
|
||||
|
||||
public RaceColumnImpl(String name, boolean medalRace, Iterable<Fleet> fleets) {
|
||||
super(name);
|
||||
super();
|
||||
this.name = name;
|
||||
this.medalRace = medalRace;
|
||||
List<Fleet> myFleets = new ArrayList<Fleet>();
|
||||
for (Fleet fleet : fleets) {
|
||||
@@ -29,6 +31,16 @@ public class RaceColumnImpl extends AbstractRaceColumn implements FlexibleRaceCo
|
||||
this.fleets = myFleets;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setName(String newName) {
|
||||
this.name = newName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMedalRace() {
|
||||
return medalRace;
|
||||
|
||||
-4
@@ -95,10 +95,6 @@ public class MetaLeaderboardColumn extends SimpleAbstractRaceColumn implements R
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setName(String newName) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void releaseTrackedRace(Fleet fleet) {
|
||||
}
|
||||
|
||||
+1
-3
@@ -150,9 +150,7 @@ public interface SailingService extends RemoteService {
|
||||
|
||||
void removeRaceColumnFromSeries(RegattaIdentifier regattaIdentifier, String seriesName, String columnName);
|
||||
|
||||
void renameRaceColumnInSeries(RegattaIdentifier regattaIdentifier, String seriesName, String oldColumnName, String newColumnName);
|
||||
|
||||
void moveRaceColumnInSeriesUp(RegattaIdentifier regattaIdentifier, String seriesName, String columnName);
|
||||
void moveRaceColumnInSeriesUp(RegattaIdentifier regattaIdentifier, String seriesName, String columnName);
|
||||
|
||||
void moveRaceColumnInSeriesDown(RegattaIdentifier regattaIdentifier, String seriesName, String columnName);
|
||||
|
||||
|
||||
+1
-4
@@ -377,10 +377,7 @@ public interface SailingServiceAsync {
|
||||
void removeRaceColumnFromSeries(RegattaIdentifier regattaIdentifier, String seriesName, String columnName,
|
||||
AsyncCallback<Void> callback);
|
||||
|
||||
void renameRaceColumnInSeries(RegattaIdentifier regattaIdentifier, String seriesName, String oldColumnName,
|
||||
String newColumnName, AsyncCallback<Void> callback);
|
||||
|
||||
void moveRaceColumnInSeriesUp(RegattaIdentifier regattaIdentifier, String seriesName, String columnName,
|
||||
void moveRaceColumnInSeriesUp(RegattaIdentifier regattaIdentifier, String seriesName, String columnName,
|
||||
AsyncCallback<Void> callback);
|
||||
|
||||
void moveRaceColumnInSeriesDown(RegattaIdentifier regattaIdentifier, String seriesName, String columnName,
|
||||
|
||||
+1
-8
@@ -198,7 +198,6 @@ import com.sap.sailing.server.operationaltransformation.RemoveLeaderboard;
|
||||
import com.sap.sailing.server.operationaltransformation.RemoveLeaderboardColumn;
|
||||
import com.sap.sailing.server.operationaltransformation.RemoveLeaderboardGroup;
|
||||
import com.sap.sailing.server.operationaltransformation.RemoveRegatta;
|
||||
import com.sap.sailing.server.operationaltransformation.RenameColumnInSeries;
|
||||
import com.sap.sailing.server.operationaltransformation.RenameEvent;
|
||||
import com.sap.sailing.server.operationaltransformation.RenameLeaderboard;
|
||||
import com.sap.sailing.server.operationaltransformation.RenameLeaderboardColumn;
|
||||
@@ -2667,13 +2666,7 @@ public class SailingServiceImpl extends RemoteServiceServlet implements SailingS
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renameRaceColumnInSeries(RegattaIdentifier regattaIdentifier, String seriesName, String oldColumnName,
|
||||
String newColumnName) {
|
||||
getService().apply(new RenameColumnInSeries(regattaIdentifier, seriesName, oldColumnName, newColumnName));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void moveRaceColumnInSeriesUp(RegattaIdentifier regattaIdentifier, String seriesName, String columnName) {
|
||||
public void moveRaceColumnInSeriesUp(RegattaIdentifier regattaIdentifier, String seriesName, String columnName) {
|
||||
getService().apply(new MoveColumnInSeriesUp(regattaIdentifier, seriesName, columnName));
|
||||
}
|
||||
|
||||
|
||||
+8
-2
@@ -54,6 +54,7 @@ import com.sap.sailing.domain.common.impl.Util;
|
||||
import com.sap.sailing.domain.common.impl.Util.Pair;
|
||||
import com.sap.sailing.domain.common.impl.Util.Triple;
|
||||
import com.sap.sailing.domain.leaderboard.FlexibleLeaderboard;
|
||||
import com.sap.sailing.domain.leaderboard.FlexibleRaceColumn;
|
||||
import com.sap.sailing.domain.leaderboard.Leaderboard;
|
||||
import com.sap.sailing.domain.leaderboard.LeaderboardGroup;
|
||||
import com.sap.sailing.domain.leaderboard.LeaderboardRegistry;
|
||||
@@ -377,8 +378,13 @@ public class RacingEventServiceImpl implements RacingEventService, RegattaListen
|
||||
public void renameLeaderboardColumn(String leaderboardName, String oldColumnName, String newColumnName) {
|
||||
Leaderboard leaderboard = getLeaderboardByName(leaderboardName);
|
||||
if (leaderboard != null) {
|
||||
leaderboard.getRaceColumnByName(oldColumnName).setName(newColumnName);
|
||||
updateStoredLeaderboard((FlexibleLeaderboard) leaderboard);
|
||||
final RaceColumn raceColumn = leaderboard.getRaceColumnByName(oldColumnName);
|
||||
if (raceColumn instanceof FlexibleRaceColumn) {
|
||||
((FlexibleRaceColumn) raceColumn).setName(newColumnName);
|
||||
updateStoredLeaderboard((FlexibleLeaderboard) leaderboard);
|
||||
} else {
|
||||
throw new IllegalArgumentException("Race column "+oldColumnName+" cannot be renamed");
|
||||
}
|
||||
} else {
|
||||
throw new IllegalArgumentException("Leaderboard named "+leaderboardName+" not found");
|
||||
}
|
||||
|
||||
-57
@@ -1,57 +0,0 @@
|
||||
package com.sap.sailing.server.operationaltransformation;
|
||||
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.sap.sailing.domain.base.RaceColumnInSeries;
|
||||
import com.sap.sailing.domain.base.Series;
|
||||
import com.sap.sailing.domain.common.RegattaIdentifier;
|
||||
import com.sap.sailing.server.RacingEventService;
|
||||
import com.sap.sailing.server.RacingEventServiceOperation;
|
||||
|
||||
public class RenameColumnInSeries extends AbstractColumnInSeriesOperation<Void> {
|
||||
private static final long serialVersionUID = -6772077267645894432L;
|
||||
private final static Logger logger = Logger.getLogger(RenameColumnInSeries.class.getName());
|
||||
private final String newColumnName;
|
||||
|
||||
public RenameColumnInSeries(RegattaIdentifier regattaIdentifier, String seriesName, String columnName, String newColumnName) {
|
||||
super(regattaIdentifier, seriesName, columnName);
|
||||
this.newColumnName = newColumnName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void internalApplyTo(RacingEventService toState) throws Exception {
|
||||
Series series = getSeries(toState);
|
||||
if (series != null) {
|
||||
RaceColumnInSeries raceColumn = series.getRaceColumnByName(getColumnName());
|
||||
if (raceColumn != null) {
|
||||
RaceColumnInSeries existingRaceColumnWithNewName = series.getRaceColumnByName(newColumnName);
|
||||
if (existingRaceColumnWithNewName != null) {
|
||||
logger.info("Not renaming column "+getColumnName()+" in series "+series.getName()+" in regatta "+series.getRegatta().getName()+
|
||||
" to "+newColumnName+" because a column of that name already exists");
|
||||
} else {
|
||||
raceColumn.setName(newColumnName);
|
||||
if (series.getRegatta().isPersistent()) {
|
||||
toState.updateStoredRegatta(series.getRegatta());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
logger.warning("Didn't find race column " + getColumnName() + " in series " + series.getName()
|
||||
+ " in regatta " + series.getRegatta().getName());
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RacingEventServiceOperation<?> transformClientOp(RacingEventServiceOperation<?> serverOp) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RacingEventServiceOperation<?> transformServerOp(RacingEventServiceOperation<?> clientOp) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user