mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-21 21:25:38 +00:00
bug5774: The changes on AbstractGenericSerializableSettings are reverted and therefore another AbstractGenericSerializableSettingsWithContext was created instead. This prevent us to be forced to initialize every settings object with a security context even if it is not needed. Now we only use the ...WithContext in cases where we really need it to work with secured settings in the addChildSettings method.
There are still some places to work on e.g. where the secured DTO's are not in place when we init a settings with context. They are marked with TODO bug5774. Also the secured ENUM setting needs some attention... In LiveRaceWithRacemapAndLeaderBoardPresenterImpl there is already a change were we get a StrippedLeaderboardDTO to init context object correctly and which can be used for authorization check later.
This commit is contained in:
+15
-18
@@ -68,21 +68,18 @@ import com.sap.sse.common.settings.value.Value;
|
||||
* based on the child {@link Setting}s which should be sufficient for most cases.
|
||||
*
|
||||
*/
|
||||
public abstract class AbstractGenericSerializableSettings<T> extends AbstractSetting implements GenericSerializableSettings {
|
||||
public abstract class AbstractGenericSerializableSettings extends AbstractSetting implements GenericSerializableSettings {
|
||||
private static final long serialVersionUID = -415371632804540785L;
|
||||
private SettingsValue value;
|
||||
private transient Map<String, Setting> childSettings;
|
||||
|
||||
public interface ChildSettingContext {
|
||||
|
||||
}
|
||||
protected SettingsValue value;
|
||||
protected transient Map<String, Setting> childSettings;
|
||||
|
||||
/**
|
||||
* Default constructor for direct instantiation of root settings objects.
|
||||
*/
|
||||
public AbstractGenericSerializableSettings(T context) {
|
||||
public AbstractGenericSerializableSettings() {
|
||||
super();
|
||||
value = new SettingsValue();
|
||||
addChildSettingsInternal(context);
|
||||
addChildSettingsInternal();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -91,14 +88,14 @@ public abstract class AbstractGenericSerializableSettings<T> extends AbstractSet
|
||||
* @param name the name of the child setting
|
||||
* @param settings the parent settings to attach this settings object to
|
||||
*/
|
||||
public AbstractGenericSerializableSettings(String name, AbstractGenericSerializableSettings<T> settings, T context) {
|
||||
public AbstractGenericSerializableSettings(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings);
|
||||
value = (SettingsValue) settings.getValue(name);
|
||||
if (value == null) {
|
||||
value = new SettingsValue();
|
||||
settings.setValue(name, value);
|
||||
}
|
||||
addChildSettingsInternal(context);
|
||||
addChildSettingsInternal();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -112,7 +109,7 @@ public abstract class AbstractGenericSerializableSettings<T> extends AbstractSet
|
||||
if (childSetting instanceof AbstractGenericSerializableSettings) {
|
||||
Value childValue = value.getValue(entry.getKey());
|
||||
if (childValue != null) {
|
||||
((AbstractGenericSerializableSettings<?>) childSetting).adoptValue((SettingsValue) childValue);
|
||||
((AbstractGenericSerializableSettings) childSetting).adoptValue((SettingsValue) childValue);
|
||||
}
|
||||
}
|
||||
if (childSetting instanceof SettingsList<?>) {
|
||||
@@ -129,10 +126,10 @@ public abstract class AbstractGenericSerializableSettings<T> extends AbstractSet
|
||||
return value;
|
||||
}
|
||||
|
||||
protected final void addChildSettingsInternal(T context) {
|
||||
protected final void addChildSettingsInternal() {
|
||||
if (childSettings == null) {
|
||||
childSettings = new HashMap<>();
|
||||
addChildSettings(context);
|
||||
addChildSettings();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,7 +140,7 @@ public abstract class AbstractGenericSerializableSettings<T> extends AbstractSet
|
||||
* TODO make abstract when all Settings are ported to the new system
|
||||
*
|
||||
*/
|
||||
protected abstract void addChildSettings(T context);
|
||||
protected abstract void addChildSettings();
|
||||
|
||||
public Value getValue(String settingName) {
|
||||
return value.getValue(settingName);
|
||||
@@ -190,9 +187,9 @@ public abstract class AbstractGenericSerializableSettings<T> extends AbstractSet
|
||||
}
|
||||
|
||||
@GwtIncompatible
|
||||
private void readObject(ObjectInputStream ois, T context) throws ClassNotFoundException, IOException {
|
||||
private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException {
|
||||
ois.defaultReadObject();
|
||||
addChildSettingsInternal(context);
|
||||
addChildSettingsInternal();
|
||||
}
|
||||
|
||||
@GwtIncompatible
|
||||
@@ -230,7 +227,7 @@ public abstract class AbstractGenericSerializableSettings<T> extends AbstractSet
|
||||
return false;
|
||||
if (getClass() != obj.getClass())
|
||||
return false;
|
||||
AbstractGenericSerializableSettings<?> other = (AbstractGenericSerializableSettings<?>) obj;
|
||||
AbstractGenericSerializableSettings other = (AbstractGenericSerializableSettings) obj;
|
||||
if (childSettings == null) {
|
||||
if (other.childSettings != null)
|
||||
return false;
|
||||
|
||||
+93
@@ -0,0 +1,93 @@
|
||||
package com.sap.sse.common.settings.generic;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* <i>See AbstractGenericSerializableSettings for further documentation.</i>
|
||||
*
|
||||
* <p>
|
||||
* This is a special abstraction based on AbstractGenericSerializableSettings which provide support of a context object,
|
||||
* which can be used in addChildSettings method. This is needed because the addChildSettings method is called via super
|
||||
* constructor call and therefore, it is not possible to use any other data from outside (even not pre-initialized final
|
||||
* fields of the child object).
|
||||
* </p>
|
||||
*
|
||||
* <p>
|
||||
* The main reason for this class was the initialization of secured settings in the addChildSettings method with secured
|
||||
* DTO and PaywallResolver.
|
||||
* </p>
|
||||
*
|
||||
*/
|
||||
public abstract class AbstractGenericSerializableSettingsWithContext<T> extends AbstractGenericSerializableSettings
|
||||
implements GenericSerializableSettings {
|
||||
private static final long serialVersionUID = -415371632234540296L;
|
||||
|
||||
private final T context;
|
||||
|
||||
/**
|
||||
* Default constructor for direct instantiation of root settings objects.
|
||||
*
|
||||
* @param context
|
||||
* a context object of type T (usually SecurityChildSettingsContext).
|
||||
*/
|
||||
public AbstractGenericSerializableSettingsWithContext(T context) {
|
||||
super();
|
||||
this.context = context;
|
||||
addChildSettingsInternal(context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructor for automatic attachment of a child settings object to its parent settings object.
|
||||
*
|
||||
* @param name
|
||||
* the name of the child setting
|
||||
* @param settings
|
||||
* the parent settings to attach this settings object to
|
||||
* @param context
|
||||
* a context object of type T
|
||||
*/
|
||||
public AbstractGenericSerializableSettingsWithContext(String name,
|
||||
AbstractGenericSerializableSettingsWithContext<T> settings, T context) {
|
||||
super(name, settings);
|
||||
this.context = context;
|
||||
addChildSettingsInternal(context);
|
||||
}
|
||||
|
||||
protected final void addChildSettingsInternal(T context) {
|
||||
if (childSettings == null || childSettings.isEmpty()) {
|
||||
childSettings = new HashMap<>();
|
||||
addChildSettings(context);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This empty implementation is needed to use the AbstractGenericSerializableSettings but provide another
|
||||
* addChildSettings with context support. Therefore, the AbstractGenericSerializableSettings is extended but because
|
||||
* the addChildSettings is declared as abstract we want to hide this method.
|
||||
*/
|
||||
@Override
|
||||
final protected void addChildSettings() {
|
||||
}
|
||||
|
||||
/**
|
||||
* With the background of a special copy function, we provide access to the context object.
|
||||
*
|
||||
* @return the context object.
|
||||
*/
|
||||
public T getContext() {
|
||||
return context;
|
||||
}
|
||||
|
||||
/**
|
||||
* Overwrite this method to initialize child settings. {@link AbstractGenericSerializableSettingsWithContext} for an
|
||||
* example.
|
||||
*
|
||||
* TODO make abstract when all Settings are ported to the new system
|
||||
*
|
||||
* @param context
|
||||
* a context object of type T
|
||||
*
|
||||
*/
|
||||
protected abstract void addChildSettings(T context);
|
||||
|
||||
}
|
||||
+2
-2
@@ -2,10 +2,10 @@ package com.sap.sse.common.settings.generic;
|
||||
|
||||
public abstract class AbstractSetting implements Setting {
|
||||
|
||||
protected transient final AbstractGenericSerializableSettings<?> settings;
|
||||
protected transient final AbstractGenericSerializableSettings settings;
|
||||
protected transient final String settingName;
|
||||
|
||||
public AbstractSetting(String settingName, AbstractGenericSerializableSettings<?> settings) {
|
||||
public AbstractSetting(String settingName, AbstractGenericSerializableSettings settings) {
|
||||
this.settingName = settingName;
|
||||
this.settings = settings;
|
||||
if (settings != null) {
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.sap.sse.common.settings.generic.converter.BooleanConverter;
|
||||
|
||||
public class BooleanSetting extends AbstractValueSetting<Boolean> {
|
||||
|
||||
public BooleanSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public BooleanSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public BooleanSetting(String name, AbstractGenericSerializableSettings<?> settings, Boolean defaultValue) {
|
||||
public BooleanSetting(String name, AbstractGenericSerializableSettings settings, Boolean defaultValue) {
|
||||
super(name, settings, defaultValue, BooleanConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import com.sap.sse.common.settings.generic.base.AbstractValueListSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.DecimalConverter;
|
||||
|
||||
public class DecimalListSetting extends AbstractValueListSetting<BigDecimal> {
|
||||
public DecimalListSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public DecimalListSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings, DecimalConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,11 +7,11 @@ import com.sap.sse.common.settings.generic.converter.DecimalConverter;
|
||||
|
||||
public class DecimalSetting extends AbstractValueSetting<BigDecimal> {
|
||||
|
||||
public DecimalSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public DecimalSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public DecimalSetting(String name, AbstractGenericSerializableSettings<?> settings, BigDecimal defaultValue) {
|
||||
public DecimalSetting(String name, AbstractGenericSerializableSettings settings, BigDecimal defaultValue) {
|
||||
super(name, settings, defaultValue, DecimalConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ import com.sap.sse.common.settings.generic.base.AbstractValueListSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.DoubleConverter;
|
||||
|
||||
public class DoubleListSetting extends AbstractValueListSetting<Double> {
|
||||
public DoubleListSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public DoubleListSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings, DoubleConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.sap.sse.common.settings.generic.converter.DoubleConverter;
|
||||
|
||||
public class DoubleSetting extends AbstractValueSetting<Double> {
|
||||
|
||||
public DoubleSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public DoubleSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public DoubleSetting(String name, AbstractGenericSerializableSettings<?> settings, Double defaultValue) {
|
||||
public DoubleSetting(String name, AbstractGenericSerializableSettings settings, Double defaultValue) {
|
||||
super(name, settings, defaultValue, DoubleConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -4,19 +4,19 @@ import com.sap.sse.common.settings.generic.base.ValueLinkedHashSetSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.EnumConverter;
|
||||
|
||||
public class EnumLinkedHashSetSetting<T extends Enum<T>> extends ValueLinkedHashSetSetting<T> {
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, emptyIsDefault, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValues, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValues, emptyIsDefault, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -4,22 +4,22 @@ import com.sap.sse.common.settings.generic.base.AbstractValueListSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.EnumConverter;
|
||||
|
||||
public class EnumListSetting<T extends Enum<T>> extends AbstractValueListSetting<T> {
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings<?> settings,
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings settings,
|
||||
StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault,
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault,
|
||||
StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, emptyIsDefault, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues,
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues,
|
||||
StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValues, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues,
|
||||
public EnumListSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues,
|
||||
boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValues, emptyIsDefault, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
+2
-10
@@ -4,19 +4,11 @@ import com.sap.sse.common.settings.generic.base.AbstractValueSetSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.EnumConverter;
|
||||
|
||||
public class EnumSetSetting<T extends Enum<T>> extends AbstractValueSetSetting<T> {
|
||||
public EnumSetSetting(String name, AbstractGenericSerializableSettings<?> settings, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumSetSetting(String name, AbstractGenericSerializableSettings settings, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumSetSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, emptyIsDefault, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValues, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
|
||||
public EnumSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, boolean emptyIsDefault, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValues, emptyIsDefault, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.sap.sse.common.settings.generic.converter.EnumConverter;
|
||||
|
||||
public class EnumSetting<T extends Enum<T>> extends AbstractValueSetting<T> {
|
||||
|
||||
public EnumSetting(String name, AbstractGenericSerializableSettings<?> settings, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumSetting(String name, AbstractGenericSerializableSettings settings, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
this(name, settings, null, stringToEnumConverter);
|
||||
}
|
||||
|
||||
public EnumSetting(String name, AbstractGenericSerializableSettings<?> settings, T defaultValue, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
public EnumSetting(String name, AbstractGenericSerializableSettings settings, T defaultValue, StringToEnumConverter<T> stringToEnumConverter) {
|
||||
super(name, settings, defaultValue, new EnumConverter<>(stringToEnumConverter));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.sap.sse.common.settings.generic.converter.IntegerConverter;
|
||||
|
||||
public class IntegerSetting extends AbstractValueSetting<Integer> {
|
||||
|
||||
public IntegerSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public IntegerSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public IntegerSetting(String name, AbstractGenericSerializableSettings<?> settings, Integer defaultValue) {
|
||||
public IntegerSetting(String name, AbstractGenericSerializableSettings settings, Integer defaultValue) {
|
||||
super(name, settings, defaultValue, IntegerConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.sap.sse.common.settings.generic.converter.LongConverter;
|
||||
|
||||
public class LongSetting extends AbstractValueSetting<Long> {
|
||||
|
||||
public LongSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public LongSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public LongSetting(String name, AbstractGenericSerializableSettings<?> settings, Long defaultValue) {
|
||||
public LongSetting(String name, AbstractGenericSerializableSettings settings, Long defaultValue) {
|
||||
super(name, settings, defaultValue, LongConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ import com.sap.sse.common.settings.value.ValueCollectionValue;
|
||||
import com.sap.sse.common.settings.value.ValueListValue;
|
||||
|
||||
|
||||
public class SettingsList<T extends AbstractGenericSerializableSettings<?>> extends AbstractSetting implements SettingsListSetting<T> {
|
||||
public class SettingsList<T extends AbstractGenericSerializableSettings> extends AbstractSetting implements SettingsListSetting<T> {
|
||||
|
||||
private SettingsFactory<T> settingsFactory;
|
||||
|
||||
@@ -22,7 +22,7 @@ public class SettingsList<T extends AbstractGenericSerializableSettings<?>> exte
|
||||
*/
|
||||
private final List<T> values = new ArrayList<>();
|
||||
|
||||
public SettingsList(String name, AbstractGenericSerializableSettings<?> settings, SettingsFactory<T> settingsFactory) {
|
||||
public SettingsList(String name, AbstractGenericSerializableSettings settings, SettingsFactory<T> settingsFactory) {
|
||||
super(name, settings);
|
||||
this.settingsFactory = settingsFactory;
|
||||
adoptValue();
|
||||
|
||||
+4
-4
@@ -4,20 +4,20 @@ import com.sap.sse.common.settings.generic.base.AbstractValueListSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.StringConverter;
|
||||
|
||||
public class StringListSetting extends AbstractValueListSetting<String> {
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault) {
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault) {
|
||||
super(name, settings, emptyIsDefault, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings<?> settings,
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings settings,
|
||||
Iterable<String> defaultValues) {
|
||||
super(name, settings, defaultValues, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<String> defaultValues,
|
||||
public StringListSetting(String name, AbstractGenericSerializableSettings settings, Iterable<String> defaultValues,
|
||||
boolean emptyIsDefault) {
|
||||
super(name, settings, defaultValues, emptyIsDefault, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
+4
-4
@@ -4,19 +4,19 @@ import com.sap.sse.common.settings.generic.base.AbstractValueSetSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.StringConverter;
|
||||
|
||||
public class StringSetSetting extends AbstractValueSetSetting<String> {
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault) {
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault) {
|
||||
super(name, settings, emptyIsDefault, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<String> defaultValues) {
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<String> defaultValues) {
|
||||
super(name, settings, defaultValues, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<String> defaultValues, boolean emptyIsDefault) {
|
||||
public StringSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<String> defaultValues, boolean emptyIsDefault) {
|
||||
super(name, settings, defaultValues, emptyIsDefault, StringConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.sap.sse.common.settings.generic.converter.StringConverter;
|
||||
|
||||
public class StringSetting extends AbstractValueSetting<String> {
|
||||
|
||||
public StringSetting(final String name, final AbstractGenericSerializableSettings<?> settings) {
|
||||
public StringSetting(final String name, final AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public StringSetting(final String name, final AbstractGenericSerializableSettings<?> settings, final String defaultValue) {
|
||||
public StringSetting(final String name, final AbstractGenericSerializableSettings settings, final String defaultValue) {
|
||||
super(name, settings, defaultValue, StringConverter.INSTANCE);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import com.sap.sse.common.settings.generic.base.AbstractValueListSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.UUIDConverter;
|
||||
|
||||
public class UUIDListSetting extends AbstractValueListSetting<UUID> {
|
||||
public UUIDListSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public UUIDListSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings, UUIDConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,19 +6,19 @@ import com.sap.sse.common.settings.generic.base.AbstractValueSetSetting;
|
||||
import com.sap.sse.common.settings.generic.converter.UUIDConverter;
|
||||
|
||||
public class UUIDSetSetting extends AbstractValueSetSetting<UUID> {
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
super(name, settings, UUIDConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault) {
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault) {
|
||||
super(name, settings, emptyIsDefault, UUIDConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<UUID> defaultValues) {
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<UUID> defaultValues) {
|
||||
super(name, settings, defaultValues, UUIDConverter.INSTANCE);
|
||||
}
|
||||
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<UUID> defaultValues, boolean emptyIsDefault) {
|
||||
public UUIDSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<UUID> defaultValues, boolean emptyIsDefault) {
|
||||
super(name, settings, defaultValues, emptyIsDefault, UUIDConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,11 +7,11 @@ import com.sap.sse.common.settings.generic.converter.UUIDConverter;
|
||||
|
||||
public class UUIDSetting extends AbstractValueSetting<UUID> {
|
||||
|
||||
public UUIDSetting(String name, AbstractGenericSerializableSettings<?> settings) {
|
||||
public UUIDSetting(String name, AbstractGenericSerializableSettings settings) {
|
||||
this(name, settings, null);
|
||||
}
|
||||
|
||||
public UUIDSetting(String name, AbstractGenericSerializableSettings<?> settings, UUID defaultValue) {
|
||||
public UUIDSetting(String name, AbstractGenericSerializableSettings settings, UUID defaultValue) {
|
||||
super(name, settings, defaultValue, UUIDConverter.INSTANCE);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@ public abstract class AbstractHasValueSetting<T> extends AbstractSetting impleme
|
||||
|
||||
private ValueConverter<T> valueConverter;
|
||||
|
||||
public AbstractHasValueSetting(String name, AbstractGenericSerializableSettings<?> settings, ValueConverter<T> valueConverter) {
|
||||
public AbstractHasValueSetting(String name, AbstractGenericSerializableSettings settings, ValueConverter<T> valueConverter) {
|
||||
super(name, settings);
|
||||
this.valueConverter = valueConverter;
|
||||
}
|
||||
|
||||
+4
-1
@@ -3,6 +3,7 @@ package com.sap.sse.common.settings.generic.base;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.sap.sse.common.Util;
|
||||
import com.sap.sse.common.settings.generic.AbstractGenericSerializableSettings;
|
||||
import com.sap.sse.common.settings.generic.ValueCollectionSetting;
|
||||
@@ -15,7 +16,7 @@ public abstract class AbstractValueCollectionSetting<T, C extends Collection<Val
|
||||
private D defaultValues;
|
||||
private final boolean emptyIsDefault;
|
||||
|
||||
public AbstractValueCollectionSetting(String name, AbstractGenericSerializableSettings<?> settings, ValueConverter<T> valueConverter, boolean emptyIsDefault) {
|
||||
public AbstractValueCollectionSetting(String name, AbstractGenericSerializableSettings settings, ValueConverter<T> valueConverter, boolean emptyIsDefault) {
|
||||
super(name, settings, valueConverter);
|
||||
this.emptyIsDefault = emptyIsDefault;
|
||||
}
|
||||
@@ -53,12 +54,14 @@ public abstract class AbstractValueCollectionSetting<T, C extends Collection<Val
|
||||
synchronized (defaultVal) {
|
||||
final D result = createDefaultValuesCollection();
|
||||
result.addAll(defaultVal);
|
||||
GWT.log("getValues() default, result: " + result);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
if (value == null) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
GWT.log("getValues() last, result: " + value.getValues(getValueConverter()));
|
||||
return value.getValues(getValueConverter());
|
||||
}
|
||||
|
||||
|
||||
+4
-4
@@ -13,22 +13,22 @@ import com.sap.sse.common.settings.value.ValueListValue;
|
||||
public abstract class AbstractValueListSetting<T> extends AbstractValueCollectionSetting<T, List<Value>, List<T>>
|
||||
implements ValueListSetting<T> {
|
||||
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings<?> settings,
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings settings,
|
||||
ValueConverter<T> valueConverter) {
|
||||
this(name, settings, false, valueConverter);
|
||||
}
|
||||
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault,
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault,
|
||||
ValueConverter<T> valueConverter) {
|
||||
super(name, settings, valueConverter, emptyIsDefault);
|
||||
}
|
||||
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings<?> settings,
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings settings,
|
||||
Iterable<T> defaultValues, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, defaultValues, false, valueConverter);
|
||||
}
|
||||
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings<?> settings,
|
||||
public AbstractValueListSetting(String name, AbstractGenericSerializableSettings settings,
|
||||
Iterable<T> defaultValues, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, emptyIsDefault, valueConverter);
|
||||
setDefaultValues(defaultValues);
|
||||
|
||||
+4
-4
@@ -12,19 +12,19 @@ import com.sap.sse.common.settings.value.ValueSetValue;
|
||||
|
||||
public abstract class AbstractValueSetSetting<T> extends AbstractValueCollectionSetting<T, Set<Value>, Set<T>> implements ValueSetSetting<T> {
|
||||
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings<?> settings, ValueConverter<T> valueConverter) {
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings settings, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, false, valueConverter);
|
||||
}
|
||||
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
super(name, settings, valueConverter, emptyIsDefault);
|
||||
}
|
||||
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, ValueConverter<T> valueConverter) {
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, defaultValues, false, valueConverter);
|
||||
}
|
||||
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
public AbstractValueSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, emptyIsDefault, valueConverter);
|
||||
setDefaultValues(defaultValues);
|
||||
resetToDefault();
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@ public abstract class AbstractValueSetting<T> extends AbstractHasValueSetting<T>
|
||||
|
||||
private T defaultValue;
|
||||
|
||||
protected AbstractValueSetting(String name, AbstractGenericSerializableSettings<?> settings, T defaultValue, ValueConverter<T> valueConverter) {
|
||||
protected AbstractValueSetting(String name, AbstractGenericSerializableSettings settings, T defaultValue, ValueConverter<T> valueConverter) {
|
||||
super(name, settings, valueConverter);
|
||||
this.defaultValue = defaultValue;
|
||||
if (settings.getValue(settingName) == null) {
|
||||
|
||||
+4
-4
@@ -12,19 +12,19 @@ import com.sap.sse.common.settings.value.ValueCollectionValue;
|
||||
|
||||
public abstract class ValueLinkedHashSetSetting<T> extends AbstractValueCollectionSetting<T, Set<Value>, Set<T>> implements ValueSetSetting<T> {
|
||||
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, ValueConverter<T> valueConverter) {
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, false, valueConverter);
|
||||
}
|
||||
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
super(name, settings, valueConverter, emptyIsDefault);
|
||||
}
|
||||
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, ValueConverter<T> valueConverter) {
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, defaultValues, false, valueConverter);
|
||||
}
|
||||
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings<?> settings, Iterable<T> defaultValues, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
public ValueLinkedHashSetSetting(String name, AbstractGenericSerializableSettings settings, Iterable<T> defaultValues, boolean emptyIsDefault, ValueConverter<T> valueConverter) {
|
||||
this(name, settings, emptyIsDefault, valueConverter);
|
||||
setDefaultValues(defaultValues);
|
||||
resetToDefault();
|
||||
|
||||
Reference in New Issue
Block a user