Refactored code. Extracted hardcoded strings to stringmessage properties.

This commit is contained in:
Leon Radeck committed 2017-07-13 10:28:04 +02:00
1 parent 1b7975d391
commit 33e7f08c4d
12 files changed
+102 -61

No files matched your search

@@ -438,4 +438,9 @@ public abstract class AbstractLeaderboardDTO implements Serializable {
}
return result;
}
public String getName() {
return name;
}
}
@@ -69,7 +69,7 @@ public abstract class AbstractTrackedRacesListComposite extends AbstractComposit
private SelectionCheckboxColumn<RaceDTO> selectionCheckboxColumn;
private FlushableCellTable<RaceDTO> raceTable;
protected FlushableCellTable<RaceDTO> raceTable;
private ListDataProvider<RaceDTO> raceList;
@@ -152,26 +152,19 @@ public class EventListComposite extends Composite implements EventsRefresher, Le
removeEventsButton.setEnabled(false);
removeEventsButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
boolean deleteEvents = false;
if(refreshableEventSelectionModel.itemIsSelectedButNotVisible(eventTable.getVisibleItems())){
final String eventNames = refreshableEventSelectionModel.getSelectedSet().stream().map(e -> e.getName()).collect(Collectors.joining("\n"));
if (Window.confirm(stringMessages.doYouReallyWantToRemoveNonVisibleEvents(eventNames))) {
deleteEvents = true;
}
}
else {
if(Window.confirm(stringMessages.doYouReallyWantToRemoveEvents())) {
deleteEvents = true;
}
}
if(deleteEvents){
public void onClick(ClickEvent event) {
if(askUserForConfirmation()){
removeEvents(refreshableEventSelectionModel.getSelectedSet());
}
}
private boolean askUserForConfirmation() {
if(refreshableEventSelectionModel.itemIsSelectedButNotVisible(eventTable.getVisibleItems())){
final String eventNames = refreshableEventSelectionModel.getSelectedSet().stream().map(e -> e.getName()).collect(Collectors.joining("\n"));
return Window.confirm(stringMessages.doYouReallyWantToRemoveNonVisibleEvents(eventNames));
}
return Window.confirm(stringMessages.doYouReallyWantToRemoveEvents());
}
});
eventControlsPanel.add(removeEventsButton);
@@ -204,7 +197,7 @@ public class EventListComposite extends Composite implements EventsRefresher, Le
final boolean somethingSelected = !refreshableEventSelectionModel.getSelectedSet().isEmpty();
removeEventsButton.setEnabled(somethingSelected);
final int numberOfItemsSelected = refreshableEventSelectionModel.getSelectedSet().size();
removeEventsButton.setText(numberOfItemsSelected <= 1 ? stringMessages.remove() : stringMessages.removeAndShowCount(numberOfItemsSelected));
removeEventsButton.setText(numberOfItemsSelected <= 1 ? stringMessages.remove() : stringMessages.removeNumber(numberOfItemsSelected));
}
});
@@ -9,6 +9,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import com.google.gwt.cell.client.AbstractCell;
import com.google.gwt.cell.client.FieldUpdater;
@@ -140,10 +141,18 @@ TrackedRaceChangedListener, LeaderboardsDisplayer {
leaderboardRemoveButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if (Window.confirm(stringMessages.doYouReallyWantToRemoveLeaderboards())) {
if(askUserForConfirmation()){
removeLeaderboards(leaderboardSelectionModel.getSelectedSet());
}
}
private boolean askUserForConfirmation() {
if (leaderboardSelectionModel.itemIsSelectedButNotVisible(leaderboardTable.getVisibleItems())) {
final String leaderboardNames = leaderboardSelectionModel.getSelectedSet().stream().map(e -> e.getName()).collect(Collectors.joining("\n"));
return Window.confirm(stringMessages.doYouReallyWantToRemoveNonVisibleLeaderboards(leaderboardNames));
}
return Window.confirm(stringMessages.doYouReallyWantToRemoveLeaderboards());
}
});
controlsPanel.add(leaderboardRemoveButton);
}
@@ -753,7 +762,10 @@ TrackedRaceChangedListener, LeaderboardsDisplayer {
@Override
protected void leaderboardSelectionChanged() {
leaderboardRemoveButton.setEnabled(!leaderboardSelectionModel.getSelectedSet().isEmpty());
Set<StrippedLeaderboardDTO> selectedLeaderboards = leaderboardSelectionModel.getSelectedSet();
leaderboardRemoveButton.setEnabled(!selectedLeaderboards.isEmpty());
leaderboardRemoveButton.setText(selectedLeaderboards.size() <= 1 ? stringMessages.remove() : stringMessages.removeNumber(selectedLeaderboards.size()));
StrippedLeaderboardDTO selectedLeaderboard = getSelectedLeaderboard();
if (leaderboardSelectionModel.getSelectedSet().size() == 1 && selectedLeaderboard != null) {
raceColumnTable.getDataProvider().getList().clear();
@@ -8,6 +8,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import com.google.gwt.cell.client.FieldUpdater;
import com.google.gwt.core.client.GWT;
@@ -475,23 +476,6 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel implements
});
leaderboardGroupsControlsPanel.add(createGroupButton);
removeButton = new Button(stringMessages.remove());
removeButton.ensureDebugId("RemoveLeaderboardButton");
removeButton.setEnabled(false);
removeButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
StringBuilder messageBuilder = new StringBuilder("Do you really want to remove the leaderboard groups:\n");
for (LeaderboardGroupDTO group : refreshableGroupsSelectionModel.getSelectedSet()) {
messageBuilder.append("\n" + group.getName());
}
if (Window.confirm(messageBuilder.toString())) {
removeLeaderboardGroups(refreshableGroupsSelectionModel.getSelectedSet());
}
}
});
leaderboardGroupsControlsPanel.add(removeButton);
Button refreshButton = new Button(stringMessages.refresh());
refreshButton.ensureDebugId("RefreshLeaderboardGroupsButton");
refreshButton.addClickHandler(new ClickHandler() {
@@ -513,6 +497,30 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel implements
return ANCHORTEMPLATE.cell(UriUtils.fromString(link), group.getName());
}
};
removeButton = new Button(stringMessages.remove());
removeButton.ensureDebugId("RemoveLeaderboardButton");
removeButton.setEnabled(false);
removeButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if(askUserForConfirmation()){
removeLeaderboardGroups(refreshableGroupsSelectionModel.getSelectedSet());
}
}
private boolean askUserForConfirmation() {
if (refreshableGroupsSelectionModel.itemIsSelectedButNotVisible(groupsTable.getVisibleItems())) {
final String leaderboardGroupNames = refreshableGroupsSelectionModel.getSelectedSet().stream().map(e -> e.getName()).collect(Collectors.joining("\n"));
return Window.confirm(stringMessages.doYouReallyWantToRemoveNonVisibleLeaderboardGroups(leaderboardGroupNames));
}
return Window.confirm(stringMessages.doYouReallyWantToRemoveLeaderboardGroups());
}
});
leaderboardGroupsControlsPanel.add(removeButton);
groupNameColumn.setSortable(true);
leaderboardGroupsListHandler.setComparator(groupNameColumn, new Comparator<LeaderboardGroupDTO>() {
@Override
@@ -827,9 +835,14 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel implements
private void groupSelectionChanged() {
isSingleGroupSelected = refreshableGroupsSelectionModel.getSelectedSet().size() == 1;
Set<LeaderboardGroupDTO> selectedLeaderboardGroups = refreshableGroupsSelectionModel.getSelectedSet();
isSingleGroupSelected = selectedLeaderboardGroups.size() == 1;
final LeaderboardGroupDTO selectedGroup = getSelectedGroup();
removeButton.setEnabled(selectedGroup != null);
removeButton.setEnabled(!selectedLeaderboardGroups.isEmpty());
removeButton.setText(selectedLeaderboardGroups.size() <= 1 ? stringMessages.remove() : stringMessages.removeNumber(selectedLeaderboardGroups.size()));
splitPanel.setVisible(isSingleGroupSelected && selectedGroup != null);
if (isSingleGroupSelected && selectedGroup != null) {
//Display details of the group
@@ -87,25 +87,19 @@ public class RegattaManagementPanel extends SimplePanel implements RegattasDispl
removeRegattaButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
boolean deleteRegattas = false;
if (refreshableRegattaMultiSelectionModel.itemIsSelectedButNotVisible(regattaListComposite.getRegattaTable().getVisibleItems())) {
final String regattaNames = refreshableRegattaMultiSelectionModel.getSelectedSet().stream().map(e -> e.getName()).collect(Collectors.joining("\n"));
if (Window.confirm(stringMessages.doYouReallyWantToRemoveNonVisibleRegattas(regattaNames))) {
deleteRegattas = true;
}
} else {
if (Window.confirm(stringMessages.doYouReallyWantToRemoveRegattas())) {
deleteRegattas = true;
}
}
if(deleteRegattas){
// Creating a new Collection, because getSelectedRegattas returns an
// unmodifiable collection, which can't be sent to the server.
if(askUserForConfirmation()){
// unmodifiable collection can't be sent to the server.
Collection<RegattaIdentifier> regattas = createModifiableCollection();
removeRegattas(regattas);
}
}
private boolean askUserForConfirmation() {
if (refreshableRegattaMultiSelectionModel.itemIsSelectedButNotVisible(regattaListComposite.getRegattaTable().getVisibleItems())) {
final String regattaNames = refreshableRegattaMultiSelectionModel.getSelectedSet().stream().map(e -> e.getName()).collect(Collectors.joining("\n"));
return Window.confirm(stringMessages.doYouReallyWantToRemoveNonVisibleRegattas(regattaNames));
}
return Window.confirm(stringMessages.doYouReallyWantToRemoveRegattas());
}
});
@@ -135,7 +129,7 @@ public class RegattaManagementPanel extends SimplePanel implements RegattasDispl
regattaDetailsComposite.setVisible(false);
}
removeRegattaButton.setEnabled(!selectedRegattas.isEmpty());
removeRegattaButton.setText(selectedRegattas.size() <= 1 ? stringMessages.remove() : stringMessages.removeAndShowCount(selectedRegattas.size()));
removeRegattaButton.setText(selectedRegattas.size() <= 1 ? stringMessages.remove() : stringMessages.removeNumber(selectedRegattas.size()));
}
});
regattasContentPanel.add(regattaListComposite);
@@ -4,9 +4,11 @@ import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HorizontalPanel;
@@ -115,8 +117,15 @@ public class TrackedRacesListComposite extends AbstractTrackedRacesListComposite
btnRemoveRace.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
removeAndUntrackRaces(refreshableSelectionModel.getSelectedSet());
if(askUserForConfirmation()){
removeAndUntrackRaces(refreshableSelectionModel.getSelectedSet());
}
}
private boolean askUserForConfirmation() {
return Window.confirm(stringMessages.doYouReallyWantToRemoveTrackedRaces());
}
});
btnRemoveRace.setEnabled(false);
trackedRacesButtonPanel.add(btnRemoveRace);
@@ -26,7 +26,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages,
String refresh();
@Override
String remove();
String removeAndShowCount(int count);
String removeNumber(int count);
String windSource();
String dampeningInterval();
String map();
@@ -1032,6 +1032,9 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages,
String errorGettingIgtimiAuthorizationUrl(String message);
String addIgtimiUser();
String doYouReallyWantToRemoveLeaderboards();
String doYouReallyWantToRemoveNonVisibleLeaderboards(String leaderboardNames);
String doYouReallyWantToRemoveTrackedRaces();
String doYouReallyWantToRemoveNonVisibleTrackedRaces(String trackedRacesName);
String errorTryingToRemoveIgtimiAccount(String eMailOfAccountToRemove);
String successfullyRemoveIgtimiAccount(String eMailOfAccountToRemove);
String eMailMustNotBeEmpty();
@@ -1125,6 +1128,8 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages,
String leaderboardsExceptFromSelectedGroup();
String availableLeaderboardGroups();
String leaderboardGroupsOfSelectedEvent();
String doYouReallyWantToRemoveLeaderboardGroups();
String doYouReallyWantToRemoveNonVisibleLeaderboardGroups(String leaderboardGroupNames);
String addRaces();
String withNamePrefix();
String pleaseSelectASeriesFirst();
@@ -14,7 +14,7 @@ maneuverType=Maneuver
windPanelLabel=This is the Wind Panel which so far is completely empty.
refresh=Refresh
remove=Remove
removeAndShowCount=Remove ({0})
removeNumber=Remove ({0})
windSource=Wind Source
dampeningInterval=Dampening Interval
map=Map
@@ -1003,6 +1003,10 @@ couldNotAuthorizedAccessToIgtimiUser=Could not authorize user {0}; invalid user
errorGettingIgtimiAuthorizationUrl=Error getting Igtimi authorization URL: {0}
addIgtimiUser=Add Igtimi User
doYouReallyWantToRemoveLeaderboards=Do you really want to remove the leaderboards?
doYouReallyWantToRemoveLeaderboardGroups=Do you really want to remove the leaderboard groups?
doYouReallyWantToRemoveNonVisibleLeaderboardGroups=You are also deleting leaderboard groups that are currently not visible while filtering. The following leaderboard groups will be removed. Do you want to continue?\n\n{0}
doYouReallyWantToRemoveTrackedRaces=Do you really want to remove the tracked races?
doYouReallyWantToRemoveNonVisibleTrackedRaces=You are also deleting tracked races that are currently not visible while filtering. The following tracked races will be removed. Do you want to continue?\n\n{0}
errorTryingToRemoveIgtimiAccount=Error trying to remove Igtimi account for user {0}
successfullyRemoveIgtimiAccount=Successfully removed Igtimi account for user {0}
eMailMustNotBeEmpty=e-Mail address must not be empty
@@ -14,7 +14,7 @@ wind=Wind
windPanelLabel=This is the Wind Panel which so far is completely empty.
refresh=Aktualisieren
remove=Löschen
removeAndShowCount=Löschen ({0})
removeNumber=Löschen ({0})
windSource=Windquelle
dampeningInterval=Mittelungsintervall
map=Karte
@@ -991,6 +991,9 @@ couldNotAuthorizedAccessToIgtimiUser=Benutzer {0} konnte nicht authentifiziert w
errorGettingIgtimiAuthorizationUrl=Fehler beim Beschaffen der Igtimi Authorisierungs-URL: {0}
addIgtimiUser=Igtimi-Benutzer hinzufügen
doYouReallyWantToRemoveLeaderboards=Möchten Sie wirklich diese Ranglisten löschen?
doYouReallyWantToRemoveLeaderboardGroups=Möchten Sie wirklich diese Ranglisten-Gruppen löschen?
doYouReallyWantToRemoveNonVisibleLeaderboardGroups=Sie entfernen auch Ranglisten-Gruppen, die während des Filterns nicht angezeigt werden. Die folgenden Ranglisten-Gruppen werden entfernt. Möchten Sie fortfahren?\n\n{0}
doYouReallyWantToRemoveNonVisibleLeaderboards=Sie entfernen auch Ranglisten, die während des Filterns nicht angezeigt werden. Die folgenden Ranglisten werden entfernt. Möchten Sie fortfahren?\n\n{0}
errorTryingToRemoveIgtimiAccount=Fehler beim Löschen des Zugangs zum Benutzerkonto {0}
successfullyRemoveIgtimiAccount=Zugang zum Igtimi-Benutzerkonto {0} erfolgreich gelöscht
eMailMustNotBeEmpty=e-Mailadresse darf nicht leer sein
@@ -998,6 +1001,9 @@ emailAddress=e-Mailadresse
password=Kennwort
searchTag=Suchhilfe
doYouReallyWantToRemoveLeaderboard=Möchten Sie wirklich die Rangliste ''{0}'' löschen?
doYouReallyWantToRemoveLeaderboards=Möchten Sie die Ranglisten wirklich löschen?
doYouReallyWantToRemoveTrackedRaces=Möchten Sie die getrackten Rennen wirklich löschen?
doYouReallyWantToRemoveNonVisibleTrackedRaces=Sie entfernen auch getrackte Rennen, die während des Filterns nicht angezeigt werden. Die folgenden getrackten Rennen werden entfernt. Möchten Sie fortfahren?\n\n{0}
metaLeaderboardCannotBeChanged=Dies ist eine Meta-Rangliste, das hier nicht geändert werden kann.
failedToSetNewStartTime=Neue Startzeit konnte nicht gesetzt werden.
doYouReallyWantToRemoveIgtimiAccount=Möchten Sie wirklich den Zugang zu den Daten des Benutzers {0} löschen?
@@ -69,7 +69,7 @@ public class RefreshableMultiSelectionModel<T> extends MultiSelectionModel<T>
* @param visibleItemList
* can be obtained by calling {@link com.google.gwt.user.cellview.client.CellTable#getVisibleItems()}
* method.
* @return <code>true</code> if the list of does not contain every item of the current selected item set.
* @return <code>true</code> if the list of visible items does not contain every item of the current selected item set.
*/
public boolean itemIsSelectedButNotVisible(List<T> visibleItemList) {
for (T item : getSelectedSet()) {
@@ -12,7 +12,7 @@ import com.google.gwt.view.client.SingleSelectionModel;
* register it self as a display on the {@link ListDataProvider} and reacts on the changes of {@link ListDataProvider}.
* When the {@link ListDataProvider} is changed this {@link RefreshableSingleSelectionModel selectionmodel} will refresh
* the selection according to the {@link ListDataProvider} changes. To make this class work correct it is very important
* to set the {@link ListDataProvider}, otherwise it won´t work.
* to set the {@link ListDataProvider}, otherwise it won't work.
* <p>
* For more details on the update process read the {@link RefreshableSelectionModel} Javadoc and see the methods
* {@link RefreshableSingleSelectionModel#refreshSelectionModel(Iterable)} and