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/11/18 21:20:20 UTC

[02/20] incubator-tamaya-extensions git commit: TAMAYA-274 Reduced API footprint by using Java 8 features. Added some lambdas. TAMAYA-355 Enable mapping of lists and arrays into internal datastructures. TAMAYA-353 Adding support for different classloa

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/ConfiguredMethod.java
----------------------------------------------------------------------
diff --git a/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/ConfiguredMethod.java b/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/ConfiguredMethod.java
index d8b0d09..428e993 100644
--- a/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/ConfiguredMethod.java
+++ b/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/ConfiguredMethod.java
@@ -59,7 +59,7 @@ public interface ConfiguredMethod {
     String getSignature();
 
     /**
-     * This method actually configures the given method on a instance of its parent type.
+     * This method actually configures the given method on a instance of its getParent type.
      * This evaluates the initial key closure and applies changes on the field.
      *
      * @param instance the target instance, not null.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/InjectionUtils.java
----------------------------------------------------------------------
diff --git a/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/InjectionUtils.java b/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/InjectionUtils.java
index d5ab2ef..b6b2820 100644
--- a/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/InjectionUtils.java
+++ b/modules/injection/injection-api/src/main/java/org/apache/tamaya/inject/spi/InjectionUtils.java
@@ -70,7 +70,7 @@ public final class InjectionUtils {
         List<String> areaKeys = evaluateSectionKeys(member, sectionAnnot);
         String key = null;
         String name = member.getName();
-        if (name.startsWith("get") || name.startsWith("set")) {
+        if (name.startsWith("get") || name.startsWith("setCurrent")) {
             key = Character.toLowerCase(name.charAt(3)) + name.substring(4);
         } else {
             key = Character.toLowerCase(name.charAt(0)) + name.substring(1);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/injection-api/src/test/java/org/apache/tamaya/inject/spi/BaseDynamicValueTest.java
----------------------------------------------------------------------
diff --git a/modules/injection/injection-api/src/test/java/org/apache/tamaya/inject/spi/BaseDynamicValueTest.java b/modules/injection/injection-api/src/test/java/org/apache/tamaya/inject/spi/BaseDynamicValueTest.java
index bb568a5..c913303 100644
--- a/modules/injection/injection-api/src/test/java/org/apache/tamaya/inject/spi/BaseDynamicValueTest.java
+++ b/modules/injection/injection-api/src/test/java/org/apache/tamaya/inject/spi/BaseDynamicValueTest.java
@@ -84,7 +84,7 @@ public class BaseDynamicValueTest {
 
         @Override
         protected Configuration getConfiguration() {
-            return ConfigurationProvider.getConfiguration();
+            return Configuration.current();
         }
 
         @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfigTemplateInvocationHandler.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfigTemplateInvocationHandler.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfigTemplateInvocationHandler.java
index b858230..1a1d6e6 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfigTemplateInvocationHandler.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfigTemplateInvocationHandler.java
@@ -62,7 +62,7 @@ public final class ConfigTemplateInvocationHandler implements InvocationHandler
             return Objects.hashCode(proxy);
         } else if ("equals".equals(method.getName())) {
             return Objects.equals(proxy, args[0]);
-        } else if ("get".equals(method.getName())) {
+        } else if ("current".equals(method.getName())) {
             return config;
         }
         if (method.getReturnType() == DynamicValue.class) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredFieldImpl.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredFieldImpl.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredFieldImpl.java
index e39b070..4988af5 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredFieldImpl.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredFieldImpl.java
@@ -83,7 +83,7 @@ public class ConfiguredFieldImpl implements ConfiguredField{
                 public Object run() throws Exception {
                     annotatedField.setAccessible(true);
                     annotatedField.set(target,
-                            DefaultDynamicValue.of(target, annotatedField, ConfigurationProvider.getConfiguration()));
+                            DefaultDynamicValue.of(target, annotatedField, Configuration.current()));
                     return annotatedField;
                 }
             });
@@ -98,7 +98,7 @@ public class ConfiguredFieldImpl implements ConfiguredField{
      *
      * @param target      the target instance, not null.
      * @param config The configuration to be used.
-     * @param resolve     set to true, if expression resolution should be applied on the keys passed.
+     * @param resolve     setCurrent to true, if expression resolution should be applied on the keys passed.
      * @throws ConfigException if the configuration required could not be resolved or converted.
      */
     private void applyValue(Object target, Configuration config, boolean resolve) throws ConfigException {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredSetterMethod.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredSetterMethod.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredSetterMethod.java
index b10300e..57ef63c 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredSetterMethod.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredSetterMethod.java
@@ -96,7 +96,7 @@ public class ConfiguredSetterMethod implements ConfiguredMethod {
     }
 
     /**
-     * Get the type to be set on the setter method.
+     * Get the type to be setCurrent on the setter method.
      * @return the setter type.
      */
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredTypeImpl.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredTypeImpl.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredTypeImpl.java
index 85f1f4a..e29c64e 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredTypeImpl.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/ConfiguredTypeImpl.java
@@ -166,7 +166,7 @@ public class ConfiguredTypeImpl implements ConfiguredType{
      * @param instance       The instance to be configured.
      */
     public void configure(Object instance) {
-        configure(instance, ConfigurationProvider.getConfiguration());
+        configure(instance, Configuration.current());
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultConfigurationInjector.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultConfigurationInjector.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultConfigurationInjector.java
index 01a09e9..15c04e9 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultConfigurationInjector.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultConfigurationInjector.java
@@ -71,7 +71,7 @@ public class DefaultConfigurationInjector implements ConfigurationInjector {
     }
 
     /**
-     * If set also non annotated instances can be configured or created as templates.
+     * If setCurrent also non annotated instances can be configured or created as templates.
      * @return true, if autoConfigureEnabled.
      */
     public boolean isAutoConfigureEnabled(){
@@ -117,7 +117,7 @@ public class DefaultConfigurationInjector implements ConfigurationInjector {
      */
     @Override
     public <T> T configure(T instance) {
-        return configure(instance, ConfigurationProvider.getConfiguration());
+        return configure(instance, Configuration.current());
     }
 
     /**
@@ -146,7 +146,7 @@ public class DefaultConfigurationInjector implements ConfigurationInjector {
      */
     @Override
     public <T> T createTemplate(Class<T> templateType) {
-        return createTemplate(templateType, ConfigurationProvider.getConfiguration());
+        return createTemplate(templateType, Configuration.current());
     }
 
     /**
@@ -167,7 +167,7 @@ public class DefaultConfigurationInjector implements ConfigurationInjector {
 
     @Override
     public <T> Supplier<T> getConfiguredSupplier(final Supplier<T> supplier) {
-        return getConfiguredSupplier(supplier, ConfigurationProvider.getConfiguration());
+        return getConfiguredSupplier(supplier, Configuration.current());
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultDynamicValue.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultDynamicValue.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultDynamicValue.java
index ac7e977..af8d24e 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultDynamicValue.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/DefaultDynamicValue.java
@@ -27,30 +27,22 @@ import org.apache.tamaya.inject.api.LoadPolicy;
 import org.apache.tamaya.inject.api.UpdatePolicy;
 import org.apache.tamaya.inject.api.WithPropertyConverter;
 import org.apache.tamaya.inject.spi.BaseDynamicValue;
-import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
 
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
-import java.lang.ref.WeakReference;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
 import java.util.List;
 import java.util.Objects;
-import java.util.function.Supplier;
 import java.util.logging.Logger;
 
 /**
  * A accessor for a single configured value. This can be used to support values that may change during runtime,
- * reconfigured or final. Hereby external code (could be Tamaya configuration listeners or client code), can set a
+ * reconfigured or final. Hereby external code (could be Tamaya configuration listeners or client code), can setCurrent a
  * new value. Depending on the {@link UpdatePolicy} the new value is immediately active or it requires an active commit
  * by client code. Similarly an instance also can ignore all later changes to the value.
  * <h3>Implementation Details</h3>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/InjectionHelper.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/InjectionHelper.java b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/InjectionHelper.java
index 06f3556..ec5ddad 100644
--- a/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/InjectionHelper.java
+++ b/modules/injection/standalone/src/main/java/org/apache/tamaya/inject/internal/InjectionHelper.java
@@ -164,15 +164,17 @@ final class InjectionHelper {
             converterType = (Class<? extends PropertyConverter<T>>) converterAnnot.value();
             if (!converterType.getName().equals(WithPropertyConverter.class.getName())) {
                 try {
-                    // TODO cache here...
+                // TODO cache here...
                     ConversionContext ctx = new ConversionContext.Builder(key,targetType)
                             .setAnnotatedElement(element).build();
-
+                    ConversionContext.set(ctx);
                     PropertyConverter<T> converter = PropertyConverter.class.cast(converterType.newInstance());
-                    adaptedValue = converter.convert(configValue, ctx);
+                    adaptedValue = converter.convert(configValue);
                 } catch (Exception e) {
                     LOG.log(Level.SEVERE, "Failed to convert using explicit PropertyConverter on " + element +
                             ", trying default conversion.", e);
+                }finally{
+                    ConversionContext.reset();
                 }
             }
         }
@@ -185,16 +187,21 @@ final class InjectionHelper {
             if(configValue==null) {
                 return null;
             }
-            ConfigurationContext configContext = ConfigurationProvider.getConfiguration().getContext();
+            ConfigurationContext configContext = Configuration.current().getContext();
             List<PropertyConverter<T>> converters = configContext
                     .getPropertyConverters(targetType);
-            ConversionContext ctx = new ConversionContext.Builder(ConfigurationProvider.getConfiguration(),
-                    configContext, key, targetType).setAnnotatedElement(element).build();
-            for (PropertyConverter<T> converter : converters) {
-                adaptedValue = converter.convert(configValue, ctx);
-                if (adaptedValue != null) {
-                    return adaptedValue;
+            try {
+                ConversionContext ctx = new ConversionContext.Builder(Configuration.current(),
+                        key, targetType).setAnnotatedElement(element).build();
+                ConversionContext.set(ctx);
+                for (PropertyConverter<T> converter : converters) {
+                    adaptedValue = converter.convert(configValue);
+                    if (adaptedValue != null) {
+                        return adaptedValue;
+                    }
                 }
+            }finally {
+                ConversionContext.reset();
             }
         }
         throw new ConfigException("Non convertible property type: " + element);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/test/java/annottext/NonAnnotatedConfigBean.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/test/java/annottext/NonAnnotatedConfigBean.java b/modules/injection/standalone/src/test/java/annottext/NonAnnotatedConfigBean.java
index 87f8be7..a39e6df 100644
--- a/modules/injection/standalone/src/test/java/annottext/NonAnnotatedConfigBean.java
+++ b/modules/injection/standalone/src/test/java/annottext/NonAnnotatedConfigBean.java
@@ -40,6 +40,6 @@ public class NonAnnotatedConfigBean {
 
     public String fullKey;
 
-    public String test2 = "This is not set.";
+    public String test2 = "This is not setCurrent.";
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/TamayaInjectionTest.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/TamayaInjectionTest.java b/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/TamayaInjectionTest.java
index 61e3d43..5b6d55d 100644
--- a/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/TamayaInjectionTest.java
+++ b/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/TamayaInjectionTest.java
@@ -47,13 +47,13 @@ public class TamayaInjectionTest {
         assertEquals(testInstance.classFieldKey, "Foo");
         assertEquals(testInstance.fieldKey, null);
         assertEquals(testInstance.fullKey, null);
-        assertEquals(testInstance.test2, "This is not set.");
+        assertEquals(testInstance.test2, "This is not setCurrent.");
         ConfigurationInjection.getConfigurationInjector().configure(testInstance);
         assertEquals(testInstance.simple_value, "aSimpleValue");
         assertEquals(testInstance.classFieldKey, "Class-Field-Value");
         assertEquals(testInstance.fieldKey, "Field-Value");
         assertEquals(testInstance.fullKey, "Fullkey-Value");
-        assertEquals(testInstance.test2, "This is not set.");
+        assertEquals(testInstance.test2, "This is not setCurrent.");
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/internal/DefaultDynamicValueTest.java
----------------------------------------------------------------------
diff --git a/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/internal/DefaultDynamicValueTest.java b/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/internal/DefaultDynamicValueTest.java
index a071584..b055021 100644
--- a/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/internal/DefaultDynamicValueTest.java
+++ b/modules/injection/standalone/src/test/java/org/apache/tamaya/inject/internal/DefaultDynamicValueTest.java
@@ -22,7 +22,6 @@ import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.inject.api.DynamicValue;
 import org.apache.tamaya.inject.api.Config;
 import org.apache.tamaya.inject.api.UpdatePolicy;
-import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
 import org.apache.tamaya.spi.PropertySource;
 import org.apache.tamaya.spi.PropertyValue;
@@ -96,7 +95,7 @@ public class DefaultDynamicValueTest {
     @Test
     public void testOf_Field() throws Exception {
         DynamicValue val = DefaultDynamicValue.of(this, getClass().getDeclaredField("myValue"),
-                ConfigurationProvider.getConfiguration());
+                Configuration.current());
         assertNotNull(val);
     }
 
@@ -268,7 +267,7 @@ public class DefaultDynamicValueTest {
 //        val.setUpdatePolicy(UpdatePolicy.IMMEDEATE);
 //        assertEquals("bla", val.orElseGet(new ConfiguredItemSupplier() {
 //            @Override
-//            public Object get() {
+//            public Object current() {
 //                return "bla";
 //            }
 //        }));
@@ -276,7 +275,7 @@ public class DefaultDynamicValueTest {
 //        val.updateValue();
 //        assertEquals("aValue", val.orElseGet(new ConfiguredItemSupplier() {
 //            @Override
-//            public Object get() {
+//            public Object current() {
 //                return "bla";
 //            }
 //        }));
@@ -287,11 +286,11 @@ public class DefaultDynamicValueTest {
 //        DynamicValue val = DefaultDynamicValue.of(getClass().getDeclaredField("myValue"),
 //                config);
 //        val.setUpdatePolicy(UpdatePolicy.EXPLCIT);
-//        val.get();
+//        val.current();
 //        properties.put("a", "aValue");
 //        assertEquals("aValue", val.orElseThrow(new ConfiguredItemSupplier() {
 //            @Override
-//            public ConfigException get() {
+//            public ConfigException current() {
 //                return new ConfigException("bla");
 //            }
 //        }));
@@ -299,7 +298,7 @@ public class DefaultDynamicValueTest {
 //        val.updateValue();
 //        assertEquals("aValue", val.orElseThrow(new ConfiguredItemSupplier() {
 //            @Override
-//            public ConfigException get() {
+//            public ConfigException current() {
 //                return new ConfigException("bla");
 //            }
 //        }));
@@ -308,7 +307,7 @@ public class DefaultDynamicValueTest {
     private static final class DoublicatingConverter implements PropertyConverter<String>{
 
         @Override
-        public String convert(String value, ConversionContext context) {
+        public String convert(String value) {
             return value + value;
         }
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/jndi/src/main/java/org/apache/tamaya/jndi/JNDIPropertySource.java
----------------------------------------------------------------------
diff --git a/modules/jndi/src/main/java/org/apache/tamaya/jndi/JNDIPropertySource.java b/modules/jndi/src/main/java/org/apache/tamaya/jndi/JNDIPropertySource.java
index d2b549b..8fd6aa5 100644
--- a/modules/jndi/src/main/java/org/apache/tamaya/jndi/JNDIPropertySource.java
+++ b/modules/jndi/src/main/java/org/apache/tamaya/jndi/JNDIPropertySource.java
@@ -88,7 +88,7 @@ public class JNDIPropertySource extends BasePropertySource {
      * the current JNDI context is mapped to configuration map:
      * <ul>
      *   <li>For each leave entry one entry is created.</li>
-     *   <li>The key is the fully path of parent contexts, separated by a '.'.</li>
+     *   <li>The key is the fully path of getParent contexts, separated by a '.'.</li>
      *   <li>The value is the value returned from {@code String.valueOf(leaveObject)}.</li>
      * </ul>
      * @return a map representation of the JNDI tree.
@@ -111,7 +111,7 @@ public class JNDIPropertySource extends BasePropertySource {
     }
 
     /**
-     * If set to true, the property source will return a String representation of the JNDI
+     * If setCurrent to true, the property source will return a String representation of the JNDI
      * tree when calling {@code getProperties()}.
      * @see #getProperties()
      * @param val true, to activate scanable (default is false).
@@ -143,7 +143,7 @@ public class JNDIPropertySource extends BasePropertySource {
      *  mapped to configuration map:
      * <ul>
      *   <li>For each leave entry one entry is created.</li>
-     *   <li>The key is the fully path of parent contexts, separated by a '.'.</li>
+     *   <li>The key is the fully path of getParent contexts, separated by a '.'.</li>
      *   <li>The value is the value returned from {@code String.valueOf(leaveObject)}.</li>
      * </ul>
      * @param ctx the JNDI context, not null.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileAdapter.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileAdapter.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileAdapter.java
index 66e5112..df9cc43 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileAdapter.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileAdapter.java
@@ -159,7 +159,7 @@ public final class MicroprofileAdapter{
 
     /**
      * Converts the given Tamaya key, value map into a corresponding String based map, hereby
-     * omitting all meta-entries.
+     * omitting all getMeta-entries.
      * @param properties the Tamaya key, value map, not null.
      * @return the corresponding String based map, never null.
      */
@@ -183,7 +183,7 @@ public final class MicroprofileAdapter{
     public static Map<String, PropertyValue> toPropertyValueMap(Map<String, String> properties, String source) {
         Map<String, PropertyValue> valueMap = new HashMap<>(properties.size());
         for(Map.Entry<String,String> en:properties.entrySet()){
-            valueMap.put(en.getKey(), PropertyValue.of(en.getKey(), en.getValue(), source));
+            valueMap.put(en.getKey(), PropertyValue.create(en.getKey(), en.getValue()).setMeta("source", source));
         }
         return valueMap;
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigBuilder.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigBuilder.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigBuilder.java
index 8e0f22f..0a3aaf5 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigBuilder.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigBuilder.java
@@ -20,7 +20,7 @@ package org.apache.tamaya.microprofile;
 
 import java.util.Objects;
 
-import org.apache.tamaya.ConfigurationProvider;
+import org.apache.tamaya.Configuration;
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.ConfigurationBuilder;
 import org.apache.tamaya.spi.ServiceContextManager;
@@ -147,10 +147,10 @@ final class MicroprofileConfigBuilder implements ConfigBuilder {
     
     @Override
     public Config build() {
-    	ConfigurationProvider.setConfiguration(
+    	Configuration.setCurrent(
         		getConfigurationBuilder().build());
     	
-        return MicroprofileAdapter.toConfig(ConfigurationProvider.getConfiguration());
+        return MicroprofileAdapter.toConfig(Configuration.current());
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderResolver.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderResolver.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderResolver.java
index 3be49a1..da2b5c3 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderResolver.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderResolver.java
@@ -22,7 +22,7 @@ import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.logging.Logger;
 
-import org.apache.tamaya.ConfigurationProvider;
+import org.apache.tamaya.Configuration;
 import org.apache.tamaya.spi.ConfigurationBuilder;
 import org.eclipse.microprofile.config.Config;
 import org.eclipse.microprofile.config.spi.ConfigBuilder;
@@ -44,7 +44,7 @@ public class MicroprofileConfigProviderResolver extends ConfigProviderResolver {
     public Config getConfig(ClassLoader loader) {
         Config config = this.configs.get(loader);
         if(config==null){
-        	ConfigurationBuilder builder = ConfigurationProvider.getConfigurationBuilder();
+        	ConfigurationBuilder builder = Configuration.createConfigurationBuilder();
             builder.addDefaultPropertyConverters();
             MicroprofileConfigBuilder microConfigBuilder = new MicroprofileConfigBuilder(builder);
             microConfigBuilder.addDefaultSources();
@@ -57,7 +57,7 @@ public class MicroprofileConfigProviderResolver extends ConfigProviderResolver {
 
     @Override
     public ConfigBuilder getBuilder() {
-        return new MicroprofileConfigBuilder(ConfigurationProvider.getConfigurationBuilder());
+        return new MicroprofileConfigBuilder(Configuration.createConfigurationBuilder());
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConverter.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConverter.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConverter.java
index cb6aab2..2e72ce1 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConverter.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/MicroprofileConverter.java
@@ -44,7 +44,13 @@ public class MicroprofileConverter<T> implements Converter<T> {
 
     @Override
     public T convert(String value) {
-        return delegate.convert(value, new ConversionContext.Builder("microprofile:no-key", TypeLiteral.of(
-                TypeLiteral.of(getClass()).getType())).build());
+        ConversionContext ctx = new ConversionContext.Builder("microprofile:no-key", TypeLiteral.of(
+                TypeLiteral.of(getClass()).getType())).build();
+        ConversionContext.set(ctx);
+        try{
+            return delegate.convert(value);
+        }finally {
+            ConversionContext.reset();
+        }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaConfiguration.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaConfiguration.java
index 0f27821..c16aa63 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaConfiguration.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaConfiguration.java
@@ -77,17 +77,7 @@ public class TamayaConfiguration implements Configuration{
     }
 
     @Override
-    public Configuration with(ConfigOperator operator) {
-        return operator.operate(this);
-    }
-
-    @Override
-    public <T> T query(ConfigQuery<T> query) {
-        return query.query(this);
-    }
-
-    @Override
     public ConfigurationContext getContext() {
-        return null;
+        return ConfigurationContext.EMPTY;
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertyConverter.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertyConverter.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertyConverter.java
index a83008a..d059434 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertyConverter.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertyConverter.java
@@ -19,7 +19,6 @@
 package org.apache.tamaya.microprofile;
 
 
-import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
 import org.eclipse.microprofile.config.spi.ConfigSource;
 import org.eclipse.microprofile.config.spi.Converter;
@@ -42,7 +41,7 @@ public class TamayaPropertyConverter<T> implements PropertyConverter<T> {
     }
 
     @Override
-    public T convert(String value, ConversionContext context) {
+    public T convert(String value) {
         return delegate.convert(value);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertySource.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertySource.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertySource.java
index 0511e32..aca839a 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertySource.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/TamayaPropertySource.java
@@ -55,7 +55,7 @@ public class TamayaPropertySource implements PropertySource {
 
     @Override
     public PropertyValue get(String key) {
-        return PropertyValue.of(key, delegate.getValue(key),getName());
+        return PropertyValue.create(key, delegate.getValue(key)).setMeta("source",getName());
     }
 
     @Override
@@ -66,13 +66,9 @@ public class TamayaPropertySource implements PropertySource {
     private Map<String, PropertyValue> toValueMap(Map<String, String> properties) {
         Map<String, PropertyValue> valueMap = new HashMap<>(properties.size());
         for(Map.Entry<String,String> en:properties.entrySet()){
-            valueMap.put(en.getKey(), PropertyValue.of(en.getKey(), en.getValue(), getName()));
+            valueMap.put(en.getKey(), PropertyValue.create(en.getKey(), en.getValue()).setMeta("source", getName()));
         }
         return valueMap;
     }
 
-    @Override
-    public boolean isScannable() {
-        return true;
-    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/cdi/MicroprofileConfigurationProducer.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/cdi/MicroprofileConfigurationProducer.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/cdi/MicroprofileConfigurationProducer.java
index 2f81305..ac6d4eb 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/cdi/MicroprofileConfigurationProducer.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/cdi/MicroprofileConfigurationProducer.java
@@ -32,7 +32,6 @@ import javax.inject.Provider;
 
 import org.apache.tamaya.ConfigException;
 import org.apache.tamaya.Configuration;
-import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
@@ -83,15 +82,14 @@ public class MicroprofileConfigurationProducer {
 
     static ConversionContext createConversionContext(String key, InjectionPoint injectionPoint) {
         final Type targetType = injectionPoint.getAnnotated().getBaseType();
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         ConversionContext.Builder builder = new ConversionContext.Builder(config,
-                ConfigurationProvider.getConfiguration().getContext(), key, TypeLiteral.of(targetType));
+                key, TypeLiteral.of(targetType));
         if(targetType instanceof ParameterizedType){
             ParameterizedType pt = (ParameterizedType)targetType;
             if(pt.getRawType().equals(Provider.class)) {
                 builder = new ConversionContext.Builder(config,
-                        ConfigurationProvider.getConfiguration().getContext(), key,
-                        TypeLiteral.of(pt.getActualTypeArguments()[0]));
+                        key, TypeLiteral.of(pt.getActualTypeArguments()[0]));
             }
         }
         if (injectionPoint.getMember() instanceof AnnotatedElement) {
@@ -123,11 +121,11 @@ public class MicroprofileConfigurationProducer {
         Object value = null;
         if (textValue != null || Optional.class.equals(context.getTargetType().getRawType())) {
             LOGGER.log(Level.FINEST, () -> "Converting KEY: " + context.getKey() + "("+context.getTargetType()+"), textValue: " + textValue);
-			List<PropertyConverter> converters = ConfigurationProvider.getConfiguration().getContext()
+			List<PropertyConverter> converters = Configuration.current().getContext()
                     .getPropertyConverters((TypeLiteral)context.getTargetType());
             for (PropertyConverter<Object> converter : converters) {
                 try {
-                    value = converter.convert(textValue, context);
+                    value = converter.convert(textValue);
                     if (value != null) {
                         LOGGER.log(Level.FINEST, "Parsed default value from '" + textValue + "' into " +
                                 injectionPoint);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/BooleanAsIntegerConverterFix.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/BooleanAsIntegerConverterFix.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/BooleanAsIntegerConverterFix.java
index 8f292bb..7c760c5 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/BooleanAsIntegerConverterFix.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/BooleanAsIntegerConverterFix.java
@@ -32,8 +32,9 @@ import org.apache.tamaya.spi.PropertyConverter;
 public class BooleanAsIntegerConverterFix implements PropertyConverter<Boolean> {
 
     @Override
-    public Boolean convert(String value, ConversionContext context) {
-        context.addSupportedFormats(getClass(), "'1' (true), otherwise false.");
+    public Boolean convert(String value) {
+        ConversionContext.doOptional(ctx ->
+                ctx.addSupportedFormats(getClass(), "'1' (true), otherwise false."));
         try{
             int val = Integer.parseInt(Objects.requireNonNull(value).trim());
             if(val==1) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/ProviderConverter.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/ProviderConverter.java b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/ProviderConverter.java
index a9fcf95..97aeebd 100644
--- a/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/ProviderConverter.java
+++ b/modules/microprofile/src/main/java/org/apache/tamaya/microprofile/converter/ProviderConverter.java
@@ -21,6 +21,7 @@ package org.apache.tamaya.microprofile.converter;
 import java.lang.reflect.Type;
 import java.util.List;
 import java.util.Objects;
+import java.util.function.Function;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
@@ -28,7 +29,6 @@ import javax.annotation.Priority;
 import javax.inject.Provider;
 
 import org.apache.tamaya.ConfigException;
-import org.apache.tamaya.ConfigQuery;
 import org.apache.tamaya.Configuration;
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.ConversionContext;
@@ -42,12 +42,16 @@ public class ProviderConverter implements PropertyConverter<Provider> {
 
     @SuppressWarnings({"unchecked"})
 	@Override
-    public Provider convert(String value, ConversionContext context) {
+    public Provider convert(String value) {
         return () -> {
+            ConversionContext context = ConversionContext.current();
             try{
+                if(context==null){
+                    return null;
+                }
                 Type targetType = context.getTargetType().getType();
 				ConvertQuery converter = new ConvertQuery(value, TypeLiteral.of(targetType));
-                return context.getConfiguration().query(converter);
+                return context.getConfiguration().adapt(converter);
             }catch(Exception e){
                 throw new ConfigException("Error evaluating configuration value.", e);
             }
@@ -64,7 +68,7 @@ public class ProviderConverter implements PropertyConverter<Provider> {
         return getClass().hashCode();
     }
 
-    private static final class ConvertQuery<T> implements ConfigQuery<T> {
+    private static final class ConvertQuery<T> implements Function<Configuration,T> {
 
         private String rawValue;
         private TypeLiteral<T> type;
@@ -75,23 +79,28 @@ public class ProviderConverter implements PropertyConverter<Provider> {
         }
 
         @Override
-        public T query(Configuration config) {
+        public T apply(Configuration config) {
             List<PropertyConverter<T>> converters = config.getContext().getPropertyConverters(type);
-            ConversionContext context = new ConversionContext.Builder(type).setConfigurationContext(config.getContext())
+            ConversionContext context = new ConversionContext.Builder(type).setConfiguration(config)
                     .setConfiguration(config).setKey(ConvertQuery.class.getName()).build();
-            for(PropertyConverter<?> conv: converters) {
-                try{
-                    if(conv instanceof ProviderConverter){
-                        continue;
-                    }
-                    @SuppressWarnings("unchecked")
-					T result = (T)conv.convert(rawValue, context);
-                    if(result!=null){
-                        return result;
+            try{
+                ConversionContext.set(context);
+                for(PropertyConverter<?> conv: converters) {
+                    try{
+                        if(conv instanceof ProviderConverter){
+                            continue;
+                        }
+                        @SuppressWarnings("unchecked")
+                        T result = (T)conv.convert(rawValue);
+                        if(result!=null){
+                            return result;
+                        }
+                    }catch(Exception e){
+                        LOG.log(Level.FINEST,  e, () -> "Converter "+ conv +" failed to convert to " + type);
                     }
-                }catch(Exception e){
-                    LOG.log(Level.FINEST,  e, () -> "Converter "+ conv +" failed to convert to " + type);
                 }
+            }finally {
+                ConversionContext.reset();
             }
             return null;
         }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileAdapterTest.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileAdapterTest.java b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileAdapterTest.java
index d885621..5f30991 100644
--- a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileAdapterTest.java
+++ b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileAdapterTest.java
@@ -39,7 +39,7 @@ import static org.junit.Assert.*;
 public class MicroprofileAdapterTest {
     @Test
     public void toConfig() throws Exception {
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         Config mpConfig = MicroprofileAdapter.toConfig(config);
         assertNotNull(mpConfig);
         assertEquals(config.getProperties().keySet(), mpConfig.getPropertyNames());
@@ -142,7 +142,7 @@ public class MicroprofileAdapterTest {
     public void toPropertyConverter() throws Exception {
         PropertyConverter<String> tamayaConverter = MicroprofileAdapter.toPropertyConverter(new UppercaseConverter());
         assertNotNull(tamayaConverter);
-        assertEquals("ABC", tamayaConverter.convert("aBC", null));
+        assertEquals("ABC", tamayaConverter.convert("aBC"));
     }
 
     @Test
@@ -154,14 +154,14 @@ public class MicroprofileAdapterTest {
 
     @Test
     public void toConfigBuilder() throws Exception {
-        ConfigBuilder builder = MicroprofileAdapter.toConfigBuilder(ConfigurationProvider.getConfigurationBuilder());
+        ConfigBuilder builder = MicroprofileAdapter.toConfigBuilder(Configuration.createConfigurationBuilder());
         assertNotNull(builder);
     }
 
     @Test
     public void toStringMap() throws Exception {
         Map<String,PropertyValue> props = new HashMap<>();
-        props.put("a", PropertyValue.of("a","b", "toStringMap"));
+        props.put("a", PropertyValue.create("a","b").setMeta("source", "toStringMap"));
         Map<String, String> mpProps = MicroprofileAdapter.toStringMap(props);
         assertNotNull(mpProps);
         assertEquals(props.keySet(), mpProps.keySet());

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderTest.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderTest.java b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderTest.java
index 039145d..d9950ee 100644
--- a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderTest.java
+++ b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigProviderTest.java
@@ -18,12 +18,11 @@
  */
 package org.apache.tamaya.microprofile;
 
-import org.apache.tamaya.ConfigurationProvider;
+import org.apache.tamaya.Configuration;
 import org.eclipse.microprofile.config.Config;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.junit.Test;
 
-import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
@@ -43,7 +42,7 @@ public class MicroprofileConfigProviderTest {
             count++;
             System.out.println(count + ": " +name);
         }
-        assertTrue(ConfigurationProvider.getConfiguration().getProperties().size() <= count);
+        assertTrue(Configuration.current().getProperties().size() <= count);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigTest.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigTest.java b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigTest.java
index 9d0ea2b..10ee1b5 100644
--- a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigTest.java
+++ b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/MicroprofileConfigTest.java
@@ -18,9 +18,12 @@
  */
 package org.apache.tamaya.microprofile;
 
+import org.apache.tamaya.Configuration;
+import org.apache.tamaya.spisupport.propertysource.SystemPropertySource;
 import org.eclipse.microprofile.config.Config;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.eclipse.microprofile.config.spi.ConfigSource;
+import org.junit.Before;
 import org.junit.Test;
 
 import java.time.Instant;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/UppercasePropertyConverter.java
----------------------------------------------------------------------
diff --git a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/UppercasePropertyConverter.java b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/UppercasePropertyConverter.java
index de2d551..74111e3 100644
--- a/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/UppercasePropertyConverter.java
+++ b/modules/microprofile/src/test/java/org/apache/tamaya/microprofile/UppercasePropertyConverter.java
@@ -18,16 +18,14 @@
  */
 package org.apache.tamaya.microprofile;
 
-import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
-import org.eclipse.microprofile.config.spi.Converter;
 
 import java.util.Locale;
 
 public class UppercasePropertyConverter implements PropertyConverter<String> {
 
     @Override
-    public String convert(String s, ConversionContext context) {
+    public String convert(String s) {
         if(s==null){
             return null;
         }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/ConfigChangeRequest.java
----------------------------------------------------------------------
diff --git a/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/ConfigChangeRequest.java b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/ConfigChangeRequest.java
index a592d58..5f83e2b 100644
--- a/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/ConfigChangeRequest.java
+++ b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/ConfigChangeRequest.java
@@ -57,7 +57,7 @@ public final class ConfigChangeRequest {
     }
 
     /**
-     * Sets the started at value. By default {@link #startedAt} is already set on instance creation to
+     * Sets the started at value. By default {@link #startedAt} is already setCurrent on instance creation to
      * {@code System.currentTimeMillis()}.
      * @param startedAt the new UTC POSIX timestamp in millis.
      */
@@ -90,8 +90,8 @@ public final class ConfigChangeRequest {
     }
 
     /**
-     * Get an unmodifiable key set of properties removed.
-     * @return an unmodifiable key set of properties removed, never null.
+     * Get an unmodifiable key setCurrent of properties removed.
+     * @return an unmodifiable key setCurrent of properties removed, never null.
      */
     public Set<String> getRemovedProperties(){
         return Collections.unmodifiableSet(removedProperties);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfiguration.java b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfiguration.java
index 6b0e35e..7aa5f3a 100644
--- a/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfiguration.java
+++ b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfiguration.java
@@ -45,7 +45,7 @@ public interface MutableConfiguration extends Configuration {
      * the corresponding configuration backend.
      *
      * NOTE that changes applied must not necessarily be visible in the current {@link Configuration} instance,
-     * since visibility of changes also depends on the ordinals set on the {@link org.apache.tamaya.spi.PropertySource}s
+     * since visibility of changes also depends on the ordinals setCurrent on the {@link org.apache.tamaya.spi.PropertySource}s
      * configured.
      * @throws org.apache.tamaya.ConfigException if the request already has been committed or cancelled, or the commit fails.
      */

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfigurationProvider.java
----------------------------------------------------------------------
diff --git a/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfigurationProvider.java b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfigurationProvider.java
index 1198c09..950da06 100644
--- a/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfigurationProvider.java
+++ b/modules/mutable-config/src/main/java/org/apache/tamaya/mutableconfig/MutableConfigurationProvider.java
@@ -64,7 +64,7 @@ public final class MutableConfigurationProvider {
      */
     public static MutableConfiguration createMutableConfiguration(){
         return spi().createMutableConfiguration(
-                ConfigurationProvider.getConfiguration(), getApplyMostSignificantOnlyChangePolicy());
+                Configuration.current(), getApplyMostSignificantOnlyChangePolicy());
     }
 
     /**
@@ -76,7 +76,7 @@ public final class MutableConfigurationProvider {
      */
     public static MutableConfiguration createMutableConfiguration(ChangePropagationPolicy changePropgationPolicy){
         return spi().createMutableConfiguration(
-                ConfigurationProvider.getConfiguration(), changePropgationPolicy);
+                Configuration.current(), changePropgationPolicy);
     }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationProviderTest.java
----------------------------------------------------------------------
diff --git a/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationProviderTest.java b/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationProviderTest.java
index b316b7d..f6c6bf3 100644
--- a/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationProviderTest.java
+++ b/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationProviderTest.java
@@ -19,6 +19,7 @@
 
 package org.apache.tamaya.mutableconfig;
 
+import org.apache.tamaya.Configuration;
 import org.apache.tamaya.ConfigurationProvider;
 import org.junit.Test;
 
@@ -36,7 +37,7 @@ public class MutableConfigurationProviderTest {
     @Test
     public void createMutableConfiguration1() throws Exception {
         MutableConfiguration cfg = MutableConfigurationProvider
-                .createMutableConfiguration(ConfigurationProvider.getConfiguration());
+                .createMutableConfiguration(Configuration.current());
         assertNotNull(cfg);
         assertEquals(cfg.getChangePropagationPolicy(),
                 MutableConfigurationProvider.getApplyMostSignificantOnlyChangePolicy());
@@ -46,7 +47,7 @@ public class MutableConfigurationProviderTest {
     public void createMutableConfiguration2() throws Exception {
         ChangePropagationPolicy policy = MutableConfigurationProvider.getApplySelectiveChangePolicy("blabla");
         MutableConfiguration cfg = MutableConfigurationProvider
-                .createMutableConfiguration(ConfigurationProvider.getConfiguration(),
+                .createMutableConfiguration(Configuration.current(),
                         policy);
         assertNotNull(cfg);
         assertEquals(cfg.getChangePropagationPolicy(), policy);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationTest.java
----------------------------------------------------------------------
diff --git a/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationTest.java b/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationTest.java
index 814f3ce..664b1c7 100644
--- a/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationTest.java
+++ b/modules/mutable-config/src/test/java/org/apache/tamaya/mutableconfig/MutableConfigurationTest.java
@@ -46,12 +46,12 @@ public class MutableConfigurationTest {
     public void testCreateMutableConfiguration() throws Exception {
         File f = File.createTempFile("ConfigChangeRequest",".properties");
         MutableConfiguration cfg1 = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration(),
+                Configuration.current(),
                 MutableConfigurationProvider.getApplyAllChangePolicy());
         assertNotNull(cfg1);
         assertNotNull(cfg1.getConfigChangeRequest());
         MutableConfiguration cfg2 = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration());
+                Configuration.current());
         assertNotNull(cfg2);
         assertNotNull(cfg2.getConfigChangeRequest());
         assertTrue(cfg1!=cfg2);
@@ -89,7 +89,7 @@ public class MutableConfigurationTest {
     public void testReadWriteProperties_WithCancel() throws IOException {
         WritablePropertiesSource.target.delete();
         MutableConfiguration mutConfig = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration()
+                Configuration.current()
         );
         mutConfig.put("key1", "value1");
         Map<String,String> cm = new HashMap<>();
@@ -106,7 +106,7 @@ public class MutableConfigurationTest {
     public void testReadWriteProperties_WithCommit() throws IOException {
         WritablePropertiesSource.target.delete();
         MutableConfiguration mutConfig = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration()
+                Configuration.current()
         );
         mutConfig.put("key1", "value1");
         Map<String,String> cm = new HashMap<>();
@@ -116,7 +116,7 @@ public class MutableConfigurationTest {
         mutConfig.store();
         assertTrue(WritablePropertiesSource.target.exists());
         MutableConfiguration mmutConfig2 = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration()
+                Configuration.current()
         );
         mmutConfig2.remove("foo");
         mmutConfig2.remove("key3");
@@ -140,7 +140,7 @@ public class MutableConfigurationTest {
     public void testReadWriteXmlProperties_WithCommit() throws IOException {
         WritableXmlPropertiesSource.target.delete();
         MutableConfiguration cfg = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration(), MutableConfigurationProvider.getApplyAllChangePolicy());
+                Configuration.current(), MutableConfigurationProvider.getApplyAllChangePolicy());
         cfg.put("key1", "value1");
         Map<String,String> cm = new HashMap<>();
         cm.put("key2", "value2");
@@ -149,7 +149,7 @@ public class MutableConfigurationTest {
         cfg.store();
         assertTrue(WritableXmlPropertiesSource.target.exists());
         MutableConfiguration cfg2 = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration());
+                Configuration.current());
         assertTrue(cfg != cfg2);
         cfg2.remove("foo");
         cfg2.remove("key3");
@@ -172,7 +172,7 @@ public class MutableConfigurationTest {
     public void testWriteWithNoChangePolicy() throws IOException {
         WritableXmlPropertiesSource.target.delete();
         MutableConfiguration cfg = MutableConfigurationProvider.createMutableConfiguration(
-                ConfigurationProvider.getConfiguration(),
+                Configuration.current(),
                 MutableConfigurationProvider.getApplyNonePolicy());
         cfg.put("key1", "value1");
         Map<String,String> cm = new HashMap<>();

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/optional/src/main/java/org/apache/tamaya/optional/OptionalConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/optional/src/main/java/org/apache/tamaya/optional/OptionalConfiguration.java b/modules/optional/src/main/java/org/apache/tamaya/optional/OptionalConfiguration.java
index 1d59cda..9f19463 100644
--- a/modules/optional/src/main/java/org/apache/tamaya/optional/OptionalConfiguration.java
+++ b/modules/optional/src/main/java/org/apache/tamaya/optional/OptionalConfiguration.java
@@ -21,7 +21,7 @@ package org.apache.tamaya.optional;
 
 import java.util.Objects;
 
-import org.apache.tamaya.ConfigurationProvider;
+import org.apache.tamaya.Configuration;
 
 /**
  * Simplified configuration API, that can be used by code that only wants Tamaya to optionally enhance its configuration
@@ -218,7 +218,7 @@ public final class OptionalConfiguration {
      */
     private <T> T getTamaya(String key, Class<T> type) {
         if (TAMAYA_LOADED) {
-            return ConfigurationProvider.getConfiguration().get(key, type);
+            return Configuration.current().get(key, type);
         }
         throw new IllegalStateException("Tamaya is not loaded.");
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigChanger.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigChanger.java b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigChanger.java
index 0969a59..28aaa55 100644
--- a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigChanger.java
+++ b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigChanger.java
@@ -18,7 +18,6 @@
  */
 package org.apache.tamaya.osgi;
 
-import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.functions.ConfigurationFunctions;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
@@ -199,8 +198,8 @@ final class ConfigChanger {
 
     public org.apache.tamaya.Configuration getTamayaConfiguration(String root) {
         if (root != null) {
-            return ConfigurationProvider.getConfiguration()
-                    .with(ConfigurationFunctions.section(root, true));
+            return org.apache.tamaya.Configuration.current()
+                    .map(ConfigurationFunctions.section(root, true));
         }
         return null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigHistory.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigHistory.java b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigHistory.java
index 81d2534..94747c7 100644
--- a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigHistory.java
+++ b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/ConfigHistory.java
@@ -115,16 +115,16 @@ public final class ConfigHistory implements Serializable{
     }
 
     /**
-     * Sets the maximum history size.
-     * @param maxHistory the size
+     * Sets the maximum history getNumChilds.
+     * @param maxHistory the getNumChilds
      */
     static void setMaxHistory(int maxHistory){
         ConfigHistory.maxHistory = maxHistory;
     }
 
     /**
-     * Get the max history size.
-     * @return the max size
+     * Get the max history getNumChilds.
+     * @return the max getNumChilds
      */
     static int getMaxHistory(){
         return maxHistory;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/ConfigCommands.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/ConfigCommands.java b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/ConfigCommands.java
index cccbf9d..2bc9af8 100644
--- a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/ConfigCommands.java
+++ b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/ConfigCommands.java
@@ -39,26 +39,26 @@ public final class ConfigCommands {
     private ConfigCommands(){}
 
     public static String getInfo(TamayaConfigService configPlugin) throws IOException {
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         return config.toString() + "\n\n"
                 + StringUtil.format("Default Policy:", 30) + configPlugin.getDefaultPolicy() + '\n'
                 + StringUtil.format("Default Enabled: ", 30) + configPlugin.isTamayaEnabledByDefault();
     }
 
     public static String readTamayaConfig(String section, String filter) {
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         if(section!=null){
             config = config
-                    .with(ConfigurationFunctions.section(section, true));
+                    .map(ConfigurationFunctions.section(section, true));
         }
         if(filter!=null){
-            config = config.with(ConfigurationFunctions.section(filter, false));
+            config = config.map(ConfigurationFunctions.section(filter, false));
         }
         return "Tamaya Configuration\n" +
                 "--------------------\n" +
                 "Section:     "+section +"\n" +
                 (filter!=null?"Filter:      "+filter + "\n":"") +
-                config.query(ConfigurationFunctions.textInfo());
+                config.adapt(ConfigurationFunctions.textInfo());
     }
 
     public static String readTamayaConfig4PID(String pid, String filter) {
@@ -123,7 +123,7 @@ public final class ConfigCommands {
     }
 
     public static String getProperty(String propertysource, String key, boolean extended) throws IOException {
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         if(propertysource!=null){
             PropertySource ps = config.getContext().getPropertySource(propertysource);
             if(ps==null){
@@ -162,7 +162,7 @@ public final class ConfigCommands {
     }
 
     public static String getPropertySource(String propertysource) throws IOException {
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         if(propertysource!=null){
             PropertySource ps = config.getContext().getPropertySource(propertysource);
             if(ps==null){
@@ -185,7 +185,7 @@ public final class ConfigCommands {
                     pw.print("  " + StringUtil.format(pv.getKey(), 20));
                     pw.print(StringUtil.format(pv.getValue(), 20));
                     pw.print(StringUtil.format(pv.getSource(), 20));
-                    pw.println(StringUtil.format(pv.getMetaEntries().toString(), 80));
+                    pw.println(StringUtil.format(pv.getMeta().toString(), 80));
                 }
                 pw.flush();
                 return sw.toString();
@@ -204,7 +204,7 @@ public final class ConfigCommands {
     }
 
     public static String getPropertySourceOverview() throws IOException {
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         StringWriter sw = new StringWriter();
         PrintWriter pw = new PrintWriter(sw);
         pw.println("Property Sources");

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/HistoryCommands.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/HistoryCommands.java b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/HistoryCommands.java
index 6aafe92..bfb9e01 100644
--- a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/HistoryCommands.java
+++ b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/HistoryCommands.java
@@ -75,7 +75,7 @@ public final class HistoryCommands{
 
     public static String setMaxHistorySize(TamayaConfigService service, int maxSize){
         service.setMaxHistorySize(maxSize);
-        return "tamaya-max-getHistory-size="+maxSize;
+        return "tamaya-max-getHistory-getNumChilds="+maxSize;
     }
 
     private static List<ConfigHistory> filterTypes(List<ConfigHistory> history, String... eventTypes) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/TamayaConfigService.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/TamayaConfigService.java b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/TamayaConfigService.java
index 99cd5fb..bd78ff3 100644
--- a/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/TamayaConfigService.java
+++ b/modules/osgi/common/src/main/java/org/apache/tamaya/osgi/commands/TamayaConfigService.java
@@ -30,9 +30,9 @@ import java.util.Set;
  * Service exposing the Tamaya OSGI configuration logic.
  */
 public interface TamayaConfigService{
-    /** The system/config property to set Tamaya's {@link Policy}. */
+    /** The system/config property to setCurrent Tamaya's {@link Policy}. */
     String TAMAYA_POLICY_PROP = "tamaya-policy";
-    /** The MANIFEST property to set Tamaya's {@link Policy}. */
+    /** The MANIFEST property to setCurrent Tamaya's {@link Policy}. */
     String TAMAYA_POLICY_MANIFEST = "Tamaya-Policy";
     /** The system/config property to define a customized Tamaya's configuration root, replacing the {@code [PID]} default
      * prefix used. */
@@ -51,13 +51,13 @@ public interface TamayaConfigService{
 
     /**
      * Enables/disables automatic updates (requires Tamaya's Updater plugin to be loaded as well).
-     * @param enabled set to true to enable updates.
+     * @param enabled setCurrent to true to enable updates.
      */
     void setAutoUpdateEnabled(boolean enabled);
 
     /**
      * Enables/disables Tamaya config by default.
-     * @param enabled set to true to enable Tamaya for all bundles by default.
+     * @param enabled setCurrent to true to enable Tamaya for all bundles by default.
      */
     void setTamayaEnabledByDefault(boolean enabled);
 
@@ -98,7 +98,7 @@ public interface TamayaConfigService{
      * Updates the given OSGI configuration with Tamaya configuration.
      * @param pid the target PID, not null.
      * @param policy the updating policy to be used, by default.
-     * @param forcePolicy if set to true, the given policy will be used, even if an alternate policy is configured
+     * @param forcePolicy if setCurrent to true, the given policy will be used, even if an alternate policy is configured
      *                    for the given PID.
      * @param dryRun if true, the changes will not be applied to the OSGI configuration.
      * @return the configuration that would be applied, has been applied.
@@ -154,14 +154,14 @@ public interface TamayaConfigService{
     boolean deleteBackup(String pid);
 
     /**
-     * Sets the maximum getHistory size.
-     * @param maxHistory the max getHistory size. {@code 0} disables the getHistory function.
+     * Sets the maximum getHistory getNumChilds.
+     * @param maxHistory the max getHistory getNumChilds. {@code 0} disables the getHistory function.
      */
     void setMaxHistorySize(int maxHistory);
 
     /**
-     * Get the max getHistory size.
-     * @return the max getHistory size. {@code 0} means the getHistory function is disabled.
+     * Get the max getHistory getNumChilds.
+     * @return the max getHistory getNumChilds. {@code 0} means the getHistory function is disabled.
      */
     int getMaxHistorySize();
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/BackupsTest.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/BackupsTest.java b/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/BackupsTest.java
index 623c3ff..5b78121 100644
--- a/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/BackupsTest.java
+++ b/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/BackupsTest.java
@@ -39,9 +39,9 @@ public class BackupsTest {
     }
     @Test
     public void setGet() throws Exception {
-        Dictionary<String,Object> cfg = createConfig("set");
-        Backups.set("set", cfg);
-        assertEquals(Backups.get("set"), cfg);
+        Dictionary<String,Object> cfg = createConfig("setCurrent");
+        Backups.set("setCurrent", cfg);
+        assertEquals(Backups.get("setCurrent"), cfg);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/commands/HistoryCommandsTest.java
----------------------------------------------------------------------
diff --git a/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/commands/HistoryCommandsTest.java b/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/commands/HistoryCommandsTest.java
index ad32857..271370b 100644
--- a/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/commands/HistoryCommandsTest.java
+++ b/modules/osgi/common/src/test/java/org/apache/tamaya/osgi/commands/HistoryCommandsTest.java
@@ -79,7 +79,7 @@ public class HistoryCommandsTest extends AbstractOSGITest {
         String result = HistoryCommands.getMaxHistorySize(tamayaConfigPlugin);
         assertEquals(result, String.valueOf(tamayaConfigPlugin.getMaxHistorySize()));
         result = HistoryCommands.setMaxHistorySize(tamayaConfigPlugin, 111);
-        assertEquals(result, "tamaya-max-getHistory-size=111");
+        assertEquals(result, "tamaya-max-getHistory-getNumChilds=111");
         result = HistoryCommands.getMaxHistorySize(tamayaConfigPlugin);
         assertEquals(result, "111");
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/BackupCommands.java
----------------------------------------------------------------------
diff --git a/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/BackupCommands.java b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/BackupCommands.java
index 67c7b66..93f3dea 100644
--- a/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/BackupCommands.java
+++ b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/BackupCommands.java
@@ -46,7 +46,7 @@ public class BackupCommands {
     public void tm_backup_create(@Parameter(absentValue = Parameter.UNSPECIFIED, names={"-p", "--pid"})
                                   @Descriptor("The PID (requred)") String pid,
                                  @Parameter(absentValue = Parameter.UNSPECIFIED, names={"-f", "--force"})
-                                  @Descriptor("If set any existing backup will be overriden, default is false.") Boolean force) throws IOException {
+                                  @Descriptor("If setCurrent any existing backup will be overriden, default is false.") Boolean force) throws IOException {
         System.out.println(org.apache.tamaya.osgi.commands.BackupCommands.createBackup(
                 getService(TamayaConfigService.class),
                 getService(ConfigurationAdmin.class), pid, force));

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/ConfigCommands.java
----------------------------------------------------------------------
diff --git a/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/ConfigCommands.java b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/ConfigCommands.java
index 8926ede..cd99f1f 100644
--- a/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/ConfigCommands.java
+++ b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/ConfigCommands.java
@@ -57,10 +57,10 @@ public class ConfigCommands {
                                 @Descriptor("The target OSGI component PID.")
                                         String pid,
                                 @Parameter(absentValue = "OVERRIDE", names={"-m", "--opmode"})
-                                @Descriptor("Explicitly set (override) the operation mode to use, one of: EXTEND, OVERRIDE, UPDATE_ONLY")
+                                @Descriptor("Explicitly setCurrent (override) the operation mode to use, one of: EXTEND, OVERRIDE, UPDATE_ONLY")
                                         Policy policy,
                                 @Parameter(absentValue = "false", names={"-d", "--dryrun"})
-                                @Descriptor("If set to true no OSGI configuration gets changed.")
+                                @Descriptor("If setCurrent to true no OSGI configuration gets changed.")
                                         boolean dryRun){
         System.out.println(org.apache.tamaya.osgi.commands.ConfigCommands.applyTamayaConfiguration(
                 getService(TamayaConfigService.class), pid, policy.toString(), dryRun));

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/HistoryCommands.java
----------------------------------------------------------------------
diff --git a/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/HistoryCommands.java b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/HistoryCommands.java
index 906f471..13862e9 100644
--- a/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/HistoryCommands.java
+++ b/modules/osgi/gogo-shell/src/main/java/org/apache/tamaya/gogo/shell/HistoryCommands.java
@@ -72,15 +72,15 @@ public class HistoryCommands {
         }
     }
 
-    @Descriptor("Get the maximum configuration change getHistory size.")
+    @Descriptor("Get the maximum configuration change getHistory getNumChilds.")
     public void tm_history_maxsize() throws IOException {
         System.out.println(String.valueOf(org.apache.tamaya.osgi.commands.HistoryCommands.getMaxHistorySize(
                 getService(TamayaConfigService.class))));
     }
 
-    @Descriptor("Sets the maximum configuration change getHistory size.")
-    public void tm_history_maxsize_set(@Parameter(absentValue = Parameter.UNSPECIFIED, names={"-s", "--size"})
-                                   @Descriptor("The maximum size of getHistory entries stored.")int maxSize) throws IOException {
+    @Descriptor("Sets the maximum configuration change getHistory getNumChilds.")
+    public void tm_history_maxsize_set(@Parameter(absentValue = Parameter.UNSPECIFIED, names={"-s", "--getNumChilds"})
+                                   @Descriptor("The maximum getNumChilds of getHistory entries stored.")int maxSize) throws IOException {
         System.out.println(org.apache.tamaya.osgi.commands.HistoryCommands.setMaxHistorySize(
                 getService(TamayaConfigService.class),
                 maxSize));

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/ApplyTamayaConfigCommand.java
----------------------------------------------------------------------
diff --git a/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/ApplyTamayaConfigCommand.java b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/ApplyTamayaConfigCommand.java
index d6b13c6..6a2502f 100644
--- a/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/ApplyTamayaConfigCommand.java
+++ b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/ApplyTamayaConfigCommand.java
@@ -37,11 +37,11 @@ public class ApplyTamayaConfigCommand implements Action{
             required = true, multiValued = false)
     String pid = null;
 
-    @Option(name = "operationMode", aliases={"-m","--opmode"}, description = "Explicitly set (override) the operation mode to use.",
+    @Option(name = "operationMode", aliases={"-m","--opmode"}, description = "Explicitly setCurrent (override) the operation mode to use.",
             required = false, multiValued = false)
     String opMode = null;
 
-    @Option(name = "dryRun", aliases={"-d","--dryrun"}, description = "If set to true no OSGI configuration gets changed.",
+    @Option(name = "dryRun", aliases={"-d","--dryrun"}, description = "If setCurrent to true no OSGI configuration gets changed.",
             required = false, multiValued = false)
     boolean dryRun = false;
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeCommand.java
----------------------------------------------------------------------
diff --git a/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeCommand.java b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeCommand.java
index f736e4b..4add8f6 100644
--- a/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeCommand.java
+++ b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeCommand.java
@@ -26,7 +26,7 @@ import org.apache.tamaya.osgi.commands.TamayaConfigService;
 
 import java.io.IOException;
 
-@Command(scope = "tamaya", name = "tm_history_maxsize", description="Gets the maximal size of stored getHistory entries.")
+@Command(scope = "tamaya", name = "tm_history_maxsize", description="Gets the maximal getNumChilds of stored getHistory entries.")
 @Service
 public class HistoryMaxsizeCommand implements Action{
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-extensions/blob/ade6eb8b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeSetCommand.java
----------------------------------------------------------------------
diff --git a/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeSetCommand.java b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeSetCommand.java
index 91f09ee..ae4cca4 100644
--- a/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeSetCommand.java
+++ b/modules/osgi/karaf-shell/src/main/java/org/apache/tamaya/karaf/shell/HistoryMaxsizeSetCommand.java
@@ -28,14 +28,14 @@ import org.apache.tamaya.osgi.commands.TamayaConfigService;
 
 import java.io.IOException;
 
-@Command(scope = "tamaya", name = "tm_history_maxsize_set", description="Sets the maximal size of Tamaya getHistory entries.")
+@Command(scope = "tamaya", name = "tm_history_maxsize_set", description="Sets the maximal getNumChilds of Tamaya getHistory entries.")
 @Service
 public class HistoryMaxsizeSetCommand implements Action{
 
     @Reference
     private TamayaConfigService configPlugin;
 
-    @Argument(index = 0, name = "size", description = "The maximum number of entries in the getHistory.",
+    @Argument(index = 0, name = "getNumChilds", description = "The maximum number of entries in the getHistory.",
             required = true, multiValued = false)
     int maxSize;