tamaya-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From anat...@apache.org
Subject [03/16] incubator-tamaya-sandbox 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 classloader
Date Sun, 18 Nov 2018 21:20:36 GMT
http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/configured-sysprops/src/main/java/org/apache/tamaya/sysprops/ConfiguredSystemProperties.java
----------------------------------------------------------------------
diff --git a/configured-sysprops/src/main/java/org/apache/tamaya/sysprops/ConfiguredSystemProperties.java b/configured-sysprops/src/main/java/org/apache/tamaya/sysprops/ConfiguredSystemProperties.java
index 18f0349..f65b539 100644
--- a/configured-sysprops/src/main/java/org/apache/tamaya/sysprops/ConfiguredSystemProperties.java
+++ b/configured-sysprops/src/main/java/org/apache/tamaya/sysprops/ConfiguredSystemProperties.java
@@ -33,7 +33,6 @@ import java.util.Set;
 import java.util.logging.Logger;
 
 import org.apache.tamaya.Configuration;
-import org.apache.tamaya.ConfigurationProvider;
 
 /**
  * Properties implementation class that can be applied as current System properties by calling
@@ -330,7 +329,7 @@ public class ConfiguredSystemProperties extends Properties {
 
     protected Properties createNewProperties() {
         Properties props = new Properties(initialProperties);
-        Configuration config = ConfigurationProvider.getConfiguration();
+        Configuration config = Configuration.current();
         Map<String, String> configMap = config.getProperties();
         for (Map.Entry<String, String> en : configMap.entrySet()) {
             props.put(en.getKey(), en.getValue());

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/consul/src/main/java/org/apache/tamaya/consul/ConsulPropertySource.java
----------------------------------------------------------------------
diff --git a/consul/src/main/java/org/apache/tamaya/consul/ConsulPropertySource.java b/consul/src/main/java/org/apache/tamaya/consul/ConsulPropertySource.java
index 647cc5c..b16596a 100644
--- a/consul/src/main/java/org/apache/tamaya/consul/ConsulPropertySource.java
+++ b/consul/src/main/java/org/apache/tamaya/consul/ConsulPropertySource.java
@@ -95,7 +95,7 @@ implements MutablePropertySource{
     }
 
     /**
-     * Returns the  default ordinal used, when no ordinal is set, or the ordinal was not parseable to an int value.
+     * Returns the  default ordinal used, when no ordinal is setCurrent, or the ordinal was not parseable to an int value.
      * @return the  default ordinal used, by default 1000.
      */
     public int getDefaultOrdinal(){
@@ -146,7 +146,7 @@ implements MutablePropertySource{
                     props.put(reqKey+".modifyIndex", String.valueOf(value.getModifyIndex()));
                     props.put(reqKey+".lockIndex", String.valueOf(value.getLockIndex()));
                     props.put(reqKey+".flags", String.valueOf(value.getFlags()));
-                    return PropertyValue.builder(key, value.getValue().get(), getName()).setMetaEntries(props).build();
+                    return PropertyValue.of(key, value.getValue().get(), getName()).setMeta(props);
                 }
             } catch(Exception e){
                 LOG.log(Level.FINE, "etcd access failed on " + hostAndPort + ", trying next...", e);
@@ -167,7 +167,7 @@ implements MutablePropertySource{
 //                    if(!props.containsKey("_ERROR")) {
 //                        return mapPrefix(props);
 //                    } else{
-//                        LOG.log(Level.FINE, "consul error on " + hostAndPort + ": " + props.get("_ERROR"));
+//                        LOG.log(Level.FINE, "consul error on " + hostAndPort + ": " + props.current("_ERROR"));
 //                    }
 //                } catch(Exception e){
 //                    LOG.log(Level.FINE, "consul access failed on " + hostAndPort + ", trying next...", e);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/etcd/src/main/java/org/apache/tamaya/etcd/EtcdAccessor.java
----------------------------------------------------------------------
diff --git a/etcd/src/main/java/org/apache/tamaya/etcd/EtcdAccessor.java b/etcd/src/main/java/org/apache/tamaya/etcd/EtcdAccessor.java
index 62632e1..8fd66da 100644
--- a/etcd/src/main/java/org/apache/tamaya/etcd/EtcdAccessor.java
+++ b/etcd/src/main/java/org/apache/tamaya/etcd/EtcdAccessor.java
@@ -144,8 +144,8 @@ public class EtcdAccessor {
      * 
      * <pre>
      * {
-     * "action": "get",
-     * "node": {
+     * "action": "current",
+     * "getChild": {
      * "createdIndex": 2,
      * "key": "/message",
      * "modifiedIndex": 2,
@@ -166,7 +166,7 @@ public class EtcdAccessor {
      * </pre>
      *
      * @param key the requested key
-     * @return the mapped result, including meta-entries.
+     * @return the mapped result, including getMeta-entries.
      */
     public Map<String, String> get(String key) {
         final Map<String, String> result = new HashMap<>();
@@ -180,7 +180,7 @@ public class EtcdAccessor {
                     final JsonReader reader = readerFactory
                             .createReader(new StringReader(EntityUtils.toString(entity)));
                     final JsonObject o = reader.readObject();
-                    final JsonObject node = o.getJsonObject("node");
+                    final JsonObject node = o.getJsonObject("getChild");
                     if (node.containsKey("value")) {
                         result.put(key, node.getString("value"));
                         result.put("_" + key + ".source", "[etcd]" + serverURL);
@@ -210,10 +210,10 @@ public class EtcdAccessor {
     }
 
     /**
-     * Creates/updates an entry in etcd without any ttl set.
+     * Creates/updates an entry in etcd without any ttl setCurrent.
      *
      * @param key   the property key, not null
-     * @param value the value to be set
+     * @param value the value to be setCurrent
      * @return the result map as described above.
      * @see #set(String, String, Integer)
      */
@@ -226,8 +226,8 @@ public class EtcdAccessor {
      * 
      * <pre>
      *     {
-     * "action": "set",
-     * "node": {
+     * "action": "setCurrent",
+     * "getChild": {
      * "createdIndex": 3,
      * "key": "/message",
      * "modifiedIndex": 3,
@@ -259,7 +259,7 @@ public class EtcdAccessor {
      * </pre>
      *
      * @param key        the property key, not null
-     * @param value      the value to be set
+     * @param value      the value to be setCurrent
      * @param ttlSeconds the ttl in seconds (optional)
      * @return the result map as described above.
      */
@@ -282,7 +282,7 @@ public class EtcdAccessor {
                     final JsonReader reader = readerFactory
                             .createReader(new StringReader(EntityUtils.toString(entity)));
                     final JsonObject o = reader.readObject();
-                    final JsonObject node = o.getJsonObject("node");
+                    final JsonObject node = o.getJsonObject("getChild");
                     if (node.containsKey("createdIndex")) {
                         result.put("_" + key + ".createdIndex", String.valueOf(node.getInt("createdIndex")));
                     }
@@ -340,7 +340,7 @@ public class EtcdAccessor {
                     final JsonReader reader = readerFactory
                             .createReader(new StringReader(EntityUtils.toString(entity)));
                     final JsonObject o = reader.readObject();
-                    final JsonObject node = o.getJsonObject("node");
+                    final JsonObject node = o.getJsonObject("getChild");
                     if (node.containsKey("createdIndex")) {
                         result.put("_" + key + ".createdIndex", String.valueOf(node.getInt("createdIndex")));
                     }
@@ -402,11 +402,11 @@ public class EtcdAccessor {
      * 
      * <pre>
      * {
-     * "action": "get",
-     * "node": {
+     * "action": "current",
+     * "getChild": {
      * "key": "/",
      * "dir": true,
-     * "nodes": [
+     * "getChildren": [
      * {
      * "key": "/foo_dir",
      * "dir": true,
@@ -445,7 +445,7 @@ public class EtcdAccessor {
      * </pre>
      *
      * @param directory remote directory to query.
-     * @param recursive allows to set if querying is performed recursively
+     * @param recursive allows to setCurrent if querying is performed recursively
      * @return all properties read from the remote server.
      */
     public Map<String, String> getProperties(String directory, boolean recursive) {
@@ -460,7 +460,7 @@ public class EtcdAccessor {
                     final HttpEntity entity = response.getEntity();
                     final JsonReader reader = readerFactory.createReader(new StringReader(EntityUtils.toString(entity)));
                     final JsonObject o = reader.readObject();
-                    final JsonObject node = o.getJsonObject("node");
+                    final JsonObject node = o.getJsonObject("getChild");
                     if (node != null) {
                         addNodes(result, node);
                     }
@@ -479,7 +479,7 @@ public class EtcdAccessor {
      * Recursively read out all key/values from this etcd JSON array.
      *
      * @param result map with key, values and metadata.
-     * @param node   the node to parse.
+     * @param node   the getChild to parse.
      */
     private void addNodes(Map<String, String> result, JsonObject node) {
         if (!node.containsKey("dir") || "false".equals(node.get("dir").toString())) {
@@ -499,7 +499,7 @@ public class EtcdAccessor {
             }
             result.put("_" + key + ".source", "[etcd]" + serverURL);
         } else {
-            final JsonArray nodes = node.getJsonArray("nodes");
+            final JsonArray nodes = node.getJsonArray("getChildren");
             if (nodes != null) {
                 for (int i = 0; i < nodes.size(); i++) {
                     addNodes(result, nodes.getJsonObject(i));

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/etcd/src/main/java/org/apache/tamaya/etcd/EtcdPropertySource.java
----------------------------------------------------------------------
diff --git a/etcd/src/main/java/org/apache/tamaya/etcd/EtcdPropertySource.java b/etcd/src/main/java/org/apache/tamaya/etcd/EtcdPropertySource.java
index 1e7f17c..c512b24 100644
--- a/etcd/src/main/java/org/apache/tamaya/etcd/EtcdPropertySource.java
+++ b/etcd/src/main/java/org/apache/tamaya/etcd/EtcdPropertySource.java
@@ -21,7 +21,6 @@ package org.apache.tamaya.etcd;
 import org.apache.tamaya.mutableconfig.ConfigChangeRequest;
 import org.apache.tamaya.mutableconfig.spi.MutablePropertySource;
 import org.apache.tamaya.spi.PropertyValue;
-import org.apache.tamaya.spi.PropertyValueBuilder;
 import org.apache.tamaya.spisupport.propertysource.BasePropertySource;
 
 import java.util.ArrayList;
@@ -47,7 +46,7 @@ public class EtcdPropertySource extends BasePropertySource
 
     private List<EtcdAccessor> etcdBackends;
 
-    private Map<String,String> metaData = new HashMap<>();
+    private Map<String,Object> metaData = new HashMap<>();
 
     public EtcdPropertySource(String prefix, Collection<String> backends){
         this.prefix = prefix==null?"":prefix;
@@ -151,8 +150,9 @@ public class EtcdPropertySource extends BasePropertySource
                 props = accessor.get(key);
                 if(!props.containsKey("_ERROR")) {
                     // No prefix mapping necessary here, since we only access/return the value...
-                    return PropertyValue.builder(key, props.get(key), getName()).setMetaEntries(metaData)
-                            .addMetaEntries(props).removeMetaEntry(key).build();
+                    metaData.putAll(props);
+                    metaData.remove(key);
+                    return PropertyValue.create(key, props.get(key)).setMeta("source", getName()).setMeta(metaData);
                 } else{
                     LOG.log(Level.FINE, "etcd error on " + accessor.getUrl() + ": " + props.get("_ERROR"));
                 }
@@ -182,18 +182,18 @@ public class EtcdPropertySource extends BasePropertySource
 
     private Map<String, PropertyValue> mapPrefix(Map<String, String> props) {
 
-        Map<String, PropertyValueBuilder> builders = new HashMap<>();
+        Map<String, PropertyValue> values = new HashMap<>();
         // Evaluate keys
         for(Map.Entry<String,String> entry:props.entrySet()) {
             if (!entry.getKey().startsWith("_")) {
-                PropertyValueBuilder builder = builders.get(entry.getKey());
-                if (builder == null) {
-                    builder = PropertyValue.builder(entry.getKey(), "", getName()).setMetaEntries(metaData);
-                    builders.put(entry.getKey(), builder);
+                PropertyValue val = values.get(entry.getKey());
+                if (val == null) {
+                    val = PropertyValue.create(entry.getKey(), "").setMeta("source", getName()).setMeta(metaData);
+                    values.put(entry.getKey(), val);
                 }
             }
         }
-        // add meta entries
+        // add getMeta entries
         for(Map.Entry<String,String> entry:props.entrySet()) {
             if (entry.getKey().startsWith("_")) {
                 String key = entry.getKey().substring(1);
@@ -201,32 +201,27 @@ public class EtcdPropertySource extends BasePropertySource
                         ".expiration", ".source"}) {
                     if (key.endsWith(field)) {
                         key = key.substring(0, key.length() - field.length());
-                        PropertyValueBuilder builder = builders.get(key);
-                        if (builder != null) {
-                            builder.addMetaEntry(field, entry.getValue());
+                        PropertyValue val = values.get(key);
+                        if (val != null) {
+                            val.setMeta(field, entry.getValue());
                         }
                     }
                 }
             }
         }
         // Map to value map.
-        Map<String, PropertyValue> values = new HashMap<>();
-        for(Map.Entry<String,PropertyValueBuilder> en:builders.entrySet()) {
+//        Map<String, PropertyValue> values = new HashMap<>();
+        for(Map.Entry<String,PropertyValue> en:values.entrySet()) {
             if(prefix.isEmpty()){
-                values.put(en.getKey(), en.getValue().build());
+                values.put(en.getKey(), en.getValue());
             }else{
-                values.put(prefix + en.getKey(), en.getValue().setKey(prefix + en.getKey()).build());
+                values.put(prefix + en.getKey(), en.getValue().setKey(prefix + en.getKey()));
             }
         }
         return values;
     }
 
     @Override
-    public boolean isScannable() {
-        return true;
-    }
-
-    @Override
     public void applyChange(ConfigChangeRequest configChange) {
         for(EtcdAccessor accessor: EtcdBackendConfig.getEtcdBackends()){
             try{

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/etcd/src/test/java/org/apache/tamaya/etcd/EtcdAccessorTest.java
----------------------------------------------------------------------
diff --git a/etcd/src/test/java/org/apache/tamaya/etcd/EtcdAccessorTest.java b/etcd/src/test/java/org/apache/tamaya/etcd/EtcdAccessorTest.java
index 3c8bff9..11b354d 100644
--- a/etcd/src/test/java/org/apache/tamaya/etcd/EtcdAccessorTest.java
+++ b/etcd/src/test/java/org/apache/tamaya/etcd/EtcdAccessorTest.java
@@ -28,7 +28,7 @@ import java.util.UUID;
 import static org.junit.Assert.*;
 
 /**
- * Tests for the etcd backend integration. You must have set a system property so, theses tests are executed, e.g.
+ * Tests for the etcd backend integration. You must have setCurrent a system property so, theses tests are executed, e.g.
  * {@code -Detcd.url=http://127.0.0.1:4001}.
  */
 public class EtcdAccessorTest {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/hazelcast/src/main/java/org/apache/tamaya/hazelcast/HazelcastPropertySource.java
----------------------------------------------------------------------
diff --git a/hazelcast/src/main/java/org/apache/tamaya/hazelcast/HazelcastPropertySource.java b/hazelcast/src/main/java/org/apache/tamaya/hazelcast/HazelcastPropertySource.java
index 7821651..2da7739 100644
--- a/hazelcast/src/main/java/org/apache/tamaya/hazelcast/HazelcastPropertySource.java
+++ b/hazelcast/src/main/java/org/apache/tamaya/hazelcast/HazelcastPropertySource.java
@@ -40,7 +40,7 @@ import java.util.logging.Logger;
  * Created by atsticks on 03.11.16.
  *
  * Basically all kind of property entris can be stored. Additionally this property source allows
- * to pass additional meta-entries to control the TTL of the data in milliseconds. For illustration
+ * to pass additional getMeta-entries to control the TTL of the data in milliseconds. For illustration
  * the following map will store {@code my.entry} with a TLL of 20000 milliseconds (20 seconds) and
  * store {@code my.otherEntry} with infinite lifetime (as long as the cluster is alive):
  *
@@ -164,11 +164,10 @@ implements MutablePropertySource{
         if(value==null){
             return null;
         }
-        return PropertyValue.builder(key, value, getName())
-                .addMetaEntry("backend", "Hazelcast")
-                .addMetaEntry("instance", hcConfig.getInstanceName())
-                .addMetaEntry("mapReference", mapReference)
-                .build();
+        return PropertyValue.of(key, value, getName())
+                .setMeta("backend", "Hazelcast")
+                .setMeta("instance", hcConfig.getInstanceName())
+                .setMeta("mapReference", mapReference);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeConverter.java
index 864eb32..5942f8c 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeConverter.java
@@ -90,8 +90,10 @@ public class DateTimeConverter implements PropertyConverter<DateTime> {
     }
 
     @Override
-    public DateTime convert(String value, ConversionContext context) {
-        context.addSupportedFormats(DateTimeConverter.class, PARSER_FORMATS);
+    public DateTime convert(String value) {
+        ConversionContext.doOptional(context -> {
+            context.addSupportedFormats(DateTimeConverter.class, PARSER_FORMATS);
+        });
 
         String trimmed = Objects.requireNonNull(value).trim();
         DateTime result = null;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeZoneConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeZoneConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeZoneConverter.java
index 198a345..ba13442 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeZoneConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/DateTimeZoneConverter.java
@@ -42,9 +42,9 @@ public class DateTimeZoneConverter implements PropertyConverter<DateTimeZone> {
     private static final Pattern IS_INTEGER_VALUE = Pattern.compile(PATTERN_REGEX);
 
     @Override
-    public DateTimeZone convert(String value, ConversionContext context) {
+    public DateTimeZone convert(String value) {
         String trimmed = requireNonNull(value).trim();
-        addSupportedFormats(context);
+        addSupportedFormats();
 
         DateTimeZone result = null;
 
@@ -63,9 +63,11 @@ public class DateTimeZoneConverter implements PropertyConverter<DateTimeZone> {
         return result;
     }
 
-    private void addSupportedFormats(ConversionContext context) {
-        context.addSupportedFormats(DateTimeZoneConverter.class, "Time zone in the form [+-]hh:mm via the regex " + PATTERN_REGEX);
-        context.addSupportedFormats(DateTimeZoneConverter.class, "All time zone ids supported by Joda Time");
+    private void addSupportedFormats() {
+        ConversionContext.doOptional(context -> {
+            context.addSupportedFormats(DateTimeZoneConverter.class, "Time zone in the form [+-]hh:mm via the regex " + PATTERN_REGEX);
+            context.addSupportedFormats(DateTimeZoneConverter.class, "All time zone ids supported by Joda Time");
+        });
     }
 
     private boolean isSingleIntegerValue(String value) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/DurationConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/DurationConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/DurationConverter.java
index 36d6fe9..32fdc7f 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/DurationConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/DurationConverter.java
@@ -43,30 +43,40 @@ public class DurationConverter implements PropertyConverter<Duration> {
     private PeriodConverter periodConverter = new PeriodConverter();
 
     @Override
-    public Duration convert(String value, ConversionContext context) {
+    public Duration convert(String value) {
         String trimmed = Objects.requireNonNull(value).trim();
-        addSupportedFormats(context);
+        addSupportedFormats();
         try {
             return Duration.parse(value);
         }catch(Exception e){
             Period period = null;
-            if(value.startsWith("P")){
-                period = periodConverter.convert("P0Y0M0W"+value.substring(1), null);
-            }
-            if(period == null){
-                period = periodConverter.convert("P0000-00-"+value, null);
-            }
-            if(period != null){
-                return period.toStandardDuration();
+            ConversionContext ctx = ConversionContext.current();
+            try {
+                ConversionContext.reset();
+                if (value.startsWith("P")) {
+                    period = periodConverter.convert("P0Y0M0W" + value.substring(1));
+                }
+                if (period == null) {
+                    period = periodConverter.convert("P0000-00-" + value);
+                }
+                if (period != null) {
+                    return period.toStandardDuration();
+                }
+            }finally{
+                if(ctx!=null){
+                    ConversionContext.set(ctx);
+                }
             }
         }
         return null;
     }
 
-    private void addSupportedFormats(ConversionContext context) {
-        context.addSupportedFormats(getClass(), "PTa.bS");
-        context.addSupportedFormats(getClass(), "PdDThHmMsS");
-        context.addSupportedFormats(getClass(), "ddThh:mm:ss");
+    private void addSupportedFormats() {
+        ConversionContext.doOptional(context -> {
+            context.addSupportedFormats(getClass(), "PTa.bS");
+            context.addSupportedFormats(getClass(), "PdDThHmMsS");
+            context.addSupportedFormats(getClass(), "ddThh:mm:ss");
+        });
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/InstantConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/InstantConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/InstantConverter.java
index 20d146b..b1d6f53 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/InstantConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/InstantConverter.java
@@ -20,7 +20,6 @@ package org.apache.tamaya.jodatime;
 
 import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
-import org.joda.time.DateTime;
 import org.joda.time.Instant;
 import org.joda.time.format.*;
 
@@ -88,8 +87,10 @@ public class InstantConverter implements PropertyConverter<Instant> {
     }
 
     @Override
-    public Instant convert(String value, ConversionContext context) {
-        context.addSupportedFormats(InstantConverter.class, PARSER_FORMATS);
+    public Instant convert(String value) {
+        ConversionContext.doOptional(context -> {
+            context.addSupportedFormats(InstantConverter.class, PARSER_FORMATS);
+        });
 
         String trimmed = Objects.requireNonNull(value).trim();
         try {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalDateConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalDateConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalDateConverter.java
index 0739e93..d4c5cd6 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalDateConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalDateConverter.java
@@ -66,8 +66,10 @@ public class LocalDateConverter implements PropertyConverter<LocalDate> {
     }
 
     @Override
-    public LocalDate convert(String value, ConversionContext context) {
-        context.addSupportedFormats(LocalDateConverter.class, PARSER_FORMATS);
+    public LocalDate convert(String value) {
+        ConversionContext.doOptional(context -> {
+            context.addSupportedFormats(LocalDateConverter.class, PARSER_FORMATS);
+                });
 
         String trimmed = Objects.requireNonNull(value).trim();
         LocalDate result = null;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalTimeConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalTimeConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalTimeConverter.java
index 22593c0..7784308 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalTimeConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/LocalTimeConverter.java
@@ -50,8 +50,10 @@ public class LocalTimeConverter implements PropertyConverter<LocalTime> {
     };
 
     @Override
-    public LocalTime convert(String value, ConversionContext context) {
-        context.addSupportedFormats(LocalTimeConverter.class, PARSER_FORMATS);
+    public LocalTime convert(String value) {
+        ConversionContext.doOptional(context -> {
+                    context.addSupportedFormats(LocalTimeConverter.class, PARSER_FORMATS);
+                });
 
         String trimmed = Objects.requireNonNull(value).trim();
         try {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/main/java/org/apache/tamaya/jodatime/PeriodConverter.java
----------------------------------------------------------------------
diff --git a/jodatime/src/main/java/org/apache/tamaya/jodatime/PeriodConverter.java b/jodatime/src/main/java/org/apache/tamaya/jodatime/PeriodConverter.java
index 2b946e2..0b8e22d 100644
--- a/jodatime/src/main/java/org/apache/tamaya/jodatime/PeriodConverter.java
+++ b/jodatime/src/main/java/org/apache/tamaya/jodatime/PeriodConverter.java
@@ -57,10 +57,10 @@ public class PeriodConverter implements PropertyConverter<org.joda.time.Period>
     private final static Pattern ALTERNATIVE_PATTERN = Pattern.compile(ALTERNATIVE_REGEX);
 
     @Override
-    public Period convert(String value, ConversionContext context) {
+    public Period convert(String value) {
         String trimmed = Objects.requireNonNull(value).trim();
 
-        addSupportedFormats(context);
+        addSupportedFormats();
 
         MutablePeriod result = null;
         PeriodParser format = null;
@@ -83,13 +83,11 @@ public class PeriodConverter implements PropertyConverter<org.joda.time.Period>
         return result != null ? result.toPeriod() : null;
     }
 
-    private void addSupportedFormats(ConversionContext context) {
-        if(context==null){
-            // use case when called internally from DurationConverter.
-            return;
-        }
-        context.addSupportedFormats(PeriodConverter.class, "PyYmMwWdDThHmMsS");
-        context.addSupportedFormats(PeriodConverter.class, "Pyyyy-mm-ddThh:mm:ss");
+    private void addSupportedFormats() {
+        ConversionContext.doOptional(context -> {
+            context.addSupportedFormats(PeriodConverter.class, "PyYmMwWdDThHmMsS");
+            context.addSupportedFormats(PeriodConverter.class, "Pyyyy-mm-ddThh:mm:ss");
+        });
     }
 
     private boolean isISOFormat(String value) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeConverterTest.java
----------------------------------------------------------------------
diff --git a/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeConverterTest.java b/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeConverterTest.java
index 483ee83..194022f 100644
--- a/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeConverterTest.java
+++ b/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeConverterTest.java
@@ -20,11 +20,9 @@ package org.apache.tamaya.jodatime;
 
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.ConversionContext;
-import org.apache.tamaya.spi.PropertyConverter;
 import org.joda.time.DateTime;
 import org.joda.time.format.DateTimeFormat;
 import org.joda.time.format.DateTimeFormatter;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 
@@ -36,9 +34,6 @@ import static org.hamcrest.Matchers.containsInAnyOrder;
 import static org.hamcrest.Matchers.hasItem;
 import static org.hamcrest.Matchers.hasSize;
 import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyObject;
-import static org.mockito.Matchers.anyVararg;
-import static org.mockito.Mockito.doCallRealMethod;
 
 public class DateTimeConverterTest {
     /*
@@ -74,10 +69,8 @@ public class DateTimeConverterTest {
              {"2007-08-31T16:47:01+00:00 ", FORMATTER.parseDateTime("2007-08-31T16:47:01.0+00:00")},
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (Object[] pair : inputResultPairs) {
-            DateTime date = converter.convert((String)pair[0], context);
+            DateTime date = converter.convert((String)pair[0]);
 
             assertThat("Converter failed to convert input value " + pair[0], date, notNullValue());
             assertThat(date.isEqual((DateTime)pair[1]), is(true));
@@ -90,10 +83,8 @@ public class DateTimeConverterTest {
              "00:00", "a", "-", "+ :00", "+00:"
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (String input : inputValues) {
-            DateTime date = converter.convert(input, context);
+            DateTime date = converter.convert(input);
 
             assertThat(date, nullValue());
         }
@@ -102,15 +93,18 @@ public class DateTimeConverterTest {
     @Test
     public void allSupportedFormatsAreAddedToTheConversionContext() {
         ConversionContext context = new ConversionContext.Builder(TypeLiteral.of(DateTime.class)).build();
-
-        converter.convert("2007-08-31T16+00:00", context);
-
-        assertThat(context.getSupportedFormats(), hasSize(DateTimeConverter.PARSER_FORMATS.length));
-
-        for (String format : DateTimeConverter.PARSER_FORMATS) {
-            String expected = format + " (" + DateTimeConverter.class.getSimpleName() + ")";
-            assertThat(context.getSupportedFormats(), hasItem(expected));
+        try {
+            ConversionContext.set(context);
+            converter.convert("2007-08-31T16+00:00");
+
+            assertThat(context.getSupportedFormats(), hasSize(DateTimeConverter.PARSER_FORMATS.length));
+
+            for (String format : DateTimeConverter.PARSER_FORMATS) {
+                String expected = format + " (" + DateTimeConverter.class.getSimpleName() + ")";
+                assertThat(context.getSupportedFormats(), hasItem(expected));
+            }
+        }finally {
+            ConversionContext.reset();
         }
-
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeZoneConverterTest.java
----------------------------------------------------------------------
diff --git a/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeZoneConverterTest.java b/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeZoneConverterTest.java
index babbe06..e46c75f 100644
--- a/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeZoneConverterTest.java
+++ b/jodatime/src/test/java/org/apache/tamaya/jodatime/DateTimeZoneConverterTest.java
@@ -22,7 +22,6 @@ import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.ConversionContext.Builder;
 import org.joda.time.DateTimeZone;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 
@@ -57,10 +56,8 @@ public class DateTimeZoneConverterTest {
              {"+04:00", DateTimeZone.forID("+04:00")},
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (Object[] pair : inputResultPairs) {
-            DateTimeZone zone = converter.convert((String) pair[0], context);
+            DateTimeZone zone = converter.convert((String) pair[0]);
 
             assertThat("Converter failed to convert input value " + pair[0], zone, notNullValue());
             assertThat(zone, equalTo((DateTimeZone)pair[1]));
@@ -77,10 +74,8 @@ public class DateTimeZoneConverterTest {
              "2007-08-01+00:00"
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (String input : inputValues) {
-            DateTimeZone date = converter.convert(input, context);
+            DateTimeZone date = converter.convert(input);
 
             assertThat(date, nullValue());
         }
@@ -92,13 +87,17 @@ public class DateTimeZoneConverterTest {
         String secondFormat = "All time zone ids supported by Joda Time (DateTimeZoneConverter)";
 
         ConversionContext context = new Builder(TypeLiteral.of(DateTimeZone.class)).build();
-
-        DateTimeZone result = converter.convert("+01:00", context);
-
-        assertThat(result, notNullValue());
-        assertThat(context.getSupportedFormats(), hasSize(2));
-        assertThat(context.getSupportedFormats(), hasItem(firstFormat));
-        assertThat(context.getSupportedFormats(), hasItem(secondFormat));
+        try {
+            ConversionContext.set(context);
+            DateTimeZone result = converter.convert("+01:00");
+
+            assertThat(result, notNullValue());
+            assertThat(context.getSupportedFormats(), hasSize(2));
+            assertThat(context.getSupportedFormats(), hasItem(firstFormat));
+            assertThat(context.getSupportedFormats(), hasItem(secondFormat));
+        }finally{
+            ConversionContext.reset();
+        }
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/test/java/org/apache/tamaya/jodatime/DurationConverterTest.java
----------------------------------------------------------------------
diff --git a/jodatime/src/test/java/org/apache/tamaya/jodatime/DurationConverterTest.java b/jodatime/src/test/java/org/apache/tamaya/jodatime/DurationConverterTest.java
index 39cf41b..513deeb 100644
--- a/jodatime/src/test/java/org/apache/tamaya/jodatime/DurationConverterTest.java
+++ b/jodatime/src/test/java/org/apache/tamaya/jodatime/DurationConverterTest.java
@@ -58,10 +58,8 @@ public class DurationConverterTest {
 
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (Object[] pair : inputResultPairs) {
-            Duration duration = converter.convert((String) pair[0], context);
+            Duration duration = converter.convert((String) pair[0]);
 
             assertThat("Converter failed to convert input value " + pair[0], duration, notNullValue());
             assertThat(duration, equalTo((Duration) pair[1]));
@@ -78,10 +76,8 @@ public class DurationConverterTest {
                 "fooBar",
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (String input : inputValues) {
-            Duration duration = converter.convert(input, context);
+            Duration duration = converter.convert(input);
 
             assertThat(duration, nullValue());
         }
@@ -92,12 +88,16 @@ public class DurationConverterTest {
         String name = DurationConverter.class.getSimpleName();
 
         ConversionContext context = new ConversionContext.Builder(TypeLiteral.of(Duration.class)).build();
-
-        converter.convert("P0DT0H0M0S", context);
-
-        assertThat(context.getSupportedFormats(), hasSize(3));
-        assertThat(context.getSupportedFormats(), hasItem("PdDThHmMsS (" + name + ")"));
-        assertThat(context.getSupportedFormats(), hasItem("ddThh:mm:ss (" + name + ")"));
-        assertThat(context.getSupportedFormats(), hasItem("PTa.bS ("+name+")"));
+        try {
+            ConversionContext.set(context);
+            converter.convert("P0DT0H0M0S");
+
+            assertThat(context.getSupportedFormats(), hasSize(3));
+            assertThat(context.getSupportedFormats(), hasItem("PdDThHmMsS (" + name + ")"));
+            assertThat(context.getSupportedFormats(), hasItem("ddThh:mm:ss (" + name + ")"));
+            assertThat(context.getSupportedFormats(), hasItem("PTa.bS (" + name + ")"));
+        }finally{
+            ConversionContext.reset();
+        }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/test/java/org/apache/tamaya/jodatime/FullStackIT.java
----------------------------------------------------------------------
diff --git a/jodatime/src/test/java/org/apache/tamaya/jodatime/FullStackIT.java b/jodatime/src/test/java/org/apache/tamaya/jodatime/FullStackIT.java
index ce9c414..9372aac 100644
--- a/jodatime/src/test/java/org/apache/tamaya/jodatime/FullStackIT.java
+++ b/jodatime/src/test/java/org/apache/tamaya/jodatime/FullStackIT.java
@@ -41,7 +41,7 @@ public class FullStackIT {
     @Test
     public void retrieveJodaTimeValuesFromConfiguration() {
 
-        Configuration configuration = ConfigurationProvider.getConfiguration();
+        Configuration configuration = Configuration.current();
 
         String dateTimeString = configuration.get("dateTimeValue");
         DateTime dateTimeValue = configuration.get("dateTimeValue", DateTime.class);
@@ -54,7 +54,7 @@ public class FullStackIT {
 
     @Test
     public void retrieveDateTimeZoneValueFromConfiguration() {
-        Configuration configuration = ConfigurationProvider.getConfiguration();
+        Configuration configuration = Configuration.current();
 
         String zoneAAsString = configuration.get("dateTimeZoneValueA");
         DateTimeZone zoneA = configuration.get("dateTimeZoneValueA", DateTimeZone.class);
@@ -71,7 +71,7 @@ public class FullStackIT {
 
     @Test
     public void retrievePeriodValueFromConfiguration() {
-        Configuration configuration = ConfigurationProvider.getConfiguration();
+        Configuration configuration = Configuration.current();
 
         MutablePeriod referenceValue = new MutablePeriod();
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/jodatime/src/test/java/org/apache/tamaya/jodatime/PeriodConverterTest.java
----------------------------------------------------------------------
diff --git a/jodatime/src/test/java/org/apache/tamaya/jodatime/PeriodConverterTest.java b/jodatime/src/test/java/org/apache/tamaya/jodatime/PeriodConverterTest.java
index 0affb2c..9dc97e7 100644
--- a/jodatime/src/test/java/org/apache/tamaya/jodatime/PeriodConverterTest.java
+++ b/jodatime/src/test/java/org/apache/tamaya/jodatime/PeriodConverterTest.java
@@ -20,11 +20,9 @@ package org.apache.tamaya.jodatime;
 
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.spi.ConversionContext;
-import org.joda.time.DateTime;
 import org.joda.time.Period;
 import org.joda.time.format.ISOPeriodFormat;
 import org.joda.time.format.PeriodFormatter;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 
@@ -64,10 +62,8 @@ public class PeriodConverterTest {
              {"P0002-03-00T00:00:05", FORMATTER.parsePeriod("P2Y3M0W0DT0H0M5S")}
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (Object[] pair : inputResultPairs) {
-            Period period = converter.convert((String) pair[0], context);
+            Period period = converter.convert((String) pair[0]);
 
             assertThat("Converter failed to convert input value " + pair[0], period, notNullValue());
             assertThat(period, equalTo((Period)pair[1]));
@@ -82,10 +78,8 @@ public class PeriodConverterTest {
             "P0002T00:05"
         };
 
-        ConversionContext context = Mockito.mock(ConversionContext.class);
-
         for (String input : inputValues) {
-            Period period = converter.convert(input, context);
+            Period period = converter.convert(input);
 
             assertThat(period, nullValue());
         }
@@ -96,11 +90,15 @@ public class PeriodConverterTest {
         String name = PeriodConverter.class.getSimpleName();
 
         ConversionContext context = new ConversionContext.Builder(TypeLiteral.of(Period.class)).build();
-
-        converter.convert("P7Y0M0W0DT0H0M0S", context);
-
-        assertThat(context.getSupportedFormats(), hasSize(2));
-        assertThat(context.getSupportedFormats(), hasItem("PyYmMwWdDThHmMsS (" + name + ")"));
-        assertThat(context.getSupportedFormats(), hasItem("Pyyyy-mm-ddThh:mm:ss (" + name + ")"));
+        try {
+            ConversionContext.set(context);
+            converter.convert("P7Y0M0W0DT0H0M0S");
+
+            assertThat(context.getSupportedFormats(), hasSize(2));
+            assertThat(context.getSupportedFormats(), hasItem("PyYmMwWdDThHmMsS (" + name + ")"));
+            assertThat(context.getSupportedFormats(), hasItem("Pyyyy-mm-ddThh:mm:ss (" + name + ")"));
+        }finally{
+            ConversionContext.reset();
+        }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/management/src/main/java/org/apache/tamaya/management/ManagedConfig.java
----------------------------------------------------------------------
diff --git a/management/src/main/java/org/apache/tamaya/management/ManagedConfig.java b/management/src/main/java/org/apache/tamaya/management/ManagedConfig.java
index dab3457..c804d22 100644
--- a/management/src/main/java/org/apache/tamaya/management/ManagedConfig.java
+++ b/management/src/main/java/org/apache/tamaya/management/ManagedConfig.java
@@ -50,12 +50,12 @@ public class ManagedConfig implements ManagedConfigMBean {
 
     @Override
     public String getJsonConfigurationInfo() {
-        return getConfigurationInternal().query(ConfigurationFunctions.jsonInfo());
+        return getConfigurationInternal().adapt(ConfigurationFunctions.jsonInfo());
     }
 
     @Override
     public String getXmlConfigurationInfo() {
-        return getConfigurationInternal().query(ConfigurationFunctions.xmlInfo());
+        return getConfigurationInternal().adapt(ConfigurationFunctions.xmlInfo());
     }
 
     @Override
@@ -65,22 +65,22 @@ public class ManagedConfig implements ManagedConfigMBean {
 
     @Override
     public Map<String, String> getSection(String area, boolean recursive) {
-        return getConfigurationInternal().with(ConfigurationFunctions.section(area, recursive)).getProperties();
+        return getConfigurationInternal().map(ConfigurationFunctions.section(area, recursive)).getProperties();
     }
 
     @Override
     public Set<String> getSections() {
-        return getConfigurationInternal().query(ConfigurationFunctions.sections());
+        return getConfigurationInternal().adapt(ConfigurationFunctions.sections());
     }
 
     @Override
     public Set<String> getTransitiveSections() {
-        return getConfigurationInternal().query(ConfigurationFunctions.transitiveSections());
+        return getConfigurationInternal().adapt(ConfigurationFunctions.transitiveSections());
     }
 
     @Override
     public boolean isAreaExisting(String area) {
-        return !getConfigurationInternal().with(
+        return !getConfigurationInternal().map(
                 ConfigurationFunctions.section(area)).getProperties().isEmpty();
     }
 
@@ -100,7 +100,7 @@ public class ManagedConfig implements ManagedConfigMBean {
         ClassLoader currentCL = Thread.currentThread().getContextClassLoader();
         try{
             Thread.currentThread().setContextClassLoader(this.classLoader);
-            return ConfigurationProvider.getConfiguration();
+            return Configuration.current();
         } finally{
             Thread.currentThread().setContextClassLoader(currentCL);
         }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/management/src/main/java/org/apache/tamaya/management/ManagedConfigMBean.java
----------------------------------------------------------------------
diff --git a/management/src/main/java/org/apache/tamaya/management/ManagedConfigMBean.java b/management/src/main/java/org/apache/tamaya/management/ManagedConfigMBean.java
index 7fa1eef..1682819 100644
--- a/management/src/main/java/org/apache/tamaya/management/ManagedConfigMBean.java
+++ b/management/src/main/java/org/apache/tamaya/management/ManagedConfigMBean.java
@@ -47,7 +47,7 @@ public interface ManagedConfigMBean {
      * }
      * </pre>
      *
-     * @return a JSON formatted meta-information.
+     * @return a JSON formatted getMeta-information.
      */
     String getJsonConfigurationInfo();
 
@@ -67,7 +67,7 @@ public interface ManagedConfigMBean {
      *     }
      * </pre>
      *
-     * @return a JSON formatted meta-information.
+     * @return a JSON formatted getMeta-information.
      */
     String getXmlConfigurationInfo();
 
@@ -82,7 +82,7 @@ public interface ManagedConfigMBean {
     /**
      * Accesses a configuration values for current a given config section as Map.
      * @param area the target section key, not null.
-     * @param recursive if set to false only direct child keys of the given section are returned.
+     * @param recursive if setCurrent to false only direct child keys of the given section are returned.
      * @return the key/values found, including the recursive child values.
      * @throws org.apache.tamaya.ConfigException If the configuration is not yet loaded.
      */

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/CachedFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/CachedFilter.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/CachedFilter.java
index b9cd370..f72e6ae 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/CachedFilter.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/CachedFilter.java
@@ -19,7 +19,6 @@
 package org.apache.tamaya.metamodel;
 
 import org.apache.tamaya.metamodel.spi.ItemFactory;
-import org.apache.tamaya.spi.FilterContext;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.apache.tamaya.spi.PropertyValue;
 
@@ -69,7 +68,7 @@ public class CachedFilter implements PropertyFilter{
     }
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
+    public PropertyValue filterProperty(PropertyValue value) {
         if(matches !=null){
             if(value.getKey().matches(matches)){
                 return resolveCachedEntry(value);
@@ -102,8 +101,8 @@ public class CachedFilter implements PropertyFilter{
     public String toString() {
         return "CachedFilter{" +
                 "matches='" + matches + '\'' +
-                ", cache-size=" + cachedEntries.size() +
-                ", max-size=" + maxSize +
+                ", cache-getNumChilds=" + cachedEntries.size() +
+                ", max-getNumChilds=" + maxSize +
                 ", timeout=" + timeout +
                 '}';
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/HideFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/HideFilter.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/HideFilter.java
index 7e02333..5b6198b 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/HideFilter.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/HideFilter.java
@@ -21,7 +21,6 @@ package org.apache.tamaya.metamodel;
 import java.util.Map;
 
 import org.apache.tamaya.metamodel.spi.ItemFactory;
-import org.apache.tamaya.spi.FilterContext;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.apache.tamaya.spi.PropertyValue;
 
@@ -64,7 +63,7 @@ public class HideFilter implements PropertyFilter{
     }
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
+    public PropertyValue filterProperty(PropertyValue value) {
         if(matches !=null){
             if(value.getKey().matches(matches)){
                 return null;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/ImmutableFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/ImmutableFilter.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/ImmutableFilter.java
index 13f3d0c..2658fd4 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/ImmutableFilter.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/ImmutableFilter.java
@@ -56,9 +56,10 @@ public class ImmutableFilter implements PropertyFilter{
     private Map<String,PropertyValue> map = new ConcurrentHashMap<>();
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
+    public PropertyValue filterProperty(PropertyValue value) {
         String key = value.getKey();
-        if(!context.isSinglePropertyScoped()) {
+        FilterContext context = FilterContext.get();
+        if(context!=null && !context.isSinglePropertyScoped()) {
             key = value.getKey() + "_all";
         }
         PropertyValue val = map.get(key);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/MapFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/MapFilter.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/MapFilter.java
index b721780..c2b5bc7 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/MapFilter.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/MapFilter.java
@@ -19,10 +19,8 @@
 package org.apache.tamaya.metamodel;
 
 import org.apache.tamaya.metamodel.spi.ItemFactory;
-import org.apache.tamaya.spi.FilterContext;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.apache.tamaya.spi.PropertyValue;
-import org.apache.tamaya.spi.PropertyValueBuilder;
 
 import java.util.Map;
 
@@ -85,8 +83,8 @@ public class MapFilter implements PropertyFilter{
     }
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
-        PropertyValueBuilder b = value.toBuilder();
+    public PropertyValue filterProperty(PropertyValue value) {
+        value = value.mutable();
         String key = value.getKey();
         if(matches !=null){
             if(!value.getKey().matches(matches)){
@@ -96,14 +94,14 @@ public class MapFilter implements PropertyFilter{
         if(cutoff !=null){
             if(value.getKey().startsWith(cutoff)){
                 key = key.substring(cutoff.length());
-                b.setKey(key);
+                value.setKey(key);
             }
         }
         if(target!=null){
             key = target+key;
-            b.setKey(key);
+            value.setKey(key);
         }
-        return b.build();
+        return value;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/MaskFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/MaskFilter.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/MaskFilter.java
index a252f96..b472f2f 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/MaskFilter.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/MaskFilter.java
@@ -19,7 +19,6 @@
 package org.apache.tamaya.metamodel;
 
 import org.apache.tamaya.metamodel.spi.ItemFactory;
-import org.apache.tamaya.spi.FilterContext;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.apache.tamaya.spi.PropertyValue;
 
@@ -113,7 +112,7 @@ public class MaskFilter implements PropertyFilter{
     }
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
+    public PropertyValue filterProperty(PropertyValue value) {
         if(matches !=null){
             if(value.getKey().matches(matches)){
                 return null;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaConfiguration.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaConfiguration.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaConfiguration.java
index a08e418..5b54812 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaConfiguration.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaConfiguration.java
@@ -31,7 +31,6 @@ import javax.xml.parsers.ParserConfigurationException;
 
 import org.apache.tamaya.ConfigException;
 import org.apache.tamaya.Configuration;
-import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.spi.ConfigurationBuilder;
 import org.apache.tamaya.spi.ServiceContextManager;
@@ -39,7 +38,7 @@ import org.w3c.dom.Document;
 import org.xml.sax.SAXException;
 
 /**
- * Accessor singleton for accessing/loading meta-configuration.
+ * Accessor singleton for accessing/loading getMeta-configuration.
  */
 public final class MetaConfiguration {
 
@@ -54,10 +53,10 @@ public final class MetaConfiguration {
 
     /**
      * Creates a new {@link Configuration} using {@link #createConfiguration(URL)}
-     * and applies it as default configuration using {@link ConfigurationProvider#setConfiguration(Configuration)}.
+     * and applies it as default configuration using {@link Configuration#current()} (Configuration)}.
      */
     public static void configure(){
-        LOG.info("TAMAYA: Checking for meta-configuration...");
+        LOG.info("TAMAYA: Checking for getMeta-configuration...");
         URL configFile = getDefaultMetaConfig();
         if(configFile==null){
             LOG.warning("TAMAYA: No " + CONFIG_RESOURCE + " found, using defaults.");
@@ -67,14 +66,14 @@ public final class MetaConfiguration {
 
     /**
      * Creates a new {@link Configuration} using {@link #createConfiguration(URL)}
-     * and applies it as default configuration using {@link ConfigurationProvider#setConfiguration(Configuration)}.
-     * @param metaConfig URL for loading the {@code tamaya-config.xml} meta-configuration.
+     * and applies it as default configuration using {@link Configuration#setCurrent(Configuration)} }.
+     * @param metaConfig URL for loading the {@code tamaya-config.xml} getMeta-configuration.
      */
     public static void configure(URL metaConfig){
         try {
             // Let readers do their work
             Configuration config = createConfiguration(metaConfig);
-            ConfigurationProvider.setConfiguration(config);
+            Configuration.setCurrent(config);
         }catch(Exception e){
             LOG.log(Level.SEVERE, "TAMAYA: Error loading configuration.", e);
         }
@@ -103,7 +102,7 @@ public final class MetaConfiguration {
      * context to the {@link MetaConfigurationReader} instances found in the current
      * {@link org.apache.tamaya.spi.ServiceContext} and returns the corresponding builder
      * instance.
-     * @param metaConfig URL for loading the {@code tamaya-config.xml} meta-configuration.
+     * @param metaConfig URL for loading the {@code tamaya-config.xml} getMeta-configuration.
      * @return a new configuration context builder, never null.
      * @throws ConfigException If the URL cannot be read.
      */
@@ -114,7 +113,7 @@ public final class MetaConfiguration {
         try {
             document = DocumentBuilderFactory.newInstance()
                     .newDocumentBuilder().parse(configFile.openStream());
-            ConfigurationBuilder builder = ConfigurationProvider.getConfigurationBuilder();
+            ConfigurationBuilder builder = Configuration.createConfigurationBuilder();
             for(MetaConfigurationReader reader: ServiceContextManager.getServiceContext().getServices(
                     MetaConfigurationReader.class
             )){
@@ -123,15 +122,15 @@ public final class MetaConfiguration {
             }
             return builder;
         } catch (SAXException | IOException | ParserConfigurationException e) {
-            throw new ConfigException("Cannot read meta-config deom " + metaConfig, e);
+            throw new ConfigException("Cannot read getMeta-config deom " + metaConfig, e);
         }
     }
 
     /**
-     * Reads the meta-configuration and delegates initialization of the current configuration
+     * Reads the getMeta-configuration and delegates initialization of the current configuration
      * context to the {@link MetaConfigurationReader} instances found in the current
      * {@link org.apache.tamaya.spi.ServiceContext}.
-     * @param metaConfig URL for loading the {@code tamaya-config.xml} meta-configuration.
+     * @param metaConfig URL for loading the {@code tamaya-config.xml} getMeta-configuration.
      * @return the new configuration instance.
      */
     public static Configuration createConfiguration(URL metaConfig){

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaContext.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaContext.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaContext.java
index 737f707..2509dda 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaContext.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/MetaContext.java
@@ -23,7 +23,7 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.TimeUnit;
 
 /**
- * Class managing a configuration system's meta-context. This
+ * Class managing a configuration system's getMeta-context. This
  * context is used by the configuration system to evaluate the
  * right properties, e.g. by defining the current stage or labels
  * that apply to the current configuration. Hereby contexts are

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/SecuredFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/SecuredFilter.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/SecuredFilter.java
index 57171c3..be9aaf9 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/SecuredFilter.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/SecuredFilter.java
@@ -20,7 +20,6 @@ package org.apache.tamaya.metamodel;
 
 import org.apache.tamaya.ConfigException;
 import org.apache.tamaya.metamodel.spi.ItemFactory;
-import org.apache.tamaya.spi.FilterContext;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.apache.tamaya.spi.PropertyValue;
 
@@ -92,7 +91,7 @@ public class SecuredFilter implements PropertyFilter{
     }
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
+    public PropertyValue filterProperty(PropertyValue value) {
         if(matches !=null){
             if(!value.getKey().matches(matches)) {
                 return value;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/ext/FilteredPropertySource.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/ext/FilteredPropertySource.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/ext/FilteredPropertySource.java
index a013532..286507d 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/ext/FilteredPropertySource.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/ext/FilteredPropertySource.java
@@ -85,12 +85,18 @@ public final class FilteredPropertySource extends BasePropertySource {
         PropertyValue value = wrapped.get(key);
         if(value != null && value.getValue()!=null){
             if(filters!=null){
-                PropertyValue filteredValue = value;
-                for(PropertyFilter pf:filters){
-                    filteredValue = pf.filterProperty(filteredValue, new FilterContext(value, dummyContext));
-                }
-                if(filteredValue!=null){
-                    return filteredValue;
+                try{
+                    FilterContext fc = new FilterContext(value, dummyContext);
+                    FilterContext.set(fc);
+                    PropertyValue filteredValue = value;
+                    for(PropertyFilter pf:filters){
+                        filteredValue = pf.filterProperty(filteredValue);
+                    }
+                    if(filteredValue!=null){
+                        return filteredValue;
+                    }
+                }finally {
+                    FilterContext.reset();
                 }
             }
         }
@@ -104,13 +110,18 @@ public final class FilteredPropertySource extends BasePropertySource {
             Map<String, PropertyValue> result = new HashMap<>();
             synchronized (filters) {
                 for (PropertyValue value : props.values()) {
-                    FilterContext filterContext = new FilterContext(value, props, dummyContext);
-                    PropertyValue filteredValue = value;
-                    for (PropertyFilter pf : filters) {
-                        filteredValue = pf.filterProperty(filteredValue, filterContext);
-                    }
-                    if (filteredValue != null) {
-                        result.put(filteredValue.getKey(), filteredValue);
+                    try{
+                        FilterContext fc = new FilterContext(value, dummyContext);
+                        FilterContext.set(fc);
+                        PropertyValue filteredValue = value;
+                        for (PropertyFilter pf : filters) {
+                            filteredValue = pf.filterProperty(filteredValue);
+                        }
+                        if (filteredValue != null) {
+                            result.put(filteredValue.getKey(), filteredValue);
+                        }
+                    }finally {
+                        FilterContext.reset();
                     }
                 }
             }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/CombinationPolicyReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/CombinationPolicyReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/CombinationPolicyReader.java
index b9d82c5..fc2c625 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/CombinationPolicyReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/CombinationPolicyReader.java
@@ -23,7 +23,6 @@ import org.apache.tamaya.metamodel.spi.ItemFactory;
 import org.apache.tamaya.metamodel.spi.ItemFactoryManager;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.spi.ConfigurationBuilder;
-import org.apache.tamaya.spi.ConfigurationContextBuilder;
 import org.apache.tamaya.spi.PropertyValueCombinationPolicy;
 import org.osgi.service.component.annotations.Component;
 import org.w3c.dom.Document;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/ComponentConfigurator.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/ComponentConfigurator.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/ComponentConfigurator.java
index 30463d4..304c16c 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/ComponentConfigurator.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/ComponentConfigurator.java
@@ -37,9 +37,9 @@ public final class ComponentConfigurator<T> {
     private ComponentConfigurator(){}
 
     /**
-     * Configures the given instance with whatever is defined in the current child nodes.
+     * Configures the given instance with whatever is defined in the current child getChildren.
      * @param instance the instance to be configured, not null.
-     * @param node the node containing any configuration child nodes, not null.
+     * @param node the getChild containing any configuration child getChildren, not null.
      */
     public static void configure(Object instance, Node node) {
         Map<String,String> params = extractParameters(node);
@@ -47,9 +47,9 @@ public final class ComponentConfigurator<T> {
     }
 
     /**
-     * Configures the given instance with whatever is defined in the current child nodes.
+     * Configures the given instance with whatever is defined in the current child getChildren.
      * @param instance the instance to be configured, not null.
-     * @param params the node containing any configuration child nodes, not null.
+     * @param params the getChild containing any configuration child getChildren, not null.
      */
     public static void configure(Object instance, Map<String,String> params) {
         LOG.finest("Configuring instance: " + instance + " with " + params);
@@ -63,14 +63,14 @@ public final class ComponentConfigurator<T> {
      * String and basic lang types are supported.
      * @param instance the instance to configure.
      * @param key the parameter name, not null.
-     * @param value the value to be set, normally not null.
+     * @param value the value to be setCurrent, normally not null.
      */
     private static void applyParam(Object instance, String key, String value) {
         // apply parameters to instance using reflection ,only if found.
         Class type = instance.getClass();
         try {
             Method[] methods = type.getMethods();
-            String methodName = "set" + toUpperCase(key);
+            String methodName = "setCurrent" + toUpperCase(key);
             for(Method m:methods){
                 if(methodName.equals(m.getName()) && m.getParameterTypes().length==1) {
                     if (applyParam(instance, key, value, m)) {
@@ -98,7 +98,7 @@ public final class ComponentConfigurator<T> {
      * String and basic lang types are supported.
      * @param instance the instance to configure.
      * @param key the parameter name, not null.
-     * @param value the value to be set, normally not null.
+     * @param value the value to be setCurrent, normally not null.
      * @param setter the setter method, not null.
      */
     private static boolean applyParam(Object instance, String key, String value, Method setter) {
@@ -121,7 +121,7 @@ public final class ComponentConfigurator<T> {
      * String and basic lang types are supported.
      * @param instance the instance to configure.
      * @param key the parameter name, not null.
-     * @param value the value to be set, normally not null.
+     * @param value the value to be setCurrent, normally not null.
      * @param field the field method, not null.
      */
     private static void applyParam(Object instance, String key, String value, Field field) {

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/DSLLoadingConfigurationProviderSpi.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/DSLLoadingConfigurationProviderSpi.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/DSLLoadingConfigurationProviderSpi.java
index 05c68e3..c402b1b 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/DSLLoadingConfigurationProviderSpi.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/DSLLoadingConfigurationProviderSpi.java
@@ -36,6 +36,7 @@ import java.util.Objects;
 @Component
 public class DSLLoadingConfigurationProviderSpi implements ConfigurationProviderSpi{
 
+    // TODO make this provider multi classloader aware...
     private volatile Configuration config;
     private final Object LOCK = new Object();
 
@@ -50,12 +51,12 @@ public class DSLLoadingConfigurationProviderSpi implements ConfigurationProvider
     }
 
     @Override
-    public void setConfiguration(Configuration config) {
+    public void setConfiguration(Configuration config, ClassLoader classLoader) {
         this.config = Objects.requireNonNull(config);
     }
 
     @Override
-    public boolean isConfigurationSettable() {
+    public boolean isConfigurationSettable(ClassLoader classLoader) {
         return true;
     }
 
@@ -70,7 +71,7 @@ public class DSLLoadingConfigurationProviderSpi implements ConfigurationProvider
     }
 
     @Override
-    public Configuration getConfiguration() {
+    public Configuration getConfiguration(ClassLoader classLoader) {
         checkInitialized();
         return config;
     }

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/MetaContextReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/MetaContextReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/MetaContextReader.java
index 423ac2f..4fd0389 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/MetaContextReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/MetaContextReader.java
@@ -22,7 +22,6 @@ import org.apache.tamaya.metamodel.MetaContext;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.metamodel.spi.SimpleResolver;
 import org.apache.tamaya.spi.ConfigurationBuilder;
-import org.apache.tamaya.spi.ConfigurationContextBuilder;
 import org.apache.tamaya.spi.ServiceContextManager;
 import org.osgi.service.component.annotations.Component;
 import org.w3c.dom.Document;
@@ -76,7 +75,7 @@ public class MetaContextReader implements MetaConfigurationReader {
     @Override
     public void read(Document document, ConfigurationBuilder configBuilder) {
         NodeList nodeList = document.getDocumentElement().getElementsByTagName("context");
-        LOG.finer("Reading " + nodeList.getLength() + " meta context entries...");
+        LOG.finer("Reading " + nodeList.getLength() + " getMeta context entries...");
         for(int i=0;i<nodeList.getLength();i++){
             Node node = nodeList.item(i);
             if(node.getNodeName().equals("context")){

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyConverterReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyConverterReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyConverterReader.java
index 1126517..751970e 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyConverterReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyConverterReader.java
@@ -24,7 +24,6 @@ import org.apache.tamaya.metamodel.spi.ItemFactory;
 import org.apache.tamaya.metamodel.spi.ItemFactoryManager;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.spi.ConfigurationBuilder;
-import org.apache.tamaya.spi.ConfigurationContextBuilder;
 import org.apache.tamaya.spi.PropertyConverter;
 import org.osgi.service.component.annotations.Component;
 import org.w3c.dom.Document;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterOrderingReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterOrderingReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterOrderingReader.java
index 154d181..48ddcf0 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterOrderingReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterOrderingReader.java
@@ -23,7 +23,6 @@ import org.apache.tamaya.metamodel.spi.ItemFactory;
 import org.apache.tamaya.metamodel.spi.ItemFactoryManager;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.spi.ConfigurationBuilder;
-import org.apache.tamaya.spi.ConfigurationContextBuilder;
 import org.osgi.service.component.annotations.Component;
 import org.w3c.dom.Document;
 import org.w3c.dom.Node;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterReader.java
index 7b1c0a3..415bac5 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertyFilterReader.java
@@ -23,7 +23,6 @@ import org.apache.tamaya.metamodel.spi.ItemFactory;
 import org.apache.tamaya.metamodel.spi.ItemFactoryManager;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.spi.ConfigurationBuilder;
-import org.apache.tamaya.spi.ConfigurationContextBuilder;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.osgi.service.component.annotations.Component;
 import org.w3c.dom.Document;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceOrderingReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceOrderingReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceOrderingReader.java
index e7d27c0..c03e4de 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceOrderingReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceOrderingReader.java
@@ -23,8 +23,6 @@ import org.apache.tamaya.metamodel.spi.ItemFactory;
 import org.apache.tamaya.metamodel.spi.ItemFactoryManager;
 import org.apache.tamaya.metamodel.spi.MetaConfigurationReader;
 import org.apache.tamaya.spi.ConfigurationBuilder;
-import org.apache.tamaya.spi.ConfigurationContextBuilder;
-import org.apache.tamaya.spi.PropertyValueCombinationPolicy;
 import org.osgi.service.component.annotations.Component;
 import org.w3c.dom.Document;
 import org.w3c.dom.Node;

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceReader.java
index 3585d48..776dc46 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/internal/PropertySourceReader.java
@@ -109,7 +109,7 @@ public class PropertySourceReader implements MetaConfigurationReader{
     /**
      * Decorates a property source to be refreshable or filtered.
      * @param ps the wrapped property source
-     *@param configNode the XML config node
+     *@param configNode the XML config getChild
      * @param params the extracted parameter list   @return the property source to be added to the context.
      */
     private PropertySource decoratePropertySource(PropertySource ps, Node configNode, Map<String, String> params){
@@ -161,7 +161,7 @@ public class PropertySourceReader implements MetaConfigurationReader{
     /**
      * Decorates a property source provider to be refreshable or filtered.
      * @param prov the property source provider to be wrapped.
-     * @param configNode the XML config node
+     * @param configNode the XML config getChild
      * @param params the extracted parameter list   @return the property source provider to be added to the context.
      */
     private PropertySourceProvider decoratePropertySourceProvider(PropertySourceProvider prov, Node configNode, Map<String, String> params){

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/ItemFactory.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/ItemFactory.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/ItemFactory.java
index af2bbaf..4caef3e 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/ItemFactory.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/ItemFactory.java
@@ -21,7 +21,7 @@ package org.apache.tamaya.metamodel.spi;
 import java.util.Map;
 
 /**
- * Factory for items that are configurable using meta-configuration.
+ * Factory for items that are configurable using getMeta-configuration.
  * This allows easy registration using the name, instead of the fully qualified
  * class name.
  */

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/MetaConfigurationReader.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/MetaConfigurationReader.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/MetaConfigurationReader.java
index f8cf9c8..e00174e 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/MetaConfigurationReader.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/MetaConfigurationReader.java
@@ -22,16 +22,16 @@ import org.apache.tamaya.spi.ConfigurationBuilder;
 import org.w3c.dom.Document;
 
 /**
- * Reader that reads meta configuration from the meta configuration XML source.
+ * Reader that reads getMeta configuration from the getMeta configuration XML source.
  * This SPI allows to allow different aspects to be configured by different modules.
  */
 public interface MetaConfigurationReader {
 
     /**
-     * Reads meta-configuration from the given document and configures the current
+     * Reads getMeta-configuration from the given document and configures the current
      * configuration builder. The priority of readers is determined by the priorization policy
      * implemented by the {@link org.apache.tamaya.spi.ServiceContext},
-     * @param document the meta-configuration document
+     * @param document the getMeta-configuration document
      * @param configBuilder the context builder to use.
      */
     void read(Document document, ConfigurationBuilder configBuilder);

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/SimpleResolver.java
----------------------------------------------------------------------
diff --git a/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/SimpleResolver.java b/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/SimpleResolver.java
index 4cab006..eaf0749 100644
--- a/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/SimpleResolver.java
+++ b/metamodel/src/main/java/org/apache/tamaya/metamodel/spi/SimpleResolver.java
@@ -20,7 +20,7 @@ package org.apache.tamaya.metamodel.spi;
 
 /**
  * SPI interface for implementations of simple expression types for use within
- * {@link org.apache.tamaya.metamodel.MetaContext} meta-configuration entries.
+ * {@link org.apache.tamaya.metamodel.MetaContext} getMeta-configuration entries.
  */
 public interface SimpleResolver {
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/IntegrationTest.java
----------------------------------------------------------------------
diff --git a/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/IntegrationTest.java b/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/IntegrationTest.java
index 874b82a..002ada6 100644
--- a/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/IntegrationTest.java
+++ b/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/IntegrationTest.java
@@ -19,7 +19,6 @@
 package org.apache.tamaya.metamodel.ext;
 
 import org.apache.tamaya.Configuration;
-import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.TypeLiteral;
 import org.apache.tamaya.metamodel.CachedFilter;
 import org.apache.tamaya.metamodel.MetaConfiguration;
@@ -42,11 +41,11 @@ public class IntegrationTest {
 
     @Test
     public void checkSystemLoads(){
-        Configuration defaultConfig = ConfigurationProvider.getConfiguration();
+        Configuration defaultConfig = Configuration.current();
         assertThat(defaultConfig).isNotNull();
         
         MetaConfiguration.configure();
-        Configuration defaultMetaConfig = ConfigurationProvider.getConfiguration();
+        Configuration defaultMetaConfig = Configuration.current();
         assertThat(defaultMetaConfig).isNotNull();
         
         assertThat(defaultConfig).isNotEqualTo(defaultMetaConfig);
@@ -87,7 +86,7 @@ public class IntegrationTest {
         assertFalse(config.getContext().getPropertyConverters().isEmpty());
         assertTrue(config.getContext().getPropertyFilters().isEmpty());
         assertEquals(config,
-                ConfigurationProvider.getConfigurationBuilder()
+                Configuration.createConfigurationBuilder()
                         .addDefaultPropertyConverters()
                         .build());
     }
@@ -101,7 +100,7 @@ public class IntegrationTest {
         assertTrue(config.getContext().getPropertyConverters().isEmpty());
         assertTrue(config.getContext().getPropertyFilters().isEmpty());
         assertEquals(config,
-                ConfigurationProvider.getConfigurationBuilder()
+                Configuration.createConfigurationBuilder()
                         .addDefaultPropertySources()
                         .build());
     }
@@ -115,7 +114,7 @@ public class IntegrationTest {
         assertTrue(config.getContext().getPropertyConverters().isEmpty());
         assertFalse(config.getContext().getPropertyFilters().isEmpty());
         assertEquals(config,
-                ConfigurationProvider.getConfigurationBuilder()
+                Configuration.createConfigurationBuilder()
                         .addDefaultPropertyFilters()
                         .build());
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyConverter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyConverter.java b/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyConverter.java
index 22f642c..d19b3c3 100644
--- a/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyConverter.java
+++ b/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyConverter.java
@@ -18,7 +18,6 @@
  */
 package org.apache.tamaya.metamodel.ext;
 
-import org.apache.tamaya.spi.ConversionContext;
 import org.apache.tamaya.spi.PropertyConverter;
 
 /**
@@ -32,7 +31,7 @@ public class MyConverter implements PropertyConverter<String> {
     private String overrideValue;
 
     @Override
-    public String convert(String value, ConversionContext context) {
+    public String convert(String value) {
         return value;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya-sandbox/blob/af319373/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyFilter.java
----------------------------------------------------------------------
diff --git a/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyFilter.java b/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyFilter.java
index e6ab7e6..938a48d 100644
--- a/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyFilter.java
+++ b/metamodel/src/test/java/org/apache/tamaya/metamodel/ext/MyFilter.java
@@ -18,7 +18,6 @@
  */
 package org.apache.tamaya.metamodel.ext;
 
-import org.apache.tamaya.spi.FilterContext;
 import org.apache.tamaya.spi.PropertyFilter;
 import org.apache.tamaya.spi.PropertyValue;
 
@@ -33,7 +32,7 @@ public class MyFilter implements PropertyFilter{
     private String overrideValue;
 
     @Override
-    public PropertyValue filterProperty(PropertyValue value, FilterContext context) {
+    public PropertyValue filterProperty(PropertyValue value) {
         return value;
     }
 


Mime
View raw message