You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tamaya.apache.org by an...@apache.org on 2018/01/01 23:20:56 UTC
[1/2] incubator-tamaya git commit: Fixed compile issue on jsr branch.
Repository: incubator-tamaya
Updated Branches:
refs/heads/configjsr 063f8adad -> c509a8f15
Fixed compile issue on jsr branch.
Signed-off-by: Anatole Tresch <an...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/00233a77
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/00233a77
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/00233a77
Branch: refs/heads/configjsr
Commit: 00233a7799694d811e87f1a79a38ccb3f985042b
Parents: 063f8ad
Author: Anatole Tresch <an...@apache.org>
Authored: Mon Dec 25 11:40:11 2017 +0100
Committer: Anatole Tresch <an...@apache.org>
Committed: Mon Dec 25 11:40:11 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/tamaya/base/convert/ConverterManager.java | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/00233a77/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
----------------------------------------------------------------------
diff --git a/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java b/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
index b7a0888..a4855b7 100644
--- a/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
+++ b/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
@@ -20,7 +20,6 @@ package org.apache.tamaya.base.convert;
import org.apache.tamaya.base.FormatUtils;
import org.apache.tamaya.base.PriorityServiceComparator;
-import org.apache.tamaya.spi.PropertyConverter;
import org.apache.tamaya.spi.ServiceContext;
import org.apache.tamaya.spi.ServiceContextManager;
@@ -110,7 +109,7 @@ public class ConverterManager {
}
/**
- * This method can be used for adding {@link PropertyConverter}s.
+ * This method can be used for adding {@link Converter}s.
* Converters are added at the end after any existing converters.
* For converters already registered for the current target type the
* method has no effect.
@@ -124,7 +123,7 @@ public class ConverterManager {
}
/**
- * This method can be used for adding {@link PropertyConverter}s.
+ * This method can be used for adding {@link Converter}s.
* Converters are added at the end after any existing converters.
* For converters already registered for the current target type the
* method has no effect.
[2/2] incubator-tamaya git commit: Fixed NPE relying on existing
ConversionContext.
Posted by an...@apache.org.
Fixed NPE relying on existing ConversionContext.
Signed-off-by: Anatole Tresch <an...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/c509a8f1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/c509a8f1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/c509a8f1
Branch: refs/heads/configjsr
Commit: c509a8f1591b0e17001ca3ef76c7ce0d471323f9
Parents: 00233a7
Author: Anatole Tresch <an...@apache.org>
Authored: Mon Jan 1 23:55:45 2018 +0100
Committer: Anatole Tresch <an...@apache.org>
Committed: Mon Jan 1 23:55:45 2018 +0100
----------------------------------------------------------------------
.../org/apache/tamaya/base/DefaultConfig.java | 2 +-
.../base/configsource/SimpleConfigSource.java | 8 +--
.../tamaya/base/convert/ConversionContext.java | 4 +-
.../tamaya/base/convert/ConverterManager.java | 76 +++++++++++++-------
.../tamaya/base/convert/EnumConverter.java | 5 +-
.../core/converters/BigIntegerConverter.java | 4 +-
.../core/converters/BooleanConverter.java | 4 +-
.../tamaya/core/converters/ByteConverter.java | 4 +-
.../tamaya/core/converters/CharConverter.java | 4 +-
.../tamaya/core/converters/ClassConverter.java | 4 +-
.../core/converters/CurrencyConverter.java | 4 +-
.../tamaya/core/converters/DoubleConverter.java | 4 +-
.../core/converters/DurationConverter.java | 6 +-
.../tamaya/core/converters/FileConverter.java | 4 +-
.../tamaya/core/converters/FloatConverter.java | 4 +-
.../core/converters/InstantConverter.java | 4 +-
.../core/converters/IntegerConverter.java | 4 +-
.../core/converters/LocalDateConverter.java | 4 +-
.../core/converters/LocalDateTimeConverter.java | 4 +-
.../core/converters/LocalTimeConverter.java | 4 +-
.../tamaya/core/converters/LongConverter.java | 4 +-
.../tamaya/core/converters/NumberConverter.java | 6 +-
.../converters/OffsetDateTimeConverter.java | 4 +-
.../core/converters/OffsetTimeConverter.java | 4 +-
.../tamaya/core/converters/PathConverter.java | 4 +-
.../tamaya/core/converters/ShortConverter.java | 4 +-
.../tamaya/core/converters/URIConverter.java | 4 +-
.../tamaya/core/converters/URLConverter.java | 4 +-
28 files changed, 131 insertions(+), 60 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/base/src/main/java/org/apache/tamaya/base/DefaultConfig.java
----------------------------------------------------------------------
diff --git a/code/base/src/main/java/org/apache/tamaya/base/DefaultConfig.java b/code/base/src/main/java/org/apache/tamaya/base/DefaultConfig.java
index a3762f1..7607199 100644
--- a/code/base/src/main/java/org/apache/tamaya/base/DefaultConfig.java
+++ b/code/base/src/main/java/org/apache/tamaya/base/DefaultConfig.java
@@ -91,7 +91,7 @@ public class DefaultConfig implements Config, ConfigContextSupplier {
}
value = filterManager.filterValue(value, this);
if(value!=null){
- return (T)converterManager.convertValue(key, value.getValue(), targetType, this);
+ return (T)converterManager.convertValue(value.getValue(), targetType);
}
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/base/src/main/java/org/apache/tamaya/base/configsource/SimpleConfigSource.java
----------------------------------------------------------------------
diff --git a/code/base/src/main/java/org/apache/tamaya/base/configsource/SimpleConfigSource.java b/code/base/src/main/java/org/apache/tamaya/base/configsource/SimpleConfigSource.java
index 8d59c4c..a95bb73 100644
--- a/code/base/src/main/java/org/apache/tamaya/base/configsource/SimpleConfigSource.java
+++ b/code/base/src/main/java/org/apache/tamaya/base/configsource/SimpleConfigSource.java
@@ -114,8 +114,8 @@ public class SimpleConfigSource extends BaseConfigSource {
setName(builder.name);
}
- public static Builder newBuilder() {
- return new Builder();
+ public static Builder builder(String name) {
+ return new Builder().withName(name);
}
@Override
@@ -186,10 +186,10 @@ public class SimpleConfigSource extends BaseConfigSource {
* Sets the {@code name} and returns a reference to this Builder so that the methods
* can be chained together.
*
- * @param val the {@code name} to set, not null.
+ * @param name the {@code name} to set, not null.
* @return a reference to this Builder
*/
- public Builder withName(String val) {
+ public Builder withName(String name) {
this.name = Objects.requireNonNull(name);
return this;
}
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/base/src/main/java/org/apache/tamaya/base/convert/ConversionContext.java
----------------------------------------------------------------------
diff --git a/code/base/src/main/java/org/apache/tamaya/base/convert/ConversionContext.java b/code/base/src/main/java/org/apache/tamaya/base/convert/ConversionContext.java
index 6f88211..df16eda 100644
--- a/code/base/src/main/java/org/apache/tamaya/base/convert/ConversionContext.java
+++ b/code/base/src/main/java/org/apache/tamaya/base/convert/ConversionContext.java
@@ -58,7 +58,7 @@ public class ConversionContext {
* @param builder the builder, not {@code null}.
*/
protected ConversionContext(Builder builder){
- this.key = Objects.requireNonNull(builder.key);
+ this.key = builder.key;
this.annotatedElement = builder.annotatedElement;
this.targetType = Objects.requireNonNull(builder.targetType, "Target type required.");
this.supportedFormats.addAll(builder.supportedFormats);
@@ -168,7 +168,7 @@ public class ConversionContext {
* @param targetType the target type
*/
public Builder(Config configuration, String key, Type targetType){
- this.key = Objects.requireNonNull(key, "Key required");
+ this.key = key;
this.configuration = configuration;
this.targetType = Objects.requireNonNull(targetType, "Target type required.");
}
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
----------------------------------------------------------------------
diff --git a/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java b/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
index a4855b7..f22f0ca 100644
--- a/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
+++ b/code/base/src/main/java/org/apache/tamaya/base/convert/ConverterManager.java
@@ -20,6 +20,8 @@ package org.apache.tamaya.base.convert;
import org.apache.tamaya.base.FormatUtils;
import org.apache.tamaya.base.PriorityServiceComparator;
+import org.apache.tamaya.spi.ConfigContext;
+import org.apache.tamaya.spi.ConfigContextSupplier;
import org.apache.tamaya.spi.ServiceContext;
import org.apache.tamaya.spi.ServiceContextManager;
@@ -42,6 +44,7 @@ public class ConverterManager {
* The logger used.
*/
private static final Logger LOG = Logger.getLogger(ConverterManager.class.getName());
+
/**
* The registered converters.
*/
@@ -68,6 +71,20 @@ public class ConverterManager {
}
};
+ private static final ConverterManager INSTANCE = new ConverterManager()
+ .addCoreConverters()
+ .addDiscoveredConverters();
+
+
+ /**
+ * Access the shared common default instance, that can be used for conversion if the current {@link Config}
+ * does not implement the {@link ConfigContextSupplier} interface.
+ * @return the shared instance, not null.
+ */
+ public static ConverterManager defaultInstance(){
+ return INSTANCE;
+ }
+
/**
* Get the classloader used for instance creation.
* @return the classloader, never null.
@@ -118,7 +135,7 @@ public class ConverterManager {
* @param converters the converters to add for this type
* @return this builder, for chaining, never null.
*/
- public <T> ConverterManager addConverter(Type typeToConvert, Converter<T>... converters) {
+ public ConverterManager addConverter(Type typeToConvert, Converter... converters) {
return addConverter(typeToConvert, Arrays.asList(converters));
}
@@ -132,7 +149,7 @@ public class ConverterManager {
* @param converters the converters to add for this type
* @return this builder, for chaining, never null.
*/
- public <T> ConverterManager addConverter(Type typeToConvert, Collection<Converter<T>> converters) {
+ public ConverterManager addConverter(Type typeToConvert, Collection<Converter> converters) {
Objects.requireNonNull(converters);
List<Converter> converterList = List.class.cast(this.converters.get(typeToConvert));
if(converterList==null){
@@ -374,31 +391,8 @@ public class ConverterManager {
return converterList;
}
- public Object convertValue(String key, String value, Type type, Config config) {
- if (value != null) {
- List<Converter> converters = getConverters(type);
- org.apache.tamaya.base.convert.ConversionContext context = new org.apache.tamaya.base.convert.ConversionContext.Builder(config, key, type)
- .build();
- ConversionContext.setContext(context);
- for (Converter converter : converters) {
- try {
- Object t = converter.convert(value);
- if (t != null) {
- return t;
- }
- } catch (Exception e) {
- LOG.log(Level.FINEST, "PropertyConverter: " + converter + " failed to convert value: " + value, e);
- }
- }
- // if the target type is a String, we can return the value, no conversion required.
- if(type.equals(String.class)){
- return value;
- }
- // unsupported type, throw an exception
- throw new IllegalStateException("Unparseable config value for type: " + type.getTypeName() + ": " + key +
- ", supported formats: " + context.getSupportedFormats());
- }
- return null;
+ public <T> T convertValue(String value, Type type){
+ return convertValue(value, type, this.getConverters(type));
}
private <T> void addConvertersToList(Collection<Converter> converters, List<Converter> converterList) {
@@ -565,6 +559,34 @@ public class ConverterManager {
}
/**
+ * Converts a given text input using the given config.
+ * @param textValue the text value.
+ * @param type the target type.
+ * @param converters the converters to be used.
+ * @param <T> the type
+ * @return the converted type, or null.
+ */
+ public <T> T convertValue(String textValue, Type type, Iterable<Converter> converters) {
+ if(textValue==null){
+ return null;
+ }
+ for(Converter<T> converter:converters){
+ try{
+ T t = converter.convert(textValue);
+ if(t!=null){
+ return t;
+ }
+ }catch(Exception e){
+ LOG.log(Level.FINE, e, () -> "Could not parse config value: " + textValue);
+ }
+ }
+ if(String.class.equals(type) || CharSequence.class.equals(type)){
+ return (T)textValue;
+ }
+ throw new IllegalArgumentException("Uncovertible config value: '" + textValue + "', target type: " + type.getTypeName());
+ }
+
+ /**
* Default converters imüöementation perfoming several lookups for String converion
* option.
* @param <T>
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/base/src/main/java/org/apache/tamaya/base/convert/EnumConverter.java
----------------------------------------------------------------------
diff --git a/code/base/src/main/java/org/apache/tamaya/base/convert/EnumConverter.java b/code/base/src/main/java/org/apache/tamaya/base/convert/EnumConverter.java
index c0f727b..47e53c7 100644
--- a/code/base/src/main/java/org/apache/tamaya/base/convert/EnumConverter.java
+++ b/code/base/src/main/java/org/apache/tamaya/base/convert/EnumConverter.java
@@ -52,7 +52,10 @@ public class EnumConverter<T> implements Converter<T> {
@Override
public T convert(String value) {
- ConversionContext.getContext().addSupportedFormats(getClass(),"<enumValue>");
+ ConversionContext context = ConversionContext.getContext();
+ if(context!=null){
+ context.addSupportedFormats(getClass(),"<enumValue>");
+ }
try {
return (T) factory.invoke(null, value);
} catch (InvocationTargetException | IllegalAccessException e) {
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/BigIntegerConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/BigIntegerConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/BigIntegerConverter.java
index 1e73b19..9dc6f8a 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/BigIntegerConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/BigIntegerConverter.java
@@ -49,7 +49,9 @@ public class BigIntegerConverter implements Converter<BigInteger> {
@Override
public BigInteger convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "[-]0X.. (hex)", "[-]0x... (hex)", "<bigint> -> new BigInteger(bigint)");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "[-]0X.. (hex)", "[-]0x... (hex)", "<bigint> -> new BigInteger(bigint)");
+ }
String trimmed = Objects.requireNonNull(value).trim();
if(trimmed.startsWith("0x") || trimmed.startsWith("0X")){
LOG.finest("Parsing Hex value to BigInteger: " + value);
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/BooleanConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/BooleanConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/BooleanConverter.java
index df322b1..4fdcc0a 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/BooleanConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/BooleanConverter.java
@@ -37,7 +37,9 @@ public class BooleanConverter implements Converter<Boolean> {
@Override
public Boolean convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "yes (ignore case)", "y (ignore case)", "true (ignore case)", "t (ignore case)", "1", "no (ignore case)", "n (ignore case)", "false (ignore case)", "f (ignore case)", "0");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "yes (ignore case)", "y (ignore case)", "true (ignore case)", "t (ignore case)", "1", "no (ignore case)", "n (ignore case)", "false (ignore case)", "f (ignore case)", "0");
+ }
String ignoreCaseValue = Objects.requireNonNull(value)
.trim()
.toLowerCase(Locale.ENGLISH);
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/ByteConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/ByteConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/ByteConverter.java
index 7b72cc5..8d5c450 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/ByteConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/ByteConverter.java
@@ -52,7 +52,9 @@ public class ByteConverter implements Converter<Byte> {
@Override
public Byte convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(),"<byte>", "MIN_VALUE", "MIN", "MAX_VALUE", "MAX");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),"<byte>", "MIN_VALUE", "MIN", "MAX_VALUE", "MAX");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch(trimmed.toUpperCase(Locale.ENGLISH)){
case "MIN_VALUE":
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/CharConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/CharConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/CharConverter.java
index 9fa4e69..1c3c678 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/CharConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/CharConverter.java
@@ -43,7 +43,9 @@ public class CharConverter implements Converter<Character> {
@Override
public Character convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(),"\\'<char>\\'", "<char>", "<charNum>");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),"\\'<char>\\'", "<char>", "<charNum>");
+ }
String trimmed = Objects.requireNonNull(value).trim();
if(trimmed.isEmpty()){
return null;
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/ClassConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/ClassConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/ClassConverter.java
index c998065..40b17c9 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/ClassConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/ClassConverter.java
@@ -44,7 +44,9 @@ public class ClassConverter implements Converter<Class<?>> {
if(value==null){
return null;
}
- context.addSupportedFormats(getClass(),"<fullyQualifiedClassName>");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),"<fullyQualifiedClassName>");
+ }
String trimmed = Objects.requireNonNull(value).trim();
try{
return Class.forName(trimmed, false, Thread.currentThread().getContextClassLoader());
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/CurrencyConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/CurrencyConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/CurrencyConverter.java
index 502e05c..f2068ef 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/CurrencyConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/CurrencyConverter.java
@@ -46,7 +46,9 @@ public class CurrencyConverter implements Converter<Currency> {
@Override
public Currency convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "<currencyCode>, using Locale.ENGLISH", "<numericValue>", "<locale>");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<currencyCode>, using Locale.ENGLISH", "<numericValue>", "<locale>");
+ }
String trimmed = Objects.requireNonNull(value).trim();
try {
return Currency.getInstance(trimmed.toUpperCase(Locale.ENGLISH));
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/DoubleConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/DoubleConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/DoubleConverter.java
index eb5b717..c3dc9b3 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/DoubleConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/DoubleConverter.java
@@ -50,7 +50,9 @@ public class DoubleConverter implements Converter<Double> {
@Override
public Double convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "<double>", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE", "POSITIVE_INFINITY", "NEGATIVE_INFINITY", "NAN");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<double>", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE", "POSITIVE_INFINITY", "NEGATIVE_INFINITY", "NAN");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch (trimmed.toUpperCase(Locale.ENGLISH)) {
case "POSITIVE_INFINITY":
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/DurationConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/DurationConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/DurationConverter.java
index eb05097..227deda 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/DurationConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/DurationConverter.java
@@ -38,8 +38,10 @@ public class DurationConverter implements Converter<Duration> {
@Override
public Duration convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(),
- Duration.of(1234, ChronoUnit.SECONDS).toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),
+ Duration.of(1234, ChronoUnit.SECONDS).toString());
+ }
try {
return Duration.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/FileConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/FileConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/FileConverter.java
index 38badd4..a9796f8 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/FileConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/FileConverter.java
@@ -41,7 +41,9 @@ public class FileConverter implements Converter<File> {
if(value==null || value.isEmpty()){
return null;
}
- context.addSupportedFormats(getClass(),"<File>");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),"<File>");
+ }
String trimmed = Objects.requireNonNull(value).trim();
try {
return new File(trimmed);
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/FloatConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/FloatConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/FloatConverter.java
index b66a8e1..3184a8e 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/FloatConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/FloatConverter.java
@@ -50,7 +50,9 @@ public class FloatConverter implements Converter<Float> {
@Override
public Float convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "<float>", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE", "POSITIVE_INFINITY", "NEGATIVE_INFINITY", "NAN");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<float>", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE", "POSITIVE_INFINITY", "NEGATIVE_INFINITY", "NAN");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch(trimmed.toUpperCase(Locale.ENGLISH)){
case "POSITIVE_INFINITY":
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/InstantConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/InstantConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/InstantConverter.java
index b6d485f..04433b0 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/InstantConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/InstantConverter.java
@@ -37,7 +37,9 @@ public class InstantConverter implements Converter<Instant> {
@Override
public Instant convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), Instant.now().toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), Instant.now().toString());
+ }
try{
return Instant.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/IntegerConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/IntegerConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/IntegerConverter.java
index 5a62a23..6cd49e0 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/IntegerConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/IntegerConverter.java
@@ -54,7 +54,9 @@ public class IntegerConverter implements Converter<Integer> {
@Override
public Integer convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "<int>", "MIN_VALUE", "MIN", "MAX_VALUE", "MAX");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<int>", "MIN_VALUE", "MIN", "MAX_VALUE", "MAX");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch(trimmed.toUpperCase(Locale.ENGLISH)){
case "MIN_VALUE":
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateConverter.java
index edfaa3a..d5ec019 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateConverter.java
@@ -37,7 +37,9 @@ public class LocalDateConverter implements Converter<LocalDate> {
@Override
public LocalDate convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), LocalDate.now().toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), LocalDate.now().toString());
+ }
try{
return LocalDate.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateTimeConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateTimeConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateTimeConverter.java
index 9450e30..3ea635a 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateTimeConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/LocalDateTimeConverter.java
@@ -37,7 +37,9 @@ public class LocalDateTimeConverter implements Converter<LocalDateTime> {
@Override
public LocalDateTime convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), LocalDateTime.now().toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), LocalDateTime.now().toString());
+ }
try{
return LocalDateTime.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/LocalTimeConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/LocalTimeConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/LocalTimeConverter.java
index dde2214..129e5a0 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/LocalTimeConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/LocalTimeConverter.java
@@ -37,7 +37,9 @@ public class LocalTimeConverter implements Converter<LocalTime> {
@Override
public LocalTime convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), LocalTime.now().toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), LocalTime.now().toString());
+ }
try{
return LocalTime.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/LongConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/LongConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/LongConverter.java
index 8861c09..11b0a18 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/LongConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/LongConverter.java
@@ -51,7 +51,9 @@ public class LongConverter implements Converter<Long> {
@Override
public Long convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "<long>", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<long>", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch (trimmed.toUpperCase(Locale.ENGLISH)) {
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/NumberConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/NumberConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/NumberConverter.java
index 2f2893d..a1d41b1 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/NumberConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/NumberConverter.java
@@ -47,8 +47,10 @@ public class NumberConverter implements Converter<Number> {
@Override
public Number convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "<double>, <long>", "0x (hex)", "0X... (hex)", "POSITIVE_INFINITY",
- "NEGATIVE_INFINITY", "NAN");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<double>, <long>", "0x (hex)", "0X... (hex)", "POSITIVE_INFINITY",
+ "NEGATIVE_INFINITY", "NAN");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch(trimmed.toUpperCase(Locale.ENGLISH)) {
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetDateTimeConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetDateTimeConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetDateTimeConverter.java
index 8b78814..3254155 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetDateTimeConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetDateTimeConverter.java
@@ -37,7 +37,9 @@ public class OffsetDateTimeConverter implements Converter<OffsetDateTime> {
@Override
public OffsetDateTime convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), OffsetDateTime.now().toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), OffsetDateTime.now().toString());
+ }
try{
return OffsetDateTime.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetTimeConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetTimeConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetTimeConverter.java
index 8186ac0..62d1530 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetTimeConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/OffsetTimeConverter.java
@@ -37,7 +37,9 @@ public class OffsetTimeConverter implements Converter<OffsetTime> {
@Override
public OffsetTime convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), OffsetTime.now().toString());
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), OffsetTime.now().toString());
+ }
try{
return OffsetTime.parse(value);
}catch(Exception e){
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/PathConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/PathConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/PathConverter.java
index 6bc9fc3..8d21f3d 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/PathConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/PathConverter.java
@@ -42,7 +42,9 @@ public class PathConverter implements Converter<Path> {
if(value==null || value.isEmpty()){
return null;
}
- context.addSupportedFormats(getClass(),"<File>");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),"<File>");
+ }
String trimmed = Objects.requireNonNull(value).trim();
try {
return FileSystems.getDefault().getPath(value);
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/ShortConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/ShortConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/ShortConverter.java
index 19c5f77..1735453 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/ShortConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/ShortConverter.java
@@ -52,7 +52,9 @@ public class ShortConverter implements Converter<Short> {
@Override
public Short convert(String value) {
ConversionContext context = ConversionContext.getContext();
- context.addSupportedFormats(getClass(), "short", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "short", "MIN", "MIN_VALUE", "MAX", "MAX_VALUE");
+ }
String trimmed = Objects.requireNonNull(value).trim();
switch(trimmed.toUpperCase(Locale.ENGLISH)){
case "MIN_VALUE":
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/URIConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/URIConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/URIConverter.java
index d63103a..97778bb 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/URIConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/URIConverter.java
@@ -41,7 +41,9 @@ public class URIConverter implements Converter<URI> {
if(value==null || value.isEmpty()){
return null;
}
- context.addSupportedFormats(getClass(), "<uri> -> new URI(uri)");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(), "<uri> -> new URI(uri)");
+ }
String trimmed = Objects.requireNonNull(value).trim();
try {
return new URI(trimmed);
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/c509a8f1/code/core/src/main/java/org/apache/tamaya/core/converters/URLConverter.java
----------------------------------------------------------------------
diff --git a/code/core/src/main/java/org/apache/tamaya/core/converters/URLConverter.java b/code/core/src/main/java/org/apache/tamaya/core/converters/URLConverter.java
index 27c69b1..d677b96 100644
--- a/code/core/src/main/java/org/apache/tamaya/core/converters/URLConverter.java
+++ b/code/core/src/main/java/org/apache/tamaya/core/converters/URLConverter.java
@@ -41,7 +41,9 @@ public class URLConverter implements Converter<URL> {
if(value==null || value.isEmpty()){
return null;
}
- context.addSupportedFormats(getClass(),"<URL>");
+ if(context!=null) {
+ context.addSupportedFormats(getClass(),"<URL>");
+ }
String trimmed = Objects.requireNonNull(value).trim();
try {
return new URL(trimmed);