mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-10 21:02:40 +00:00
bug4686: Improved the error messages for missing components by consolidating components of the same type
This commit is contained in:
1 parent
f44322e4e9
commit
a9a451fa0e
6 files changed
+44
-19
No files matched your search
+3
-3
@@ -74,9 +74,9 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages {
|
||||
String queryBasedOnRetrieverChainCanNotBeApplied(String retrieverChainName);
|
||||
String statisticNotAvailable(String statisticName);
|
||||
String aggregatorNotAvailable(String aggregatorName);
|
||||
String filterDimensionNotAvailable(String dimensionName);
|
||||
String filterValueNotAvailable(String value);
|
||||
String groupingDimensionNotAvailable(String dimensionName);
|
||||
String filterDimensionsAreNotAvailable(String listedDimensions);
|
||||
String filterValuesAreNotAvailable(String listedValues);
|
||||
String groupingDimensionsAreNotAvailable(String listedDimensions);
|
||||
String rememberDecisionCanBeChangedInSettings();
|
||||
String changeLossStrategy();
|
||||
String changeLossStrageyTooltip();
|
||||
|
||||
+3
-3
@@ -58,9 +58,9 @@ anErrorOccurredWhileApplyingTheQuery=An error occurred while applying the query
|
||||
queryBasedOnRetrieverChainCanNotBeApplied=The query based on {0} can not be applied
|
||||
statisticNotAvailable=The statistic {0} is not available
|
||||
aggregatorNotAvailable=The aggregator {0} is not available
|
||||
filterDimensionNotAvailable=The filter dimension {0} is not available
|
||||
filterValueNotAvailable=The filter value {0} is not available
|
||||
groupingDimensionNotAvailable=The grouping dimension {0} is not available
|
||||
filterDimensionsAreNotAvailable=The following filter dimensions aren''t available: {0}
|
||||
filterValuesAreNotAvailable=The following filter values aren''t available: {0}
|
||||
groupingDimensionsAreNotAvailable=The following grouping dimensions aren''t available: {0}
|
||||
rememberDecisionCanBeChangedInSettings=Remember decision (can be changed in the settings)
|
||||
changeLossStrategy=Change Loss Strategy
|
||||
changeLossStrageyTooltip=Strategy for the possible loss of changes, when a query should be displayed
|
||||
|
||||
+3
-3
@@ -61,9 +61,9 @@ anErrorOccurredWhileApplyingTheQuery=Beim Anzeigen der Query ist ein Fehler aufg
|
||||
queryBasedOnRetrieverChainCanNotBeApplied=Die Query basierend auf {0} kann nicht angezeigt werden
|
||||
statisticNotAvailable=Die Statistik {0} ist nicht verfügbar
|
||||
aggregatorNotAvailable=Der Aggregator {0} ist nicht verfügbar
|
||||
filterDimensionNotAvailable=Die Filter-Dimension {0} ist nicht verfügbar
|
||||
filterValueNotAvailable=Der Filter-Wert {0} ist nicht verfügbar
|
||||
groupingDimensionNotAvailable=Die Gruppierungs-Dimension {0} ist nicht verfügbar
|
||||
filterDimensionsAreNotAvailable=Die folgenden Filter-Dimensionen sind nicht verfügbar: {0}
|
||||
filterValuesAreNotAvailable=Der folgenden Filter-Werte sind nicht verfügbar: {0}
|
||||
groupingDimensionsAreNotAvailable=Die folgenden Gruppierungs-Dimensionen sind nicht verfügbar: {0}
|
||||
rememberDecisionCanBeChangedInSettings=Entscheidung speichern (kann in den Einstellungen geändert werden)
|
||||
changeLossStrategy=Verlust von Änderungen
|
||||
changeLossStrageyTooltip=Verhalten beim möglichen Verlust von Änderungen, wenn eine andere Query angezeigt werden soll
|
||||
|
||||
+14
-6
@@ -10,6 +10,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.google.gwt.cell.client.CheckboxCell;
|
||||
import com.google.gwt.core.client.Scheduler;
|
||||
@@ -274,16 +275,23 @@ public class DimensionFilterSelectionProvider extends AbstractDataMiningComponen
|
||||
}
|
||||
|
||||
private void internalSetSelection(Iterable<? extends Serializable> selection, Consumer<Iterable<String>> callback) {
|
||||
Collection<String> callbackMessages = new ArrayList<>();
|
||||
clearSelection();
|
||||
for (Serializable item : selection) {
|
||||
if (availableData.contains(item)) {
|
||||
selectionModel.setSelected(item, true);
|
||||
Collection<Serializable> missingValues = new ArrayList<>();
|
||||
for (Serializable value : selection) {
|
||||
if (availableData.contains(value)) {
|
||||
selectionModel.setSelected(value, true);
|
||||
} else {
|
||||
callbackMessages.add(getDataMiningStringMessages().filterValueNotAvailable(elementAsString(item)));
|
||||
missingValues.add(value);
|
||||
}
|
||||
}
|
||||
callback.accept(callbackMessages);
|
||||
|
||||
if (!missingValues.isEmpty()) {
|
||||
String listedValues = missingValues.stream().map(this::elementAsString).collect(Collectors.joining(", "));
|
||||
callback.accept(
|
||||
Collections.singleton(getDataMiningStringMessages().filterValuesAreNotAvailable(listedValues)));
|
||||
} else {
|
||||
callback.accept(Collections.emptySet());
|
||||
}
|
||||
}
|
||||
|
||||
public void clearSelection() {
|
||||
|
||||
+9
-1
@@ -13,6 +13,7 @@ import java.util.Map.Entry;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.google.gwt.cell.client.CheckboxCell;
|
||||
import com.google.gwt.core.client.GWT;
|
||||
@@ -297,6 +298,7 @@ public class HierarchicalDimensionListFilterSelectionProvider extends AbstractDa
|
||||
private void setSelection(HashMap<DataRetrieverLevelDTO, HashMap<FunctionDTO, HashSet<? extends Serializable>>> filterSelection, Consumer<Iterable<String>> callback) {
|
||||
Set<InnerSelectionCallback> innerCallbacks = new HashSet<>();
|
||||
Collection<String> callbackMessages = new ArrayList<>();
|
||||
Collection<DimensionWithContext> missingDimensions = new ArrayList<>();
|
||||
for (DataRetrieverLevelDTO retrieverLevel : filterSelection.keySet()) {
|
||||
HashMap<FunctionDTO, HashSet<? extends Serializable>> levelSelection = filterSelection.get(retrieverLevel);
|
||||
for (FunctionDTO dimension : levelSelection.keySet()) {
|
||||
@@ -307,10 +309,16 @@ public class HierarchicalDimensionListFilterSelectionProvider extends AbstractDa
|
||||
innerCallbacks.add(innerCallback);
|
||||
setDimensionSelection(availableFilterDimensions.get(index), levelSelection.get(dimension), innerCallback);
|
||||
} else {
|
||||
callbackMessages.add(getDataMiningStringMessages().filterDimensionNotAvailable(dimension.getDisplayName()));
|
||||
missingDimensions.add(dimensionWithContext);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!missingDimensions.isEmpty()) {
|
||||
String listedDimensions = missingDimensions.stream().map(d -> d.getDimension().getDisplayName())
|
||||
.collect(Collectors.joining(", "));
|
||||
callbackMessages.add(getDataMiningStringMessages().filterDimensionsAreNotAvailable(listedDimensions));
|
||||
}
|
||||
|
||||
if (!innerCallbacks.isEmpty()) {
|
||||
for (InnerSelectionCallback innerCallback : innerCallbacks) {
|
||||
|
||||
+12
-3
@@ -10,6 +10,7 @@ import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.google.gwt.event.logical.shared.ValueChangeEvent;
|
||||
import com.google.gwt.event.logical.shared.ValueChangeHandler;
|
||||
@@ -276,7 +277,7 @@ public class MultiDimensionalGroupingProvider extends AbstractDataMiningComponen
|
||||
}
|
||||
|
||||
private void setSelectedDimensions(Iterable<FunctionDTO> dimensions, Consumer<Iterable<String>> callback) {
|
||||
Collection<String> callbackMessages = new ArrayList<>();
|
||||
Collection<FunctionDTO> missingDimensions = new ArrayList<>();
|
||||
int boxIndex = 0;
|
||||
for (FunctionDTO dimension : dimensions) {
|
||||
int index = availableDimensions.indexOf(dimension);
|
||||
@@ -284,10 +285,18 @@ public class MultiDimensionalGroupingProvider extends AbstractDataMiningComponen
|
||||
setDimensionToGroupBy(boxIndex, availableDimensions.get(index));
|
||||
boxIndex++;
|
||||
} else {
|
||||
callbackMessages.add(getDataMiningStringMessages().groupingDimensionNotAvailable(dimension.getDisplayName()));
|
||||
missingDimensions.add(dimension);
|
||||
}
|
||||
}
|
||||
callback.accept(callbackMessages);
|
||||
|
||||
if (!missingDimensions.isEmpty()) {
|
||||
String listedDimensions = missingDimensions.stream().map(FunctionDTO::getDisplayName)
|
||||
.collect(Collectors.joining(", "));
|
||||
callback.accept(Collections
|
||||
.singleton(getDataMiningStringMessages().groupingDimensionsAreNotAvailable(listedDimensions)));
|
||||
} else {
|
||||
callback.accept(Collections.emptySet());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in new issue
Block a user