diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardGroupConfigPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardGroupConfigPanel.java
index e61dd6e38b7..63f24ca2419 100644
--- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardGroupConfigPanel.java
+++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardGroupConfigPanel.java
@@ -556,6 +556,12 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel implements
});
}
+ /**
+ * If no leaderboard group is selected or more than one is selected, this method is a no-op because the
+ * leaderboard list displayed is defined to the be list of all leaderboards available, excluding those
+ * leaderboards that are already assigned to the selected leaderboard group. In other words,
+ * the leaderboard list is only well-defined in case a single leaderboard group is selected.
+ */
private void refreshLeaderboardsList() {
final LeaderboardGroupDTO selectedGroup = getSelectedGroup();
final Set selectedLeaderboards = leaderboardsSelectionModel.getSelectedSet();
@@ -699,7 +705,7 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel implements
}
private void removeLeaderboardGroup(final LeaderboardGroupDTO group) {
- sailingService.removeLeaderboardGroup(group.getName(), new AsyncCallback() {
+ sailingService.removeLeaderboardGroups(Collections.singleton(group.getName()), new AsyncCallback() {
@Override
public void onFailure(Throwable t) {
errorReporter.reportError("Error trying to remove leaderboard group " + group.getName() + ": "
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingService.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingService.java
index d6b1f8ce6fa..062e76d9c7d 100644
--- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingService.java
+++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingService.java
@@ -215,8 +215,6 @@ public interface SailingService extends RemoteService {
void renameLeaderboardGroup(String oldName, String newName);
- void removeLeaderboardGroup(String groupName);
-
void removeLeaderboardGroups(Set groupNames);
LeaderboardGroupDTO createLeaderboardGroup(String groupName, String description,
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceAsync.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceAsync.java
index 6b92267231d..cab596baed7 100755
--- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceAsync.java
+++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceAsync.java
@@ -265,11 +265,6 @@ public interface SailingServiceAsync {
*/
void renameLeaderboardGroup(String oldName, String newName, AsyncCallback callback);
- /**
- * Removes the leaderboard group with the name groupName from the service and the persistant store.
- */
- void removeLeaderboardGroup(String groupName, AsyncCallback callback);
-
/**
* Removes the leaderboard groups with the given names from the service and the persistant store.
*/
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java
index 5f6e302230e..7219a08a0c4 100755
--- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java
+++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java
@@ -2462,8 +2462,7 @@ public class SailingServiceImpl extends ProxiedRemoteServiceServlet implements S
}
}
- @Override
- public void removeLeaderboardGroup(String groupName) {
+ private void removeLeaderboardGroup(String groupName) {
getService().apply(new RemoveLeaderboardGroup(groupName));
}