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 2016/03/17 01:28:32 UTC

[01/11] incubator-tamaya git commit: [maven-release-plugin] prepare release tamaya-all-0.2-incubating

Repository: incubator-tamaya
Updated Branches:
  refs/heads/master 08e0bfcba -> fbda5b8e3


[maven-release-plugin] prepare release tamaya-all-0.2-incubating


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/2be0c914
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/2be0c914
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/2be0c914

Branch: refs/heads/master
Commit: 2be0c914928a82005d0ee5239912790481b37475
Parents: 08e0bfc
Author: anatole <an...@apache.org>
Authored: Wed Mar 16 16:20:07 2016 +0100
Committer: anatole <an...@apache.org>
Committed: Wed Mar 16 16:20:07 2016 +0100

----------------------------------------------------------------------
 buildconfigurations/pom.xml                      | 4 ++--
 code/api/pom.xml                                 | 2 +-
 code/core/pom.xml                                | 2 +-
 code/pom.xml                                     | 2 +-
 distribution/pom.xml                             | 4 ++--
 docs/pom.xml                                     | 4 ++--
 examples/1-minimal-example/pom.xml               | 2 +-
 examples/2-simple-propertysource-example/pom.xml | 2 +-
 examples/3-resources-example/pom.xml             | 2 +-
 examples/4-resolver-example/pom.xml              | 2 +-
 examples/5-injection-example/pom.xml             | 2 +-
 examples/6-fileobserver-example/pom.xml          | 2 +-
 examples/7-builder-example/pom.xml               | 2 +-
 examples/8-remote-example/client/pom.xml         | 2 +-
 examples/8-remote-example/pom.xml                | 2 +-
 examples/8-remote-example/server/pom.xml         | 2 +-
 examples/pom.xml                                 | 2 +-
 modules/builder/pom.xml                          | 2 +-
 modules/classloader-support/pom.xml              | 2 +-
 modules/collections/pom.xml                      | 2 +-
 modules/events/pom.xml                           | 2 +-
 modules/filter/pom.xml                           | 2 +-
 modules/formats/pom.xml                          | 2 +-
 modules/functions/pom.xml                        | 2 +-
 modules/injection-api/pom.xml                    | 2 +-
 modules/injection/pom.xml                        | 2 +-
 modules/integration/camel/pom.xml                | 2 +-
 modules/integration/cdi-se/pom.xml               | 2 +-
 modules/integration/cdi/pom.xml                  | 2 +-
 modules/integration/consul/pom.xml               | 2 +-
 modules/integration/etcd/pom.xml                 | 2 +-
 modules/integration/osgi/pom.xml                 | 2 +-
 modules/integration/pom.xml                      | 2 +-
 modules/integration/spring/pom.xml               | 2 +-
 modules/json/pom.xml                             | 2 +-
 modules/management/pom.xml                       | 2 +-
 modules/model/pom.xml                            | 2 +-
 modules/mutable-config/pom.xml                   | 2 +-
 modules/optional/pom.xml                         | 2 +-
 modules/pom.xml                                  | 2 +-
 modules/resolver/pom.xml                         | 2 +-
 modules/resources/pom.xml                        | 2 +-
 modules/server/pom.xml                           | 2 +-
 modules/spi-support/pom.xml                      | 2 +-
 modules/yaml/pom.xml                             | 2 +-
 pom.xml                                          | 4 ++--
 46 files changed, 50 insertions(+), 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/buildconfigurations/pom.xml
----------------------------------------------------------------------
diff --git a/buildconfigurations/pom.xml b/buildconfigurations/pom.xml
index bfe51c8..7ea3663 100644
--- a/buildconfigurations/pom.xml
+++ b/buildconfigurations/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>buildconfigurations</artifactId>
@@ -45,7 +45,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>HEAD</tag>
+      <tag>tamaya-all-0.2-incubating</tag>
   </scm>
     
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/code/api/pom.xml
----------------------------------------------------------------------
diff --git a/code/api/pom.xml b/code/api/pom.xml
index dd85072..0b441a3 100644
--- a/code/api/pom.xml
+++ b/code/api/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-code</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/code/core/pom.xml
----------------------------------------------------------------------
diff --git a/code/core/pom.xml b/code/core/pom.xml
index c93a72d..220f2b1 100644
--- a/code/core/pom.xml
+++ b/code/core/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-code</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/code/pom.xml
----------------------------------------------------------------------
diff --git a/code/pom.xml b/code/pom.xml
index 719c33d..1d6a728 100644
--- a/code/pom.xml
+++ b/code/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-code</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/distribution/pom.xml
----------------------------------------------------------------------
diff --git a/distribution/pom.xml b/distribution/pom.xml
index e21a337..4ffaeba 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-distribution</artifactId>
@@ -580,7 +580,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>HEAD</tag>
+      <tag>tamaya-all-0.2-incubating</tag>
   </scm>
 
     <build>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/docs/pom.xml
----------------------------------------------------------------------
diff --git a/docs/pom.xml b/docs/pom.xml
index 11bc2c1..32c4b3e 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 
@@ -57,7 +57,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>HEAD</tag>
+      <tag>tamaya-all-0.2-incubating</tag>
   </scm>
 
     <build>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/1-minimal-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/1-minimal-example/pom.xml b/examples/1-minimal-example/pom.xml
index 900a90d..5be06bf 100644
--- a/examples/1-minimal-example/pom.xml
+++ b/examples/1-minimal-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-minimal</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/2-simple-propertysource-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/2-simple-propertysource-example/pom.xml b/examples/2-simple-propertysource-example/pom.xml
index 41306ab..659b031 100644
--- a/examples/2-simple-propertysource-example/pom.xml
+++ b/examples/2-simple-propertysource-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-simple-propertysource</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/3-resources-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/3-resources-example/pom.xml b/examples/3-resources-example/pom.xml
index ec9ae47..a5b5c3a 100644
--- a/examples/3-resources-example/pom.xml
+++ b/examples/3-resources-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-resources</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/4-resolver-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/4-resolver-example/pom.xml b/examples/4-resolver-example/pom.xml
index 3cc724e..46780b4 100644
--- a/examples/4-resolver-example/pom.xml
+++ b/examples/4-resolver-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-resolver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/5-injection-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/5-injection-example/pom.xml b/examples/5-injection-example/pom.xml
index 1dfcc4c..2dd55f6 100644
--- a/examples/5-injection-example/pom.xml
+++ b/examples/5-injection-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-injection</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/6-fileobserver-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/6-fileobserver-example/pom.xml b/examples/6-fileobserver-example/pom.xml
index c22ed27..9658169 100644
--- a/examples/6-fileobserver-example/pom.xml
+++ b/examples/6-fileobserver-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-fileobserver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/7-builder-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/7-builder-example/pom.xml b/examples/7-builder-example/pom.xml
index 7d95305..e7908dd 100644
--- a/examples/7-builder-example/pom.xml
+++ b/examples/7-builder-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/8-remote-example/client/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/client/pom.xml b/examples/8-remote-example/client/pom.xml
index 6bab59b..cf98702 100644
--- a/examples/8-remote-example/client/pom.xml
+++ b/examples/8-remote-example/client/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.examples</groupId>
         <artifactId>tamaya-example-remote</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote-client</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/8-remote-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/pom.xml b/examples/8-remote-example/pom.xml
index 8985e33..759600f 100644
--- a/examples/8-remote-example/pom.xml
+++ b/examples/8-remote-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/8-remote-example/server/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/server/pom.xml b/examples/8-remote-example/server/pom.xml
index 02e26fe..7289705 100644
--- a/examples/8-remote-example/server/pom.xml
+++ b/examples/8-remote-example/server/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.examples</groupId>
         <artifactId>tamaya-example-remote</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote-server</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 9cbb8ac..fc22080 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/builder/pom.xml
----------------------------------------------------------------------
diff --git a/modules/builder/pom.xml b/modules/builder/pom.xml
index 32dc6b5..9202d80 100644
--- a/modules/builder/pom.xml
+++ b/modules/builder/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/classloader-support/pom.xml
----------------------------------------------------------------------
diff --git a/modules/classloader-support/pom.xml b/modules/classloader-support/pom.xml
index 24322dd..82bbd15 100644
--- a/modules/classloader-support/pom.xml
+++ b/modules/classloader-support/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/collections/pom.xml
----------------------------------------------------------------------
diff --git a/modules/collections/pom.xml b/modules/collections/pom.xml
index db22903..5fdc1f6 100644
--- a/modules/collections/pom.xml
+++ b/modules/collections/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/events/pom.xml
----------------------------------------------------------------------
diff --git a/modules/events/pom.xml b/modules/events/pom.xml
index 21269ed..a019a94 100644
--- a/modules/events/pom.xml
+++ b/modules/events/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-events</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/filter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/filter/pom.xml b/modules/filter/pom.xml
index 6222349..a59a968 100644
--- a/modules/filter/pom.xml
+++ b/modules/filter/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-filter</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/formats/pom.xml
----------------------------------------------------------------------
diff --git a/modules/formats/pom.xml b/modules/formats/pom.xml
index 71b3912..4f95110 100644
--- a/modules/formats/pom.xml
+++ b/modules/formats/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-formats</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/functions/pom.xml
----------------------------------------------------------------------
diff --git a/modules/functions/pom.xml b/modules/functions/pom.xml
index 1009298..e01e7ca 100644
--- a/modules/functions/pom.xml
+++ b/modules/functions/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/injection-api/pom.xml
----------------------------------------------------------------------
diff --git a/modules/injection-api/pom.xml b/modules/injection-api/pom.xml
index e4fc7b7..7d50e40 100644
--- a/modules/injection-api/pom.xml
+++ b/modules/injection-api/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-injection-api</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/injection/pom.xml
----------------------------------------------------------------------
diff --git a/modules/injection/pom.xml b/modules/injection/pom.xml
index f40c472..1852300 100644
--- a/modules/injection/pom.xml
+++ b/modules/injection/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-injection</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/camel/pom.xml b/modules/integration/camel/pom.xml
index ff62b8a..1ea44ab 100644
--- a/modules/integration/camel/pom.xml
+++ b/modules/integration/camel/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-camel</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/cdi-se/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/cdi-se/pom.xml b/modules/integration/cdi-se/pom.xml
index a0dfc3f..422fc3e 100644
--- a/modules/integration/cdi-se/pom.xml
+++ b/modules/integration/cdi-se/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-cdi-se</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/cdi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/cdi/pom.xml b/modules/integration/cdi/pom.xml
index caa1527..eb61f46 100644
--- a/modules/integration/cdi/pom.xml
+++ b/modules/integration/cdi/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-cdi</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/consul/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/consul/pom.xml b/modules/integration/consul/pom.xml
index 879d484..8a35abe 100644
--- a/modules/integration/consul/pom.xml
+++ b/modules/integration/consul/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-consul</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/etcd/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/etcd/pom.xml b/modules/integration/etcd/pom.xml
index ac6f14b..e0cda6e 100644
--- a/modules/integration/etcd/pom.xml
+++ b/modules/integration/etcd/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-etcd</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/pom.xml b/modules/integration/osgi/pom.xml
index 23f0da2..1a8ff95 100644
--- a/modules/integration/osgi/pom.xml
+++ b/modules/integration/osgi/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-osgi</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/pom.xml b/modules/integration/pom.xml
index b887700..d635653 100644
--- a/modules/integration/pom.xml
+++ b/modules/integration/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <packaging>pom</packaging>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/integration/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/spring/pom.xml b/modules/integration/spring/pom.xml
index 0feaa9b..d7de8d5 100644
--- a/modules/integration/spring/pom.xml
+++ b/modules/integration/spring/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
     </parent>
 
     <artifactId>tamaya-spring</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/json/pom.xml
----------------------------------------------------------------------
diff --git a/modules/json/pom.xml b/modules/json/pom.xml
index 670516c..c491d7c 100644
--- a/modules/json/pom.xml
+++ b/modules/json/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-json</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/management/pom.xml
----------------------------------------------------------------------
diff --git a/modules/management/pom.xml b/modules/management/pom.xml
index 4953682..4b3ee41 100644
--- a/modules/management/pom.xml
+++ b/modules/management/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/model/pom.xml
----------------------------------------------------------------------
diff --git a/modules/model/pom.xml b/modules/model/pom.xml
index 521d714..fe1bd85 100644
--- a/modules/model/pom.xml
+++ b/modules/model/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/mutable-config/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mutable-config/pom.xml b/modules/mutable-config/pom.xml
index 38cabbc..852096a 100644
--- a/modules/mutable-config/pom.xml
+++ b/modules/mutable-config/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/optional/pom.xml
----------------------------------------------------------------------
diff --git a/modules/optional/pom.xml b/modules/optional/pom.xml
index 142bdd8..2d92494 100644
--- a/modules/optional/pom.xml
+++ b/modules/optional/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/pom.xml
----------------------------------------------------------------------
diff --git a/modules/pom.xml b/modules/pom.xml
index d85849c..d14765c 100644
--- a/modules/pom.xml
+++ b/modules/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/resolver/pom.xml
----------------------------------------------------------------------
diff --git a/modules/resolver/pom.xml b/modules/resolver/pom.xml
index eb9af80..1496304 100644
--- a/modules/resolver/pom.xml
+++ b/modules/resolver/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-resolver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/resources/pom.xml
----------------------------------------------------------------------
diff --git a/modules/resources/pom.xml b/modules/resources/pom.xml
index 369a839..5f30f52 100644
--- a/modules/resources/pom.xml
+++ b/modules/resources/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-resources</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/server/pom.xml
----------------------------------------------------------------------
diff --git a/modules/server/pom.xml b/modules/server/pom.xml
index 7e34018..590926e 100644
--- a/modules/server/pom.xml
+++ b/modules/server/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/spi-support/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spi-support/pom.xml b/modules/spi-support/pom.xml
index af70402..1b9f4ce 100644
--- a/modules/spi-support/pom.xml
+++ b/modules/spi-support/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/modules/yaml/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yaml/pom.xml b/modules/yaml/pom.xml
index f659efb..909f3ae 100644
--- a/modules/yaml/pom.xml
+++ b/modules/yaml/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating-SNAPSHOT</version>
+        <version>0.2-incubating</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-yaml</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/2be0c914/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0cc6f49..42f245b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@ under the License.
     </parent>
     <groupId>org.apache.tamaya</groupId>
     <artifactId>tamaya-all</artifactId>
-    <version>0.2-incubating-SNAPSHOT</version>
+    <version>0.2-incubating</version>
     <packaging>pom</packaging>
 
     <name>Apache Tamaya</name>
@@ -103,7 +103,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>HEAD</tag>
+      <tag>tamaya-all-0.2-incubating</tag>
   </scm>
 
     <issueManagement>


[09/11] incubator-tamaya git commit: Moved all docs to site part. Removed some of the file hierarchies for getting things work.

Posted by an...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/API.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/API.adoc b/src/site/asciidoc/userguide/API.adoc
deleted file mode 100644
index b79790e..0000000
--- a/src/site/asciidoc/userguide/API.adoc
+++ /dev/null
@@ -1,634 +0,0 @@
-Apache Tamaya -- API
-====================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: January 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-toc::[]
-<<<
-
-[[CoreDesign]]
-== The Tamaya Core Design
-Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
-that build the base of all the other mechanisms. As a starting point we recommend you read the corresponding
-link:CoreDesign.html[Core Design Documentation]
-
-[[API]]
-== The Tamaya API
-The API provides the artifacts as described in the link:CoreDesign.html[Core Design Documentation], which are:
-
-* A simple but complete SE *API* for accessing key/value based _Configuration_:
-  ** +Configuration+ hereby models configuration, the main interface of Tamaya. +Configuration+ provides
-     *** access to literal key/value pairs.
-     *** functional extension points (+with, query+) using a unary +ConfigOperator+ or
-         a function +ConfigurationQuery<T>+.
-  ** +ConfigurationProvider+ provides with +getConfiguration()+ the static entry point for accessing configuration.
-  ** +ConfigException+ defines a runtime exception for usage by the configuration system.
-  ** +TypeLiteral+ provides a possibility to type safely define the target type to be returned by a registered
-     +PropertyProvider+.
-  ** +PropertyConverter+, which defines conversion of configuration values (String) into any required target type.
-
-* Additionally the *SPI* provides:
-  ** _PropertySource:_ is the the SPI for adding configuration data. A +PropertySource+ hereby
-     *** is designed as a minimalistic interface that be implemented by any kind of data provider (local or remote)
-     *** provides single access for key/value pairs in raw format as String key/values only (+getPropertyValue+).
-     *** can optionally support scanning of its provided values, implementing +getProperties()+.
-  ** _PropertySourceProvider:_ allows to register multiple property sources dynamically, e.g. all config files found in
-     file system folder..
-  ** +ConfigurationProviderSpi+ defines the SPI that is used as a backing bean for the +ConfigurationProvider+
-     singleton.
-  ** +PropertyFilter+, which allows filtering of property values prior getting returned to the caller.
-  ** +ConfigurationContext+, which provides the container that contains the property sources and filters that form a
-     configuration.
-  ** +PropertyValueCombinationPolicy+ optionally can be registered to change the way how different key/value
-     pairs are combined to build up the final +Configuration+ passed over to the filters registered.
-  ** +ServiceContext+, which provides access to the components loaded, depending on the current runtime stack.
-  ** +ServiceContextManager+ provides static access to the +ServiceContext+ loaded.
-
-This is also reflected in the main packages of the API:
-
-* +org.apache.tamaya+ contains the main API abstractions used by users.
-* +org.apache.tamaya.spi+ contains the SPI interfaces to be implemented by implementations and the +ServiceContext+
-  mechanism.
-
-
-
-[[APIKeyValues]]
-=== Key/Value Pairs
-
-Basically configuration is a very generic concept. Therefore it should be modelled in a generic way. The most simple
-and most commonly used approach are simple literal key/value pairs. So the core building block of {name} are key/value pairs.
-You can think of a common +.properties+ file, e.g.
-
-[source,properties]
-.A simple properties file
---------------------------------------------
-a.b.c=cVal
-a.b.c.1=cVal1
-a.b.c.2=cVal2
-a=aVal
-a.b=abVal
-a.b2=abVal
---------------------------------------------
-
-Now you can use +java.util.Properties+ to read this file and access the corresponding properties, e.g.
-
-[source,properties]
---------------------------------------------
-Properties props = new Properties();
-props.readProperties(...);
-String val = props.getProperty("a.b.c");
-val = props.getProperty("a.b.c.1");
-...
---------------------------------------------
-
-
-==== Why Using Strings Only
-
-There are good reason to keep of non String-values as core storage representation of configuration. Mostly
-there are several huge advantages:
-
-* Strings are simple to understand
-* Strings are human readable and therefore easy to prove for correctness
-* Strings can easily be used within different language, different VMs, files or network communications.
-* Strings can easily be compared and manipulated
-* Strings can easily be searched, indexed and cached
-* It is very easy to provide Strings as configuration, which gives much flexibility for providing configuration in
-  production as well in testing.
-* and more...
-
-On the other side there are also disadvantages:
-
-* Strings are inherently not type safe, they do not provide validation out of the box for special types, such as
-numbers, dates etc.
-* In many cases you want to access configuration in a typesafe way avoiding conversion to the target types explicitly
-  throughout your code.
-* Strings are neither hierarchical nor multi-valued, so mapping hierarchical and collection structures requires some
-  extra efforts.
-
-Nevertheless most of these advantages can be mitigated easily, hereby still keeping all the benefits from above:
-
-* Adding type safe adapters on top of String allow to add any type easily, that can be directly mapped out of Strings.
-  This includes all common base types such as numbers, dates, time, but also timezones, formatting patterns and more.
-* Also multi-valued, complex and collection types can be defined as a corresponding +PropertyAdapter+ knows how to
-  parse and create the target instance required.
-* String s also can be used as references pointing to other locations and formats, where configuration is
-  accessible.
-
-
-[[API Configuration]]
-=== Configuration
-
-+Configuration+ is the main API provided by Tamaya. It allows reading of single property values or the whole
-property map, but also supports type safe access:
-
-[source,java]
-.Interface Configuration
---------------------------------------------
-public interface Configuration{
-    String get(String key);
-    String getOrDefault(String key, String value);
-    <T> T get(String key, Class<T> type);
-    <T> T getOrDefault(String key, Class<T> type, T defaultValue);
-    <T> T get(String key, TypeLiteral<T> type);
-    <T> T getOrDefault(String key, TypeLiteral<T> type, T defaultValue);
-    Map<String,String> getProperties();
-
-    // extension points
-    Configuration with(ConfigOperator operator);
-    <T> T query(ConfigQuery<T> query);
-
-    ConfigurationContext getContext();
-}
---------------------------------------------
-
-Hereby
-
-* +<T> T get(String, Class<T>)+ provides type safe accessors for all basic wrapper types of the JDK.
-* +with, query+ provide the extension points for adding additional functionality.
-* +getProperties()+ provides access to all key/values, whereas entries from non scannable property sources may not
-  be included.
-* +getOrDefault+ allows to pass default values as needed, returned if the requested value evaluated to +null+.
-
-The class +TypeLiteral+ is basically similar to the same class provided with CDI:
-
-[source,java]
---------------------------------------------
-public class TypeLiteral<T> implements Serializable {
-
-    [...]
-
-    protected TypeLiteral(Type type) {
-        this.type = type;
-    }
-
-    protected TypeLiteral() { }
-
-    public static <L> TypeLiteral<L> of(Type type){...}
-    public static <L> TypeLiteral<L> of(Class<L> type){...}
-
-    public final Type getType() {...}
-    public final Class<T> getRawType() {...}
-
-    public static Type getGenericInterfaceTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
-    public static Type getTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
-
-    [...]
-}
---------------------------------------------
-
-Instances of +Configuration+ can be accessed from the +ConfigurationProvider+ singleton:
-
-[source,java]
-.Accessing Configuration
---------------------------------------------
-Configuration config = ConfigurationProvider.getConfiguration();
---------------------------------------------
-
-Hereby the singleton is backed up by an instance of +ConfigurationProviderSpi+.
-
-
-[[PropertyConverter]]
-==== Property Converters
-
-As illustrated in the previous section, +Configuration+ also to access non String types. Nevertheless internally
-all properties are strictly modelled as pure Strings only, so non String types must be derived by converting the
-configured String values into the required target type. This is achieved with the help of +PropertyConverters+:
-
-[source,java]
---------------------------------------------
-public interface PropertyConverter<T>{
-    T convert(String value, ConversionContext context);
-    //X TODO Collection<String> getSupportedFormats();
-}
---------------------------------------------
-
-The +ConversionContext+ contains additional meta-information for the accessed key, inclusing the key'a name and
-additional metadata.
-
-+PropertyConverter+ instances can be implemented and registered by default using the +ServiceLoader+. Hereby
-a configuration String value is passed to all registered converters for a type in order of their annotated +@Priority+
-value. The first non-null result of a converter is then returned as the current configuration value.
-
-Access to converters is provided by the current +ConfigurationContext+, which is accessible from
-the +ConfigurationProvider+ singleton.
-
-
-[[ExtensionPoints]]
-=== Extension Points
-
-We are well aware of the fact that this library will not be able to cover all kinds of use cases. Therefore
-we have added functional extension mechanisms to +Configuration+ that were used in other areas of the Java eco-system
-as well:
-
-* +with(ConfigOperator operator)+ allows to pass arbitrary unary functions that take and return instances of
-  +Configuration+. Operators can be used to cover use cases such as filtering, configuration views, security
-  interception and more.
-* +query(ConfigQuery query)+ allows to apply a function returning any kind of result based on a
-  +Configuration+ instance. Queries are used for accessing/deriving any kind of data based on of a +Configuration+
-  instance, e.g. accessing a +Set<String>+ of root keys present.
-
-Both interfaces hereby are functional interfaces. Because of backward compatibility with Java 7 we did not use
-+UnaryOperator+ and +Function+ from the +java.util.function+ package. Nevertheless usage is similar, so you can
-use Lambdas and method references in Java 8:
-
-[source,java]
-.Applying a +ConfigurationQuery+ using a method reference
---------------------------------------------
-ConfigSecurity securityContext = ConfigurationProvider.getConfiguration().query(ConfigSecurity::targetSecurityContext);
---------------------------------------------
-
-NOTE: +ConfigSecurity+ is an arbitrary class only for demonstration purposes.
-
-
-Operator calls basically look similar:
-
-[source,java]
-.Applying a +ConfigurationOperator+ using a lambda expression:
---------------------------------------------
-Configuration secured = ConfigurationProvider.getConfiguration()
-                           .with((config) ->
-                                 config.get("foo")!=null?;
-                                 FooFilter.apply(config):
-                                 config);
---------------------------------------------
-
-
-[[ConfigException]]
-=== ConfigException
-
-The class +ConfigException+ models the base *runtime* exception used by the configuration system.
-
-
-[[SPI]]
-== SPI
-
-[[PropertySource]]
-=== Interface PropertySource
-
-We have seen that constraining configuration aspects to simple literal key/value pairs provides us with an easy to
-understand, generic, flexible, yet expendable mechanism. Looking at the Java language features a +java.util.Map<String,
-String>+ and +java.util.Properties+ basically model these aspects out of the box.
-
-Though there are advantages in using these types as a model, there are some severe drawbacks, notably implementation
-of these types is far not trivial and the collection API offers additional functionality not useful when aiming
-for modelling simple property sources.
-
-To render an implementation of a custom +PropertySource+ as convenient as possible only the following methods were
-identified to be necessary:
-
-[source,java]
---------------------------------------------
-public interface PropertySource{
-      int getOrdinal();
-      String getName();
-      String get(String key);
-      boolean isScannable();
-      Map<String, String> getProperties();
-}
---------------------------------------------
-
-Hereby
-
-* +get+ looks similar to the methods on +Map+. It may return +null+ in case no such entry is available.
-* +getProperties+ allows to extract all property data to a +Map<String,String>+. Other methods like +containsKey,
-  keySet+ as well as streaming operations then can be applied on the returned +Map+ instance.
-* But not in all scenarios a property source may be scannable, e.g. when looking up keys is very inefficient, it
-  may not make sense to iterator over all keys to collect the corresponding properties.
-  This can be evaluated by calling +isScannable()+. If a +PropertySource+ is defined as non scannable accesses to
-  +getProperties()+ may not return all key/value pairs that would be available when accessed directly using the
-  +String get(String)+ method.
-* +getOrdinal()+ defines the ordinal of the +PropertySource+. Property sources are managed in an ordered chain, where
-  property sources with higher ordinals override the ones with lower ordinals. If ordinal are the same, the natural
-  ordering of the fulloy qualified class names of the property source implementations are used. The reason for
-  not using +@Priority+ annotations is that property sources can define dynamically their ordinals, e.g. based on
-  a property contained with the configuration itself.
-* Finally +getName()+ returns a (unique) name that identifies the +PropertySource+ within the current
-  +ConfigurationContext+.
-
-This interface can be implemented by any kind of logic. It could be a simple in memory map, a distributed configuration
-provided by a data grid, a database, the JNDI tree or other resources. Or it can be a combination of multiple
-property sources with additional combination/aggregation rules in place.
-
-+PropertySources+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
- active +ServiceContext+.
-
-
-[[PropertySourceProvider]]
-==== Interface PropertySourceProvider
-
-Instances of this type can be used to register multiple instances of +PropertySource+.
-
-[source,java]
---------------------------------------------
-// @FunctionalInterface in Java 8
-public interface PropertySourceProvider{
-    Collection<PropertySource> getPropertySources();
-}
---------------------------------------------
-
-This allows to evaluate the property sources to be read/that are available dynamically. All property sources
-are read out and added to the current chain of +PropertySource+ instances within the current +ConfigurationContext+,
-refer also to [[ConfigurationContext]].
-
-+PropertySourceProviders+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the
-current active +ServiceContext+.
-
-
-[[PropertyFilter]]
-==== Interface PropertyFilter
-
-Also +PropertyFilters+ can be added to a +Configuration+. They are evaluated before a +Configuration+ instance is
-passed to the user. Filters can hereby used for multiple purposes, such as
-
-* resolving placeholders
-* masking sensitive entries, such as passwords
-* constraining visibility based on the current active user
-* ...
-
-+PropertyFilters+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
-active +ServiceContext+. Similar to property sources they are managed in an ordered filter chain, based on the
-applied +@Priority+ annotations.
-
-A +PropertyFilter+ is defined as follows:
-
-[source,java]
---------------------------------------------
-// Functional Interface
-public interface PropertyFilter{
-    String filterProperty(String value, FilterContext context);
-}
---------------------------------------------
-
-Hereby:
-
-* returning +null+ will remove the key from the final result
-* non null values are used as the current value of the key. Nevertheless for resolving multi-step dependencies
-  filter evaluation has to be continued as long as filters are still changing some of the values to be returned.
-  To prevent possible endless loops after a defined number of loops evaluation is stopped.
-* +FilterContext+ provides additional metdata, inclusing the key accessed, which is useful in many use cases.
-
-This method is called each time a single entry is accessed, and for each property in a full properties result.
-
-
-[[PropertyValueCombinationPolicy]]
-==== Interface PropertyValueCombinationPolicy
-
-This interface can be implemented optional. It can be used to adapt the way how property key/value pairs are combined to
-build up the final Configuration to be passed over to the +PropertyFilters+. The default implementation is just
-overriding all values read before with the new value read. Nevertheless for collections and other use cases it is
-often useful to have alternate combination policies in place, e.g. for combining values from previous sources with the
-new value. Finally looking at the method's signature it may be surprising to find a +Map+ for the value. The basic
-value hereby is defined by +currentValue.get(key)+. Nevertheless the +Map+ may also contain additional meta entries,
-which may be considered by the policy implementation.
-
-[source,java]
---------------------------------------------
-// FunctionalInterface
-public interface PropertyValueCombinationPolicy{
-
-   PropertyValueCombinationPolicy DEFAULT_OVERRIDING_COLLECTOR =
-     new PropertyValueCombinationPolicy(){
-       @Override
-       public Map<String,String> collect(Map<String,String> currentValue, String key,
-                                         PropertySource propertySource) {
-           PropertyValue value = propertySource.get(key);
-           return value!=null?value.getConfigEntries():currentValue;
-       }
-   };
-
-   String collect(Map<String,String> currentValue currentValue, String key,
-                  PropertySource propertySource);
-
-}
---------------------------------------------
-
-
-[[ConfigurationContext]]
-==== The Configuration Context
-
-A +Configuration+ is basically based on a so called +ConfigurationContext+, which is
-accessible from +Configuration.getContext()+:
-
-[source,java]
-.Accessing the current +ConfigurationContext+
---------------------------------------------
-ConfigurationContext context = ConfigurationProvider.getConfiguration().getContext();
---------------------------------------------
-
-The +ConfigurationContext+ provides access to the internal building blocks that determine the final +Configuration+:
-
-* +PropertySources+ registered (including the PropertySources provided from +PropertySourceProvider+ instances).
-* +PropertyFilters+ registered, which filter values before they are returned to the client
-* +PropertyConverter+ instances that provide conversion functionality for converting String values to any other types.
-* the current +PropertyValueCombinationPolicy+ that determines how property values from different PropertySources are
-  combined to the final property value returned to the client.
-
-
-[[Mutability]]
-==== Changing the current Configuration Context
-
-By default the +ConfigurationContext+ is not mutable once it is created. In many cases mutability is also not needed
-or even not wanted. Nevertheless there are use cases where the current +ConfigurationContext+ (and
-consequently +Configuration+) must be adapted:
-
-* New configuration files where detected in a folder observed by Tamaya.
-* Remote configuration, e.g. stored in a database or alternate ways has been updated and the current system must
-  be adapted to these changes.
-* The overall configuration context is manually setup by the application logic.
-* Within unit testing alternate configuration setup should be setup to meet the configuration requirements of the
-  tests executed.
-
-In such cases the +ConfigurationContext+ must be mutable, meaning it must be possible:
-
-* to add or remove +PropertySource+ instances
-* to add or remove +PropertyFilter+ instances
-* to add or remove +PropertyConverter+ instances
-* to redefine the current +PropertyValueCombinationPolicy+ instances.
-
-This can be achieved by obtaining an instance of +ConfigurationContextBuilder+. Instances of this builder can be
-accessed either
-
-* from the current +ConfigurationContext+, hereby returning a builder instance preinitialized with the values from the
-  current +ConfigurationContext+
-* from the current +ConfigurationProvider+ singleton.
-
-[source,java]
-.Accessing a +ConfigurationContextBuilder+
---------------------------------------------
-ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext().toBuilder();
-ConfigurationContextBuilder emptyContextBuilder = ConfigurationProvider.getConfigurationContextBuilder();
---------------------------------------------
-
-With such a builder a new +ConfigurationContext+ can be created and then applied:
-
-[source,java]
-.Creating and applying a new +ConfigurationContext+
---------------------------------------------
-ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext()
-                                                           .toBuilder();
-ConfigurationContext context = preinitializedContextBuilder.addPropertySources(new MyPropertySource())
-                                                           .addPropertyFilter(new MyFilter()).build();
-ConfigurationProvider.setConfigurationContext(context);
---------------------------------------------
-
-Hereby +ConfigurationProvider.setConfigurationContext(context)+ can throw an +UnsupportedOperationException+.
-This can be checked by calling the method +boolean ConfigurationProvider.isConfigurationContextSettable()+.
-
-
-[[ConfigurationProviderSpi]]
-==== Implementing and Managing Configuration
-
-One of the most important SPI in Tamaya if the +ConfigurationProviderSpi+ interface, which is backing up the
-+ConfigurationProvider+ singleton. Implementing this class allows
-
-* to fully determine the implementation class for +Configuration+
-* to manage the current +ConfigurationContext+ in the scope and granularity required.
-* to provide access to the right +Configuration/ConfigurationContext+ based on the current runtime context.
-* Performing changes as set with the current +ConfigurationContextBuilder+.
-
-
-[[ServiceContext]]
-==== The ServiceContext
-
-The +ServiceContext+ is also a very important SPI, which allows to define how components are loaded in Tamaya.
-The +ServiceContext+ hereby defines access methods to obtain components, whereas itself it is available from the
-+ServiceContextManager+ singleton:
-
-[source,java]
-.Accessing the +ServiceContext+
---------------------------------------------
-ServiceContext serviceContext = ServiceContextManager.getServiceContext();
-
-public interface ServiceContext{
-    int ordinal();
-    <T> T getService(Class<T> serviceType);
-    <T> List<T> getServices(Class<T> serviceType);
-}
---------------------------------------------
-
-With the +ServiceContext+ a component can be accessed in two different ways:
-
-. access as as a single property. Hereby the registered instances (if multiple) are sorted by priority and then finally
-  the most significant instance is returned only.
-. access all items given its type. This will return (by default) all  instances loadedable from the current
-  runtime context, ordered by priority, hereby the most significant components added first.
-
-
-## Examples
-### Accessing Configuration
-
-_Configuration_ is obtained from the ConfigurationProvider singleton:
-
-[source,java]
-.Accessing +Configuration+
---------------------------------------------
-Configuration config = ConfigurationProvider.getConfiguration();
---------------------------------------------
-
-Many users in a SE context will probably only work with _Configuration_, since it offers all functionality
-needed for basic configuration with a very lean memory and runtime footprint. In Java 7 access to the keys is
-very similar to *Map<String,String>*, whereas in Java 8 additionally usage of _Optional_ is supported:
-
-[source,java]
---------------------------------------------
-Configuration config = ConfigurationProvider.getConfiguration();
-String myKey = config.get("myKey");                         // may return null
-int myLimit = config.get("all.size.limit", int.class);
---------------------------------------------
-
-
-### Environment and System Properties
-
-By default environment and system properties are included into the _Configuration_. So we can access the current
-_PROMPT_ environment variable as follows:
-
-[source,java]
---------------------------------------------
-String prompt = ConfigurationProvider.getConfiguration().get("PROMPT");
---------------------------------------------
-
-Similary the system properties are directly applied to the _Configuration_. So if we pass the following system
-property to our JVM:
-
-[source,java]
---------------------------------------------
-java ... -Duse.my.system.answer=yes
---------------------------------------------
-
-we can access it as follows:
-
-[source,java]
---------------------------------------------
-boolean useMySystem = ConfigurationProvider.getConfiguration().get("use.my.system.answer", boolean.class);
---------------------------------------------
-
-
-### Adding a Custom Configuration
-
-Adding a classpath based configuration is simply as well: just implement an according _PropertySource_. With the
-_tamaya-spi-support_ module you just have to perform a few steps:
-
-. Define a PropertySource as follows:
-
-[source,java]
---------------------------------------------
-  public class MyPropertySource extends PropertiesResourcePropertySource{
-
-    public MyPropertySource(){
-        super(ClassLoader.getSystemClassLoader().getResource("META-INF/cfg/myconfig.properties"), DEFAULT_ORDINAL);
-    }
-  }
---------------------------------------------
-
-Then register +MyPropertySource+ using the +ServiceLoader+ by adding the following file:
-
-[source,listing]
---------------------------------------------
-META-INF/services/org.apache.tamaya.spi.PropertySource
---------------------------------------------
-
-...containing the following line:
-
-[source,listing]
---------------------------------------------
-com.mypackage.MyPropertySource
---------------------------------------------
-
-
-[[APIImpl]]
-== API Implementation
-
-The API is implemented by the Tamaya _Core_module. Refer to the link:Core.html[Core documentation] for
-further details.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/Core.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/Core.adoc b/src/site/asciidoc/userguide/Core.adoc
deleted file mode 100644
index b7a66b4..0000000
--- a/src/site/asciidoc/userguide/Core.adoc
+++ /dev/null
@@ -1,246 +0,0 @@
-Apache Tamaya -- Core Implementation
-====================================
-:name: Tamaya
-:rootpackage: org.apache.tamaya.core
-:title: Apache Tamaya Core
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
-toc::[]
-
-<<<
-
-[[Core]]
-== Tamaya Core Implementation
-=== Overview
-
-Tamaya Core provides an implementation of the link:API.html[Tamaya Configuration API] and adds additional functionality
-and building blocks for supporting SPI implementations.
-
-Tamaya Core contains the following artifacts:
-
-* Implementations of +Configuration, ConfigurationContext, ConfigurationContextBuilder+ ConfigurationProviderSpi+
-* A +java.util.ServiceLoader+ based +ServiceContext+ implementation. Hereby it implements component priorization based
-  on the +@Priority+ annotations.
-* A PropertyConverterManager+ that loads and stores references to all the preconfigured +PropertyConverter+ instances
-hereby providing type conversion for all important types.
-* A simple default configuration setup using the current classpath and an optional staging variable.
-* It collects all +PropertySource+ and +PropertySourceProvider+ instances registered with the +ServiceLoader+ and
-  registers them in the global +ConfigurationContext+
-* It provides a +ConfigurationContextBuilder+ and allows changing the current +ConfigurationContext+.
-
-The overall size of the library is very small. All required components are implemented and registered, so basically the
-Core module is a complete configuration solution. Nevertheless it is also very minimalistic, but fortunately is flexible
-enough to be extended/accommodated with additional features as needed, such as
-
-* placeholder and resolution mechanisms
-* dynamic resource path lookup, e.g. with ant styled patterns
-* configuration injection and configuration templates
-* abstraction for reusable formats
-* integration with other existing solutions
-* configuration and configuration isolation targeting Java EE
-* dynamic configuration and configuration updates
-* Configuration management extensions
-* remote configuration
-* and more
-
-For details about the extension modules available and  their functionality refer to the link:modules.html[extension user guide].
-
-
-[[CorePropertyConverters]]
-=== Default PropertyConverters in Core
-
-As mentioned the Core module delivers several default +PropertyConverter+ instances out of the box. Find below the
-listing of converters automatically registered with the Core module:
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Target Type_             |_Class Name_              |_Supported Formats_
-|java.math.BigDecimal    |BigDecimalConverter     |1.2345, 0xFF
-|java.math.BigInteger    |BigIntegerConverter     |0xFF, 1234
-|java.lang.Boolean       |BooleanConverter        |true, false, T, F, 1 ,0
-|java.lang.Byte          |ByteConverter           |0xFF, MIN_VALUE, MAX_VALUE, 123
-|java.lang.Character     |CharConverter           |0xFF, 'a', 'H', 123
-|java.lang.Class         |ClassConverter          |<fully qualified class name>
-|java.util.Currency      |CurrencyConverter       |CHF, 123
-|java.lang.Double        |DoubleConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
-|_Enums_                 |EnumConverter           |<Enum item name>
-|java.lang.Float         |FloatConverter          |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
-|java.lang.Integer       |IntegerConverter        |1, 0xD3, MIN_VALUE, MAX_VALUE
-|LocalDate               |LocalDateConverter      |<Date as defined by LocalDate.parse(String)
-|LocalTime               |LocalTimeConverter      |<Time as defined by LocalTime.parse(String)
-|LocalDateTime           |LocalDateTimeConverter  |<LocalDateTime as defined by LocalDateTime.parse(String)>
-|java.lang.Long          |LongConverter           |1, 0xD3, MIN_VALUE, MAX_VALUE
-|java.lang.Number        |NumberConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY
-|java.lang.Short         |ShortConverter          |1, 0xD3, MIN_VALUE, MAX_VALUE
-|java.net.URI            |URIConverter            |http://localhost:2020/testresource?api=true
-|java.net.URL            |URLConverter            |http://localhost:2020/testresource?api=true
-|ZoneId                  |ZoneIdConverter         |Europe/Zurich
-|=======
-
-
-=== Registering PropertyConverters
-
-Additional +PropertyConverters+ can be implemented easily. It is recommended to register then using the +java.util.ServiceLoader+,
-meaning you add a file under +META-INF/service/org.apache.tamaya.spi.PropertyConverter+ containing the fully qualified
-class names of the converters to be registered (one line per each).
-
-Alternatively you can also use a +ConfigurationContextBuilder+ to add additional converters programmatically.
-
-NOTE: API Implementations can be read-only thus not allowing adding additional converters programmatically.
-
-
-[[ComponentLoadingAndPriorization]]
-=== Component Loading and Priorization
-
-Tamaya Core in general loads all components using the +java.util.ServiceLoader+ mechanism. This means that new components
-must be registered by adding a file under +META-INF/service/<myInterfaceName>+ containing the fully qualified
-implementation class names of the components to be registered (one line per each).
-The +ServiceLoader+ itself does not provide any functionality for overriding or ordering of components. Tamaya
-core adds this functionality by the possibility to add +@Priority+ annotations to the components registered.
-By default, and if no annotation is added +0+ is used as priority. Hereby higher values preceed lower values, meaning
-
-* if a singleton component is accessed from the current +ServiceContext+ the component with the higher value
-  effectively _overrides/replaces_ any component with lower values.
-* if a collection of components is obtained from the +ServiceContext+ the components are ordered in order, where the
-  ones with higher priority are before components with lower priority.
-* if priorities match Tamaya Core additionally sorts them using the simple class name. This ensures that ordering is
-  still defined and predictable in almost all scenarios.
-
-
-[[RegisteringPropertySources]]
-=== Registering Property Sources
-
-PropertySources that provide configuration properties are registered as ordinary components as described in the previous
-section. Nevertheless the priority is not managed based on +@Priority+ annotations, but based on an explicit
-+int getOrdinal()+ method. This allows to define the ordinal/priority of a +PropertySource+ explicitly. This is useful
-due to several reasons:
-
-* it allows to define the ordinal as part of the configuration, thus allowing new overriding property sources being
-  added easily.
-* it allows to define the ordinal dynamically, e.g. based on the configuration location, the time of loading or
-  whatever may be appropriate.
-
-
-[[CorePropertySources]]
-== Configuration Setup in Core
-
-Tamaya Core provides a minimal configuration setting, that allows you to configure SE
-applications already easily. Basically configuration is built  up by default as follows:
-
-. Read environment properties and add them prefixed with +env.+
-. Read all files found at +META-INF/javaconfiguration.properties+
-
-
-=== Overview of Registered Default Property Sources and Providers
-
-The Tamaya Core implementation provides a couple of default +PropertySource+ implementations, which are automatically
-registered. They are all in the package +org.apache.tamaya.core.propertysource+ and
-+org.apache.tamaya.core.provider+:
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Type_                                   |_Class Name_                   |_Ordinal Used_
-|META-INF/javaconfiguration.properties    |JavaConfigurationProvider      |0
-|Environment Properties                   |EnvironmentPropertySource      |300
-|System Properties                        |SystemPropertySource           |400
-|=======
-
-
-=== Abstract Class PropertiesFilePropertySource
-
-The abstract class +PropertiesFilePropertySource+ can be used for implementing a +PropertySource+ based on a +URL+
-instance that points to a +.properites+ file. It requires a +URL+ to be passed on the constructor:
-
-[source,java]
---------------------------------------------
-PropertiesFilePropertySource(URL url);
---------------------------------------------
-
-
-==== Abstract Class PropertiesPropertySource
-
-The abstract class +PropertiesPropertySource+ can be used for implementing a +PropertySource+ based on a +Properties+
-instance. It requires a +PropertySource+ to be passed on the constructor:
-
-[source,java]
---------------------------------------------
-PropertiesPropertySource(Properties properties);
---------------------------------------------
-
-
-==== Abstract Class BasePropertySource
-
-The abstract class +BasePropertySource+ can be used for implementing custom +PropertySource+ classes. It requires only
-one method to implemented:
-
-[source,java]
-.Implementing a PropertySource using BasePropertySource
---------------------------------------------
-public class MyPropertySource extends BasePropertySource{
-
-    public String getName(){
-        // return a unique name for the property source, e.g. based on the underlying resource. This name also
-        // allows to access the property source later
-    }
-
-    public Map<String, String> getProperties(){
-        // Get a map with all properties provided by this property source
-        // If the property source is not scannable, the map returned may be empty.
-        // In the ladder case the +boolean isScannale()+ must be overridden, since
-        // by default property sources are assumed to be scannable.
-    }
-
-}
---------------------------------------------
-
-By default the ordinal of the property sources will be 1000, unless the key +tamaya.ordinal+ asdefined in
-+PropertySource.TAMAYA_ORDINAL+ is present in the current +PropertySource+. Of course it is also possible to override
-the inherited +protected void initializeOrdinal(final int defaultOrdinal)+, or directly +int getOrdinal()+.
-
-
-[[CorePropertySourceProviders]]
-=== Default PropertySourceProvider in Core
-
-With +org.apache.tamaya.core.provider.JavaConfigurationProvider+ there is also a default +PropertySourceProvider+
-present that loads all .properties files found at +META-INF/javaconfiguration.properties+.
-
-
-[[Extensions]]
-== Adding Extensions
-
-The Core module only implements the link:API.html[API]. Many users require/wish additional functionality from a
-configuration system. Fortunately there are numerous extensions available that add further functionality.
-Loading extensions hereby is trivial: you only are required to add the corresponding dependency to the classpath.
-
-For detailed information on the extensions available refer to the link:../extensions/index.html[extensions documentation].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/HighLevelDesign.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/HighLevelDesign.adoc b/src/site/asciidoc/userguide/HighLevelDesign.adoc
deleted file mode 100644
index 0f10890..0000000
--- a/src/site/asciidoc/userguide/HighLevelDesign.adoc
+++ /dev/null
@@ -1,186 +0,0 @@
-Apache Tamaya -- High Level Design
-==================================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: January 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
-toc::[]
-
-<<<
-
-[[Core Concepts]]
-== The Tamaya Core Parts
-Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
-that build the base of all the other mechanisms:
-
-The *API* (package +org.apache.tamaya+) provides
-
-* A simple but complete SE *API* for accessing key/value based _Configuration_:
-  ** +Configuration+ hereby models configuration, the main interface of Tamaya, providing key/value pairs as raw
-     (String-based) key/value pairs, allowing also access to typed values.
-  ** +ConfigurationProvider+ provides the static entry point for accessing configuration.
-
-The *SPI* (package +org.apache.tamaya.spi+) provides:
-  ** A simple minimalistic model for configuration data, called _PropertySource_.
-  ** Several extension points for adding additional configuration property sources or adapting the internal workings
-     of the overall system.
-  ** A +ServiceContext / ServiceContextManager+ that controls the loading of the components in Tamaya. This allows to
-     adapt the behaviour depending on the runtime environment in use, e.g. a Java standalone application, an OSGI
-     container or a Java EE application server.
-
-Tamaya *Modules* finally allow to add additional functionality to customize your configuration solution with the
-functionality you want. E.g. modules are providing features such as
-
-* Configuration _injection_
-* _Dynamic placeholders_ and resolution mechanism for configuration values
-* Abstractions for reusable _configuration formats_
-* Dynamic configuration updates and change events
-* Support for OSGI/Java EE Classloading
-* A configuration server/client
-* and more...
-
-
-== How Tamaya organizes Configuration
-=== Overview
-
-All the mentioned artifacts are used to organize configuration in a higly flexible and extendable way. Hereby the
-+PropertySource+ is the key artifact. In general Tamaya organizes Configuration as follows:
-
-image::../images/CoreDesign.png[]
-
-Key abstraction hereby is the +ConfigurationContext+, which basically
-
-* an ordered chain of +PropertySource+ instances. This chain is used to evaluate raw configuration values.
-* a set of +PropertyFilter+ instances that filter the raw values evaluated from the property source chain.
-* a set of +PropertyConverter+ that convert String values into typed values when needed.
-
-In most standalone use cases only one +ConfigurationContext+ will be active at a time. But in more complex scenarios,
-such as Java EE also multiple contexts could be active that are active depending on the current runtime context
-(e.g. attached to the corresponding classloader(s)). These aspects are basically handled by the
-+ConfigurationProvider+ and its corresponding SPIs.
-
-=== Loading the current _ConfigurationContext_
-
-The +ConfigurationContext+ is the core of Tamaya. It manages all configuration sources and additional components
-required to evaluate a concrete configuration value:
-
-* Tamaya loads all available +PropertySource+ instances. Hereby +PropertySource+ instances can be
-  ** Directly registered (using the mechanism defined by the current +ServiceContext+ implementation, by default
-     the Java +ServiceLoader+.
-  ** Provided by a registered instance of +PropertySourceProvider+.
-* All loaded property sources are _ordered based on each ordinal_, returned from +PropertySource.getOrdinal()+ as
-  an ordered chain of PropertySources, building up the ordered chain of +PropertySource+ instances used for raw
-  configuration value evaluation.
-* Tamaya loads all available +PropertyFilter+ instances. Hereby +PropertyFilter+ instances can be registered
-  by default using the Java +ServiceLoader+ API. The +PropertyFilter+ instances loaded are ordered based on the
-  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed.
-* Tamaya loads all available +PropertyConverter+ instances. Hereby +PropertyConverter+ instances can be registered
-  by default using the Java +ServiceLoader+ API. The +PropertyConverter+ instances loaded are ordered based on the
-  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed. It is
-  possible to register multiple converters for the same target type.
-
-=== Evaluating raw property values
-When evaluating a concrete configuration value for a given key, Tamaya iterates through this chain of registered
-PropertySources. Hereby the final value, by default, is determined by the last non-null value returned from a
-+PropertySource+.
-
-Since the ladder may not always be appropriate, e.g. when values should be combined instead of overridden, a
-instance of +PropertyValueCombinationPolicy+ can be registered, which allows to add more detailed behaviour how values
-are combined.
-
-Access to the complete configuration +Map+ is performing the same resolution and combination algorithm, but for all
-key/value pairs available.
-
-=== Filtering the raw properties:
-Each raw configuration value evaluated is filtered by the ordered filter chain, as long as there are any changes
-applied by any of the filters called. This ensures that also transitive replacements by filters are possible.
-If, after a configurable number of evaluation loops still values are changes during each loop, the filtering
-process is aborted, since a non-resolvable circular filter issue is assumed.
-
-The output is the final configuration value as type +String+.
-
-=== Applying type conversion:
-Finally, if the required target type, does not match +Java.lang.String+, all registered +PropertyConverter+
-instances targeting the corresponding target type are asked to convert the given (String-based) configuration
-entry to the required (non String) target type.
-
-Hereby the first _non-null_ value returned by a +PropertyConverter+ is used as the final typed configuration value and
-returned to the caller.
-
-=== Advanced Features
-Basically the bahaviour of Tamaya can be customized using the following mechanisms. Basically configuration can be
-provided using the following mechanism:
-
-* Registering additional (default) +PropertySource+ instances. Depending on their _ordinal value_ they
-  will override or extend existing configuration.
-* Registering additional (default) +PropertySourceProvider+ instances.that can provide multiple +PropertySource+
-  instances.
-
-Additionally Tamaya provides hooks for further adapting the internal workings:
-
-* Adapting the way how multiple entries with the same key are combined (+PropertyValueCombinationPolicy+). This
-  may be useful, if overriding is not the way how entries of the same key should be combined. An example, where
-  such an alternate scenario is useful are list entries, that combine all entries encountered to a collecting
-  list entry.
-* Adding additional support for new target types configurable by registering additional +PropertyConverter+
-  instances. This can be used for adding support for new types as well as for adding support for additional
-  formats.
-* Complex extensions may adapt the complete +ConfigurationContext+, using the +ConfigurationContextBuilder+ and
-  reapply the changed instance using +ConfigurationProvider.setConfigurationContext(ConfigurationContext)+.
-  This is one example how to react on dynamic changes detected on configuration files read.
-* Registering additional +PropertyFilter+ instances, that filter the configuration values extracted.
-* Registering an alternate +ServiceContext+ to support alternate runtime containers, e.g. a CDI container.
-* A combination of all above.
-
-Additionally instances of +ConfigOperator, ConfigQuery+ can be provided that provide additional functionality
-that should not be globally visible. It is recommended to provide them from a singleton accessor, hereby hiding
-the effective implementation classes.
-
-== Component Loading
-
-As mentioned the component loading of Tamaya can be adapted. By default the JDK +ServiceLoader+ API is used to determine a +ServiceContext+ implementation that should control
-Tamaya's overall component loading. If not found, a default implementation is registered, which relies on the
-Java +hava.util.ServiceLoader+ mechanism. This behaviour can be changed by implementing your own version
-of the +ServiceContext+ interface, annotating it with a +@Priority+ annotation and registering it using the
-+java.util.ServiceLoader+ mechanism.
-
-== Compatibility
-
-The Tamaya API is compatible with Java 7 and beyond.
-
-== Further Documentation
-
-Being here we recommend to have a look at the more detailed documentation of Tamaya's link:API.html[API] and
-link:SPI.html[SPI], and of its current available link:modules.html[modules].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/Requirements.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/Requirements.adoc b/src/site/asciidoc/userguide/Requirements.adoc
deleted file mode 100644
index a59e802..0000000
--- a/src/site/asciidoc/userguide/Requirements.adoc
+++ /dev/null
@@ -1,267 +0,0 @@
-Apache Tamaya -- Requirements
-=============================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya Requirements
-:revnumber: 1.0
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: OBF
-:author: Oliver B. Fischer
-:email: <pl...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-toc::[]
-<<<
-[[Requirements]]
-== Requirements
-=== Core Configuration Requirements
-==== General
-
-Tamaya must provide a Java SE API for accessing key/value based configuration. Hereby
-
-* +Configuration+ is modelled by an interface
-* +Configuration+ is organized as key/value pairs, using a subset of functionality present on +Map<String,String>+ as
-  follows:
-  ** access a value by key (+get+)
-  ** check if a value is present (+containsKey+)
-  ** get a set of all defined keys (+keySet+)
-  ** a configuration must be convertible to a +Map+, by calling +toMap()+
-  ** a configuration must provide access to its meta information.
-* +Configuration+ value access methods must never return null.
-* The API must support undefined values.
-* The API must support passing default values, to be returned if a value is undefined.
-* The API must allow to throw exceptions, when a value is undefined. Customized exceptions hereby should be supported.
-* Properties can be stored in the classpath, on a file or accessible by URL.
-* Properties can be stored minimally in properties, xml-properties or ini-format.
-
-
-==== Minimalistic Property Source
-
-For enabling easy integration of custom built configuration sources a minimalistic API/SPI must be defined, that
-
-* is modelled by an interface
-* is a minimal subset of +Configuration+ necessary to implement a configuration.
-* must be convertible to a "Configuration+.
-
-==== Extension Points
-
-For supporting more complex scenarios, +Configuration+
-
-* must implement the composite pattern, meaning new +Configuration+ instances can be created by combining existing
-  configurations.
-* must be adaptable, by creating a new configuration by applying a +UnaryOperator<COnfiguration>+ to it.
-* must be queryable, by passing a +ConfigQuery+ to an +Configuration+ instance.
-
-
-==== Type Safety
-
-Besides Strings +Configuration+ should also support the following types:
-
-* Primitive types
-* Wrapper types
-* All other types (by using a +PropertyAdapter+
-
-Hereby type conversion should be done as follows:
-
-. Check if for the given target type an explicit adapter is registered, if so, use the registered adapter.
-. If no adapter is present, check if the target type T has static methods called +T of(String), T getInstance(String), T valueOf(String), T from(String)+. If so
-use this method to create the non value of T.
-. Check if the target type has a constructor T(String). If so, try to instantiate an instance using the constructor.
-. Give up, throw a IllegalArgument exception.
-
-=== Configuration Fomats
-
-By default Tamaya support the following configuration formats:
-
-* .properties
-* .xml properties
-* .ini files
-
-It must be possible to add additional formats by registering them with the current +ServiceContext+.
-
-=== Mutability
-
-* Configurations can be mutable, mutability can be accessed as a property.
-* Configuration can be changed by collecting the changes into a +ConfigCHangeSet+ and apply this set to the
-  given +Configuration+ instance.
-* Besides the points above, +Configuration+ is immutable.
-
-=== Serializability and Immutability of Configuration
-
-* Configuration is modelled as a service. Therefore serialization may not work. This can be mitigated by adding
-  a freeze feature, where the know key/value pairs are extracted into an immutable and serializable form.
-
-=== Configuration Combination Requirements
-
-At least the following composition policies must be supported:
-
-* override: subsequent entries override existing ones.
-* aggregate-exception: key/values were added, in case of conflicts a +ConfigException+ must be thrown.
-* aggregate-ignore-duplicates: similar to union, whereas duplicates are ignored (leaving the initial value loaded).
-* aggregate-combine: conflicting entries were resolved by adding them both to the target configuration by
-  redefining partial keys.
-* custom: any function determining the key/values to be kept must be possible
-
-When combining configuration it must also be possible to override (file/classpath) configuration by
-
-* system properties.
-* command line arguments.
-
-
-=== Configuration Injection
-
-As metnioned configuration can be injected by passing a unconfigured instance of an annotated class to the
-+Configuration.configure+ static method:
-
-[source, java]
-.Configuring a POJO
-----------------------------------------------------
-MyPojo instance = new MyPojo();
-Configuration.configure(instance);
-----------------------------------------------------
-
-Hereby
-* It must be possible to define default values to be used, if no valid value is present.
-* It must be possible to define dynamic expressions, at least for default values.
-* The values configured can be reinjected, if the underlying configuration changes. This should also be the case
-  for final classes, such as Strings.
-* Reinjection should be controllable by an loading policy.
-* It must be possible to evaluate multiple keys, e.g. current keys, and as a backup deprecated keys
-  from former application releases.
-* It must be possible to evaluate multiple configurations.
-* The type conversion of the properties injected must be configurable, by defining a +PropertyAdapter+.
-* The value evaluated for a property (before type conversion) must be adaptable as well.
-* It must be possible to observe configuration changes.
-
-The following annotations must be present at least:
-
-* *@ConfiguredProperty* defining the key of the property to be evaluated. It takes an optional value, defining the
-  property name. It must be possible to add multiple annotations of this kind to define an order of evaluation
-  of possible keys.
-* *@DefaultValue* (optional) defines a default String value, to be used, when no other key is present.
-* *@WithConfig* (optional) defines the name of the configuration to be used. Similar to +@ConfiguredProperty+ multiple
-  configuration can be defined for lookup.
-* *@WithConfigOperator* allows to adapt the String value evaluated, *before* it is passed as input to injection or
-  type conversion.
-* *@WithPropertyAdapter* allows to adapt the conversion to the required target type, hereby overriding any default
-  conversion in place.
-* *@WithLoadPolicy* allows to define the policy for (re)injection of configured values.
-* *@ObservesConfigChange* allows to annotate methods that should be called on configuration changes.
-* *@DefaultAreas" allows to define a key prefix key to be used for the configured key, if no absolute key
-  is defined.
-
-=== Configuration Templates
-
-For type safe configuration clients should be able to define an interface and let it implement by the
-configuration system based on +Configuration+ available:
-
-* Clients define an interface and annotate it as required (similar to above)
-* The interface methods must not take any arguments
-* The configuration system can be called to return such an interface implementation.
-* The configuration system returns a proxy hereby providing type-safe access the values required.
-* Similar to configured types also templates support multiple values and custom adapters.
-* It is possible to listen on configuration changes for templates, so users of the templates
-  may react on configuration changes.
-
-The following snippet illustrates the requirements:
-
-[source, java]
-.Type Safe Configuration Template Example
-----------------------------------------------------
-public interface MyConfig {
-
-  @ConfiguredProperty("myCurrency")
-  @DefaultValue("CHF")
-  String getCurrency();
-
-  @ConfiguredProperty("myCurrencyRate")
-  Long getCurrencyRate();
-
-  @ConfigChange
-  default configChanged(ConfigChange event){
-     ...
-  }
-
-}
-----------------------------------------------------
-
-Templates can be accessed by calling the +Configuration.current(Class)+ method:
-
-[source, java]
-.Accessing a type safe Configuration Template
-----------------------------------------------------
-MyConfig config = Configuration.current(MyConfig.class);
-----------------------------------------------------
-
-[[RequirementsServer]]
-=== Server Configuration Requirements
-
-* Ensure Configuration can be transferred over the network easily.
-* Beside serializability text based formats for serialization in +XML+ and +JSON+ must be defined.
-* A management API must be defined, which allows to inspect the configuration in place, e.g. using
-   JMX or REST services.
-
-[[RequirementsJavaEE]]
-
-Java EE leads to the following requirements:
-
-* Configuration must be contextual, depending on the current runtime context (e.g. boot level, ear, war, ...).
-* Hereby contextual aspects can even exceed the levels described above, e.g. for SaaS scenarios.
-* Resources can be unloaded, e.g. wars, ears can be restarted.
-* The different contextual levels can also be used for overriding, e.g. application specific configuration
-may override ear or system configuration.
-* Configuration may be read from different sources (different classloaders, files, databases, remote locations).
-* Configuration may be read in different formats (deployment descriptors, +ServiceLoader+ configuration, alt-DD feature, ...)
-* JSF also knows the concept of stages.
-* Many SPI's of Java EE require the implementation of some well defined Java interface, so it would be useful if the
-   configuration solution supports easy implementation of such instances.
-* In general it would be useful to model the +Environment+ explicitly.
-* Configuration used as preferences is writable as well. This requires mutability to be modelled in way, without the
-   need of synchronization.
-* JNDI can be used for configuration as well.
-
-[[RequirementsMultitenancy]]
-
-Configurations made in the tenant or user layer override the default app configuration etc., so
-
-* It must be possible to structure Configuration in layers that can override/extend each other.
-* The current environment must be capable of mapping tenant, user and other aspects, so a corresponding configuration
-  (or layer) can be derived.
-
-[[RequirementsExtensions]]
-=== Extensions Requirements
-
-It must be possible to easily add additional functionality by implementing external functional interfaces operating
-on +Configuration+.
-
-* +UnaryOperator<Configuration>+ for converting into other version of +Configuration+.
-* +ConfigQuery<T>+ extending +Function<T, Configuration>+.
-
-[[RequirementsNonFunctional]]
-=== Non Functional Requirements
-THe following non-functional requirements must be met:
-
-* tbd
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/examples.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/examples.adoc b/src/site/asciidoc/userguide/examples.adoc
deleted file mode 100644
index ab7e0de..0000000
--- a/src/site/asciidoc/userguide/examples.adoc
+++ /dev/null
@@ -1,82 +0,0 @@
-Apache Tamaya -- Examples
-=========================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya Examples
-:revnumber: {tamayaVersion}
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-toc::[]
-
-== Tamaya Examples
-
-=== Minimal
-
-This example shows the basic functionality that is available when Tamaya is used without any further extensions.
-It shows how configuration can be added to the classpath and how it can be accessed.
-
-=== Simple PropertySource
-
-This example shows how to write and register an additional +PropertySource+ and +PropertySourceProvider+, which is
-the SPI to add your own configuration data and locations. For a more advanced example you may also have a look at
-the provided default metamodels, e.g. the simple metamodel (currently in the experimental part and not shipped with
-the current release).
-
-=== Resources
-
-This example shows how resources can be located using ANT-styled paths and this feature can help you to implement
-+PropertySourceProvider+ instances that provide configuration for a set of files/folders at a certain (searchable)
-location, as provided by the resource extension_.
-
-=== Resolver
-
-The resolver example defines a configuration file that illustrates the usage of placeholders that are resolved on
-configuration access, as provided by the _resolver extension_.
-
-=== Injection
-
-The injection sample shows how to inject configuration into a created object instance, or how to instantiate a proxied
-configuration template, which provides a type-safe configuration access mechanism. This functionality is provided
-by the _injection extension_. Hereby neither JSR 330 nor 299 are used, so it is pure and minimal SE based
-implementation.
-
-=== FileObserver
-
-This example shows how the +event extension+ can be used to automatically adapt the current configuration when
-the underlying configuration data is changing, e.g. when new configuration is added to a file folder, or removed or
-adapted.
-
-=== Builder
-
-This example shows how to build a +Configuration+ using a simple pure SE builder API as provided by the
-_builder extension_.
-
-=== Remote
-
-THe remote example shows a simple setup where parts of the +Configuration+ are read remotedly.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/index.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/index.adoc b/src/site/asciidoc/userguide/index.adoc
deleted file mode 100644
index 897477c..0000000
--- a/src/site/asciidoc/userguide/index.adoc
+++ /dev/null
@@ -1,44 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-Apache Tamaya -- User Guide
-===========================
-:title: Apache Tamaya User Guide
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:encoding: UTF-8
-
-This user guide contains detailed documentation on Tamaya's architecture, design and core API. Also included are
-references to additional project documentation such as use cases and derived requirements.
-
-== General Project Documentation
-
-* link:usecases.html[Use Cases]
-* link:Requirements.html[Requirements]
-
-== Architecture, Design and Core API
-
-* link:HighLevelDesign.html[High Level Design]
-* link:API.html[Core API design documentation]
-* link:Core.html[Core implementation design documentation]
-
-== Examples
-
-Find link:examples.html[here] also an overview of Tamaya's example projects.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/combine-configs.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/combine-configs.adoc b/src/site/asciidoc/userguide/uc/combine-configs.adoc
deleted file mode 100644
index 2d83ab7..0000000
--- a/src/site/asciidoc/userguide/uc/combine-configs.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-=== Combine Configurations
-
-Users want to be able to combine different configurations to a new configuration instance.
-Hereby the resulting configuration can be
-
-* a union of both, ignoring duplicates (and optionally log them)
-* a union of both, duplicates are ignored
-* a union of both, conflicts are thrown as ConfigException
-* an intersection of both, containing only keys present and equal in both configurations
-* an arbitrary mapping or filter, modelled by an +CombinationPolicy+, which basically can be modelled
-  as +BiFunction<String, String, String>+, hereby
-  ** a result of +null+ will remove the key
-  ** any other result will use the value returned as final value of the combination.
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc b/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc
deleted file mode 100644
index 737232f..0000000
--- a/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc
+++ /dev/null
@@ -1,7 +0,0 @@
-=== Context Dependent Configuration
-
-In multi tenancy setups or complex systems a hierarchical/graph model of contexts for configurations is required, or different runtime contexts are executed in parallel
-within the same VN. What sounds normal for EE also may be the case for pure SE environments:
-
-* Users want to be able to model different layers of runtime context
-* Users want to identiofy the current layer, so configuration used may be adapted.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc b/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc
deleted file mode 100644
index 1629914..0000000
--- a/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc
+++ /dev/null
@@ -1,18 +0,0 @@
-=== Dynamic Provisioning (UC8)
-
-In Cloud Computing, especially the PaaS and SaaS areas a typical use case would be that an application (or server)
-is deployed, configured and started dynamically. Typically things are controlled by some "active controller components",
-which are capable of
-
-* creating new nodes (using IaaS services)
-* deploying and starting the required runtime platform , e.g. as part of a PaaS solution.
-* deploying and starting the application modules.
-
-All these steps require some kind of configuration. As of today required files are often created on the target node
-before the systems are started, using proprietary formats and mechanism. Similarly accessing the configuration in place
-may require examining the file system or using again proprietary management functions. Of course, a configuration
-solution should not try to solve that, but it can provide a significant bunch of functionality useful in such scenarios:
-
-* provide remote capabilities for configuration
-* allow configuration to be updated remotely.
-* allow client code to listen for configuration changes and react as needed.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/external-configuration.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/external-configuration.adoc b/src/site/asciidoc/userguide/uc/external-configuration.adoc
deleted file mode 100644
index ea2e687..0000000
--- a/src/site/asciidoc/userguide/uc/external-configuration.adoc
+++ /dev/null
@@ -1,6 +0,0 @@
-=== External Configuration
-
-Users want to be able to replace, override, extend or adapt any parts or all of an existing configuration from
-external sources.
-This also must be the case for multi-context environments, where the context identifiers are
-the only way to link to the correct remote configuration.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/formats.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/formats.adoc b/src/site/asciidoc/userguide/uc/formats.adoc
deleted file mode 100644
index a5a1bf7..0000000
--- a/src/site/asciidoc/userguide/uc/formats.adoc
+++ /dev/null
@@ -1,8 +0,0 @@
-=== Configuration Formats
-
-Users want to be able to use the format they prefer.
-
-* properties, xml-properties and ini-format should be supported by default
-* Other/custom formats should be easily addable by registering or providing the format on configuration evaluation (read).
-* When possible Tamaya should figure out which format to be used and how the InputStream should be correctly
-  interpreted.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/injection.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/injection.adoc b/src/site/asciidoc/userguide/uc/injection.adoc
deleted file mode 100644
index 4468d6c..0000000
--- a/src/site/asciidoc/userguide/uc/injection.adoc
+++ /dev/null
@@ -1,31 +0,0 @@
-=== Configuration Injection
-
-Users want to be able to polulate configured items by injecting configured values. Hereby
-
-* the lifecycle of the instances is not managed by Tamaya
-* all references to items configured are managed as weak references, to prevent memoryleaks.
-* Injection should if possible evaluate the properties by defaults. Even properties without
-  any annotations are possible.
-* Users expect to exclude certain properties from calculation
-* Beside injection of properties it is also possible to call setter methods with one parameter similarly.
-* Basically injection is performed, when the instance is passed to the Tamaya configuration system. It should also
-  be possible to inject/provide final values, especially Strings. Changes on configured values should be
-  reflected in the current value. Setters methods similarly can be called again, with the new values, on changes.
-* Users expect to control dynamic values and recall of setter methods, basically the following strategies should be
-  supported:
-  ** inject only once and ignore further changes.
-  ** reinject/reinitialize on each change
-
-* Dynamic Values can easily be modeled as +ConfiguredValue+ instances, which should have the following functionality:
-  ** access the current value
-  ** access the new value
-  ** access the latest value access time in ms
-  ** access the latest value update time in ms
-  ** evaluate easily if the value has changed since the last access
-  ** accept the change
-  *** as a shortcut it should be possible to accept the change on access of the value implicitly, hereby always accessing
-      the latest valid value.
-  ** ignore the change
-  ** register +Consumer<DynamicValue>+ liasteners to listen on the changes (ans also removing them later again).
-
-All observing functionality can be done completely asynchronously and in parallel.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/java8.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/java8.adoc b/src/site/asciidoc/userguide/uc/java8.adoc
deleted file mode 100644
index 0cdf069..0000000
--- a/src/site/asciidoc/userguide/uc/java8.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-=== Java 8 Functional Support
-
-Users want to be able to benefit from the new programming styles introduced with Java 8. Configuration
-should provide extension points for different aspects, where additional code can be hooked in easily.
-In short: were possible functional interfaces should be modelled.
-
-Examples:
-
-* code that converts a configuration to another kind of configuration: +UnaryOperator<Configuration>+
-* code that creates any kind of result based on a configuration: +Function<Configuration,T>+
-* Adapters for type conversion are defined as +Function<String,T>+
-* Key, value filters ccan be modelled as +BiFunction<String,String,String>+
-* etc.
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/locations.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/locations.adoc b/src/site/asciidoc/userguide/uc/locations.adoc
deleted file mode 100644
index 5e0f774..0000000
--- a/src/site/asciidoc/userguide/uc/locations.adoc
+++ /dev/null
@@ -1,10 +0,0 @@
-=== Configuration Locations
-
-Users want to be able to
-
-* read configuration from different locations.
-* By default classpath and file resources are
-  supported. But similarly remote access using a JSON ReST call should be possible.
-* Tamaya should define a JSON and XML format for configuration.
-* Configuration locations should be scannable using ant-styled resource patterns, if possible.
-* Scanning and reading logic can be modularized by using a +ConfigReader+ interface.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/management.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/management.adoc b/src/site/asciidoc/userguide/uc/management.adoc
deleted file mode 100644
index ff997a5..0000000
--- a/src/site/asciidoc/userguide/uc/management.adoc
+++ /dev/null
@@ -1,7 +0,0 @@
-=== MX/ReST Management
-
-Users want to be have comprehensive management support, which should allow
-
-* to change configuration
-* to remove configuration
-* to view configuration and its provider details
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc b/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc
deleted file mode 100644
index ee185a0..0000000
--- a/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc
+++ /dev/null
@@ -1,6 +0,0 @@
-=== Minimal Property Source SPI
-
-Users expect that implementing an additional configuration property source is as easy as possible.
-So there should be an SPI defined that allows any kind of data source to be used for providing configuration data.
-The interface to be implemented is expected to be minimal to reduce the implementation burden. Default
-methods should be used where possible, so only a few methods are expected to be required to implement.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/multiple-configurations.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/multiple-configurations.adoc b/src/site/asciidoc/userguide/uc/multiple-configurations.adoc
deleted file mode 100644
index 2ee133f..0000000
--- a/src/site/asciidoc/userguide/uc/multiple-configurations.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-=== Multiple Configurations
-
-When systems grow they must be modularized to keep control. Whereas that sounds not really fancy, it leads to additional
-aspects to be considered by a configuration system.
-
-* Different code modules, libraries, plugins or products want to have their "own" separated configuration.
-* Similar it should be possible to add fully specific additional configurations.
-
-The default configuration hereby should always be present, whereas additional configurations are optional.
-Users want to be able to check the availability of such an additional configuration.
-
-Of course, additional configuration must be identifiable. The best way to do is to be discussed, nevertheless the
-mechanism must not depend on Java EE and the identifying keys must be serializable easily.
-Basically simple names are sufficient and woukld provide exact this required functionality.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/scannable-properties.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/scannable-properties.adoc b/src/site/asciidoc/userguide/uc/scannable-properties.adoc
deleted file mode 100644
index e2a6b64..0000000
--- a/src/site/asciidoc/userguide/uc/scannable-properties.adoc
+++ /dev/null
@@ -1,4 +0,0 @@
-=== Scannable Properties
-
-If possible configuration should be scannable, meaning it should be possible to evaluate the keys available.
-The corresponding capabilities should be accessible by a +isScannable()+ method.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/service-context.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/service-context.adoc b/src/site/asciidoc/userguide/uc/service-context.adoc
deleted file mode 100644
index ceeea4a..0000000
--- a/src/site/asciidoc/userguide/uc/service-context.adoc
+++ /dev/null
@@ -1,15 +0,0 @@
-=== Adaptable Service Context
-
-Tamaya should support an adaptable +ServiceContext+ to resolve any kind of implememntation services, both API services as core
-framework services. The +ServiceContext+ should be dynamically replecable by configuring an alternate instance of
-using the Java *ServiceContet+.
-
-This decouples component usage from its load and management part and als greatly simplifies integration with
-new/alternate runtime environments.
-The service context is exptected to provide
-
-* single singleton instances: these service can be cached.
-* access to multiple instances which implement some commons SPI interface.
-* as useful priorization of components is done by the model itself.
-
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/simple-access.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/simple-access.adoc b/src/site/asciidoc/userguide/uc/simple-access.adoc
deleted file mode 100644
index d4ada1e..0000000
--- a/src/site/asciidoc/userguide/uc/simple-access.adoc
+++ /dev/null
@@ -1,25 +0,0 @@
-=== Simple Access
-
-Users want to be able to access configuration in a unified way both in SE and EE. EE may provide additional
-mechanism, such as injection, but the SE mechanisms should work as well, so any code written in SE is fully
-portable to EE as well.
-This can only be achieved by providing a static accessor, e.g.
-
-[source,java]
-------------------------------------------------------------
-Configuration config = Configuration.current();
-------------------------------------------------------------
-
-The call above should work exactly the same in EE. To enable this the static call must be delegated in the
-internals of the singleton, depending on the runtime. In EE the executing component can behave contextually,
-or even be loaded within the CDI environment (at least for post loading, application runtime aspects, but not earlier).
-
-Additionally in EE it should also be possible to inject Configuration, which gives you the same results as the call
-above:
-
-[source,java]
-------------------------------------------------------------
-@Inject
-private Configuration cfg;
-------------------------------------------------------------
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/simple-property-access.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/simple-property-access.adoc b/src/site/asciidoc/userguide/uc/simple-property-access.adoc
deleted file mode 100644
index 81fb879..0000000
--- a/src/site/asciidoc/userguide/uc/simple-property-access.adoc
+++ /dev/null
@@ -1,9 +0,0 @@
-=== Simple Lookup of Properties
-
-Users just want to create a configuration ad hoc, from given property files. The
-files could be locally in the file system, on the classpath.
-
-Tamaya should provide a simple Java API for accessing key/value based configuration. Hereby users want to access
-properties as simple String values.
-
-Hereby returning Java 8 Optional values must be considered as well, instead of returning +null+.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/templates.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/templates.adoc b/src/site/asciidoc/userguide/uc/templates.adoc
deleted file mode 100644
index 2aab3d2..0000000
--- a/src/site/asciidoc/userguide/uc/templates.adoc
+++ /dev/null
@@ -1,12 +0,0 @@
-=== Configuration Templates
-
-Users want to be able to let Tamaya implement an interface template based on configuration.
-This use case is pretty similar to the injection use case. Basically the values are not injected,
-but cached within the template proxy returned, e.g. as +DynamicValue+.
-Similarly it could even be possible to define callback methods (default methods)
-or register listeners to DynamicValue instances returned.
-
-Templates hereby can easily be managed, but provide a excellent mechanism to provide type-safe configuration
-to clients in a very transparent way. Details can be controlled by using the same annotations as for
-normal configuration injection.
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/type-safe-properties.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/type-safe-properties.adoc b/src/site/asciidoc/userguide/uc/type-safe-properties.adoc
deleted file mode 100644
index e71d31c..0000000
--- a/src/site/asciidoc/userguide/uc/type-safe-properties.adoc
+++ /dev/null
@@ -1,10 +0,0 @@
-=== Type Safe Properties
-
-Users just want to access properties not only as Strings, but let Tamaya do the conversion to the required
-or the configred target type. By defauklt all java.lang wrapper and primitive types should be supported, but also
-other common types like date/time types, math numeric types and more.
-
-It must be possible that users can register their own custom types.
-
-Finally users also want to be able to dynamically provide or override type adaption (conversion), when reading a value,
-for a certain key/value pair.
\ No newline at end of file



[06/11] incubator-tamaya git commit: Reset version, integrated docs into site.

Posted by an...@apache.org.
Reset version, integrated docs into site.


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/3854cc22
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/3854cc22
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/3854cc22

Branch: refs/heads/master
Commit: 3854cc223e849e7257cfccbbe42586622a5b1783
Parents: 078d93b
Author: anatole <an...@apache.org>
Authored: Wed Mar 16 21:54:18 2016 +0100
Committer: anatole <an...@apache.org>
Committed: Wed Mar 16 21:54:18 2016 +0100

----------------------------------------------------------------------
 buildconfigurations/pom.xml                     |   2 +-
 code/api/pom.xml                                |   2 +-
 code/core/pom.xml                               |   2 +-
 code/pom.xml                                    |   2 +-
 distribution/pom.xml                            |   2 +-
 docs/pom.xml                                    |   2 +-
 docs/src/main/asciidoc/API.adoc                 | 659 -------------------
 docs/src/main/asciidoc/Core.adoc                | 249 -------
 docs/src/main/asciidoc/HighLevelDesign.adoc     | 209 ------
 docs/src/main/asciidoc/Requirements.adoc        | 267 --------
 docs/src/main/asciidoc/examples.adoc            |  82 ---
 docs/src/main/asciidoc/index.adoc               | 204 ------
 .../asciidoc/misc/PossibleContributions.adoc    | 315 ---------
 .../main/asciidoc/misc/examples.adoc.nonfunc    |  91 ---
 .../asciidoc/releaseguide/ReleaseGuide.adoc     | 273 --------
 docs/src/main/asciidoc/uc/combine-configs.adoc  |  14 -
 .../uc/context-dependent-configuration.adoc     |   7 -
 .../main/asciidoc/uc/dynamic-provisioning.adoc  |  18 -
 .../asciidoc/uc/external-configuration.adoc     |   6 -
 docs/src/main/asciidoc/uc/formats.adoc          |   8 -
 docs/src/main/asciidoc/uc/injection.adoc        |  31 -
 docs/src/main/asciidoc/uc/java8.adoc            |  14 -
 docs/src/main/asciidoc/uc/locations.adoc        |  10 -
 docs/src/main/asciidoc/uc/management.adoc       |   7 -
 .../asciidoc/uc/minimal-propertysource.adoc     |   6 -
 .../asciidoc/uc/multiple-configurations.adoc    |  14 -
 .../main/asciidoc/uc/scannable-properties.adoc  |   4 -
 docs/src/main/asciidoc/uc/service-context.adoc  |  15 -
 docs/src/main/asciidoc/uc/simple-access.adoc    |  25 -
 .../asciidoc/uc/simple-property-access.adoc     |   9 -
 docs/src/main/asciidoc/uc/templates.adoc        |  12 -
 .../main/asciidoc/uc/type-safe-properties.adoc  |  10 -
 .../main/asciidoc/uc/value-placeholders.adoc    |   8 -
 docs/src/main/asciidoc/usecases.adoc            |  58 --
 docs/src/main/assembly/documentation.xml        |   4 +-
 docs/src/main/images/CoreDesign.png             | Bin 43759 -> 0 bytes
 examples/1-minimal-example/pom.xml              |   2 +-
 .../2-simple-propertysource-example/pom.xml     |   2 +-
 examples/3-resources-example/pom.xml            |   2 +-
 examples/4-resolver-example/pom.xml             |   2 +-
 examples/5-injection-example/pom.xml            |   2 +-
 examples/6-fileobserver-example/pom.xml         |   2 +-
 examples/7-builder-example/pom.xml              |   2 +-
 examples/8-remote-example/client/pom.xml        |   2 +-
 examples/8-remote-example/pom.xml               |   2 +-
 examples/8-remote-example/server/pom.xml        |   2 +-
 examples/pom.xml                                |   2 +-
 modules/builder/pom.xml                         |   2 +-
 modules/classloader-support/pom.xml             |   2 +-
 modules/collections/pom.xml                     |   2 +-
 modules/events/pom.xml                          |   2 +-
 modules/filter/pom.xml                          |   2 +-
 modules/formats/pom.xml                         |   2 +-
 modules/functions/pom.xml                       |   2 +-
 modules/injection-api/pom.xml                   |   2 +-
 modules/injection/pom.xml                       |   2 +-
 modules/integration/camel/pom.xml               |   2 +-
 modules/integration/cdi-se/pom.xml              |   2 +-
 modules/integration/cdi/pom.xml                 |   2 +-
 modules/integration/consul/pom.xml              |   2 +-
 modules/integration/etcd/pom.xml                |   2 +-
 modules/integration/osgi/pom.xml                |   2 +-
 modules/integration/pom.xml                     |   2 +-
 modules/integration/spring/pom.xml              |   2 +-
 modules/json/pom.xml                            |   2 +-
 modules/management/pom.xml                      |   2 +-
 modules/model/pom.xml                           |   2 +-
 modules/mutable-config/pom.xml                  |   2 +-
 modules/optional/pom.xml                        |   2 +-
 modules/pom.xml                                 |   2 +-
 modules/resolver/pom.xml                        |   2 +-
 modules/resources/pom.xml                       |   2 +-
 modules/server/pom.xml                          |   2 +-
 modules/spi-support/pom.xml                     |   2 +-
 modules/yaml/pom.xml                            |   2 +-
 pom.xml                                         |   2 +-
 src/site/asciidoc/release-guide.adoc            | 224 ++++++-
 src/site/site.xml                               |   8 +-
 78 files changed, 272 insertions(+), 2681 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/buildconfigurations/pom.xml
----------------------------------------------------------------------
diff --git a/buildconfigurations/pom.xml b/buildconfigurations/pom.xml
index df02971..bfe51c8 100644
--- a/buildconfigurations/pom.xml
+++ b/buildconfigurations/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>buildconfigurations</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/code/api/pom.xml
----------------------------------------------------------------------
diff --git a/code/api/pom.xml b/code/api/pom.xml
index 23d75cd..dd85072 100644
--- a/code/api/pom.xml
+++ b/code/api/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-code</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/code/core/pom.xml
----------------------------------------------------------------------
diff --git a/code/core/pom.xml b/code/core/pom.xml
index 673b22f..c93a72d 100644
--- a/code/core/pom.xml
+++ b/code/core/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-code</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/code/pom.xml
----------------------------------------------------------------------
diff --git a/code/pom.xml b/code/pom.xml
index de68cb5..719c33d 100644
--- a/code/pom.xml
+++ b/code/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-code</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/distribution/pom.xml
----------------------------------------------------------------------
diff --git a/distribution/pom.xml b/distribution/pom.xml
index e151979..e21a337 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-distribution</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/pom.xml
----------------------------------------------------------------------
diff --git a/docs/pom.xml b/docs/pom.xml
index 1f7acad..11bc2c1 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/API.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/API.adoc b/docs/src/main/asciidoc/API.adoc
deleted file mode 100644
index be3cc38..0000000
--- a/docs/src/main/asciidoc/API.adoc
+++ /dev/null
@@ -1,659 +0,0 @@
-Apache Tamaya -- API
-====================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: January 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
-toc::[]
-
-<<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
-
-[[CoreDesign]]
-== The Tamaya Core Design
-Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
-that build the base of all the other mechanisms. As a starting point we recommend you read the corresponding
-link:CoreDesign.html[Core Design Documentation]
-
-[[API]]
-== The Tamaya API
-The API provides the artifacts as described in the link:CoreDesign.html[Core Design Documentation], which are:
-
-* A simple but complete SE *API* for accessing key/value based _Configuration_:
-  ** +Configuration+ hereby models configuration, the main interface of Tamaya. +Configuration+ provides
-     *** access to literal key/value pairs.
-     *** functional extension points (+with, query+) using a unary +ConfigOperator+ or
-         a function +ConfigurationQuery<T>+.
-  ** +ConfigurationProvider+ provides with +getConfiguration()+ the static entry point for accessing configuration.
-  ** +ConfigException+ defines a runtime exception for usage by the configuration system.
-  ** +TypeLiteral+ provides a possibility to type safely define the target type to be returned by a registered
-     +PropertyProvider+.
-  ** +PropertyConverter+, which defines conversion of configuration values (String) into any required target type.
-
-* Additionally the *SPI* provides:
-  ** _PropertySource:_ is the the SPI for adding configuration data. A +PropertySource+ hereby
-     *** is designed as a minimalistic interface that be implemented by any kind of data provider (local or remote)
-     *** provides single access for key/value pairs in raw format as String key/values only (+getPropertyValue+).
-     *** can optionally support scanning of its provided values, implementing +getProperties()+.
-  ** _PropertySourceProvider:_ allows to register multiple property sources dynamically, e.g. all config files found in
-     file system folder..
-  ** +ConfigurationProviderSpi+ defines the SPI that is used as a backing bean for the +ConfigurationProvider+
-     singleton.
-  ** +PropertyFilter+, which allows filtering of property values prior getting returned to the caller.
-  ** +ConfigurationContext+, which provides the container that contains the property sources and filters that form a
-     configuration.
-  ** +PropertyValueCombinationPolicy+ optionally can be registered to change the way how different key/value
-     pairs are combined to build up the final +Configuration+ passed over to the filters registered.
-  ** +ServiceContext+, which provides access to the components loaded, depending on the current runtime stack.
-  ** +ServiceContextManager+ provides static access to the +ServiceContext+ loaded.
-
-This is also reflected in the main packages of the API:
-
-* +org.apache.tamaya+ contains the main API abstractions used by users.
-* +org.apache.tamaya.spi+ contains the SPI interfaces to be implemented by implementations and the +ServiceContext+
-  mechanism.
-
-
-
-[[APIKeyValues]]
-=== Key/Value Pairs
-
-Basically configuration is a very generic concept. Therefore it should be modelled in a generic way. The most simple
-and most commonly used approach are simple literal key/value pairs. So the core building block of {name} are key/value pairs.
-You can think of a common +.properties+ file, e.g.
-
-[source,properties]
-.A simple properties file
---------------------------------------------
-a.b.c=cVal
-a.b.c.1=cVal1
-a.b.c.2=cVal2
-a=aVal
-a.b=abVal
-a.b2=abVal
---------------------------------------------
-
-Now you can use +java.util.Properties+ to read this file and access the corresponding properties, e.g.
-
-[source,properties]
---------------------------------------------
-Properties props = new Properties();
-props.readProperties(...);
-String val = props.getProperty("a.b.c");
-val = props.getProperty("a.b.c.1");
-...
---------------------------------------------
-
-
-==== Why Using Strings Only
-
-There are good reason to keep of non String-values as core storage representation of configuration. Mostly
-there are several huge advantages:
-
-* Strings are simple to understand
-* Strings are human readable and therefore easy to prove for correctness
-* Strings can easily be used within different language, different VMs, files or network communications.
-* Strings can easily be compared and manipulated
-* Strings can easily be searched, indexed and cached
-* It is very easy to provide Strings as configuration, which gives much flexibility for providing configuration in
-  production as well in testing.
-* and more...
-
-On the other side there are also disadvantages:
-
-* Strings are inherently not type safe, they do not provide validation out of the box for special types, such as
-numbers, dates etc.
-* In many cases you want to access configuration in a typesafe way avoiding conversion to the target types explicitly
-  throughout your code.
-* Strings are neither hierarchical nor multi-valued, so mapping hierarchical and collection structures requires some
-  extra efforts.
-
-Nevertheless most of these advantages can be mitigated easily, hereby still keeping all the benefits from above:
-
-* Adding type safe adapters on top of String allow to add any type easily, that can be directly mapped out of Strings.
-  This includes all common base types such as numbers, dates, time, but also timezones, formatting patterns and more.
-* Also multi-valued, complex and collection types can be defined as a corresponding +PropertyAdapter+ knows how to
-  parse and create the target instance required.
-* String s also can be used as references pointing to other locations and formats, where configuration is
-  accessible.
-
-
-[[API Configuration]]
-=== Configuration
-
-+Configuration+ is the main API provided by Tamaya. It allows reading of single property values or the whole
-property map, but also supports type safe access:
-
-[source,java]
-.Interface Configuration
---------------------------------------------
-public interface Configuration{
-    String get(String key);
-    String getOrDefault(String key, String value);
-    <T> T get(String key, Class<T> type);
-    <T> T getOrDefault(String key, Class<T> type, T defaultValue);
-    <T> T get(String key, TypeLiteral<T> type);
-    <T> T getOrDefault(String key, TypeLiteral<T> type, T defaultValue);
-    Map<String,String> getProperties();
-
-    // extension points
-    Configuration with(ConfigOperator operator);
-    <T> T query(ConfigQuery<T> query);
-
-    ConfigurationContext getContext();
-}
---------------------------------------------
-
-Hereby
-
-* +<T> T get(String, Class<T>)+ provides type safe accessors for all basic wrapper types of the JDK.
-* +with, query+ provide the extension points for adding additional functionality.
-* +getProperties()+ provides access to all key/values, whereas entries from non scannable property sources may not
-  be included.
-* +getOrDefault+ allows to pass default values as needed, returned if the requested value evaluated to +null+.
-
-The class +TypeLiteral+ is basically similar to the same class provided with CDI:
-
-[source,java]
---------------------------------------------
-public class TypeLiteral<T> implements Serializable {
-
-    [...]
-
-    protected TypeLiteral(Type type) {
-        this.type = type;
-    }
-
-    protected TypeLiteral() { }
-
-    public static <L> TypeLiteral<L> of(Type type){...}
-    public static <L> TypeLiteral<L> of(Class<L> type){...}
-
-    public final Type getType() {...}
-    public final Class<T> getRawType() {...}
-
-    public static Type getGenericInterfaceTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
-    public static Type getTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
-
-    [...]
-}
---------------------------------------------
-
-Instances of +Configuration+ can be accessed from the +ConfigurationProvider+ singleton:
-
-[source,java]
-.Accessing Configuration
---------------------------------------------
-Configuration config = ConfigurationProvider.getConfiguration();
---------------------------------------------
-
-Hereby the singleton is backed up by an instance of +ConfigurationProviderSpi+.
-
-
-[[PropertyConverter]]
-==== Property Converters
-
-As illustrated in the previous section, +Configuration+ also to access non String types. Nevertheless internally
-all properties are strictly modelled as pure Strings only, so non String types must be derived by converting the
-configured String values into the required target type. This is achieved with the help of +PropertyConverters+:
-
-[source,java]
---------------------------------------------
-public interface PropertyConverter<T>{
-    T convert(String value, ConversionContext context);
-    //X TODO Collection<String> getSupportedFormats();
-}
---------------------------------------------
-
-The +ConversionContext+ contains additional meta-information for the accessed key, inclusing the key'a name and
-additional metadata.
-
-+PropertyConverter+ instances can be implemented and registered by default using the +ServiceLoader+. Hereby
-a configuration String value is passed to all registered converters for a type in order of their annotated +@Priority+
-value. The first non-null result of a converter is then returned as the current configuration value.
-
-Access to converters is provided by the current +ConfigurationContext+, which is accessible from
-the +ConfigurationProvider+ singleton.
-
-
-[[ExtensionPoints]]
-=== Extension Points
-
-We are well aware of the fact that this library will not be able to cover all kinds of use cases. Therefore
-we have added functional extension mechanisms to +Configuration+ that were used in other areas of the Java eco-system
-as well:
-
-* +with(ConfigOperator operator)+ allows to pass arbitrary unary functions that take and return instances of
-  +Configuration+. Operators can be used to cover use cases such as filtering, configuration views, security
-  interception and more.
-* +query(ConfigQuery query)+ allows to apply a function returning any kind of result based on a
-  +Configuration+ instance. Queries are used for accessing/deriving any kind of data based on of a +Configuration+
-  instance, e.g. accessing a +Set<String>+ of root keys present.
-
-Both interfaces hereby are functional interfaces. Because of backward compatibility with Java 7 we did not use
-+UnaryOperator+ and +Function+ from the +java.util.function+ package. Nevertheless usage is similar, so you can
-use Lambdas and method references in Java 8:
-
-[source,java]
-.Applying a +ConfigurationQuery+ using a method reference
---------------------------------------------
-ConfigSecurity securityContext = ConfigurationProvider.getConfiguration().query(ConfigSecurity::targetSecurityContext);
---------------------------------------------
-
-NOTE: +ConfigSecurity+ is an arbitrary class only for demonstration purposes.
-
-
-Operator calls basically look similar:
-
-[source,java]
-.Applying a +ConfigurationOperator+ using a lambda expression:
---------------------------------------------
-Configuration secured = ConfigurationProvider.getConfiguration()
-                           .with((config) ->
-                                 config.get("foo")!=null?;
-                                 FooFilter.apply(config):
-                                 config);
---------------------------------------------
-
-
-[[ConfigException]]
-=== ConfigException
-
-The class +ConfigException+ models the base *runtime* exception used by the configuration system.
-
-
-[[SPI]]
-== SPI
-
-[[PropertySource]]
-=== Interface PropertySource
-
-We have seen that constraining configuration aspects to simple literal key/value pairs provides us with an easy to
-understand, generic, flexible, yet expendable mechanism. Looking at the Java language features a +java.util.Map<String,
-String>+ and +java.util.Properties+ basically model these aspects out of the box.
-
-Though there are advantages in using these types as a model, there are some severe drawbacks, notably implementation
-of these types is far not trivial and the collection API offers additional functionality not useful when aiming
-for modelling simple property sources.
-
-To render an implementation of a custom +PropertySource+ as convenient as possible only the following methods were
-identified to be necessary:
-
-[source,java]
---------------------------------------------
-public interface PropertySource{
-      int getOrdinal();
-      String getName();
-      String get(String key);
-      boolean isScannable();
-      Map<String, String> getProperties();
-}
---------------------------------------------
-
-Hereby
-
-* +get+ looks similar to the methods on +Map+. It may return +null+ in case no such entry is available.
-* +getProperties+ allows to extract all property data to a +Map<String,String>+. Other methods like +containsKey,
-  keySet+ as well as streaming operations then can be applied on the returned +Map+ instance.
-* But not in all scenarios a property source may be scannable, e.g. when looking up keys is very inefficient, it
-  may not make sense to iterator over all keys to collect the corresponding properties.
-  This can be evaluated by calling +isScannable()+. If a +PropertySource+ is defined as non scannable accesses to
-  +getProperties()+ may not return all key/value pairs that would be available when accessed directly using the
-  +String get(String)+ method.
-* +getOrdinal()+ defines the ordinal of the +PropertySource+. Property sources are managed in an ordered chain, where
-  property sources with higher ordinals override the ones with lower ordinals. If ordinal are the same, the natural
-  ordering of the fulloy qualified class names of the property source implementations are used. The reason for
-  not using +@Priority+ annotations is that property sources can define dynamically their ordinals, e.g. based on
-  a property contained with the configuration itself.
-* Finally +getName()+ returns a (unique) name that identifies the +PropertySource+ within the current
-  +ConfigurationContext+.
-
-This interface can be implemented by any kind of logic. It could be a simple in memory map, a distributed configuration
-provided by a data grid, a database, the JNDI tree or other resources. Or it can be a combination of multiple
-property sources with additional combination/aggregation rules in place.
-
-+PropertySources+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
- active +ServiceContext+.
-
-
-[[PropertySourceProvider]]
-==== Interface PropertySourceProvider
-
-Instances of this type can be used to register multiple instances of +PropertySource+.
-
-[source,java]
---------------------------------------------
-// @FunctionalInterface in Java 8
-public interface PropertySourceProvider{
-    Collection<PropertySource> getPropertySources();
-}
---------------------------------------------
-
-This allows to evaluate the property sources to be read/that are available dynamically. All property sources
-are read out and added to the current chain of +PropertySource+ instances within the current +ConfigurationContext+,
-refer also to [[ConfigurationContext]].
-
-+PropertySourceProviders+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the
-current active +ServiceContext+.
-
-
-[[PropertyFilter]]
-==== Interface PropertyFilter
-
-Also +PropertyFilters+ can be added to a +Configuration+. They are evaluated before a +Configuration+ instance is
-passed to the user. Filters can hereby used for multiple purposes, such as
-
-* resolving placeholders
-* masking sensitive entries, such as passwords
-* constraining visibility based on the current active user
-* ...
-
-+PropertyFilters+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
-active +ServiceContext+. Similar to property sources they are managed in an ordered filter chain, based on the
-applied +@Priority+ annotations.
-
-A +PropertyFilter+ is defined as follows:
-
-[source,java]
---------------------------------------------
-// Functional Interface
-public interface PropertyFilter{
-    String filterProperty(String value, FilterContext context);
-}
---------------------------------------------
-
-Hereby:
-
-* returning +null+ will remove the key from the final result
-* non null values are used as the current value of the key. Nevertheless for resolving multi-step dependencies
-  filter evaluation has to be continued as long as filters are still changing some of the values to be returned.
-  To prevent possible endless loops after a defined number of loops evaluation is stopped.
-* +FilterContext+ provides additional metdata, inclusing the key accessed, which is useful in many use cases.
-
-This method is called each time a single entry is accessed, and for each property in a full properties result.
-
-
-[[PropertyValueCombinationPolicy]]
-==== Interface PropertyValueCombinationPolicy
-
-This interface can be implemented optional. It can be used to adapt the way how property key/value pairs are combined to
-build up the final Configuration to be passed over to the +PropertyFilters+. The default implementation is just
-overriding all values read before with the new value read. Nevertheless for collections and other use cases it is
-often useful to have alternate combination policies in place, e.g. for combining values from previous sources with the
-new value. Finally looking at the method's signature it may be surprising to find a +Map+ for the value. The basic
-value hereby is defined by +currentValue.get(key)+. Nevertheless the +Map+ may also contain additional meta entries,
-which may be considered by the policy implementation.
-
-[source,java]
---------------------------------------------
-// FunctionalInterface
-public interface PropertyValueCombinationPolicy{
-
-   PropertyValueCombinationPolicy DEFAULT_OVERRIDING_COLLECTOR =
-     new PropertyValueCombinationPolicy(){
-       @Override
-       public Map<String,String> collect(Map<String,String> currentValue, String key,
-                                         PropertySource propertySource) {
-           PropertyValue value = propertySource.get(key);
-           return value!=null?value.getConfigEntries():currentValue;
-       }
-   };
-
-   String collect(Map<String,String> currentValue currentValue, String key,
-                  PropertySource propertySource);
-
-}
---------------------------------------------
-
-
-[[ConfigurationContext]]
-==== The Configuration Context
-
-A +Configuration+ is basically based on a so called +ConfigurationContext+, which is
-accessible from +Configuration.getContext()+:
-
-[source,java]
-.Accessing the current +ConfigurationContext+
---------------------------------------------
-ConfigurationContext context = ConfigurationProvider.getConfiguration().getContext();
---------------------------------------------
-
-The +ConfigurationContext+ provides access to the internal building blocks that determine the final +Configuration+:
-
-* +PropertySources+ registered (including the PropertySources provided from +PropertySourceProvider+ instances).
-* +PropertyFilters+ registered, which filter values before they are returned to the client
-* +PropertyConverter+ instances that provide conversion functionality for converting String values to any other types.
-* the current +PropertyValueCombinationPolicy+ that determines how property values from different PropertySources are
-  combined to the final property value returned to the client.
-
-
-[[Mutability]]
-==== Changing the current Configuration Context
-
-By default the +ConfigurationContext+ is not mutable once it is created. In many cases mutability is also not needed
-or even not wanted. Nevertheless there are use cases where the current +ConfigurationContext+ (and
-consequently +Configuration+) must be adapted:
-
-* New configuration files where detected in a folder observed by Tamaya.
-* Remote configuration, e.g. stored in a database or alternate ways has been updated and the current system must
-  be adapted to these changes.
-* The overall configuration context is manually setup by the application logic.
-* Within unit testing alternate configuration setup should be setup to meet the configuration requirements of the
-  tests executed.
-
-In such cases the +ConfigurationContext+ must be mutable, meaning it must be possible:
-
-* to add or remove +PropertySource+ instances
-* to add or remove +PropertyFilter+ instances
-* to add or remove +PropertyConverter+ instances
-* to redefine the current +PropertyValueCombinationPolicy+ instances.
-
-This can be achieved by obtaining an instance of +ConfigurationContextBuilder+. Instances of this builder can be
-accessed either
-
-* from the current +ConfigurationContext+, hereby returning a builder instance preinitialized with the values from the
-  current +ConfigurationContext+
-* from the current +ConfigurationProvider+ singleton.
-
-[source,java]
-.Accessing a +ConfigurationContextBuilder+
---------------------------------------------
-ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext().toBuilder();
-ConfigurationContextBuilder emptyContextBuilder = ConfigurationProvider.getConfigurationContextBuilder();
---------------------------------------------
-
-With such a builder a new +ConfigurationContext+ can be created and then applied:
-
-[source,java]
-.Creating and applying a new +ConfigurationContext+
---------------------------------------------
-ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext()
-                                                           .toBuilder();
-ConfigurationContext context = preinitializedContextBuilder.addPropertySources(new MyPropertySource())
-                                                           .addPropertyFilter(new MyFilter()).build();
-ConfigurationProvider.setConfigurationContext(context);
---------------------------------------------
-
-Hereby +ConfigurationProvider.setConfigurationContext(context)+ can throw an +UnsupportedOperationException+.
-This can be checked by calling the method +boolean ConfigurationProvider.isConfigurationContextSettable()+.
-
-
-[[ConfigurationProviderSpi]]
-==== Implementing and Managing Configuration
-
-One of the most important SPI in Tamaya if the +ConfigurationProviderSpi+ interface, which is backing up the
-+ConfigurationProvider+ singleton. Implementing this class allows
-
-* to fully determine the implementation class for +Configuration+
-* to manage the current +ConfigurationContext+ in the scope and granularity required.
-* to provide access to the right +Configuration/ConfigurationContext+ based on the current runtime context.
-* Performing changes as set with the current +ConfigurationContextBuilder+.
-
-
-[[ServiceContext]]
-==== The ServiceContext
-
-The +ServiceContext+ is also a very important SPI, which allows to define how components are loaded in Tamaya.
-The +ServiceContext+ hereby defines access methods to obtain components, whereas itself it is available from the
-+ServiceContextManager+ singleton:
-
-[source,java]
-.Accessing the +ServiceContext+
---------------------------------------------
-ServiceContext serviceContext = ServiceContextManager.getServiceContext();
-
-public interface ServiceContext{
-    int ordinal();
-    <T> T getService(Class<T> serviceType);
-    <T> List<T> getServices(Class<T> serviceType);
-}
---------------------------------------------
-
-With the +ServiceContext+ a component can be accessed in two different ways:
-
-. access as as a single property. Hereby the registered instances (if multiple) are sorted by priority and then finally
-  the most significant instance is returned only.
-. access all items given its type. This will return (by default) all  instances loadedable from the current
-  runtime context, ordered by priority, hereby the most significant components added first.
-
-
-## Examples
-### Accessing Configuration
-
-_Configuration_ is obtained from the ConfigurationProvider singleton:
-
-[source,java]
-.Accessing +Configuration+
---------------------------------------------
-Configuration config = ConfigurationProvider.getConfiguration();
---------------------------------------------
-
-Many users in a SE context will probably only work with _Configuration_, since it offers all functionality
-needed for basic configuration with a very lean memory and runtime footprint. In Java 7 access to the keys is
-very similar to *Map<String,String>*, whereas in Java 8 additionally usage of _Optional_ is supported:
-
-[source,java]
---------------------------------------------
-Configuration config = ConfigurationProvider.getConfiguration();
-String myKey = config.get("myKey");                         // may return null
-int myLimit = config.get("all.size.limit", int.class);
---------------------------------------------
-
-
-### Environment and System Properties
-
-By default environment and system properties are included into the _Configuration_. So we can access the current
-_PROMPT_ environment variable as follows:
-
-[source,java]
---------------------------------------------
-String prompt = ConfigurationProvider.getConfiguration().get("PROMPT");
---------------------------------------------
-
-Similary the system properties are directly applied to the _Configuration_. So if we pass the following system
-property to our JVM:
-
-[source,java]
---------------------------------------------
-java ... -Duse.my.system.answer=yes
---------------------------------------------
-
-we can access it as follows:
-
-[source,java]
---------------------------------------------
-boolean useMySystem = ConfigurationProvider.getConfiguration().get("use.my.system.answer", boolean.class);
---------------------------------------------
-
-
-### Adding a Custom Configuration
-
-Adding a classpath based configuration is simply as well: just implement an according _PropertySource_. With the
-_tamaya-spi-support_ module you just have to perform a few steps:
-
-. Define a PropertySource as follows:
-
-[source,java]
---------------------------------------------
-  public class MyPropertySource extends PropertiesResourcePropertySource{
-
-    public MyPropertySource(){
-        super(ClassLoader.getSystemClassLoader().getResource("META-INF/cfg/myconfig.properties"), DEFAULT_ORDINAL);
-    }
-  }
---------------------------------------------
-
-Then register +MyPropertySource+ using the +ServiceLoader+ by adding the following file:
-
-[source,listing]
---------------------------------------------
-META-INF/services/org.apache.tamaya.spi.PropertySource
---------------------------------------------
-
-...containing the following line:
-
-[source,listing]
---------------------------------------------
-com.mypackage.MyPropertySource
---------------------------------------------
-
-
-[[APIImpl]]
-== API Implementation
-
-The API is implemented by the Tamaya _Core_module. Refer to the link:Core.html[Core documentation] for
-further details.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/Core.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/Core.adoc b/docs/src/main/asciidoc/Core.adoc
deleted file mode 100644
index 3cfa482..0000000
--- a/docs/src/main/asciidoc/Core.adoc
+++ /dev/null
@@ -1,249 +0,0 @@
-Apache Tamaya -- Core
-=====================
-:name: Tamaya
-:rootpackage: org.apache.tamaya.core
-:title: Apache Tamaya Core
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
-toc::[]
-
-<<<
-:numbered!:
-<<<
-[[Core]]
-== Tamaya Core
-=== Overview
-
-Tamaya Core provides an implementation of the link:API.html[Tamaya Configuration API] and adds additional functionality
-and building blocks for supporting SPI implementations.
-
-Tamaya Core contains the following artifacts:
-
-* Implementations of +Configuration, ConfigurationContext, ConfigurationContextBuilder+ ConfigurationProviderSpi+
-* A +java.util.ServiceLoader+ based +ServiceContext+ implementation. Hereby it implements component priorization based
-  on the +@Priority+ annotations.
-* A PropertyConverterManager+ that loads and stores references to all the preconfigured +PropertyConverter+ instances
-hereby providing type conversion for all important types.
-* A simple default configuration setup using the current classpath and an optional staging variable.
-* It collects all +PropertySource+ and +PropertySourceProvider+ instances registered with the +ServiceLoader+ and
-  registers them in the global +ConfigurationContext+
-* It provides a +ConfigurationContextBuilder+ and allows changing the current +ConfigurationContext+.
-
-The overall size of the library is very small. All required components are implemented and registered, so basically the
-Core module is a complete configuration solution. Nevertheless it is also very minimalistic, but fortunately is flexible
-enough to be extended/accommodated with additional features as needed, such as
-
-* placeholder and resolution mechanisms
-* dynamic resource path lookup, e.g. with ant styled patterns
-* configuration injection and configuration templates
-* abstraction for reusable formats
-* integration with other existing solutions
-* configuration and configuration isolation targeting Java EE
-* dynamic configuration and configuration updates
-* Configuration management extensions
-* remote configuration
-* and more
-
-For details about the extension modules available and  their functionality refer to the link:modules.html[extension user guide].
-
-
-[[CorePropertyConverters]]
-=== Default PropertyConverters in Core
-
-As mentioned the Core module delivers several default +PropertyConverter+ instances out of the box. Find below the
-listing of converters automatically registered with the Core module:
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Target Type_             |_Class Name_              |_Supported Formats_
-|java.math.BigDecimal    |BigDecimalConverter     |1.2345, 0xFF
-|java.math.BigInteger    |BigIntegerConverter     |0xFF, 1234
-|java.lang.Boolean       |BooleanConverter        |true, false, T, F, 1 ,0
-|java.lang.Byte          |ByteConverter           |0xFF, MIN_VALUE, MAX_VALUE, 123
-|java.lang.Character     |CharConverter           |0xFF, 'a', 'H', 123
-|java.lang.Class         |ClassConverter          |<fully qualified class name>
-|java.util.Currency      |CurrencyConverter       |CHF, 123
-|java.lang.Double        |DoubleConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
-|_Enums_                 |EnumConverter           |<Enum item name>
-|java.lang.Float         |FloatConverter          |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
-|java.lang.Integer       |IntegerConverter        |1, 0xD3, MIN_VALUE, MAX_VALUE
-|LocalDate               |LocalDateConverter      |<Date as defined by LocalDate.parse(String)
-|LocalTime               |LocalTimeConverter      |<Time as defined by LocalTime.parse(String)
-|LocalDateTime           |LocalDateTimeConverter  |<LocalDateTime as defined by LocalDateTime.parse(String)>
-|java.lang.Long          |LongConverter           |1, 0xD3, MIN_VALUE, MAX_VALUE
-|java.lang.Number        |NumberConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY
-|java.lang.Short         |ShortConverter          |1, 0xD3, MIN_VALUE, MAX_VALUE
-|java.net.URI            |URIConverter            |http://localhost:2020/testresource?api=true
-|java.net.URL            |URLConverter            |http://localhost:2020/testresource?api=true
-|ZoneId                  |ZoneIdConverter         |Europe/Zurich
-|=======
-
-
-=== Registering PropertyConverters
-
-Additional +PropertyConverters+ can be implemented easily. It is recommended to register then using the +java.util.ServiceLoader+,
-meaning you add a file under +META-INF/service/org.apache.tamaya.spi.PropertyConverter+ containing the fully qualified
-class names of the converters to be registered (one line per each).
-
-Alternatively you can also use a +ConfigurationContextBuilder+ to add additional converters programmatically.
-
-NOTE: API Implementations can be read-only thus not allowing adding additional converters programmatically.
-
-
-[[ComponentLoadingAndPriorization]]
-=== Component Loading and Priorization
-
-Tamaya Core in general loads all components using the +java.util.ServiceLoader+ mechanism. This means that new components
-must be registered by adding a file under +META-INF/service/<myInterfaceName>+ containing the fully qualified
-implementation class names of the components to be registered (one line per each).
-The +ServiceLoader+ itself does not provide any functionality for overriding or ordering of components. Tamaya
-core adds this functionality by the possibility to add +@Priority+ annotations to the components registered.
-By default, and if no annotation is added +0+ is used as priority. Hereby higher values preceed lower values, meaning
-
-* if a singleton component is accessed from the current +ServiceContext+ the component with the higher value
-  effectively _overrides/replaces_ any component with lower values.
-* if a collection of components is obtained from the +ServiceContext+ the components are ordered in order, where the
-  ones with higher priority are before components with lower priority.
-* if priorities match Tamaya Core additionally sorts them using the simple class name. This ensures that ordering is
-  still defined and predictable in almost all scenarios.
-
-
-[[RegisteringPropertySources]]
-=== Registering Property Sources
-
-PropertySources that provide configuration properties are registered as ordinary components as described in the previous
-section. Nevertheless the priority is not managed based on +@Priority+ annotations, but based on an explicit
-+int getOrdinal()+ method. This allows to define the ordinal/priority of a +PropertySource+ explicitly. This is useful
-due to several reasons:
-
-* it allows to define the ordinal as part of the configuration, thus allowing new overriding property sources being
-  added easily.
-* it allows to define the ordinal dynamically, e.g. based on the configuration location, the time of loading or
-  whatever may be appropriate.
-
-
-[[CorePropertySources]]
-== Configuration Setup in Core
-
-Tamaya Core provides a minimal configuration setting, that allows you to configure SE
-applications already easily. Basically configuration is built  up by default as follows:
-
-. Read environment properties and add them prefixed with +env.+
-. Read all files found at +META-INF/javaconfiguration.properties+
-
-
-=== Overview of Registered Default Property Sources and Providers
-
-The Tamaya Core implementation provides a couple of default +PropertySource+ implementations, which are automatically
-registered. They are all in the package +org.apache.tamaya.core.propertysource+ and
-+org.apache.tamaya.core.provider+:
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Type_                                   |_Class Name_                   |_Ordinal Used_
-|META-INF/javaconfiguration.properties    |JavaConfigurationProvider      |0
-|Environment Properties                   |EnvironmentPropertySource      |300
-|System Properties                        |SystemPropertySource           |400
-|=======
-
-
-=== Abstract Class PropertiesFilePropertySource
-
-The abstract class +PropertiesFilePropertySource+ can be used for implementing a +PropertySource+ based on a +URL+
-instance that points to a +.properites+ file. It requires a +URL+ to be passed on the constructor:
-
-[source,java]
---------------------------------------------
-PropertiesFilePropertySource(URL url);
---------------------------------------------
-
-
-==== Abstract Class PropertiesPropertySource
-
-The abstract class +PropertiesPropertySource+ can be used for implementing a +PropertySource+ based on a +Properties+
-instance. It requires a +PropertySource+ to be passed on the constructor:
-
-[source,java]
---------------------------------------------
-PropertiesPropertySource(Properties properties);
---------------------------------------------
-
-
-==== Abstract Class BasePropertySource
-
-The abstract class +BasePropertySource+ can be used for implementing custom +PropertySource+ classes. It requires only
-one method to implemented:
-
-[source,java]
-.Implementing a PropertySource using BasePropertySource
---------------------------------------------
-public class MyPropertySource extends BasePropertySource{
-
-    public String getName(){
-        // return a unique name for the property source, e.g. based on the underlying resource. This name also
-        // allows to access the property source later
-    }
-
-    public Map<String, String> getProperties(){
-        // Get a map with all properties provided by this property source
-        // If the property source is not scannable, the map returned may be empty.
-        // In the ladder case the +boolean isScannale()+ must be overridden, since
-        // by default property sources are assumed to be scannable.
-    }
-
-}
---------------------------------------------
-
-By default the ordinal of the property sources will be 1000, unless the key +tamaya.ordinal+ asdefined in
-+PropertySource.TAMAYA_ORDINAL+ is present in the current +PropertySource+. Of course it is also possible to override
-the inherited +protected void initializeOrdinal(final int defaultOrdinal)+, or directly +int getOrdinal()+.
-
-
-[[CorePropertySourceProviders]]
-=== Default PropertySourceProvider in Core
-
-With +org.apache.tamaya.core.provider.JavaConfigurationProvider+ there is also a default +PropertySourceProvider+
-present that loads all .properties files found at +META-INF/javaconfiguration.properties+.
-
-
-[[Extensions]]
-== Adding Extensions
-
-The Core module only implements the link:API.html[API]. Many users require/wish additional functionality from a
-configuration system. Fortunately there are numerous extensions available that add further functionality
-(most of them are compatible with Java 7 and 8, so you can use regardless which version of the API you are using).
-Loading extensions hereby is trivial: you only are required to add the corresponding dependency to the classpath.
-
-For detailed information on the extensions available refer to the link:modules.html[extensions documentation].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/HighLevelDesign.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/HighLevelDesign.adoc b/docs/src/main/asciidoc/HighLevelDesign.adoc
deleted file mode 100644
index a0c255b..0000000
--- a/docs/src/main/asciidoc/HighLevelDesign.adoc
+++ /dev/null
@@ -1,209 +0,0 @@
-Apache Tamaya -- High Level Design
-==================================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: January 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
-toc::[]
-
-<<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
-
-[[Core Concepts]]
-== The Tamaya Core Parts
-Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
-that build the base of all the other mechanisms:
-
-The *API* (package +org.apache.tamaya+) provides
-
-* A simple but complete SE *API* for accessing key/value based _Configuration_:
-  ** +Configuration+ hereby models configuration, the main interface of Tamaya, providing key/value pairs as raw
-     (String-based) key/value pairs, allowing also access to typed values.
-  ** +ConfigurationProvider+ provides the static entry point for accessing configuration.
-
-The *SPI* (package +org.apache.tamaya.spi+) provides:
-  ** A simple minimalistic model for configuration data, called _PropertySource_.
-  ** Several extension points for adding additional configuration property sources or adapting the internal workings
-     of the overall system.
-  ** A +ServiceContext / ServiceContextManager+ that controls the loading of the components in Tamaya. This allows to
-     adapt the behaviour depending on the runtime environment in use, e.g. a Java standalone application, an OSGI
-     container or a Java EE application server.
-
-Tamaya *Modules* finally allow to add additional functionality to customize your configuration solution with the
-functionality you want. E.g. modules are providing features such as
-
-* Configuration _injection_
-* _Dynamic placeholders_ and resolution mechanism for configuration values
-* Abstractions for reusable _configuration formats_
-* Dynamic configuration updates and change events
-* Support for OSGI/Java EE Classloading
-* A configuration server/client
-* and more...
-
-
-== How Tamaya organizes Configuration
-=== Overview
-
-All the mentioned artifacts are used to organize configuration in a higly flexible and extendable way. Hereby the
-+PropertySource+ is the key artifact. In general Tamaya organizes Configuration as follows:
-
-image::CoreDesign.png[]
-
-Key abstraction hereby is the +ConfigurationContext+, which basically
-
-* an ordered chain of +PropertySource+ instances. This chain is used to evaluate raw configuration values.
-* a set of +PropertyFilter+ instances that filter the raw values evaluated from the property source chain.
-* a set of +PropertyConverter+ that convert String values into typed values when needed.
-
-In most standalone use cases only one +ConfigurationContext+ will be active at a time. But in more complex scenarios,
-such as Java EE also multiple contexts could be active that are active depending on the current runtime context
-(e.g. attached to the corresponding classloader(s)). These aspects are basically handled by the
-+ConfigurationProvider+ and its corresponding SPIs.
-
-=== Loading the current _ConfigurationContext_
-
-The +ConfigurationContext+ is the core of Tamaya. It manages all configuration sources and additional components
-required to evaluate a concrete configuration value:
-
-* Tamaya loads all available +PropertySource+ instances. Hereby +PropertySource+ instances can be
-  ** Directly registered (using the mechanism defined by the current +ServiceContext+ implementation, by default
-     the Java +ServiceLoader+.
-  ** Provided by a registered instance of +PropertySourceProvider+.
-* All loaded property sources are _ordered based on each ordinal_, returned from +PropertySource.getOrdinal()+ as
-  an ordered chain of PropertySources, building up the ordered chain of +PropertySource+ instances used for raw
-  configuration value evaluation.
-* Tamaya loads all available +PropertyFilter+ instances. Hereby +PropertyFilter+ instances can be registered
-  by default using the Java +ServiceLoader+ API. The +PropertyFilter+ instances loaded are ordered based on the
-  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed.
-* Tamaya loads all available +PropertyConverter+ instances. Hereby +PropertyConverter+ instances can be registered
-  by default using the Java +ServiceLoader+ API. The +PropertyConverter+ instances loaded are ordered based on the
-  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed. It is
-  possible to register multiple converters for the same target type.
-
-=== Evaluating raw property values
-When evaluating a concrete configuration value for a given key, Tamaya iterates through this chain of registered
-PropertySources. Hereby the final value, by default, is determined by the last non-null value returned from a
-+PropertySource+.
-
-Since the ladder may not always be appropriate, e.g. when values should be combined instead of overridden, a
-instance of +PropertyValueCombinationPolicy+ can be registered, which allows to add more detailed behaviour how values
-are combined.
-
-Access to the complete configuration +Map+ is performing the same resolution and combination algorithm, but for all
-key/value pairs available.
-
-=== Filtering the raw properties:
-Each raw configuration value evaluated is filtered by the ordered filter chain, as long as there are any changes
-applied by any of the filters called. This ensures that also transitive replacements by filters are possible.
-If, after a configurable number of evaluation loops still values are changes during each loop, the filtering
-process is aborted, since a non-resolvable circular filter issue is assumed.
-
-The output is the final configuration value as type +String+.
-
-=== Applying type conversion:
-Finally, if the required target type, does not match +Java.lang.String+, all registered +PropertyConverter+
-instances targeting the corresponding target type are asked to convert the given (String-based) configuration
-entry to the required (non String) target type.
-
-Hereby the first _non-null_ value returned by a +PropertyConverter+ is used as the final typed configuration value and
-returned to the caller.
-
-=== Advanced Features
-Basically the bahaviour of Tamaya can be customized using the following mechanisms. Basically configuration can be
-provided using the following mechanism:
-
-* Registering additional (default) +PropertySource+ instances. Depending on their _ordinal value_ they
-  will override or extend existing configuration.
-* Registering additional (default) +PropertySourceProvider+ instances.that can provide multiple +PropertySource+
-  instances.
-
-Additionally Tamaya provides hooks for further adapting the internal workings:
-
-* Adapting the way how multiple entries with the same key are combined (+PropertyValueCombinationPolicy+). This
-  may be useful, if overriding is not the way how entries of the same key should be combined. An example, where
-  such an alternate scenario is useful are list entries, that combine all entries encountered to a collecting
-  list entry.
-* Adding additional support for new target types configurable by registering additional +PropertyConverter+
-  instances. This can be used for adding support for new types as well as for adding support for additional
-  formats.
-* Complex extensions may adapt the complete +ConfigurationContext+, using the +ConfigurationContextBuilder+ and
-  reapply the changed instance using +ConfigurationProvider.setConfigurationContext(ConfigurationContext)+.
-  This is one example how to react on dynamic changes detected on configuration files read.
-* Registering additional +PropertyFilter+ instances, that filter the configuration values extracted.
-* Registering an alternate +ServiceContext+ to support alternate runtime containers, e.g. a CDI container.
-* A combination of all above.
-
-Additionally instances of +ConfigOperator, ConfigQuery+ can be provided that provide additional functionality
-that should not be globally visible. It is recommended to provide them from a singleton accessor, hereby hiding
-the effective implementation classes.
-
-== Component Loading
-
-As mentioned the component loading of Tamaya can be adapted. By default the JDK +ServiceLoader+ API is used to determine a +ServiceContext+ implementation that should control
-Tamaya's overall component loading. If not found, a default implementation is registered, which relies on the
-Java +hava.util.ServiceLoader+ mechanism. This behaviour can be changed by implementing your own version
-of the +ServiceContext+ interface, annotating it with a +@Priority+ annotation and registering it using the
-+java.util.ServiceLoader+ mechanism.
-
-== Compatibility
-
-The Tamaya API is compatible with Java 7 and beyond.
-
-== Further Documentation
-
-Being here we recommend to have a look at the more detailed documentation of Tamaya's link:API.html[API] and
-link:SPI.html[SPI], and of its current available link:modules.html[modules].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/Requirements.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/Requirements.adoc b/docs/src/main/asciidoc/Requirements.adoc
deleted file mode 100644
index a59e802..0000000
--- a/docs/src/main/asciidoc/Requirements.adoc
+++ /dev/null
@@ -1,267 +0,0 @@
-Apache Tamaya -- Requirements
-=============================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya Requirements
-:revnumber: 1.0
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: OBF
-:author: Oliver B. Fischer
-:email: <pl...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-toc::[]
-<<<
-[[Requirements]]
-== Requirements
-=== Core Configuration Requirements
-==== General
-
-Tamaya must provide a Java SE API for accessing key/value based configuration. Hereby
-
-* +Configuration+ is modelled by an interface
-* +Configuration+ is organized as key/value pairs, using a subset of functionality present on +Map<String,String>+ as
-  follows:
-  ** access a value by key (+get+)
-  ** check if a value is present (+containsKey+)
-  ** get a set of all defined keys (+keySet+)
-  ** a configuration must be convertible to a +Map+, by calling +toMap()+
-  ** a configuration must provide access to its meta information.
-* +Configuration+ value access methods must never return null.
-* The API must support undefined values.
-* The API must support passing default values, to be returned if a value is undefined.
-* The API must allow to throw exceptions, when a value is undefined. Customized exceptions hereby should be supported.
-* Properties can be stored in the classpath, on a file or accessible by URL.
-* Properties can be stored minimally in properties, xml-properties or ini-format.
-
-
-==== Minimalistic Property Source
-
-For enabling easy integration of custom built configuration sources a minimalistic API/SPI must be defined, that
-
-* is modelled by an interface
-* is a minimal subset of +Configuration+ necessary to implement a configuration.
-* must be convertible to a "Configuration+.
-
-==== Extension Points
-
-For supporting more complex scenarios, +Configuration+
-
-* must implement the composite pattern, meaning new +Configuration+ instances can be created by combining existing
-  configurations.
-* must be adaptable, by creating a new configuration by applying a +UnaryOperator<COnfiguration>+ to it.
-* must be queryable, by passing a +ConfigQuery+ to an +Configuration+ instance.
-
-
-==== Type Safety
-
-Besides Strings +Configuration+ should also support the following types:
-
-* Primitive types
-* Wrapper types
-* All other types (by using a +PropertyAdapter+
-
-Hereby type conversion should be done as follows:
-
-. Check if for the given target type an explicit adapter is registered, if so, use the registered adapter.
-. If no adapter is present, check if the target type T has static methods called +T of(String), T getInstance(String), T valueOf(String), T from(String)+. If so
-use this method to create the non value of T.
-. Check if the target type has a constructor T(String). If so, try to instantiate an instance using the constructor.
-. Give up, throw a IllegalArgument exception.
-
-=== Configuration Fomats
-
-By default Tamaya support the following configuration formats:
-
-* .properties
-* .xml properties
-* .ini files
-
-It must be possible to add additional formats by registering them with the current +ServiceContext+.
-
-=== Mutability
-
-* Configurations can be mutable, mutability can be accessed as a property.
-* Configuration can be changed by collecting the changes into a +ConfigCHangeSet+ and apply this set to the
-  given +Configuration+ instance.
-* Besides the points above, +Configuration+ is immutable.
-
-=== Serializability and Immutability of Configuration
-
-* Configuration is modelled as a service. Therefore serialization may not work. This can be mitigated by adding
-  a freeze feature, where the know key/value pairs are extracted into an immutable and serializable form.
-
-=== Configuration Combination Requirements
-
-At least the following composition policies must be supported:
-
-* override: subsequent entries override existing ones.
-* aggregate-exception: key/values were added, in case of conflicts a +ConfigException+ must be thrown.
-* aggregate-ignore-duplicates: similar to union, whereas duplicates are ignored (leaving the initial value loaded).
-* aggregate-combine: conflicting entries were resolved by adding them both to the target configuration by
-  redefining partial keys.
-* custom: any function determining the key/values to be kept must be possible
-
-When combining configuration it must also be possible to override (file/classpath) configuration by
-
-* system properties.
-* command line arguments.
-
-
-=== Configuration Injection
-
-As metnioned configuration can be injected by passing a unconfigured instance of an annotated class to the
-+Configuration.configure+ static method:
-
-[source, java]
-.Configuring a POJO
-----------------------------------------------------
-MyPojo instance = new MyPojo();
-Configuration.configure(instance);
-----------------------------------------------------
-
-Hereby
-* It must be possible to define default values to be used, if no valid value is present.
-* It must be possible to define dynamic expressions, at least for default values.
-* The values configured can be reinjected, if the underlying configuration changes. This should also be the case
-  for final classes, such as Strings.
-* Reinjection should be controllable by an loading policy.
-* It must be possible to evaluate multiple keys, e.g. current keys, and as a backup deprecated keys
-  from former application releases.
-* It must be possible to evaluate multiple configurations.
-* The type conversion of the properties injected must be configurable, by defining a +PropertyAdapter+.
-* The value evaluated for a property (before type conversion) must be adaptable as well.
-* It must be possible to observe configuration changes.
-
-The following annotations must be present at least:
-
-* *@ConfiguredProperty* defining the key of the property to be evaluated. It takes an optional value, defining the
-  property name. It must be possible to add multiple annotations of this kind to define an order of evaluation
-  of possible keys.
-* *@DefaultValue* (optional) defines a default String value, to be used, when no other key is present.
-* *@WithConfig* (optional) defines the name of the configuration to be used. Similar to +@ConfiguredProperty+ multiple
-  configuration can be defined for lookup.
-* *@WithConfigOperator* allows to adapt the String value evaluated, *before* it is passed as input to injection or
-  type conversion.
-* *@WithPropertyAdapter* allows to adapt the conversion to the required target type, hereby overriding any default
-  conversion in place.
-* *@WithLoadPolicy* allows to define the policy for (re)injection of configured values.
-* *@ObservesConfigChange* allows to annotate methods that should be called on configuration changes.
-* *@DefaultAreas" allows to define a key prefix key to be used for the configured key, if no absolute key
-  is defined.
-
-=== Configuration Templates
-
-For type safe configuration clients should be able to define an interface and let it implement by the
-configuration system based on +Configuration+ available:
-
-* Clients define an interface and annotate it as required (similar to above)
-* The interface methods must not take any arguments
-* The configuration system can be called to return such an interface implementation.
-* The configuration system returns a proxy hereby providing type-safe access the values required.
-* Similar to configured types also templates support multiple values and custom adapters.
-* It is possible to listen on configuration changes for templates, so users of the templates
-  may react on configuration changes.
-
-The following snippet illustrates the requirements:
-
-[source, java]
-.Type Safe Configuration Template Example
-----------------------------------------------------
-public interface MyConfig {
-
-  @ConfiguredProperty("myCurrency")
-  @DefaultValue("CHF")
-  String getCurrency();
-
-  @ConfiguredProperty("myCurrencyRate")
-  Long getCurrencyRate();
-
-  @ConfigChange
-  default configChanged(ConfigChange event){
-     ...
-  }
-
-}
-----------------------------------------------------
-
-Templates can be accessed by calling the +Configuration.current(Class)+ method:
-
-[source, java]
-.Accessing a type safe Configuration Template
-----------------------------------------------------
-MyConfig config = Configuration.current(MyConfig.class);
-----------------------------------------------------
-
-[[RequirementsServer]]
-=== Server Configuration Requirements
-
-* Ensure Configuration can be transferred over the network easily.
-* Beside serializability text based formats for serialization in +XML+ and +JSON+ must be defined.
-* A management API must be defined, which allows to inspect the configuration in place, e.g. using
-   JMX or REST services.
-
-[[RequirementsJavaEE]]
-
-Java EE leads to the following requirements:
-
-* Configuration must be contextual, depending on the current runtime context (e.g. boot level, ear, war, ...).
-* Hereby contextual aspects can even exceed the levels described above, e.g. for SaaS scenarios.
-* Resources can be unloaded, e.g. wars, ears can be restarted.
-* The different contextual levels can also be used for overriding, e.g. application specific configuration
-may override ear or system configuration.
-* Configuration may be read from different sources (different classloaders, files, databases, remote locations).
-* Configuration may be read in different formats (deployment descriptors, +ServiceLoader+ configuration, alt-DD feature, ...)
-* JSF also knows the concept of stages.
-* Many SPI's of Java EE require the implementation of some well defined Java interface, so it would be useful if the
-   configuration solution supports easy implementation of such instances.
-* In general it would be useful to model the +Environment+ explicitly.
-* Configuration used as preferences is writable as well. This requires mutability to be modelled in way, without the
-   need of synchronization.
-* JNDI can be used for configuration as well.
-
-[[RequirementsMultitenancy]]
-
-Configurations made in the tenant or user layer override the default app configuration etc., so
-
-* It must be possible to structure Configuration in layers that can override/extend each other.
-* The current environment must be capable of mapping tenant, user and other aspects, so a corresponding configuration
-  (or layer) can be derived.
-
-[[RequirementsExtensions]]
-=== Extensions Requirements
-
-It must be possible to easily add additional functionality by implementing external functional interfaces operating
-on +Configuration+.
-
-* +UnaryOperator<Configuration>+ for converting into other version of +Configuration+.
-* +ConfigQuery<T>+ extending +Function<T, Configuration>+.
-
-[[RequirementsNonFunctional]]
-=== Non Functional Requirements
-THe following non-functional requirements must be met:
-
-* tbd
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/examples.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/examples.adoc b/docs/src/main/asciidoc/examples.adoc
deleted file mode 100644
index ab7e0de..0000000
--- a/docs/src/main/asciidoc/examples.adoc
+++ /dev/null
@@ -1,82 +0,0 @@
-Apache Tamaya -- Examples
-=========================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya Examples
-:revnumber: {tamayaVersion}
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-toc::[]
-
-== Tamaya Examples
-
-=== Minimal
-
-This example shows the basic functionality that is available when Tamaya is used without any further extensions.
-It shows how configuration can be added to the classpath and how it can be accessed.
-
-=== Simple PropertySource
-
-This example shows how to write and register an additional +PropertySource+ and +PropertySourceProvider+, which is
-the SPI to add your own configuration data and locations. For a more advanced example you may also have a look at
-the provided default metamodels, e.g. the simple metamodel (currently in the experimental part and not shipped with
-the current release).
-
-=== Resources
-
-This example shows how resources can be located using ANT-styled paths and this feature can help you to implement
-+PropertySourceProvider+ instances that provide configuration for a set of files/folders at a certain (searchable)
-location, as provided by the resource extension_.
-
-=== Resolver
-
-The resolver example defines a configuration file that illustrates the usage of placeholders that are resolved on
-configuration access, as provided by the _resolver extension_.
-
-=== Injection
-
-The injection sample shows how to inject configuration into a created object instance, or how to instantiate a proxied
-configuration template, which provides a type-safe configuration access mechanism. This functionality is provided
-by the _injection extension_. Hereby neither JSR 330 nor 299 are used, so it is pure and minimal SE based
-implementation.
-
-=== FileObserver
-
-This example shows how the +event extension+ can be used to automatically adapt the current configuration when
-the underlying configuration data is changing, e.g. when new configuration is added to a file folder, or removed or
-adapted.
-
-=== Builder
-
-This example shows how to build a +Configuration+ using a simple pure SE builder API as provided by the
-_builder extension_.
-
-=== Remote
-
-THe remote example shows a simple setup where parts of the +Configuration+ are read remotedly.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/index.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/index.adoc b/docs/src/main/asciidoc/index.adoc
deleted file mode 100644
index 2617d3e..0000000
--- a/docs/src/main/asciidoc/index.adoc
+++ /dev/null
@@ -1,204 +0,0 @@
-Apache Tamaya -- Documentation
-==============================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: November 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
-toc::[]
-
-<<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
-
-<<<
-
-== Introduction
-[[WhatIsTamaya]]
-=== What is Apache Tamaya?
-Tamaya is a very powerful yet flexible configuration solution. It's core is built based on a few simple concepts.
-Summarizing Tamaya provides you
-
-* a simple _key/value_ configuration model.
-* a uniform API for accessing _configuration_, regardless if you are running in a Java SE, Java EE or OSGI environment.
-  This API is capable of hiding all the complexities in configuration management, your developers only need to know,
-  where and in which format configuration can be added to the system.
-* A +ConfigurationBuilder+ allowing you to create a configuration completely manually and managing the configuration
-  lifecycle on your own.
-* a minimalistic implementation, which in the future might also be targeting Java ME environments.
-* a powerful SPI that allows you to extend/adapt Tamaya with all kind of additional mechanisms commonly used in
-  many use cases.
-* a bunch of modules that can be added to your classpath thus adding different functionality to your system as needed.
-
-
-=== What is Apache Tamaya NOT?
-
-Nevertheless there are a few things that are not part of Tamaya:
-
-* Tamaya comes as a modular framework, where you have to decide, which features make sense for you. So you have to do
-  a selection, which modules make sense.
-* Though Tamaya comes with a very minimalistic configuration scheme out-of-the-box, it does by default typically not
-  cover your enterprise requirements. Also here Tamaya offers hooks and examples showing how you can easily
-  replace your current configuration logic with Tamaya. So you must know how you want to organize configuration in
-  your enterprise context, such as supported file locations, formats, overriding and filter rules etc.
-
-
-[[WhatCanIDoWithTamaya]]
-=== And what can I do with Apache Tamaya?
-
-There are basically two main usage scenarios, which are synergetic:
-
-* In an enterprise context you can easily implement a configuration architecture for your whole company and deploy the
-  logic as an extension module. All application development teams in your company can then depend on this module (and the
-  basic Tamaya core implementation). As a result all applications/modules in your company follow the same configuration
-  policy, which makes it much more simpler to move people between your teams. Similarly additional tooling functionality
-  can help you to manage configuration on application as well as on enterprise level, e.g. providing command line or
-  REST support to access the supported configuration entries, types and values, configuration validation and more.
-* If you are writing an application, application component or library you can support configuration using Tamaya by
-  adding it as an optional dependency. If done so your users/customers can use Tamaya to connect their current enterprise
-  configuration infrastructure transparently to your code. As an example you can use Tamaya to read your default
-  configuration files, but since Tamaya is so easily extendable, customers can deploy an additional jar, which then
-  allows them to add their own configuration mechanisms such as databases, datagrids or REST services.
-
-
-[[WorkingGroup]]
-=== Working Group
-This work is being conducted as part of a community lead joint effort under the Apache Software Foundation. This
-specification is the result of the collaborative work of the members of the Tamaya Users Group and the community at
-large.
-
-=== Goals
-Configuration is a key feature in all kind of programming languages. Basically configuration is the parametrization of
-well defined aspects of a software product without having to recompile/rebuild the code. Summarizing configuration
-can affect basically every part of a system, which renders configuration to a real cross-cutting concern, usable in
-many facets.
-
-=== Targets
-Tamaya targets to support all general configuration aspects in a system, e.g.
-
-* application configuration
-  ** plugins
-  ** modules
-  ** components
-* Container configuration, e.g. of Java EE enabling portability and dynamic provisioning
-* Configuration of CDI (interceptors, decorators and alternatives)
-* Configuration of Bean Validation, JSF, web applications etc.
-* Configuration of instances within Java SE, e.g. by passing instances to a method that injects configured values,
-  and by providing accessors to evaluate current configuration values. This can be used explicitly or transparently
-  by client code.
-
-Since configuration is implemented and applied in various ways Tamaya will allow you to use
-
-* multiple configuration locations, including remote locations
-* multiple configuration formats, including custom formats
-* multiple configuration loading mechanisms, including custom mechanisms. By default reading the classpath, files und
-  URIs are supported by default.
-* type conversion
-* configuration filtering and property adapters
-* configuration of collections
-
-The Tamaya project consists of the following parts:
-
-* The link:API.html[API] is a complete SE based configuration API, that provides the minimum of functionality needed.
-  It is modelled in a extensible way and only requires a few kb. The main features supported by the link:API.html[] are:
-  ** Reading configuration as String/String key/value pairs
-  ** Reading configuration as type safe values, including type conversion.
-  ** Converting/mapping configuration using operators and queries.
-  ** An SPI providing abstractions for handling property sources, property filters and component lifecycle management.
-
-* The link:Core.html[Core] implements the link:API.html[API]. Basically with the core part (and the API) you are ready
-to go, but you may want to add additional extensions that provide more features that are very useful.
-* Extensions are additional libraries that you can add to your project setup. Most important features are:
-  ** Dynamic resolution of configured values.
-  ** Pattern based resource location
-  ** Configuration injection and configuration template support
-  ** Support for additional configuration formats
-  ** Collection Support
-  ** Prepared configuration metamodels
-  ** Integration with other frameworks as configuration consumer or producer.
-* Finally the *documentation* module provides comprehensive documentation on all features provided.
-
-
-=== Required Java version
-The API is based on Java SE 7.0 language features.
-
-
-== Where should I continue
-
-=== Further Documentation
-
-* If you want to have a deeper look at the API/SPI, we recommend the link:API.html[API documentation].
-* If you want to have an overview about the available modules, continue link:modules.html[here].
-* If you want to look to the numerous examples, continue link:examples.html[here].
-* If you are interested in the software design in place, continue link:HighLevelDesign.html[here].
-
-Finally
-* If you are interested in the collected requirements, continue link:Requirements.html[here].
-* If you are interested in the collected use cases, continue link:usecases.html[here].
-
-=== API Documentation
-
-Javadoc of the current API
-
-* link:API.html[General API Documentation] and link:../javadoc/api/index.html[API Javadoc]
-
-Javadoc of the current Core Implementation
-
-* link:Core.html[General Core Documentation] and link:../javadoc/core/index.html[Core Javadoc for Java7]
-
-
-=== Examples
-
-A comprehensive set of examples can be found link:../examples.html[here].



[04/11] incubator-tamaya git commit: Moved documentation to site part.

Posted by an...@apache.org.
Moved documentation to site part.


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/078d93b4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/078d93b4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/078d93b4

Branch: refs/heads/master
Commit: 078d93b49cabe4f62a62817d36d7f73a576d0517
Parents: b4c7ed2
Author: anatole <an...@apache.org>
Authored: Wed Mar 16 21:48:08 2016 +0100
Committer: anatole <an...@apache.org>
Committed: Wed Mar 16 21:48:08 2016 +0100

----------------------------------------------------------------------
 src/site/asciidoc/images/CoreDesign.png         | Bin 0 -> 43759 bytes
 .../asciidoc/misc/PossibleContributions.adoc    | 265 ++++++++
 src/site/asciidoc/userguide/API.adoc            | 659 +++++++++++++++++++
 src/site/asciidoc/userguide/Core.adoc           | 248 +++++++
 .../asciidoc/userguide/HighLevelDesign.adoc     | 209 ++++++
 src/site/asciidoc/userguide/Requirements.adoc   | 267 ++++++++
 src/site/asciidoc/userguide/examples.adoc       |  82 +++
 src/site/asciidoc/userguide/index.adoc          |  44 ++
 .../asciidoc/userguide/uc/combine-configs.adoc  |  14 +
 .../uc/context-dependent-configuration.adoc     |   7 +
 .../userguide/uc/dynamic-provisioning.adoc      |  18 +
 .../userguide/uc/external-configuration.adoc    |   6 +
 src/site/asciidoc/userguide/uc/formats.adoc     |   8 +
 src/site/asciidoc/userguide/uc/injection.adoc   |  31 +
 src/site/asciidoc/userguide/uc/java8.adoc       |  14 +
 src/site/asciidoc/userguide/uc/locations.adoc   |  10 +
 src/site/asciidoc/userguide/uc/management.adoc  |   7 +
 .../userguide/uc/minimal-propertysource.adoc    |   6 +
 .../userguide/uc/multiple-configurations.adoc   |  14 +
 .../userguide/uc/scannable-properties.adoc      |   4 +
 .../asciidoc/userguide/uc/service-context.adoc  |  15 +
 .../asciidoc/userguide/uc/simple-access.adoc    |  25 +
 .../userguide/uc/simple-property-access.adoc    |   9 +
 src/site/asciidoc/userguide/uc/templates.adoc   |  12 +
 .../userguide/uc/type-safe-properties.adoc      |  10 +
 .../userguide/uc/value-placeholders.adoc        |   8 +
 src/site/asciidoc/userguide/usecases.adoc       |  58 ++
 27 files changed, 2050 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/images/CoreDesign.png
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/images/CoreDesign.png b/src/site/asciidoc/images/CoreDesign.png
new file mode 100644
index 0000000..a84d8a6
Binary files /dev/null and b/src/site/asciidoc/images/CoreDesign.png differ

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/misc/PossibleContributions.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/misc/PossibleContributions.adoc b/src/site/asciidoc/misc/PossibleContributions.adoc
new file mode 100644
index 0000000..095a276
--- /dev/null
+++ b/src/site/asciidoc/misc/PossibleContributions.adoc
@@ -0,0 +1,265 @@
+Apache Tamaya - Possible Tasks
+==============================
+:name: Tamaya
+:rootpackage: org.apache.tamaya
+:title: Apache Tamaya
+:revnumber: 0.1-SNAPSHOT
+:revremark: Draft
+:revdate: October 2014
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: ATR
+:author: Anatole Tresch
+:email: <at...@gmail.com>
+:source-highlighter: coderay
+:website: http://tamaya.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+
+'''
+
+<<<
+
+-> add image : : https://raw.githubusercontent.com/JavaConfig/config-api/master/src/main/asciidoc/images/javaconfig.jpg[]
+
+toc::[]
+
+<<<
+:numbered!:
+-----------------------------------------------------------
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-----------------------------------------------------------
+
+:numbered:
+
+<<<
+
+== Introduction
+
+== What is Tamaya
+
+{name} is the Apache standard for flexible and powerful configuration. Objective is to provide flavors for
+Java SE, ME as well as to ship with powerful features for Java EE and Cloud Solutions. All functions provided
+is build on top of a small but very powerful, flexible and extendible API. This API is implemented by a core implementation,
+which then can be extended or adapted for use in different runtime scenarios, such as SE, ME, EE, Spring, OSGI
+and more. Similarly additional modules may be provided that help also existing solution to be plugged into
+{name}, so you can start right away using {name} without having to rebuild/change your existing application.
+
+
+=== Purpose of this Document
+
+The document should help to organize people and ideas around the Apache Tamaya Library. It list possible features,
+ideas and tasks that need to be done. Everybody can have a look at and see, where hos contribution and capabilities
+would fit best.
+
+
+== Main Features
+
+=== Metadata Model
+
+Currently +MetaInfo+ models metadata as a separate constuct. It has been shown that this leads to more complex
+handling when creating composites and makes the API overall more complex. The idea is to model metadata as simple
+key/value pairs, that are part of the provider/configuration data as well, but handled separately. Metadata hereby
+is identified by a starting '_' character in its key. For example refer to the following configuration properties:
+
+[source,listing]
+.Basic Properties
+----------------------------------------------------------------
+a.b.Foo=foo
+a.b.Bar=bar
+a.AnyOther=whatelse
+Something=none
+----------------------------------------------------------------
+
+Now we can model meta-data as follows:
+
+[source,listing]
+.Metadata Properties
+----------------------------------------------------------------
+[a.b].info=An area info
+[a.b.Foo].auth=role1,role2
+[a.b.Foo].encrypt=PGP
+[a.b.Foo].sensitive=true
+[].info=This is a test configuration example.
+----------------------------------------------------------------
+
+The above would model the following:
+
+* The area +a.b+ has the meta property +info+.
+* The entry +a.b.Foo+ has three meta properties +auth,encrypt+ and +sensitive+. These could be interpreted by a security
+  view and used to encrypt the values returned by the configuration instance, if not the current user has one of the
+  specified roles.
+* The last meta data defines an attribute +info+ for the whole provider/configuration (the root area).
+
+Given that the overall entries would be as follows:
+
+[source,listing]
+.Full Properties with Meta Properties
+----------------------------------------------------------------
+[a.b].info=An area info
+a.b.Foo=foo
+[a.b.Foo].auth=role1,role2
+[a.b.Foo].encrypt=PGP
+[a.b.Foo].sensitive=true
+a.b.Bar=bar
+[].info=This is a test configuration example.
+a.AnyOther=whatelse
+Something=none
+----------------------------------------------------------------
+
+The current +MetaInfo+ class could be adapted, so it is reading data from the underlying configuration/provider,
+instead of its own datastructure. This would make a later mapping of configuration and its metadata into DB table, JSON
+etc, much more easier.
+The providers on the other side may suppress any metadata from ordinary output, such
+as +toString()+, Similarly accessing metadata using the official config API (+get, getOrDefault, getAreas+ etc)
+should be disabled. The +MetaInfoBuilder+ must probably as well adapted or redesigned.
+
+
+
+=== Management Client
+
+A nice web-based client to manage configuration data would be nice as well. This also includes a UI for creating new
+configurations.
+
+=== Mapping Configuration to a Database
+
+A flexible mechanism should be implemented that allows the use of databases (SQL/JPA as well as non-SQL) for
+storing/retreiving/managing configuration:
+
+* JPA, Hibernate
+* MongoDB
+* ...
+
+
+=== Integration with Jigsaw
+
+Once Jigsaw is mature and in a usable (still early) stage, examples are to be created and tested, where OSGI is used as
+the basic runtime platform, e.g. Apache Felix, but as well others.
+
+== Distributed/Remote Configuration Support
+
+=== Configuration Distribution Policies
+
+Different configuration distribution policies should be defined any implemented, e.g. distributed cache, restful services,
+web services, EJB/RMI calls, asynchronous queues, publish/subsribe models, ...
+
+
+=== Preferences Support
+
+Write a +PreferencesFactory+ for +java.util.preferences+.
+
+
+== Third Party Integration
+
+=== Integration with Deltaspike Config
+
+Integration with Deltaspike Config should be implemented and discussed with Deltaspike guys.
+
+=== Integration with Spring
+
+A {name} module should be created that allows Spring to be used either as client or configuration provider.
+
+=== Integration with Jetty
+
+A {name} module should be created that allows a Jetty instance to be deployed and started that is (completely)
+configured based on configuration server.
+
+=== Integration with Tomcat
+
+A {name} module should be created that allows a Tomcat instance to be deployed and started that is (completely)
+configured based on configuration server.
+
+=== Configuration of Java EE
+
+In the Java EE area there would be several options:
+
+=== Configuration of Application Servers (administrative resources)
+
+It should be possible to start a application server instance remotely and configure all administrative resources and the
+deployments based on the configuration service, server to be considered maybe
+
+* Wildfly
+* IBM
+* Weblogic
+* Glassfish
+* Apache Geronimo
+
+==== Configuration of Bean Validation
+
+* Add configurable validators.
+* Configure bean validation based on configuration
+* ...
+
+=== JNDI Support
+
+Write a +JCA+ adapter to provide configuration data through JNDI.
+
+==== Configure JSF
+
+Use the JSF +XML Document+ event to completely configure JSF.
+
+==== Configure Web Services
+
+Provide a WebServiceProviderFactory that may be configured.
+
+==== Configure JPA
+
+Provide an implementation that allows configuration of persistence units. Talk with JPA EG people to see if we can
+get an SPI to hook in a stadardized way.
+
+==== Configure EJBs
+
+Provide an implementation that allows configuration of EJBs and MDBs:
+
+* Register beans
+* Unregister/disable beans
+* Intercept beans
+* Support Configuration Injection (in the worst case using a standard Interceptor, provide supporting artifacts to
+  help developers to achive this easily).
+* Talk with EE8 Umbrella EG (Bill Shanon, Linda DeMichels) on a feasible SPI for EE8, if possible join the EG.
+
+==== Configure ...
+
+Just think of any Java EE aspects that might be worth to be configured. If it can be done, e.g. by managing CDI managed
+resources, it might be easy. For others it is a good idea to discuss things with our matter of experts...
+
+== Special Goodies
+
+=== Maintenance Mode Servlet Filter
+
+Provide a servlet filter that is capable of switching to maintenance mode, based on configuration. Similarly also a forwarding
+servlet could be useful, wehere only request based on configuration are forwarded, other might be rejected or dropped
+as configured.
+
+=== Dynamic Camel Routes
+
+Provides dynamic (configurable) Camel routes, e.g. usable within ServiceMix or standalone.
+
+=== Dynamic CXF
+
+Provides dynamic (configurable) CXF adapters, e.g. usable within ServiceMix or standalone.
+
+=== Configurable Apache MQ
+
+Provides an implementation for configuring Apache MQ.
+
+=== Dynamic ...
+
+Interested to see what other ideas are around. Let us know!
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/API.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/API.adoc b/src/site/asciidoc/userguide/API.adoc
new file mode 100644
index 0000000..be3cc38
--- /dev/null
+++ b/src/site/asciidoc/userguide/API.adoc
@@ -0,0 +1,659 @@
+Apache Tamaya -- API
+====================
+:name: Tamaya
+:rootpackage: org.apache.tamaya
+:title: Apache Tamaya
+:revnumber: 0.1-SNAPSHOT
+:revremark: Incubator
+:revdate: January 2014
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: ATR
+:author: Anatole Tresch
+:email: <an...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+'''
+
+<<<
+
+image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
+
+toc::[]
+
+<<<
+:numbered!:
+-----------------------------------------------------------
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-----------------------------------------------------------
+
+:numbered:
+
+[[CoreDesign]]
+== The Tamaya Core Design
+Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
+that build the base of all the other mechanisms. As a starting point we recommend you read the corresponding
+link:CoreDesign.html[Core Design Documentation]
+
+[[API]]
+== The Tamaya API
+The API provides the artifacts as described in the link:CoreDesign.html[Core Design Documentation], which are:
+
+* A simple but complete SE *API* for accessing key/value based _Configuration_:
+  ** +Configuration+ hereby models configuration, the main interface of Tamaya. +Configuration+ provides
+     *** access to literal key/value pairs.
+     *** functional extension points (+with, query+) using a unary +ConfigOperator+ or
+         a function +ConfigurationQuery<T>+.
+  ** +ConfigurationProvider+ provides with +getConfiguration()+ the static entry point for accessing configuration.
+  ** +ConfigException+ defines a runtime exception for usage by the configuration system.
+  ** +TypeLiteral+ provides a possibility to type safely define the target type to be returned by a registered
+     +PropertyProvider+.
+  ** +PropertyConverter+, which defines conversion of configuration values (String) into any required target type.
+
+* Additionally the *SPI* provides:
+  ** _PropertySource:_ is the the SPI for adding configuration data. A +PropertySource+ hereby
+     *** is designed as a minimalistic interface that be implemented by any kind of data provider (local or remote)
+     *** provides single access for key/value pairs in raw format as String key/values only (+getPropertyValue+).
+     *** can optionally support scanning of its provided values, implementing +getProperties()+.
+  ** _PropertySourceProvider:_ allows to register multiple property sources dynamically, e.g. all config files found in
+     file system folder..
+  ** +ConfigurationProviderSpi+ defines the SPI that is used as a backing bean for the +ConfigurationProvider+
+     singleton.
+  ** +PropertyFilter+, which allows filtering of property values prior getting returned to the caller.
+  ** +ConfigurationContext+, which provides the container that contains the property sources and filters that form a
+     configuration.
+  ** +PropertyValueCombinationPolicy+ optionally can be registered to change the way how different key/value
+     pairs are combined to build up the final +Configuration+ passed over to the filters registered.
+  ** +ServiceContext+, which provides access to the components loaded, depending on the current runtime stack.
+  ** +ServiceContextManager+ provides static access to the +ServiceContext+ loaded.
+
+This is also reflected in the main packages of the API:
+
+* +org.apache.tamaya+ contains the main API abstractions used by users.
+* +org.apache.tamaya.spi+ contains the SPI interfaces to be implemented by implementations and the +ServiceContext+
+  mechanism.
+
+
+
+[[APIKeyValues]]
+=== Key/Value Pairs
+
+Basically configuration is a very generic concept. Therefore it should be modelled in a generic way. The most simple
+and most commonly used approach are simple literal key/value pairs. So the core building block of {name} are key/value pairs.
+You can think of a common +.properties+ file, e.g.
+
+[source,properties]
+.A simple properties file
+--------------------------------------------
+a.b.c=cVal
+a.b.c.1=cVal1
+a.b.c.2=cVal2
+a=aVal
+a.b=abVal
+a.b2=abVal
+--------------------------------------------
+
+Now you can use +java.util.Properties+ to read this file and access the corresponding properties, e.g.
+
+[source,properties]
+--------------------------------------------
+Properties props = new Properties();
+props.readProperties(...);
+String val = props.getProperty("a.b.c");
+val = props.getProperty("a.b.c.1");
+...
+--------------------------------------------
+
+
+==== Why Using Strings Only
+
+There are good reason to keep of non String-values as core storage representation of configuration. Mostly
+there are several huge advantages:
+
+* Strings are simple to understand
+* Strings are human readable and therefore easy to prove for correctness
+* Strings can easily be used within different language, different VMs, files or network communications.
+* Strings can easily be compared and manipulated
+* Strings can easily be searched, indexed and cached
+* It is very easy to provide Strings as configuration, which gives much flexibility for providing configuration in
+  production as well in testing.
+* and more...
+
+On the other side there are also disadvantages:
+
+* Strings are inherently not type safe, they do not provide validation out of the box for special types, such as
+numbers, dates etc.
+* In many cases you want to access configuration in a typesafe way avoiding conversion to the target types explicitly
+  throughout your code.
+* Strings are neither hierarchical nor multi-valued, so mapping hierarchical and collection structures requires some
+  extra efforts.
+
+Nevertheless most of these advantages can be mitigated easily, hereby still keeping all the benefits from above:
+
+* Adding type safe adapters on top of String allow to add any type easily, that can be directly mapped out of Strings.
+  This includes all common base types such as numbers, dates, time, but also timezones, formatting patterns and more.
+* Also multi-valued, complex and collection types can be defined as a corresponding +PropertyAdapter+ knows how to
+  parse and create the target instance required.
+* String s also can be used as references pointing to other locations and formats, where configuration is
+  accessible.
+
+
+[[API Configuration]]
+=== Configuration
+
++Configuration+ is the main API provided by Tamaya. It allows reading of single property values or the whole
+property map, but also supports type safe access:
+
+[source,java]
+.Interface Configuration
+--------------------------------------------
+public interface Configuration{
+    String get(String key);
+    String getOrDefault(String key, String value);
+    <T> T get(String key, Class<T> type);
+    <T> T getOrDefault(String key, Class<T> type, T defaultValue);
+    <T> T get(String key, TypeLiteral<T> type);
+    <T> T getOrDefault(String key, TypeLiteral<T> type, T defaultValue);
+    Map<String,String> getProperties();
+
+    // extension points
+    Configuration with(ConfigOperator operator);
+    <T> T query(ConfigQuery<T> query);
+
+    ConfigurationContext getContext();
+}
+--------------------------------------------
+
+Hereby
+
+* +<T> T get(String, Class<T>)+ provides type safe accessors for all basic wrapper types of the JDK.
+* +with, query+ provide the extension points for adding additional functionality.
+* +getProperties()+ provides access to all key/values, whereas entries from non scannable property sources may not
+  be included.
+* +getOrDefault+ allows to pass default values as needed, returned if the requested value evaluated to +null+.
+
+The class +TypeLiteral+ is basically similar to the same class provided with CDI:
+
+[source,java]
+--------------------------------------------
+public class TypeLiteral<T> implements Serializable {
+
+    [...]
+
+    protected TypeLiteral(Type type) {
+        this.type = type;
+    }
+
+    protected TypeLiteral() { }
+
+    public static <L> TypeLiteral<L> of(Type type){...}
+    public static <L> TypeLiteral<L> of(Class<L> type){...}
+
+    public final Type getType() {...}
+    public final Class<T> getRawType() {...}
+
+    public static Type getGenericInterfaceTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
+    public static Type getTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
+
+    [...]
+}
+--------------------------------------------
+
+Instances of +Configuration+ can be accessed from the +ConfigurationProvider+ singleton:
+
+[source,java]
+.Accessing Configuration
+--------------------------------------------
+Configuration config = ConfigurationProvider.getConfiguration();
+--------------------------------------------
+
+Hereby the singleton is backed up by an instance of +ConfigurationProviderSpi+.
+
+
+[[PropertyConverter]]
+==== Property Converters
+
+As illustrated in the previous section, +Configuration+ also to access non String types. Nevertheless internally
+all properties are strictly modelled as pure Strings only, so non String types must be derived by converting the
+configured String values into the required target type. This is achieved with the help of +PropertyConverters+:
+
+[source,java]
+--------------------------------------------
+public interface PropertyConverter<T>{
+    T convert(String value, ConversionContext context);
+    //X TODO Collection<String> getSupportedFormats();
+}
+--------------------------------------------
+
+The +ConversionContext+ contains additional meta-information for the accessed key, inclusing the key'a name and
+additional metadata.
+
++PropertyConverter+ instances can be implemented and registered by default using the +ServiceLoader+. Hereby
+a configuration String value is passed to all registered converters for a type in order of their annotated +@Priority+
+value. The first non-null result of a converter is then returned as the current configuration value.
+
+Access to converters is provided by the current +ConfigurationContext+, which is accessible from
+the +ConfigurationProvider+ singleton.
+
+
+[[ExtensionPoints]]
+=== Extension Points
+
+We are well aware of the fact that this library will not be able to cover all kinds of use cases. Therefore
+we have added functional extension mechanisms to +Configuration+ that were used in other areas of the Java eco-system
+as well:
+
+* +with(ConfigOperator operator)+ allows to pass arbitrary unary functions that take and return instances of
+  +Configuration+. Operators can be used to cover use cases such as filtering, configuration views, security
+  interception and more.
+* +query(ConfigQuery query)+ allows to apply a function returning any kind of result based on a
+  +Configuration+ instance. Queries are used for accessing/deriving any kind of data based on of a +Configuration+
+  instance, e.g. accessing a +Set<String>+ of root keys present.
+
+Both interfaces hereby are functional interfaces. Because of backward compatibility with Java 7 we did not use
++UnaryOperator+ and +Function+ from the +java.util.function+ package. Nevertheless usage is similar, so you can
+use Lambdas and method references in Java 8:
+
+[source,java]
+.Applying a +ConfigurationQuery+ using a method reference
+--------------------------------------------
+ConfigSecurity securityContext = ConfigurationProvider.getConfiguration().query(ConfigSecurity::targetSecurityContext);
+--------------------------------------------
+
+NOTE: +ConfigSecurity+ is an arbitrary class only for demonstration purposes.
+
+
+Operator calls basically look similar:
+
+[source,java]
+.Applying a +ConfigurationOperator+ using a lambda expression:
+--------------------------------------------
+Configuration secured = ConfigurationProvider.getConfiguration()
+                           .with((config) ->
+                                 config.get("foo")!=null?;
+                                 FooFilter.apply(config):
+                                 config);
+--------------------------------------------
+
+
+[[ConfigException]]
+=== ConfigException
+
+The class +ConfigException+ models the base *runtime* exception used by the configuration system.
+
+
+[[SPI]]
+== SPI
+
+[[PropertySource]]
+=== Interface PropertySource
+
+We have seen that constraining configuration aspects to simple literal key/value pairs provides us with an easy to
+understand, generic, flexible, yet expendable mechanism. Looking at the Java language features a +java.util.Map<String,
+String>+ and +java.util.Properties+ basically model these aspects out of the box.
+
+Though there are advantages in using these types as a model, there are some severe drawbacks, notably implementation
+of these types is far not trivial and the collection API offers additional functionality not useful when aiming
+for modelling simple property sources.
+
+To render an implementation of a custom +PropertySource+ as convenient as possible only the following methods were
+identified to be necessary:
+
+[source,java]
+--------------------------------------------
+public interface PropertySource{
+      int getOrdinal();
+      String getName();
+      String get(String key);
+      boolean isScannable();
+      Map<String, String> getProperties();
+}
+--------------------------------------------
+
+Hereby
+
+* +get+ looks similar to the methods on +Map+. It may return +null+ in case no such entry is available.
+* +getProperties+ allows to extract all property data to a +Map<String,String>+. Other methods like +containsKey,
+  keySet+ as well as streaming operations then can be applied on the returned +Map+ instance.
+* But not in all scenarios a property source may be scannable, e.g. when looking up keys is very inefficient, it
+  may not make sense to iterator over all keys to collect the corresponding properties.
+  This can be evaluated by calling +isScannable()+. If a +PropertySource+ is defined as non scannable accesses to
+  +getProperties()+ may not return all key/value pairs that would be available when accessed directly using the
+  +String get(String)+ method.
+* +getOrdinal()+ defines the ordinal of the +PropertySource+. Property sources are managed in an ordered chain, where
+  property sources with higher ordinals override the ones with lower ordinals. If ordinal are the same, the natural
+  ordering of the fulloy qualified class names of the property source implementations are used. The reason for
+  not using +@Priority+ annotations is that property sources can define dynamically their ordinals, e.g. based on
+  a property contained with the configuration itself.
+* Finally +getName()+ returns a (unique) name that identifies the +PropertySource+ within the current
+  +ConfigurationContext+.
+
+This interface can be implemented by any kind of logic. It could be a simple in memory map, a distributed configuration
+provided by a data grid, a database, the JNDI tree or other resources. Or it can be a combination of multiple
+property sources with additional combination/aggregation rules in place.
+
++PropertySources+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
+ active +ServiceContext+.
+
+
+[[PropertySourceProvider]]
+==== Interface PropertySourceProvider
+
+Instances of this type can be used to register multiple instances of +PropertySource+.
+
+[source,java]
+--------------------------------------------
+// @FunctionalInterface in Java 8
+public interface PropertySourceProvider{
+    Collection<PropertySource> getPropertySources();
+}
+--------------------------------------------
+
+This allows to evaluate the property sources to be read/that are available dynamically. All property sources
+are read out and added to the current chain of +PropertySource+ instances within the current +ConfigurationContext+,
+refer also to [[ConfigurationContext]].
+
++PropertySourceProviders+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the
+current active +ServiceContext+.
+
+
+[[PropertyFilter]]
+==== Interface PropertyFilter
+
+Also +PropertyFilters+ can be added to a +Configuration+. They are evaluated before a +Configuration+ instance is
+passed to the user. Filters can hereby used for multiple purposes, such as
+
+* resolving placeholders
+* masking sensitive entries, such as passwords
+* constraining visibility based on the current active user
+* ...
+
++PropertyFilters+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
+active +ServiceContext+. Similar to property sources they are managed in an ordered filter chain, based on the
+applied +@Priority+ annotations.
+
+A +PropertyFilter+ is defined as follows:
+
+[source,java]
+--------------------------------------------
+// Functional Interface
+public interface PropertyFilter{
+    String filterProperty(String value, FilterContext context);
+}
+--------------------------------------------
+
+Hereby:
+
+* returning +null+ will remove the key from the final result
+* non null values are used as the current value of the key. Nevertheless for resolving multi-step dependencies
+  filter evaluation has to be continued as long as filters are still changing some of the values to be returned.
+  To prevent possible endless loops after a defined number of loops evaluation is stopped.
+* +FilterContext+ provides additional metdata, inclusing the key accessed, which is useful in many use cases.
+
+This method is called each time a single entry is accessed, and for each property in a full properties result.
+
+
+[[PropertyValueCombinationPolicy]]
+==== Interface PropertyValueCombinationPolicy
+
+This interface can be implemented optional. It can be used to adapt the way how property key/value pairs are combined to
+build up the final Configuration to be passed over to the +PropertyFilters+. The default implementation is just
+overriding all values read before with the new value read. Nevertheless for collections and other use cases it is
+often useful to have alternate combination policies in place, e.g. for combining values from previous sources with the
+new value. Finally looking at the method's signature it may be surprising to find a +Map+ for the value. The basic
+value hereby is defined by +currentValue.get(key)+. Nevertheless the +Map+ may also contain additional meta entries,
+which may be considered by the policy implementation.
+
+[source,java]
+--------------------------------------------
+// FunctionalInterface
+public interface PropertyValueCombinationPolicy{
+
+   PropertyValueCombinationPolicy DEFAULT_OVERRIDING_COLLECTOR =
+     new PropertyValueCombinationPolicy(){
+       @Override
+       public Map<String,String> collect(Map<String,String> currentValue, String key,
+                                         PropertySource propertySource) {
+           PropertyValue value = propertySource.get(key);
+           return value!=null?value.getConfigEntries():currentValue;
+       }
+   };
+
+   String collect(Map<String,String> currentValue currentValue, String key,
+                  PropertySource propertySource);
+
+}
+--------------------------------------------
+
+
+[[ConfigurationContext]]
+==== The Configuration Context
+
+A +Configuration+ is basically based on a so called +ConfigurationContext+, which is
+accessible from +Configuration.getContext()+:
+
+[source,java]
+.Accessing the current +ConfigurationContext+
+--------------------------------------------
+ConfigurationContext context = ConfigurationProvider.getConfiguration().getContext();
+--------------------------------------------
+
+The +ConfigurationContext+ provides access to the internal building blocks that determine the final +Configuration+:
+
+* +PropertySources+ registered (including the PropertySources provided from +PropertySourceProvider+ instances).
+* +PropertyFilters+ registered, which filter values before they are returned to the client
+* +PropertyConverter+ instances that provide conversion functionality for converting String values to any other types.
+* the current +PropertyValueCombinationPolicy+ that determines how property values from different PropertySources are
+  combined to the final property value returned to the client.
+
+
+[[Mutability]]
+==== Changing the current Configuration Context
+
+By default the +ConfigurationContext+ is not mutable once it is created. In many cases mutability is also not needed
+or even not wanted. Nevertheless there are use cases where the current +ConfigurationContext+ (and
+consequently +Configuration+) must be adapted:
+
+* New configuration files where detected in a folder observed by Tamaya.
+* Remote configuration, e.g. stored in a database or alternate ways has been updated and the current system must
+  be adapted to these changes.
+* The overall configuration context is manually setup by the application logic.
+* Within unit testing alternate configuration setup should be setup to meet the configuration requirements of the
+  tests executed.
+
+In such cases the +ConfigurationContext+ must be mutable, meaning it must be possible:
+
+* to add or remove +PropertySource+ instances
+* to add or remove +PropertyFilter+ instances
+* to add or remove +PropertyConverter+ instances
+* to redefine the current +PropertyValueCombinationPolicy+ instances.
+
+This can be achieved by obtaining an instance of +ConfigurationContextBuilder+. Instances of this builder can be
+accessed either
+
+* from the current +ConfigurationContext+, hereby returning a builder instance preinitialized with the values from the
+  current +ConfigurationContext+
+* from the current +ConfigurationProvider+ singleton.
+
+[source,java]
+.Accessing a +ConfigurationContextBuilder+
+--------------------------------------------
+ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext().toBuilder();
+ConfigurationContextBuilder emptyContextBuilder = ConfigurationProvider.getConfigurationContextBuilder();
+--------------------------------------------
+
+With such a builder a new +ConfigurationContext+ can be created and then applied:
+
+[source,java]
+.Creating and applying a new +ConfigurationContext+
+--------------------------------------------
+ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext()
+                                                           .toBuilder();
+ConfigurationContext context = preinitializedContextBuilder.addPropertySources(new MyPropertySource())
+                                                           .addPropertyFilter(new MyFilter()).build();
+ConfigurationProvider.setConfigurationContext(context);
+--------------------------------------------
+
+Hereby +ConfigurationProvider.setConfigurationContext(context)+ can throw an +UnsupportedOperationException+.
+This can be checked by calling the method +boolean ConfigurationProvider.isConfigurationContextSettable()+.
+
+
+[[ConfigurationProviderSpi]]
+==== Implementing and Managing Configuration
+
+One of the most important SPI in Tamaya if the +ConfigurationProviderSpi+ interface, which is backing up the
++ConfigurationProvider+ singleton. Implementing this class allows
+
+* to fully determine the implementation class for +Configuration+
+* to manage the current +ConfigurationContext+ in the scope and granularity required.
+* to provide access to the right +Configuration/ConfigurationContext+ based on the current runtime context.
+* Performing changes as set with the current +ConfigurationContextBuilder+.
+
+
+[[ServiceContext]]
+==== The ServiceContext
+
+The +ServiceContext+ is also a very important SPI, which allows to define how components are loaded in Tamaya.
+The +ServiceContext+ hereby defines access methods to obtain components, whereas itself it is available from the
++ServiceContextManager+ singleton:
+
+[source,java]
+.Accessing the +ServiceContext+
+--------------------------------------------
+ServiceContext serviceContext = ServiceContextManager.getServiceContext();
+
+public interface ServiceContext{
+    int ordinal();
+    <T> T getService(Class<T> serviceType);
+    <T> List<T> getServices(Class<T> serviceType);
+}
+--------------------------------------------
+
+With the +ServiceContext+ a component can be accessed in two different ways:
+
+. access as as a single property. Hereby the registered instances (if multiple) are sorted by priority and then finally
+  the most significant instance is returned only.
+. access all items given its type. This will return (by default) all  instances loadedable from the current
+  runtime context, ordered by priority, hereby the most significant components added first.
+
+
+## Examples
+### Accessing Configuration
+
+_Configuration_ is obtained from the ConfigurationProvider singleton:
+
+[source,java]
+.Accessing +Configuration+
+--------------------------------------------
+Configuration config = ConfigurationProvider.getConfiguration();
+--------------------------------------------
+
+Many users in a SE context will probably only work with _Configuration_, since it offers all functionality
+needed for basic configuration with a very lean memory and runtime footprint. In Java 7 access to the keys is
+very similar to *Map<String,String>*, whereas in Java 8 additionally usage of _Optional_ is supported:
+
+[source,java]
+--------------------------------------------
+Configuration config = ConfigurationProvider.getConfiguration();
+String myKey = config.get("myKey");                         // may return null
+int myLimit = config.get("all.size.limit", int.class);
+--------------------------------------------
+
+
+### Environment and System Properties
+
+By default environment and system properties are included into the _Configuration_. So we can access the current
+_PROMPT_ environment variable as follows:
+
+[source,java]
+--------------------------------------------
+String prompt = ConfigurationProvider.getConfiguration().get("PROMPT");
+--------------------------------------------
+
+Similary the system properties are directly applied to the _Configuration_. So if we pass the following system
+property to our JVM:
+
+[source,java]
+--------------------------------------------
+java ... -Duse.my.system.answer=yes
+--------------------------------------------
+
+we can access it as follows:
+
+[source,java]
+--------------------------------------------
+boolean useMySystem = ConfigurationProvider.getConfiguration().get("use.my.system.answer", boolean.class);
+--------------------------------------------
+
+
+### Adding a Custom Configuration
+
+Adding a classpath based configuration is simply as well: just implement an according _PropertySource_. With the
+_tamaya-spi-support_ module you just have to perform a few steps:
+
+. Define a PropertySource as follows:
+
+[source,java]
+--------------------------------------------
+  public class MyPropertySource extends PropertiesResourcePropertySource{
+
+    public MyPropertySource(){
+        super(ClassLoader.getSystemClassLoader().getResource("META-INF/cfg/myconfig.properties"), DEFAULT_ORDINAL);
+    }
+  }
+--------------------------------------------
+
+Then register +MyPropertySource+ using the +ServiceLoader+ by adding the following file:
+
+[source,listing]
+--------------------------------------------
+META-INF/services/org.apache.tamaya.spi.PropertySource
+--------------------------------------------
+
+...containing the following line:
+
+[source,listing]
+--------------------------------------------
+com.mypackage.MyPropertySource
+--------------------------------------------
+
+
+[[APIImpl]]
+== API Implementation
+
+The API is implemented by the Tamaya _Core_module. Refer to the link:Core.html[Core documentation] for
+further details.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/Core.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/Core.adoc b/src/site/asciidoc/userguide/Core.adoc
new file mode 100644
index 0000000..f45356e
--- /dev/null
+++ b/src/site/asciidoc/userguide/Core.adoc
@@ -0,0 +1,248 @@
+Apache Tamaya -- Core
+=====================
+:name: Tamaya
+:rootpackage: org.apache.tamaya.core
+:title: Apache Tamaya Core
+:revnumber: 0.1.1
+:revremark: Incubator
+:revdate: March 2015
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: ATR
+:author: Anatole Tresch
+:email: <an...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+'''
+
+<<<
+image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
+
+toc::[]
+
+<<<
+:numbered!:
+<<<
+[[Core]]
+== Tamaya Core
+=== Overview
+
+Tamaya Core provides an implementation of the link:API.html[Tamaya Configuration API] and adds additional functionality
+and building blocks for supporting SPI implementations.
+
+Tamaya Core contains the following artifacts:
+
+* Implementations of +Configuration, ConfigurationContext, ConfigurationContextBuilder+ ConfigurationProviderSpi+
+* A +java.util.ServiceLoader+ based +ServiceContext+ implementation. Hereby it implements component priorization based
+  on the +@Priority+ annotations.
+* A PropertyConverterManager+ that loads and stores references to all the preconfigured +PropertyConverter+ instances
+hereby providing type conversion for all important types.
+* A simple default configuration setup using the current classpath and an optional staging variable.
+* It collects all +PropertySource+ and +PropertySourceProvider+ instances registered with the +ServiceLoader+ and
+  registers them in the global +ConfigurationContext+
+* It provides a +ConfigurationContextBuilder+ and allows changing the current +ConfigurationContext+.
+
+The overall size of the library is very small. All required components are implemented and registered, so basically the
+Core module is a complete configuration solution. Nevertheless it is also very minimalistic, but fortunately is flexible
+enough to be extended/accommodated with additional features as needed, such as
+
+* placeholder and resolution mechanisms
+* dynamic resource path lookup, e.g. with ant styled patterns
+* configuration injection and configuration templates
+* abstraction for reusable formats
+* integration with other existing solutions
+* configuration and configuration isolation targeting Java EE
+* dynamic configuration and configuration updates
+* Configuration management extensions
+* remote configuration
+* and more
+
+For details about the extension modules available and  their functionality refer to the link:modules.html[extension user guide].
+
+
+[[CorePropertyConverters]]
+=== Default PropertyConverters in Core
+
+As mentioned the Core module delivers several default +PropertyConverter+ instances out of the box. Find below the
+listing of converters automatically registered with the Core module:
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Target Type_             |_Class Name_              |_Supported Formats_
+|java.math.BigDecimal    |BigDecimalConverter     |1.2345, 0xFF
+|java.math.BigInteger    |BigIntegerConverter     |0xFF, 1234
+|java.lang.Boolean       |BooleanConverter        |true, false, T, F, 1 ,0
+|java.lang.Byte          |ByteConverter           |0xFF, MIN_VALUE, MAX_VALUE, 123
+|java.lang.Character     |CharConverter           |0xFF, 'a', 'H', 123
+|java.lang.Class         |ClassConverter          |<fully qualified class name>
+|java.util.Currency      |CurrencyConverter       |CHF, 123
+|java.lang.Double        |DoubleConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
+|_Enums_                 |EnumConverter           |<Enum item name>
+|java.lang.Float         |FloatConverter          |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
+|java.lang.Integer       |IntegerConverter        |1, 0xD3, MIN_VALUE, MAX_VALUE
+|LocalDate               |LocalDateConverter      |<Date as defined by LocalDate.parse(String)
+|LocalTime               |LocalTimeConverter      |<Time as defined by LocalTime.parse(String)
+|LocalDateTime           |LocalDateTimeConverter  |<LocalDateTime as defined by LocalDateTime.parse(String)>
+|java.lang.Long          |LongConverter           |1, 0xD3, MIN_VALUE, MAX_VALUE
+|java.lang.Number        |NumberConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY
+|java.lang.Short         |ShortConverter          |1, 0xD3, MIN_VALUE, MAX_VALUE
+|java.net.URI            |URIConverter            |http://localhost:2020/testresource?api=true
+|java.net.URL            |URLConverter            |http://localhost:2020/testresource?api=true
+|ZoneId                  |ZoneIdConverter         |Europe/Zurich
+|=======
+
+
+=== Registering PropertyConverters
+
+Additional +PropertyConverters+ can be implemented easily. It is recommended to register then using the +java.util.ServiceLoader+,
+meaning you add a file under +META-INF/service/org.apache.tamaya.spi.PropertyConverter+ containing the fully qualified
+class names of the converters to be registered (one line per each).
+
+Alternatively you can also use a +ConfigurationContextBuilder+ to add additional converters programmatically.
+
+NOTE: API Implementations can be read-only thus not allowing adding additional converters programmatically.
+
+
+[[ComponentLoadingAndPriorization]]
+=== Component Loading and Priorization
+
+Tamaya Core in general loads all components using the +java.util.ServiceLoader+ mechanism. This means that new components
+must be registered by adding a file under +META-INF/service/<myInterfaceName>+ containing the fully qualified
+implementation class names of the components to be registered (one line per each).
+The +ServiceLoader+ itself does not provide any functionality for overriding or ordering of components. Tamaya
+core adds this functionality by the possibility to add +@Priority+ annotations to the components registered.
+By default, and if no annotation is added +0+ is used as priority. Hereby higher values preceed lower values, meaning
+
+* if a singleton component is accessed from the current +ServiceContext+ the component with the higher value
+  effectively _overrides/replaces_ any component with lower values.
+* if a collection of components is obtained from the +ServiceContext+ the components are ordered in order, where the
+  ones with higher priority are before components with lower priority.
+* if priorities match Tamaya Core additionally sorts them using the simple class name. This ensures that ordering is
+  still defined and predictable in almost all scenarios.
+
+
+[[RegisteringPropertySources]]
+=== Registering Property Sources
+
+PropertySources that provide configuration properties are registered as ordinary components as described in the previous
+section. Nevertheless the priority is not managed based on +@Priority+ annotations, but based on an explicit
++int getOrdinal()+ method. This allows to define the ordinal/priority of a +PropertySource+ explicitly. This is useful
+due to several reasons:
+
+* it allows to define the ordinal as part of the configuration, thus allowing new overriding property sources being
+  added easily.
+* it allows to define the ordinal dynamically, e.g. based on the configuration location, the time of loading or
+  whatever may be appropriate.
+
+
+[[CorePropertySources]]
+== Configuration Setup in Core
+
+Tamaya Core provides a minimal configuration setting, that allows you to configure SE
+applications already easily. Basically configuration is built  up by default as follows:
+
+. Read environment properties and add them prefixed with +env.+
+. Read all files found at +META-INF/javaconfiguration.properties+
+
+
+=== Overview of Registered Default Property Sources and Providers
+
+The Tamaya Core implementation provides a couple of default +PropertySource+ implementations, which are automatically
+registered. They are all in the package +org.apache.tamaya.core.propertysource+ and
++org.apache.tamaya.core.provider+:
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Type_                                   |_Class Name_                   |_Ordinal Used_
+|META-INF/javaconfiguration.properties    |JavaConfigurationProvider      |0
+|Environment Properties                   |EnvironmentPropertySource      |300
+|System Properties                        |SystemPropertySource           |400
+|=======
+
+
+=== Abstract Class PropertiesFilePropertySource
+
+The abstract class +PropertiesFilePropertySource+ can be used for implementing a +PropertySource+ based on a +URL+
+instance that points to a +.properites+ file. It requires a +URL+ to be passed on the constructor:
+
+[source,java]
+--------------------------------------------
+PropertiesFilePropertySource(URL url);
+--------------------------------------------
+
+
+==== Abstract Class PropertiesPropertySource
+
+The abstract class +PropertiesPropertySource+ can be used for implementing a +PropertySource+ based on a +Properties+
+instance. It requires a +PropertySource+ to be passed on the constructor:
+
+[source,java]
+--------------------------------------------
+PropertiesPropertySource(Properties properties);
+--------------------------------------------
+
+
+==== Abstract Class BasePropertySource
+
+The abstract class +BasePropertySource+ can be used for implementing custom +PropertySource+ classes. It requires only
+one method to implemented:
+
+[source,java]
+.Implementing a PropertySource using BasePropertySource
+--------------------------------------------
+public class MyPropertySource extends BasePropertySource{
+
+    public String getName(){
+        // return a unique name for the property source, e.g. based on the underlying resource. This name also
+        // allows to access the property source later
+    }
+
+    public Map<String, String> getProperties(){
+        // Get a map with all properties provided by this property source
+        // If the property source is not scannable, the map returned may be empty.
+        // In the ladder case the +boolean isScannale()+ must be overridden, since
+        // by default property sources are assumed to be scannable.
+    }
+
+}
+--------------------------------------------
+
+By default the ordinal of the property sources will be 1000, unless the key +tamaya.ordinal+ asdefined in
++PropertySource.TAMAYA_ORDINAL+ is present in the current +PropertySource+. Of course it is also possible to override
+the inherited +protected void initializeOrdinal(final int defaultOrdinal)+, or directly +int getOrdinal()+.
+
+
+[[CorePropertySourceProviders]]
+=== Default PropertySourceProvider in Core
+
+With +org.apache.tamaya.core.provider.JavaConfigurationProvider+ there is also a default +PropertySourceProvider+
+present that loads all .properties files found at +META-INF/javaconfiguration.properties+.
+
+
+[[Extensions]]
+== Adding Extensions
+
+The Core module only implements the link:API.html[API]. Many users require/wish additional functionality from a
+configuration system. Fortunately there are numerous extensions available that add further functionality.
+Loading extensions hereby is trivial: you only are required to add the corresponding dependency to the classpath.
+
+For detailed information on the extensions available refer to the link:../extensions/index.html[extensions documentation].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/HighLevelDesign.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/HighLevelDesign.adoc b/src/site/asciidoc/userguide/HighLevelDesign.adoc
new file mode 100644
index 0000000..a0c255b
--- /dev/null
+++ b/src/site/asciidoc/userguide/HighLevelDesign.adoc
@@ -0,0 +1,209 @@
+Apache Tamaya -- High Level Design
+==================================
+:name: Tamaya
+:rootpackage: org.apache.tamaya
+:title: Apache Tamaya
+:revnumber: 0.1-SNAPSHOT
+:revremark: Incubator
+:revdate: January 2014
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: ATR
+:author: Anatole Tresch
+:email: <an...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+'''
+
+<<<
+
+image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
+
+toc::[]
+
+<<<
+:numbered!:
+-----------------------------------------------------------
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-----------------------------------------------------------
+
+:numbered:
+
+[[Core Concepts]]
+== The Tamaya Core Parts
+Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
+that build the base of all the other mechanisms:
+
+The *API* (package +org.apache.tamaya+) provides
+
+* A simple but complete SE *API* for accessing key/value based _Configuration_:
+  ** +Configuration+ hereby models configuration, the main interface of Tamaya, providing key/value pairs as raw
+     (String-based) key/value pairs, allowing also access to typed values.
+  ** +ConfigurationProvider+ provides the static entry point for accessing configuration.
+
+The *SPI* (package +org.apache.tamaya.spi+) provides:
+  ** A simple minimalistic model for configuration data, called _PropertySource_.
+  ** Several extension points for adding additional configuration property sources or adapting the internal workings
+     of the overall system.
+  ** A +ServiceContext / ServiceContextManager+ that controls the loading of the components in Tamaya. This allows to
+     adapt the behaviour depending on the runtime environment in use, e.g. a Java standalone application, an OSGI
+     container or a Java EE application server.
+
+Tamaya *Modules* finally allow to add additional functionality to customize your configuration solution with the
+functionality you want. E.g. modules are providing features such as
+
+* Configuration _injection_
+* _Dynamic placeholders_ and resolution mechanism for configuration values
+* Abstractions for reusable _configuration formats_
+* Dynamic configuration updates and change events
+* Support for OSGI/Java EE Classloading
+* A configuration server/client
+* and more...
+
+
+== How Tamaya organizes Configuration
+=== Overview
+
+All the mentioned artifacts are used to organize configuration in a higly flexible and extendable way. Hereby the
++PropertySource+ is the key artifact. In general Tamaya organizes Configuration as follows:
+
+image::CoreDesign.png[]
+
+Key abstraction hereby is the +ConfigurationContext+, which basically
+
+* an ordered chain of +PropertySource+ instances. This chain is used to evaluate raw configuration values.
+* a set of +PropertyFilter+ instances that filter the raw values evaluated from the property source chain.
+* a set of +PropertyConverter+ that convert String values into typed values when needed.
+
+In most standalone use cases only one +ConfigurationContext+ will be active at a time. But in more complex scenarios,
+such as Java EE also multiple contexts could be active that are active depending on the current runtime context
+(e.g. attached to the corresponding classloader(s)). These aspects are basically handled by the
++ConfigurationProvider+ and its corresponding SPIs.
+
+=== Loading the current _ConfigurationContext_
+
+The +ConfigurationContext+ is the core of Tamaya. It manages all configuration sources and additional components
+required to evaluate a concrete configuration value:
+
+* Tamaya loads all available +PropertySource+ instances. Hereby +PropertySource+ instances can be
+  ** Directly registered (using the mechanism defined by the current +ServiceContext+ implementation, by default
+     the Java +ServiceLoader+.
+  ** Provided by a registered instance of +PropertySourceProvider+.
+* All loaded property sources are _ordered based on each ordinal_, returned from +PropertySource.getOrdinal()+ as
+  an ordered chain of PropertySources, building up the ordered chain of +PropertySource+ instances used for raw
+  configuration value evaluation.
+* Tamaya loads all available +PropertyFilter+ instances. Hereby +PropertyFilter+ instances can be registered
+  by default using the Java +ServiceLoader+ API. The +PropertyFilter+ instances loaded are ordered based on the
+  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed.
+* Tamaya loads all available +PropertyConverter+ instances. Hereby +PropertyConverter+ instances can be registered
+  by default using the Java +ServiceLoader+ API. The +PropertyConverter+ instances loaded are ordered based on the
+  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed. It is
+  possible to register multiple converters for the same target type.
+
+=== Evaluating raw property values
+When evaluating a concrete configuration value for a given key, Tamaya iterates through this chain of registered
+PropertySources. Hereby the final value, by default, is determined by the last non-null value returned from a
++PropertySource+.
+
+Since the ladder may not always be appropriate, e.g. when values should be combined instead of overridden, a
+instance of +PropertyValueCombinationPolicy+ can be registered, which allows to add more detailed behaviour how values
+are combined.
+
+Access to the complete configuration +Map+ is performing the same resolution and combination algorithm, but for all
+key/value pairs available.
+
+=== Filtering the raw properties:
+Each raw configuration value evaluated is filtered by the ordered filter chain, as long as there are any changes
+applied by any of the filters called. This ensures that also transitive replacements by filters are possible.
+If, after a configurable number of evaluation loops still values are changes during each loop, the filtering
+process is aborted, since a non-resolvable circular filter issue is assumed.
+
+The output is the final configuration value as type +String+.
+
+=== Applying type conversion:
+Finally, if the required target type, does not match +Java.lang.String+, all registered +PropertyConverter+
+instances targeting the corresponding target type are asked to convert the given (String-based) configuration
+entry to the required (non String) target type.
+
+Hereby the first _non-null_ value returned by a +PropertyConverter+ is used as the final typed configuration value and
+returned to the caller.
+
+=== Advanced Features
+Basically the bahaviour of Tamaya can be customized using the following mechanisms. Basically configuration can be
+provided using the following mechanism:
+
+* Registering additional (default) +PropertySource+ instances. Depending on their _ordinal value_ they
+  will override or extend existing configuration.
+* Registering additional (default) +PropertySourceProvider+ instances.that can provide multiple +PropertySource+
+  instances.
+
+Additionally Tamaya provides hooks for further adapting the internal workings:
+
+* Adapting the way how multiple entries with the same key are combined (+PropertyValueCombinationPolicy+). This
+  may be useful, if overriding is not the way how entries of the same key should be combined. An example, where
+  such an alternate scenario is useful are list entries, that combine all entries encountered to a collecting
+  list entry.
+* Adding additional support for new target types configurable by registering additional +PropertyConverter+
+  instances. This can be used for adding support for new types as well as for adding support for additional
+  formats.
+* Complex extensions may adapt the complete +ConfigurationContext+, using the +ConfigurationContextBuilder+ and
+  reapply the changed instance using +ConfigurationProvider.setConfigurationContext(ConfigurationContext)+.
+  This is one example how to react on dynamic changes detected on configuration files read.
+* Registering additional +PropertyFilter+ instances, that filter the configuration values extracted.
+* Registering an alternate +ServiceContext+ to support alternate runtime containers, e.g. a CDI container.
+* A combination of all above.
+
+Additionally instances of +ConfigOperator, ConfigQuery+ can be provided that provide additional functionality
+that should not be globally visible. It is recommended to provide them from a singleton accessor, hereby hiding
+the effective implementation classes.
+
+== Component Loading
+
+As mentioned the component loading of Tamaya can be adapted. By default the JDK +ServiceLoader+ API is used to determine a +ServiceContext+ implementation that should control
+Tamaya's overall component loading. If not found, a default implementation is registered, which relies on the
+Java +hava.util.ServiceLoader+ mechanism. This behaviour can be changed by implementing your own version
+of the +ServiceContext+ interface, annotating it with a +@Priority+ annotation and registering it using the
++java.util.ServiceLoader+ mechanism.
+
+== Compatibility
+
+The Tamaya API is compatible with Java 7 and beyond.
+
+== Further Documentation
+
+Being here we recommend to have a look at the more detailed documentation of Tamaya's link:API.html[API] and
+link:SPI.html[SPI], and of its current available link:modules.html[modules].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/Requirements.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/Requirements.adoc b/src/site/asciidoc/userguide/Requirements.adoc
new file mode 100644
index 0000000..a59e802
--- /dev/null
+++ b/src/site/asciidoc/userguide/Requirements.adoc
@@ -0,0 +1,267 @@
+Apache Tamaya -- Requirements
+=============================
+:name: Tamaya
+:rootpackage: org.apache.tamaya
+:title: Apache Tamaya Requirements
+:revnumber: 1.0
+:revremark: Incubator
+:revdate: March 2015
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: OBF
+:author: Oliver B. Fischer
+:email: <pl...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+toc::[]
+<<<
+[[Requirements]]
+== Requirements
+=== Core Configuration Requirements
+==== General
+
+Tamaya must provide a Java SE API for accessing key/value based configuration. Hereby
+
+* +Configuration+ is modelled by an interface
+* +Configuration+ is organized as key/value pairs, using a subset of functionality present on +Map<String,String>+ as
+  follows:
+  ** access a value by key (+get+)
+  ** check if a value is present (+containsKey+)
+  ** get a set of all defined keys (+keySet+)
+  ** a configuration must be convertible to a +Map+, by calling +toMap()+
+  ** a configuration must provide access to its meta information.
+* +Configuration+ value access methods must never return null.
+* The API must support undefined values.
+* The API must support passing default values, to be returned if a value is undefined.
+* The API must allow to throw exceptions, when a value is undefined. Customized exceptions hereby should be supported.
+* Properties can be stored in the classpath, on a file or accessible by URL.
+* Properties can be stored minimally in properties, xml-properties or ini-format.
+
+
+==== Minimalistic Property Source
+
+For enabling easy integration of custom built configuration sources a minimalistic API/SPI must be defined, that
+
+* is modelled by an interface
+* is a minimal subset of +Configuration+ necessary to implement a configuration.
+* must be convertible to a "Configuration+.
+
+==== Extension Points
+
+For supporting more complex scenarios, +Configuration+
+
+* must implement the composite pattern, meaning new +Configuration+ instances can be created by combining existing
+  configurations.
+* must be adaptable, by creating a new configuration by applying a +UnaryOperator<COnfiguration>+ to it.
+* must be queryable, by passing a +ConfigQuery+ to an +Configuration+ instance.
+
+
+==== Type Safety
+
+Besides Strings +Configuration+ should also support the following types:
+
+* Primitive types
+* Wrapper types
+* All other types (by using a +PropertyAdapter+
+
+Hereby type conversion should be done as follows:
+
+. Check if for the given target type an explicit adapter is registered, if so, use the registered adapter.
+. If no adapter is present, check if the target type T has static methods called +T of(String), T getInstance(String), T valueOf(String), T from(String)+. If so
+use this method to create the non value of T.
+. Check if the target type has a constructor T(String). If so, try to instantiate an instance using the constructor.
+. Give up, throw a IllegalArgument exception.
+
+=== Configuration Fomats
+
+By default Tamaya support the following configuration formats:
+
+* .properties
+* .xml properties
+* .ini files
+
+It must be possible to add additional formats by registering them with the current +ServiceContext+.
+
+=== Mutability
+
+* Configurations can be mutable, mutability can be accessed as a property.
+* Configuration can be changed by collecting the changes into a +ConfigCHangeSet+ and apply this set to the
+  given +Configuration+ instance.
+* Besides the points above, +Configuration+ is immutable.
+
+=== Serializability and Immutability of Configuration
+
+* Configuration is modelled as a service. Therefore serialization may not work. This can be mitigated by adding
+  a freeze feature, where the know key/value pairs are extracted into an immutable and serializable form.
+
+=== Configuration Combination Requirements
+
+At least the following composition policies must be supported:
+
+* override: subsequent entries override existing ones.
+* aggregate-exception: key/values were added, in case of conflicts a +ConfigException+ must be thrown.
+* aggregate-ignore-duplicates: similar to union, whereas duplicates are ignored (leaving the initial value loaded).
+* aggregate-combine: conflicting entries were resolved by adding them both to the target configuration by
+  redefining partial keys.
+* custom: any function determining the key/values to be kept must be possible
+
+When combining configuration it must also be possible to override (file/classpath) configuration by
+
+* system properties.
+* command line arguments.
+
+
+=== Configuration Injection
+
+As metnioned configuration can be injected by passing a unconfigured instance of an annotated class to the
++Configuration.configure+ static method:
+
+[source, java]
+.Configuring a POJO
+----------------------------------------------------
+MyPojo instance = new MyPojo();
+Configuration.configure(instance);
+----------------------------------------------------
+
+Hereby
+* It must be possible to define default values to be used, if no valid value is present.
+* It must be possible to define dynamic expressions, at least for default values.
+* The values configured can be reinjected, if the underlying configuration changes. This should also be the case
+  for final classes, such as Strings.
+* Reinjection should be controllable by an loading policy.
+* It must be possible to evaluate multiple keys, e.g. current keys, and as a backup deprecated keys
+  from former application releases.
+* It must be possible to evaluate multiple configurations.
+* The type conversion of the properties injected must be configurable, by defining a +PropertyAdapter+.
+* The value evaluated for a property (before type conversion) must be adaptable as well.
+* It must be possible to observe configuration changes.
+
+The following annotations must be present at least:
+
+* *@ConfiguredProperty* defining the key of the property to be evaluated. It takes an optional value, defining the
+  property name. It must be possible to add multiple annotations of this kind to define an order of evaluation
+  of possible keys.
+* *@DefaultValue* (optional) defines a default String value, to be used, when no other key is present.
+* *@WithConfig* (optional) defines the name of the configuration to be used. Similar to +@ConfiguredProperty+ multiple
+  configuration can be defined for lookup.
+* *@WithConfigOperator* allows to adapt the String value evaluated, *before* it is passed as input to injection or
+  type conversion.
+* *@WithPropertyAdapter* allows to adapt the conversion to the required target type, hereby overriding any default
+  conversion in place.
+* *@WithLoadPolicy* allows to define the policy for (re)injection of configured values.
+* *@ObservesConfigChange* allows to annotate methods that should be called on configuration changes.
+* *@DefaultAreas" allows to define a key prefix key to be used for the configured key, if no absolute key
+  is defined.
+
+=== Configuration Templates
+
+For type safe configuration clients should be able to define an interface and let it implement by the
+configuration system based on +Configuration+ available:
+
+* Clients define an interface and annotate it as required (similar to above)
+* The interface methods must not take any arguments
+* The configuration system can be called to return such an interface implementation.
+* The configuration system returns a proxy hereby providing type-safe access the values required.
+* Similar to configured types also templates support multiple values and custom adapters.
+* It is possible to listen on configuration changes for templates, so users of the templates
+  may react on configuration changes.
+
+The following snippet illustrates the requirements:
+
+[source, java]
+.Type Safe Configuration Template Example
+----------------------------------------------------
+public interface MyConfig {
+
+  @ConfiguredProperty("myCurrency")
+  @DefaultValue("CHF")
+  String getCurrency();
+
+  @ConfiguredProperty("myCurrencyRate")
+  Long getCurrencyRate();
+
+  @ConfigChange
+  default configChanged(ConfigChange event){
+     ...
+  }
+
+}
+----------------------------------------------------
+
+Templates can be accessed by calling the +Configuration.current(Class)+ method:
+
+[source, java]
+.Accessing a type safe Configuration Template
+----------------------------------------------------
+MyConfig config = Configuration.current(MyConfig.class);
+----------------------------------------------------
+
+[[RequirementsServer]]
+=== Server Configuration Requirements
+
+* Ensure Configuration can be transferred over the network easily.
+* Beside serializability text based formats for serialization in +XML+ and +JSON+ must be defined.
+* A management API must be defined, which allows to inspect the configuration in place, e.g. using
+   JMX or REST services.
+
+[[RequirementsJavaEE]]
+
+Java EE leads to the following requirements:
+
+* Configuration must be contextual, depending on the current runtime context (e.g. boot level, ear, war, ...).
+* Hereby contextual aspects can even exceed the levels described above, e.g. for SaaS scenarios.
+* Resources can be unloaded, e.g. wars, ears can be restarted.
+* The different contextual levels can also be used for overriding, e.g. application specific configuration
+may override ear or system configuration.
+* Configuration may be read from different sources (different classloaders, files, databases, remote locations).
+* Configuration may be read in different formats (deployment descriptors, +ServiceLoader+ configuration, alt-DD feature, ...)
+* JSF also knows the concept of stages.
+* Many SPI's of Java EE require the implementation of some well defined Java interface, so it would be useful if the
+   configuration solution supports easy implementation of such instances.
+* In general it would be useful to model the +Environment+ explicitly.
+* Configuration used as preferences is writable as well. This requires mutability to be modelled in way, without the
+   need of synchronization.
+* JNDI can be used for configuration as well.
+
+[[RequirementsMultitenancy]]
+
+Configurations made in the tenant or user layer override the default app configuration etc., so
+
+* It must be possible to structure Configuration in layers that can override/extend each other.
+* The current environment must be capable of mapping tenant, user and other aspects, so a corresponding configuration
+  (or layer) can be derived.
+
+[[RequirementsExtensions]]
+=== Extensions Requirements
+
+It must be possible to easily add additional functionality by implementing external functional interfaces operating
+on +Configuration+.
+
+* +UnaryOperator<Configuration>+ for converting into other version of +Configuration+.
+* +ConfigQuery<T>+ extending +Function<T, Configuration>+.
+
+[[RequirementsNonFunctional]]
+=== Non Functional Requirements
+THe following non-functional requirements must be met:
+
+* tbd
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/examples.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/examples.adoc b/src/site/asciidoc/userguide/examples.adoc
new file mode 100644
index 0000000..ab7e0de
--- /dev/null
+++ b/src/site/asciidoc/userguide/examples.adoc
@@ -0,0 +1,82 @@
+Apache Tamaya -- Examples
+=========================
+:name: Tamaya
+:rootpackage: org.apache.tamaya
+:title: Apache Tamaya Examples
+:revnumber: {tamayaVersion}
+:revremark: Incubator
+:revdate: March 2015
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: ATR
+:author: Anatole Tresch
+:email: <an...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+toc::[]
+
+== Tamaya Examples
+
+=== Minimal
+
+This example shows the basic functionality that is available when Tamaya is used without any further extensions.
+It shows how configuration can be added to the classpath and how it can be accessed.
+
+=== Simple PropertySource
+
+This example shows how to write and register an additional +PropertySource+ and +PropertySourceProvider+, which is
+the SPI to add your own configuration data and locations. For a more advanced example you may also have a look at
+the provided default metamodels, e.g. the simple metamodel (currently in the experimental part and not shipped with
+the current release).
+
+=== Resources
+
+This example shows how resources can be located using ANT-styled paths and this feature can help you to implement
++PropertySourceProvider+ instances that provide configuration for a set of files/folders at a certain (searchable)
+location, as provided by the resource extension_.
+
+=== Resolver
+
+The resolver example defines a configuration file that illustrates the usage of placeholders that are resolved on
+configuration access, as provided by the _resolver extension_.
+
+=== Injection
+
+The injection sample shows how to inject configuration into a created object instance, or how to instantiate a proxied
+configuration template, which provides a type-safe configuration access mechanism. This functionality is provided
+by the _injection extension_. Hereby neither JSR 330 nor 299 are used, so it is pure and minimal SE based
+implementation.
+
+=== FileObserver
+
+This example shows how the +event extension+ can be used to automatically adapt the current configuration when
+the underlying configuration data is changing, e.g. when new configuration is added to a file folder, or removed or
+adapted.
+
+=== Builder
+
+This example shows how to build a +Configuration+ using a simple pure SE builder API as provided by the
+_builder extension_.
+
+=== Remote
+
+THe remote example shows a simple setup where parts of the +Configuration+ are read remotedly.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/index.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/index.adoc b/src/site/asciidoc/userguide/index.adoc
new file mode 100644
index 0000000..897477c
--- /dev/null
+++ b/src/site/asciidoc/userguide/index.adoc
@@ -0,0 +1,44 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+Apache Tamaya -- User Guide
+===========================
+:title: Apache Tamaya User Guide
+:authorinitials: ATR
+:author: Anatole Tresch
+:email: <an...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:encoding: UTF-8
+
+This user guide contains detailed documentation on Tamaya's architecture, design and core API. Also included are
+references to additional project documentation such as use cases and derived requirements.
+
+== General Project Documentation
+
+* link:usecases.html[Use Cases]
+* link:Requirements.html[Requirements]
+
+== Architecture, Design and Core API
+
+* link:HighLevelDesign.html[High Level Design]
+* link:API.html[Core API design documentation]
+* link:Core.html[Core implementation design documentation]
+
+== Examples
+
+Find link:examples.html[here] also an overview of Tamaya's example projects.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/combine-configs.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/combine-configs.adoc b/src/site/asciidoc/userguide/uc/combine-configs.adoc
new file mode 100644
index 0000000..2d83ab7
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/combine-configs.adoc
@@ -0,0 +1,14 @@
+=== Combine Configurations
+
+Users want to be able to combine different configurations to a new configuration instance.
+Hereby the resulting configuration can be
+
+* a union of both, ignoring duplicates (and optionally log them)
+* a union of both, duplicates are ignored
+* a union of both, conflicts are thrown as ConfigException
+* an intersection of both, containing only keys present and equal in both configurations
+* an arbitrary mapping or filter, modelled by an +CombinationPolicy+, which basically can be modelled
+  as +BiFunction<String, String, String>+, hereby
+  ** a result of +null+ will remove the key
+  ** any other result will use the value returned as final value of the combination.
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc b/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc
new file mode 100644
index 0000000..737232f
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc
@@ -0,0 +1,7 @@
+=== Context Dependent Configuration
+
+In multi tenancy setups or complex systems a hierarchical/graph model of contexts for configurations is required, or different runtime contexts are executed in parallel
+within the same VN. What sounds normal for EE also may be the case for pure SE environments:
+
+* Users want to be able to model different layers of runtime context
+* Users want to identiofy the current layer, so configuration used may be adapted.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc b/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc
new file mode 100644
index 0000000..1629914
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc
@@ -0,0 +1,18 @@
+=== Dynamic Provisioning (UC8)
+
+In Cloud Computing, especially the PaaS and SaaS areas a typical use case would be that an application (or server)
+is deployed, configured and started dynamically. Typically things are controlled by some "active controller components",
+which are capable of
+
+* creating new nodes (using IaaS services)
+* deploying and starting the required runtime platform , e.g. as part of a PaaS solution.
+* deploying and starting the application modules.
+
+All these steps require some kind of configuration. As of today required files are often created on the target node
+before the systems are started, using proprietary formats and mechanism. Similarly accessing the configuration in place
+may require examining the file system or using again proprietary management functions. Of course, a configuration
+solution should not try to solve that, but it can provide a significant bunch of functionality useful in such scenarios:
+
+* provide remote capabilities for configuration
+* allow configuration to be updated remotely.
+* allow client code to listen for configuration changes and react as needed.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/external-configuration.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/external-configuration.adoc b/src/site/asciidoc/userguide/uc/external-configuration.adoc
new file mode 100644
index 0000000..ea2e687
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/external-configuration.adoc
@@ -0,0 +1,6 @@
+=== External Configuration
+
+Users want to be able to replace, override, extend or adapt any parts or all of an existing configuration from
+external sources.
+This also must be the case for multi-context environments, where the context identifiers are
+the only way to link to the correct remote configuration.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/formats.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/formats.adoc b/src/site/asciidoc/userguide/uc/formats.adoc
new file mode 100644
index 0000000..a5a1bf7
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/formats.adoc
@@ -0,0 +1,8 @@
+=== Configuration Formats
+
+Users want to be able to use the format they prefer.
+
+* properties, xml-properties and ini-format should be supported by default
+* Other/custom formats should be easily addable by registering or providing the format on configuration evaluation (read).
+* When possible Tamaya should figure out which format to be used and how the InputStream should be correctly
+  interpreted.



[08/11] incubator-tamaya git commit: Moved all docs to site part. Removed some of the file hierarchies for getting things work.

Posted by an...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/uc/value-placeholders.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/value-placeholders.adoc b/src/site/asciidoc/userguide/uc/value-placeholders.adoc
deleted file mode 100644
index 57857a8..0000000
--- a/src/site/asciidoc/userguide/uc/value-placeholders.adoc
+++ /dev/null
@@ -1,8 +0,0 @@
-=== Value Placeholders
-
-Users just want to to be able to add placeholders to the values of configuration (not the keys). The mechanisms for
-resolving the placeholders hereby should be not constraint to one single lanmguage like EL. Instead of different
-replacement strategies should be selectable, e.g. by prefixing an expression with the name of the resolver that
-should do the work (eg +"blabla ${env:HOME} using Java version ${sys:java.version}."+.
-This allows resolution mechanism to be isolated easily and also allows to use simpler mechanisms, if no more complex
-ones like EL are required. This is especially useful to deal with low resource environment like ME.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide/usecases.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/usecases.adoc b/src/site/asciidoc/userguide/usecases.adoc
deleted file mode 100644
index fa6b8df..0000000
--- a/src/site/asciidoc/userguide/usecases.adoc
+++ /dev/null
@@ -1,58 +0,0 @@
-= Apache Tamaya -- Use Cases
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: November 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: OBF
-:author: Oliver B. Fischer
-:email: <pl...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-toc::[]
-
-
-== Use Cases
-
-include::src/site/asciidoc/userguide/uc/simple-access.adoc[]
-include::src/site/asciidoc/userguide/uc/simple-property-access.adoc[]
-include::src/site/asciidoc/userguide/uc/value-placeholders.adoc[]
-include::src/site/asciidoc/userguide/uc/type-safe-properties.adoc[]
-include::src/site/asciidoc/userguide/uc/templates.adoc[]
-include::src/site/asciidoc/userguide/uc/java8.adoc[]
-include::src/site/asciidoc/userguide/uc/locations.adoc[]
-include::src/site/asciidoc/userguide/uc/formats.adoc[]
-include::src/site/asciidoc/userguide/uc/multiple-configurations.adoc[]
-include::src/site/asciidoc/userguide/uc/external-configuration.adoc[]
-include::src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc[]
-include::src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc[]
-include::src/site/asciidoc/userguide/uc/minimal-propertysource.adoc[]
-include::src/site/asciidoc/userguide/uc/scannable-properties.adoc[]
-include::src/site/asciidoc/userguide/uc/combine-configs.adoc[]
-include::src/site/asciidoc/userguide/uc/management.adoc[]
-include::src/site/asciidoc/userguide/uc/service-context.adoc[]
-include::src/site/asciidoc/userguide/uc/injection.adoc[]
-
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/src/site/markdown/index.md b/src/site/markdown/index.md
index 238ad58..01b504f 100644
--- a/src/site/markdown/index.md
+++ b/src/site/markdown/index.md
@@ -16,10 +16,10 @@ powerful environment model and a flexible SPI.
 
 ## Documentation
 
-* [Use Cases](userguide/usecases.html)
-* [High Level Design](userguide/HighLevelDesign.html)
-* [API](userguide/API.html)
-* [Extensions](extensions/index.html)
+* [Use Cases](usecases.html)
+* [High Level Design](HighLevelDesign.html)
+* [API](API.html)
+* [Extensions](extensions.html)
 
 ---
 
@@ -27,10 +27,10 @@ powerful environment model and a flexible SPI.
 
 Using Apache Tamaya is simple:
 
-1. Add `org.apache.tamaya:tamaya-core:${{project.version}}` to your dependencies.
+1. Add `org.apache.tamaya:tamaya-core:{tamaya-version}` to your dependencies.
 2. Add your config to `META-INF/javaconfiguration.properties`
 3. Access your configuration by `ConfigurationProvider.getConfiguration()` and use it.
-4. Look at the [extension modules](extensions/index.html) to customize your setup!
+4. Look at the [extension modules](extensions.html) to customize your setup!
 5. Enjoy!
 
 
@@ -41,9 +41,7 @@ writing similar code again and again in each of our projects. Sometimes in a sim
 different, but certainly with high coupling to your configuration backends. Given your code is reused or integrated
 some how, or deployed by some customers, struggling starts: not supported backends, different policies, missing
 combination and validation mechanisms and so on. Tamaya solves all this by defining a common API and backend SPI.
-Your code is decoupled from the configuratoin backend. There is no difference if you are running on your dev box
-or in a clustered Docker environment in production, your code stays the same! There is no difference if you are writing
-some small component or a complete product solution, your API to your configuration data stays the same! Once you
-use Tamaya you will ask yourself why this did not exist before...
+Your code is decoupled from the configuratoin backend. There is no difference if your code is deployed on your dev box
+or in a clustered Docker environment in production, it stays the same!
 
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index aab4821..d01c133 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -40,8 +40,8 @@ under the License.
 
         <menu name="Documentation">
             <item name="Quickstart" href="quickstart.html"/>
-            <item name="User Guide" href="userguide/index.html"/>
-            <item name="Extension Guide" href="extensions/index.html"/>
+            <item name="User Guide" href="userguide.html"/>
+            <item name="Extension Guide" href="extensions.html"/>
             <item name="${project.version} JavaDoc" target="" href="apidocs/index.html"/>
         </menu>
 
@@ -49,7 +49,7 @@ under the License.
             <item name="Sources" href="source.html"/>
             <item name="Community" href="community.html"/>
             <item name="Issues" href="https://issues.apache.org/jira/browse/TAMAYA" target="_blank"/>
-            <item name="Development Guide" href="devguide/index.html"/>
+            <item name="Development Guide" href="devguide.html"/>
             <item name="Release Guide" href="release-guide.html"/>
         </menu>
 


[07/11] incubator-tamaya git commit: Updated docs, added texts to front page.

Posted by an...@apache.org.
Updated docs, added texts to front page.


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/f0806423
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/f0806423
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/f0806423

Branch: refs/heads/master
Commit: f0806423c7e3eb35e4f58da5baa6543f4c6c07ab
Parents: 3854cc2
Author: anatole <an...@apache.org>
Authored: Wed Mar 16 22:51:38 2016 +0100
Committer: anatole <an...@apache.org>
Committed: Wed Mar 16 22:51:38 2016 +0100

----------------------------------------------------------------------
 src/site/asciidoc/userguide/API.adoc            | 25 ---------------
 src/site/asciidoc/userguide/Core.adoc           | 10 +++---
 .../asciidoc/userguide/HighLevelDesign.adoc     | 25 +--------------
 src/site/markdown/index.md                      | 32 ++++++++++++++++----
 src/site/site.xml                               |  2 +-
 5 files changed, 32 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/f0806423/src/site/asciidoc/userguide/API.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/API.adoc b/src/site/asciidoc/userguide/API.adoc
index be3cc38..b79790e 100644
--- a/src/site/asciidoc/userguide/API.adoc
+++ b/src/site/asciidoc/userguide/API.adoc
@@ -35,33 +35,8 @@ Apache Tamaya -- API
 '''
 
 <<<
-
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
 toc::[]
-
 <<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
 
 [[CoreDesign]]
 == The Tamaya Core Design

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/f0806423/src/site/asciidoc/userguide/Core.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/Core.adoc b/src/site/asciidoc/userguide/Core.adoc
index f45356e..b7a66b4 100644
--- a/src/site/asciidoc/userguide/Core.adoc
+++ b/src/site/asciidoc/userguide/Core.adoc
@@ -1,5 +1,5 @@
-Apache Tamaya -- Core
-=====================
+Apache Tamaya -- Core Implementation
+====================================
 :name: Tamaya
 :rootpackage: org.apache.tamaya.core
 :title: Apache Tamaya Core
@@ -35,15 +35,13 @@ Apache Tamaya -- Core
 '''
 
 <<<
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
 
 toc::[]
 
 <<<
-:numbered!:
-<<<
+
 [[Core]]
-== Tamaya Core
+== Tamaya Core Implementation
 === Overview
 
 Tamaya Core provides an implementation of the link:API.html[Tamaya Configuration API] and adds additional functionality

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/f0806423/src/site/asciidoc/userguide/HighLevelDesign.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/HighLevelDesign.adoc b/src/site/asciidoc/userguide/HighLevelDesign.adoc
index a0c255b..0f10890 100644
--- a/src/site/asciidoc/userguide/HighLevelDesign.adoc
+++ b/src/site/asciidoc/userguide/HighLevelDesign.adoc
@@ -36,32 +36,9 @@ Apache Tamaya -- High Level Design
 
 <<<
 
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
 toc::[]
 
 <<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
 
 [[Core Concepts]]
 == The Tamaya Core Parts
@@ -101,7 +78,7 @@ functionality you want. E.g. modules are providing features such as
 All the mentioned artifacts are used to organize configuration in a higly flexible and extendable way. Hereby the
 +PropertySource+ is the key artifact. In general Tamaya organizes Configuration as follows:
 
-image::CoreDesign.png[]
+image::../images/CoreDesign.png[]
 
 Key abstraction hereby is the +ConfigurationContext+, which basically
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/f0806423/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/src/site/markdown/index.md b/src/site/markdown/index.md
index 9ce5bc2..238ad58 100644
--- a/src/site/markdown/index.md
+++ b/src/site/markdown/index.md
@@ -8,22 +8,42 @@ powerful environment model and a flexible SPI.
 
 ## Features
 
-TDB
+* Unified Configuration API
+* Pluggable Configuration Backends
+* Enforceable Configuration Policies
+* Configuration Validation and Documentation
+* Seemless Enterprise Integration
 
 ## Documentation
 
-Docu. Docu. Docu. Docu.  
-Docu. Docu. Docu. Docu.  
-Docu. Docu. Docu. Docu.  
+* [Use Cases](userguide/usecases.html)
+* [High Level Design](userguide/HighLevelDesign.html)
+* [API](userguide/API.html)
+* [Extensions](extensions/index.html)
 
 ---
 
 ## Quickstart
 
-Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
+Using Apache Tamaya is simple:
+
+1. Add `org.apache.tamaya:tamaya-core:${{project.version}}` to your dependencies.
+2. Add your config to `META-INF/javaconfiguration.properties`
+3. Access your configuration by `ConfigurationProvider.getConfiguration()` and use it.
+4. Look at the [extension modules](extensions/index.html) to customize your setup!
+5. Enjoy!
 
 
 ## Rationale
 
-Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
+Configuration is one of the most prominent cross-cutting concerns similar to logging. Most of us already have been
+writing similar code again and again in each of our projects. Sometimes in a similar way but mostly always slightly
+different, but certainly with high coupling to your configuration backends. Given your code is reused or integrated
+some how, or deployed by some customers, struggling starts: not supported backends, different policies, missing
+combination and validation mechanisms and so on. Tamaya solves all this by defining a common API and backend SPI.
+Your code is decoupled from the configuratoin backend. There is no difference if you are running on your dev box
+or in a clustered Docker environment in production, your code stays the same! There is no difference if you are writing
+some small component or a complete product solution, your API to your configuration data stays the same! Once you
+use Tamaya you will ask yourself why this did not exist before...
+
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/f0806423/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index 6cf5a5f..aab4821 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -49,7 +49,7 @@ under the License.
             <item name="Sources" href="source.html"/>
             <item name="Community" href="community.html"/>
             <item name="Issues" href="https://issues.apache.org/jira/browse/TAMAYA" target="_blank"/>
-            <item name="Development Guide" href="devguide/"/>
+            <item name="Development Guide" href="devguide/index.html"/>
             <item name="Release Guide" href="release-guide.html"/>
         </menu>
 


[11/11] incubator-tamaya git commit: Moved all docs to site part. Removed some of the file hierarchies for getting things work.

Posted by an...@apache.org.
Moved all docs to site part. Removed some of the file hierarchies for getting things work.


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/fbda5b8e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/fbda5b8e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/fbda5b8e

Branch: refs/heads/master
Commit: fbda5b8e3d72214c9b61cca8f4c1a5cabaa46158
Parents: f080642
Author: anatole <an...@apache.org>
Authored: Thu Mar 17 01:26:33 2016 +0100
Committer: anatole <an...@apache.org>
Committed: Thu Mar 17 01:26:33 2016 +0100

----------------------------------------------------------------------
 docs/pom.xml                                    |   5 +-
 docs/src/main/assembly/documentation.xml        |   2 +-
 pom.xml                                         |   8 +-
 src/site/asciidoc/API.adoc                      | 615 ++++++++++++++++++
 src/site/asciidoc/Core.adoc                     | 224 +++++++
 src/site/asciidoc/HighLevelDesign.adoc          | 166 +++++
 src/site/asciidoc/Requirements.adoc             | 250 ++++++++
 src/site/asciidoc/community.adoc                |  13 +-
 src/site/asciidoc/devguide.adoc                 | 209 ++++++
 src/site/asciidoc/devguide/index.adoc           | 207 ------
 src/site/asciidoc/download.adoc                 |   4 +-
 src/site/asciidoc/examples.adoc                 |  69 ++
 src/site/asciidoc/extensions.adoc               | 105 +++
 src/site/asciidoc/extensions/index.adoc         | 124 ----
 src/site/asciidoc/extensions/mod_builder.adoc   |  14 -
 src/site/asciidoc/extensions/mod_camel.adoc     |  22 +-
 src/site/asciidoc/extensions/mod_cdi.adoc       |  22 +-
 .../extensions/mod_classloader_support.adoc     |  21 -
 .../asciidoc/extensions/mod_collections.adoc    |  21 -
 src/site/asciidoc/extensions/mod_consul.adoc    |  22 +-
 .../asciidoc/extensions/mod_environment.adoc    |  22 +-
 src/site/asciidoc/extensions/mod_etcd.adoc      |  22 +-
 src/site/asciidoc/extensions/mod_events.adoc    |  25 +-
 src/site/asciidoc/extensions/mod_filter.adoc    |  22 +-
 src/site/asciidoc/extensions/mod_formats.adoc   |  25 +-
 src/site/asciidoc/extensions/mod_functions.adoc |  24 -
 src/site/asciidoc/extensions/mod_injection.adoc |  25 +-
 src/site/asciidoc/extensions/mod_jodatime.adoc  |  24 -
 src/site/asciidoc/extensions/mod_json.adoc      |  40 +-
 .../asciidoc/extensions/mod_management.adoc     |  25 +-
 .../extensions/mod_metamodel-staged.adoc        |  22 +-
 src/site/asciidoc/extensions/mod_model.adoc     |  25 +-
 .../asciidoc/extensions/mod_mutable_config.adoc |  25 +-
 src/site/asciidoc/extensions/mod_optional.adoc  |  25 +-
 src/site/asciidoc/extensions/mod_osgi.adoc      |  25 +-
 src/site/asciidoc/extensions/mod_remote.adoc    |  25 +-
 src/site/asciidoc/extensions/mod_resolver.adoc  |  15 -
 src/site/asciidoc/extensions/mod_resources.adoc |  15 -
 src/site/asciidoc/extensions/mod_server.adoc    |  25 +-
 .../asciidoc/extensions/mod_spi-support.adoc    |  22 +-
 src/site/asciidoc/extensions/mod_spring.adoc    |  21 +-
 src/site/asciidoc/extensions/mod_yaml.adoc      |  40 +-
 src/site/asciidoc/history.adoc                  |   2 +-
 .../asciidoc/misc/PossibleContributions.adoc    |  45 +-
 src/site/asciidoc/quickstart.adoc               |  18 +-
 src/site/asciidoc/release-guide.adoc            |  14 +-
 src/site/asciidoc/source.adoc                   |   5 +-
 src/site/asciidoc/usecases.adoc                 | 273 ++++++++
 src/site/asciidoc/userguide.adoc                |  36 ++
 src/site/asciidoc/userguide/API.adoc            | 634 -------------------
 src/site/asciidoc/userguide/Core.adoc           | 246 -------
 .../asciidoc/userguide/HighLevelDesign.adoc     | 186 ------
 src/site/asciidoc/userguide/Requirements.adoc   | 267 --------
 src/site/asciidoc/userguide/examples.adoc       |  82 ---
 src/site/asciidoc/userguide/index.adoc          |  44 --
 .../asciidoc/userguide/uc/combine-configs.adoc  |  14 -
 .../uc/context-dependent-configuration.adoc     |   7 -
 .../userguide/uc/dynamic-provisioning.adoc      |  18 -
 .../userguide/uc/external-configuration.adoc    |   6 -
 src/site/asciidoc/userguide/uc/formats.adoc     |   8 -
 src/site/asciidoc/userguide/uc/injection.adoc   |  31 -
 src/site/asciidoc/userguide/uc/java8.adoc       |  14 -
 src/site/asciidoc/userguide/uc/locations.adoc   |  10 -
 src/site/asciidoc/userguide/uc/management.adoc  |   7 -
 .../userguide/uc/minimal-propertysource.adoc    |   6 -
 .../userguide/uc/multiple-configurations.adoc   |  14 -
 .../userguide/uc/scannable-properties.adoc      |   4 -
 .../asciidoc/userguide/uc/service-context.adoc  |  15 -
 .../asciidoc/userguide/uc/simple-access.adoc    |  25 -
 .../userguide/uc/simple-property-access.adoc    |   9 -
 src/site/asciidoc/userguide/uc/templates.adoc   |  12 -
 .../userguide/uc/type-safe-properties.adoc      |  10 -
 .../userguide/uc/value-placeholders.adoc        |   8 -
 src/site/asciidoc/userguide/usecases.adoc       |  58 --
 src/site/markdown/index.md                      |  18 +-
 src/site/site.xml                               |   6 +-
 76 files changed, 2032 insertions(+), 2782 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/docs/pom.xml
----------------------------------------------------------------------
diff --git a/docs/pom.xml b/docs/pom.xml
index 11bc2c1..97d6991 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -97,11 +97,12 @@ under the License.
                             <goal>process-asciidoc</goal>
                         </goals>
                         <configuration>
+                            <sourceDirectory>${project.basedir}/../src/site/asciidoc</sourceDirectory>
                             <attributes>
                                 <tamayaVersion>${project.version}</tamayaVersion>
                             </attributes>
-                            <baseDir>${project.basedir}</baseDir>
-                            <imagesDir>${project.basedir}/src/main/images/</imagesDir>
+                            <projectDirectory>${project.basedir}/../src/site/asciidoc</projectDirectory>
+                            <!--<imagesDir>${project.basedir}/../src/site/asciidoc/</imagesDir>-->
                             <outputDirectory>${project.build.directory}/adocs</outputDirectory>
                             <sourceHighlighter>coderay</sourceHighlighter>
                             <backend>html</backend>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/docs/src/main/assembly/documentation.xml
----------------------------------------------------------------------
diff --git a/docs/src/main/assembly/documentation.xml b/docs/src/main/assembly/documentation.xml
index 501a0c6..a264485 100644
--- a/docs/src/main/assembly/documentation.xml
+++ b/docs/src/main/assembly/documentation.xml
@@ -30,7 +30,7 @@ under the License.
 
     <fileSets>
         <fileSet>
-            <directory>${project.directory}/../src/site/asciidoc</directory>
+            <directory>${project.build.directory}/adocs</directory>
             <outputDirectory>docs</outputDirectory>
         </fileSet>
     </fileSets>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0cc6f49..625b0d3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -151,12 +151,12 @@ under the License.
     <developers>
         <developer>
             <name>Anatole Tresch</name>
-            <id>atsticks</id>
-            <email>atsticks -at- apache.org</email>
+            <id>anatole</id>
+            <email>anatole -at- apache.org</email>
             <roles>
                 <role>PMC</role>
             </roles>
-            <timezone />
+            <timezone>+1</timezone>
         </developer>
 
         <developer>
@@ -198,7 +198,7 @@ under the License.
                 <role>PMC</role>
             </roles>
             <email>plexus@apache.org</email>
-            <timezone>-1</timezone>
+            <timezone>+1</timezone>
         </developer>
     </developers>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/API.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/API.adoc b/src/site/asciidoc/API.adoc
new file mode 100644
index 0000000..741f39e
--- /dev/null
+++ b/src/site/asciidoc/API.adoc
@@ -0,0 +1,615 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+'''
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+[[CoreDesign]]
+== Apache Tamaya -- API
+
+Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
+that build the base of all the other mechanisms. As a starting point we recommend you read the corresponding
+llink:HighLevelDesign.html[High Level Design Documentation]
+
+[[API]]
+== The Tamaya API
+The API provides the artifacts as described in the link:HighLevelDesign.html[High Level Design Documentation], which are:
+
+* A simple but complete SE *API* for accessing key/value based _Configuration_:
+  ** +Configuration+ hereby models configuration, the main interface of Tamaya. +Configuration+ provides
+     *** access to literal key/value pairs.
+     *** functional extension points (+with, query+) using a unary +ConfigOperator+ or
+         a function +ConfigurationQuery<T>+.
+  ** +ConfigurationProvider+ provides with +getConfiguration()+ the static entry point for accessing configuration.
+  ** +ConfigException+ defines a runtime exception for usage by the configuration system.
+  ** +TypeLiteral+ provides a possibility to type safely define the target type to be returned by a registered
+     +PropertyProvider+.
+  ** +PropertyConverter+, which defines conversion of configuration values (String) into any required target type.
+
+* Additionally the *SPI* provides:
+  ** _PropertySource:_ is the the SPI for adding configuration data. A +PropertySource+ hereby
+     *** is designed as a minimalistic interface that be implemented by any kind of data provider (local or remote)
+     *** provides single access for key/value pairs in raw format as String key/values only (+getPropertyValue+).
+     *** can optionally support scanning of its provided values, implementing +getProperties()+.
+  ** _PropertySourceProvider:_ allows to register multiple property sources dynamically, e.g. all config files found in
+     file system folder..
+  ** +ConfigurationProviderSpi+ defines the SPI that is used as a backing bean for the +ConfigurationProvider+
+     singleton.
+  ** +PropertyFilter+, which allows filtering of property values prior getting returned to the caller.
+  ** +ConfigurationContext+, which provides the container that contains the property sources and filters that form a
+     configuration.
+  ** +PropertyValueCombinationPolicy+ optionally can be registered to change the way how different key/value
+     pairs are combined to build up the final +Configuration+ passed over to the filters registered.
+  ** +ServiceContext+, which provides access to the components loaded, depending on the current runtime stack.
+  ** +ServiceContextManager+ provides static access to the +ServiceContext+ loaded.
+
+This is also reflected in the main packages of the API:
+
+* +org.apache.tamaya+ contains the main API abstractions used by users.
+* +org.apache.tamaya.spi+ contains the SPI interfaces to be implemented by implementations and the +ServiceContext+
+  mechanism.
+
+
+
+[[APIKeyValues]]
+=== Key/Value Pairs
+
+Basically configuration is a very generic concept. Therefore it should be modelled in a generic way. The most simple
+and most commonly used approach are simple literal key/value pairs. So the core building block of {name} are key/value pairs.
+You can think of a common +.properties+ file, e.g.
+
+[source,properties]
+.A simple properties file
+--------------------------------------------
+a.b.c=cVal
+a.b.c.1=cVal1
+a.b.c.2=cVal2
+a=aVal
+a.b=abVal
+a.b2=abVal
+--------------------------------------------
+
+Now you can use +java.util.Properties+ to read this file and access the corresponding properties, e.g.
+
+[source,properties]
+--------------------------------------------
+Properties props = new Properties();
+props.readProperties(...);
+String val = props.getProperty("a.b.c");
+val = props.getProperty("a.b.c.1");
+...
+--------------------------------------------
+
+
+==== Why Using Strings Only
+
+There are good reason to keep of non String-values as core storage representation of configuration. Mostly
+there are several huge advantages:
+
+* Strings are simple to understand
+* Strings are human readable and therefore easy to prove for correctness
+* Strings can easily be used within different language, different VMs, files or network communications.
+* Strings can easily be compared and manipulated
+* Strings can easily be searched, indexed and cached
+* It is very easy to provide Strings as configuration, which gives much flexibility for providing configuration in
+  production as well in testing.
+* and more...
+
+On the other side there are also disadvantages:
+
+* Strings are inherently not type safe, they do not provide validation out of the box for special types, such as
+numbers, dates etc.
+* In many cases you want to access configuration in a typesafe way avoiding conversion to the target types explicitly
+  throughout your code.
+* Strings are neither hierarchical nor multi-valued, so mapping hierarchical and collection structures requires some
+  extra efforts.
+
+Nevertheless most of these advantages can be mitigated easily, hereby still keeping all the benefits from above:
+
+* Adding type safe adapters on top of String allow to add any type easily, that can be directly mapped out of Strings.
+  This includes all common base types such as numbers, dates, time, but also timezones, formatting patterns and more.
+* Also multi-valued, complex and collection types can be defined as a corresponding +PropertyAdapter+ knows how to
+  parse and create the target instance required.
+* String s also can be used as references pointing to other locations and formats, where configuration is
+  accessible.
+
+
+[[API Configuration]]
+=== Configuration
+
++Configuration+ is the main API provided by Tamaya. It allows reading of single property values or the whole
+property map, but also supports type safe access:
+
+[source,java]
+.Interface Configuration
+--------------------------------------------
+public interface Configuration{
+    String get(String key);
+    String getOrDefault(String key, String value);
+    <T> T get(String key, Class<T> type);
+    <T> T getOrDefault(String key, Class<T> type, T defaultValue);
+    <T> T get(String key, TypeLiteral<T> type);
+    <T> T getOrDefault(String key, TypeLiteral<T> type, T defaultValue);
+    Map<String,String> getProperties();
+
+    // extension points
+    Configuration with(ConfigOperator operator);
+    <T> T query(ConfigQuery<T> query);
+
+    ConfigurationContext getContext();
+}
+--------------------------------------------
+
+Hereby
+
+* +<T> T get(String, Class<T>)+ provides type safe accessors for all basic wrapper types of the JDK.
+* +with, query+ provide the extension points for adding additional functionality.
+* +getProperties()+ provides access to all key/values, whereas entries from non scannable property sources may not
+  be included.
+* +getOrDefault+ allows to pass default values as needed, returned if the requested value evaluated to +null+.
+
+The class +TypeLiteral+ is basically similar to the same class provided with CDI:
+
+[source,java]
+--------------------------------------------
+public class TypeLiteral<T> implements Serializable {
+
+    [...]
+
+    protected TypeLiteral(Type type) {
+        this.type = type;
+    }
+
+    protected TypeLiteral() { }
+
+    public static <L> TypeLiteral<L> of(Type type){...}
+    public static <L> TypeLiteral<L> of(Class<L> type){...}
+
+    public final Type getType() {...}
+    public final Class<T> getRawType() {...}
+
+    public static Type getGenericInterfaceTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
+    public static Type getTypeParameter(Class<?> clazz, Class<?> interfaceType){...}
+
+    [...]
+}
+--------------------------------------------
+
+Instances of +Configuration+ can be accessed from the +ConfigurationProvider+ singleton:
+
+[source,java]
+.Accessing Configuration
+--------------------------------------------
+Configuration config = ConfigurationProvider.getConfiguration();
+--------------------------------------------
+
+Hereby the singleton is backed up by an instance of +ConfigurationProviderSpi+.
+
+
+[[PropertyConverter]]
+==== Property Converters
+
+As illustrated in the previous section, +Configuration+ also to access non String types. Nevertheless internally
+all properties are strictly modelled as pure Strings only, so non String types must be derived by converting the
+configured String values into the required target type. This is achieved with the help of +PropertyConverters+:
+
+[source,java]
+--------------------------------------------
+public interface PropertyConverter<T>{
+    T convert(String value, ConversionContext context);
+    //X TODO Collection<String> getSupportedFormats();
+}
+--------------------------------------------
+
+The +ConversionContext+ contains additional meta-information for the accessed key, inclusing the key'a name and
+additional metadata.
+
++PropertyConverter+ instances can be implemented and registered by default using the +ServiceLoader+. Hereby
+a configuration String value is passed to all registered converters for a type in order of their annotated +@Priority+
+value. The first non-null result of a converter is then returned as the current configuration value.
+
+Access to converters is provided by the current +ConfigurationContext+, which is accessible from
+the +ConfigurationProvider+ singleton.
+
+
+[[ExtensionPoints]]
+=== Extension Points
+
+We are well aware of the fact that this library will not be able to cover all kinds of use cases. Therefore
+we have added functional extension mechanisms to +Configuration+ that were used in other areas of the Java eco-system
+as well:
+
+* +with(ConfigOperator operator)+ allows to pass arbitrary unary functions that take and return instances of
+  +Configuration+. Operators can be used to cover use cases such as filtering, configuration views, security
+  interception and more.
+* +query(ConfigQuery query)+ allows to apply a function returning any kind of result based on a
+  +Configuration+ instance. Queries are used for accessing/deriving any kind of data based on of a +Configuration+
+  instance, e.g. accessing a +Set<String>+ of root keys present.
+
+Both interfaces hereby are functional interfaces. Because of backward compatibility with Java 7 we did not use
++UnaryOperator+ and +Function+ from the +java.util.function+ package. Nevertheless usage is similar, so you can
+use Lambdas and method references in Java 8:
+
+[source,java]
+.Applying a +ConfigurationQuery+ using a method reference
+--------------------------------------------
+ConfigSecurity securityContext = ConfigurationProvider.getConfiguration().query(ConfigSecurity::targetSecurityContext);
+--------------------------------------------
+
+NOTE: +ConfigSecurity+ is an arbitrary class only for demonstration purposes.
+
+
+Operator calls basically look similar:
+
+[source,java]
+.Applying a +ConfigurationOperator+ using a lambda expression:
+--------------------------------------------
+Configuration secured = ConfigurationProvider.getConfiguration()
+                           .with((config) ->
+                                 config.get("foo")!=null?;
+                                 FooFilter.apply(config):
+                                 config);
+--------------------------------------------
+
+
+[[ConfigException]]
+=== ConfigException
+
+The class +ConfigException+ models the base *runtime* exception used by the configuration system.
+
+
+[[SPI]]
+== SPI
+
+[[PropertySource]]
+=== Interface PropertySource
+
+We have seen that constraining configuration aspects to simple literal key/value pairs provides us with an easy to
+understand, generic, flexible, yet expendable mechanism. Looking at the Java language features a +java.util.Map<String,
+String>+ and +java.util.Properties+ basically model these aspects out of the box.
+
+Though there are advantages in using these types as a model, there are some severe drawbacks, notably implementation
+of these types is far not trivial and the collection API offers additional functionality not useful when aiming
+for modelling simple property sources.
+
+To render an implementation of a custom +PropertySource+ as convenient as possible only the following methods were
+identified to be necessary:
+
+[source,java]
+--------------------------------------------
+public interface PropertySource{
+      int getOrdinal();
+      String getName();
+      String get(String key);
+      boolean isScannable();
+      Map<String, String> getProperties();
+}
+--------------------------------------------
+
+Hereby
+
+* +get+ looks similar to the methods on +Map+. It may return +null+ in case no such entry is available.
+* +getProperties+ allows to extract all property data to a +Map<String,String>+. Other methods like +containsKey,
+  keySet+ as well as streaming operations then can be applied on the returned +Map+ instance.
+* But not in all scenarios a property source may be scannable, e.g. when looking up keys is very inefficient, it
+  may not make sense to iterator over all keys to collect the corresponding properties.
+  This can be evaluated by calling +isScannable()+. If a +PropertySource+ is defined as non scannable accesses to
+  +getProperties()+ may not return all key/value pairs that would be available when accessed directly using the
+  +String get(String)+ method.
+* +getOrdinal()+ defines the ordinal of the +PropertySource+. Property sources are managed in an ordered chain, where
+  property sources with higher ordinals override the ones with lower ordinals. If ordinal are the same, the natural
+  ordering of the fulloy qualified class names of the property source implementations are used. The reason for
+  not using +@Priority+ annotations is that property sources can define dynamically their ordinals, e.g. based on
+  a property contained with the configuration itself.
+* Finally +getName()+ returns a (unique) name that identifies the +PropertySource+ within the current
+  +ConfigurationContext+.
+
+This interface can be implemented by any kind of logic. It could be a simple in memory map, a distributed configuration
+provided by a data grid, a database, the JNDI tree or other resources. Or it can be a combination of multiple
+property sources with additional combination/aggregation rules in place.
+
++PropertySources+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
+ active +ServiceContext+.
+
+
+[[PropertySourceProvider]]
+==== Interface PropertySourceProvider
+
+Instances of this type can be used to register multiple instances of +PropertySource+.
+
+[source,java]
+--------------------------------------------
+// @FunctionalInterface in Java 8
+public interface PropertySourceProvider{
+    Collection<PropertySource> getPropertySources();
+}
+--------------------------------------------
+
+This allows to evaluate the property sources to be read/that are available dynamically. All property sources
+are read out and added to the current chain of +PropertySource+ instances within the current +ConfigurationContext+,
+refer also to [[ConfigurationContext]].
+
++PropertySourceProviders+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the
+current active +ServiceContext+.
+
+
+[[PropertyFilter]]
+==== Interface PropertyFilter
+
+Also +PropertyFilters+ can be added to a +Configuration+. They are evaluated before a +Configuration+ instance is
+passed to the user. Filters can hereby used for multiple purposes, such as
+
+* resolving placeholders
+* masking sensitive entries, such as passwords
+* constraining visibility based on the current active user
+* ...
+
++PropertyFilters+ are by default registered using the Java +ServiceLoader+ or the mechanism provided by the current
+active +ServiceContext+. Similar to property sources they are managed in an ordered filter chain, based on the
+applied +@Priority+ annotations.
+
+A +PropertyFilter+ is defined as follows:
+
+[source,java]
+--------------------------------------------
+// Functional Interface
+public interface PropertyFilter{
+    String filterProperty(String value, FilterContext context);
+}
+--------------------------------------------
+
+Hereby:
+
+* returning +null+ will remove the key from the final result
+* non null values are used as the current value of the key. Nevertheless for resolving multi-step dependencies
+  filter evaluation has to be continued as long as filters are still changing some of the values to be returned.
+  To prevent possible endless loops after a defined number of loops evaluation is stopped.
+* +FilterContext+ provides additional metdata, inclusing the key accessed, which is useful in many use cases.
+
+This method is called each time a single entry is accessed, and for each property in a full properties result.
+
+
+[[PropertyValueCombinationPolicy]]
+==== Interface PropertyValueCombinationPolicy
+
+This interface can be implemented optional. It can be used to adapt the way how property key/value pairs are combined to
+build up the final Configuration to be passed over to the +PropertyFilters+. The default implementation is just
+overriding all values read before with the new value read. Nevertheless for collections and other use cases it is
+often useful to have alternate combination policies in place, e.g. for combining values from previous sources with the
+new value. Finally looking at the method's signature it may be surprising to find a +Map+ for the value. The basic
+value hereby is defined by +currentValue.get(key)+. Nevertheless the +Map+ may also contain additional meta entries,
+which may be considered by the policy implementation.
+
+[source,java]
+--------------------------------------------
+// FunctionalInterface
+public interface PropertyValueCombinationPolicy{
+
+   PropertyValueCombinationPolicy DEFAULT_OVERRIDING_COLLECTOR =
+     new PropertyValueCombinationPolicy(){
+       @Override
+       public Map<String,String> collect(Map<String,String> currentValue, String key,
+                                         PropertySource propertySource) {
+           PropertyValue value = propertySource.get(key);
+           return value!=null?value.getConfigEntries():currentValue;
+       }
+   };
+
+   String collect(Map<String,String> currentValue currentValue, String key,
+                  PropertySource propertySource);
+
+}
+--------------------------------------------
+
+
+[[ConfigurationContext]]
+==== The Configuration Context
+
+A +Configuration+ is basically based on a so called +ConfigurationContext+, which is
+accessible from +Configuration.getContext()+:
+
+[source,java]
+.Accessing the current +ConfigurationContext+
+--------------------------------------------
+ConfigurationContext context = ConfigurationProvider.getConfiguration().getContext();
+--------------------------------------------
+
+The +ConfigurationContext+ provides access to the internal building blocks that determine the final +Configuration+:
+
+* +PropertySources+ registered (including the PropertySources provided from +PropertySourceProvider+ instances).
+* +PropertyFilters+ registered, which filter values before they are returned to the client
+* +PropertyConverter+ instances that provide conversion functionality for converting String values to any other types.
+* the current +PropertyValueCombinationPolicy+ that determines how property values from different PropertySources are
+  combined to the final property value returned to the client.
+
+
+[[Mutability]]
+==== Changing the current Configuration Context
+
+By default the +ConfigurationContext+ is not mutable once it is created. In many cases mutability is also not needed
+or even not wanted. Nevertheless there are use cases where the current +ConfigurationContext+ (and
+consequently +Configuration+) must be adapted:
+
+* New configuration files where detected in a folder observed by Tamaya.
+* Remote configuration, e.g. stored in a database or alternate ways has been updated and the current system must
+  be adapted to these changes.
+* The overall configuration context is manually setup by the application logic.
+* Within unit testing alternate configuration setup should be setup to meet the configuration requirements of the
+  tests executed.
+
+In such cases the +ConfigurationContext+ must be mutable, meaning it must be possible:
+
+* to add or remove +PropertySource+ instances
+* to add or remove +PropertyFilter+ instances
+* to add or remove +PropertyConverter+ instances
+* to redefine the current +PropertyValueCombinationPolicy+ instances.
+
+This can be achieved by obtaining an instance of +ConfigurationContextBuilder+. Instances of this builder can be
+accessed either
+
+* from the current +ConfigurationContext+, hereby returning a builder instance preinitialized with the values from the
+  current +ConfigurationContext+
+* from the current +ConfigurationProvider+ singleton.
+
+[source,java]
+.Accessing a +ConfigurationContextBuilder+
+--------------------------------------------
+ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext().toBuilder();
+ConfigurationContextBuilder emptyContextBuilder = ConfigurationProvider.getConfigurationContextBuilder();
+--------------------------------------------
+
+With such a builder a new +ConfigurationContext+ can be created and then applied:
+
+[source,java]
+.Creating and applying a new +ConfigurationContext+
+--------------------------------------------
+ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext()
+                                                           .toBuilder();
+ConfigurationContext context = preinitializedContextBuilder.addPropertySources(new MyPropertySource())
+                                                           .addPropertyFilter(new MyFilter()).build();
+ConfigurationProvider.setConfigurationContext(context);
+--------------------------------------------
+
+Hereby +ConfigurationProvider.setConfigurationContext(context)+ can throw an +UnsupportedOperationException+.
+This can be checked by calling the method +boolean ConfigurationProvider.isConfigurationContextSettable()+.
+
+
+[[ConfigurationProviderSpi]]
+==== Implementing and Managing Configuration
+
+One of the most important SPI in Tamaya if the +ConfigurationProviderSpi+ interface, which is backing up the
++ConfigurationProvider+ singleton. Implementing this class allows
+
+* to fully determine the implementation class for +Configuration+
+* to manage the current +ConfigurationContext+ in the scope and granularity required.
+* to provide access to the right +Configuration/ConfigurationContext+ based on the current runtime context.
+* Performing changes as set with the current +ConfigurationContextBuilder+.
+
+
+[[ServiceContext]]
+==== The ServiceContext
+
+The +ServiceContext+ is also a very important SPI, which allows to define how components are loaded in Tamaya.
+The +ServiceContext+ hereby defines access methods to obtain components, whereas itself it is available from the
++ServiceContextManager+ singleton:
+
+[source,java]
+.Accessing the +ServiceContext+
+--------------------------------------------
+ServiceContext serviceContext = ServiceContextManager.getServiceContext();
+
+public interface ServiceContext{
+    int ordinal();
+    <T> T getService(Class<T> serviceType);
+    <T> List<T> getServices(Class<T> serviceType);
+}
+--------------------------------------------
+
+With the +ServiceContext+ a component can be accessed in two different ways:
+
+. access as as a single property. Hereby the registered instances (if multiple) are sorted by priority and then finally
+  the most significant instance is returned only.
+. access all items given its type. This will return (by default) all  instances loadedable from the current
+  runtime context, ordered by priority, hereby the most significant components added first.
+
+
+## Examples
+### Accessing Configuration
+
+_Configuration_ is obtained from the ConfigurationProvider singleton:
+
+[source,java]
+.Accessing +Configuration+
+--------------------------------------------
+Configuration config = ConfigurationProvider.getConfiguration();
+--------------------------------------------
+
+Many users in a SE context will probably only work with _Configuration_, since it offers all functionality
+needed for basic configuration with a very lean memory and runtime footprint. In Java 7 access to the keys is
+very similar to *Map<String,String>*, whereas in Java 8 additionally usage of _Optional_ is supported:
+
+[source,java]
+--------------------------------------------
+Configuration config = ConfigurationProvider.getConfiguration();
+String myKey = config.get("myKey");                         // may return null
+int myLimit = config.get("all.size.limit", int.class);
+--------------------------------------------
+
+
+### Environment and System Properties
+
+By default environment and system properties are included into the _Configuration_. So we can access the current
+_PROMPT_ environment variable as follows:
+
+[source,java]
+--------------------------------------------
+String prompt = ConfigurationProvider.getConfiguration().get("PROMPT");
+--------------------------------------------
+
+Similary the system properties are directly applied to the _Configuration_. So if we pass the following system
+property to our JVM:
+
+[source,java]
+--------------------------------------------
+java ... -Duse.my.system.answer=yes
+--------------------------------------------
+
+we can access it as follows:
+
+[source,java]
+--------------------------------------------
+boolean useMySystem = ConfigurationProvider.getConfiguration().get("use.my.system.answer", boolean.class);
+--------------------------------------------
+
+
+### Adding a Custom Configuration
+
+Adding a classpath based configuration is simply as well: just implement an according _PropertySource_. With the
+_tamaya-spi-support_ module you just have to perform a few steps:
+
+. Define a PropertySource as follows:
+
+[source,java]
+--------------------------------------------
+  public class MyPropertySource extends PropertiesResourcePropertySource{
+
+    public MyPropertySource(){
+        super(ClassLoader.getSystemClassLoader().getResource("META-INF/cfg/myconfig.properties"), DEFAULT_ORDINAL);
+    }
+  }
+--------------------------------------------
+
+Then register +MyPropertySource+ using the +ServiceLoader+ by adding the following file:
+
+[source,listing]
+--------------------------------------------
+META-INF/services/org.apache.tamaya.spi.PropertySource
+--------------------------------------------
+
+...containing the following line:
+
+[source,listing]
+--------------------------------------------
+com.mypackage.MyPropertySource
+--------------------------------------------
+
+
+[[APIImpl]]
+== API Implementation
+
+The API is implemented by the Tamaya _Core_module. Refer to the link:Core.html[Core documentation] for
+further details.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/Core.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/Core.adoc b/src/site/asciidoc/Core.adoc
new file mode 100644
index 0000000..8e4edfe
--- /dev/null
+++ b/src/site/asciidoc/Core.adoc
@@ -0,0 +1,224 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+'''
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+[[Core]]
+== Tamaya Core Implementation
+=== Overview
+
+Tamaya Core provides an implementation of the link:API.html[Tamaya Configuration API] and adds additional functionality
+and building blocks for supporting SPI implementations.
+
+Tamaya Core contains the following artifacts:
+
+* Implementations of +Configuration, ConfigurationContext, ConfigurationContextBuilder+ ConfigurationProviderSpi+
+* A +java.util.ServiceLoader+ based +ServiceContext+ implementation. Hereby it implements component priorization based
+  on the +@Priority+ annotations.
+* A PropertyConverterManager+ that loads and stores references to all the preconfigured +PropertyConverter+ instances
+hereby providing type conversion for all important types.
+* A simple default configuration setup using the current classpath and an optional staging variable.
+* It collects all +PropertySource+ and +PropertySourceProvider+ instances registered with the +ServiceLoader+ and
+  registers them in the global +ConfigurationContext+
+* It provides a +ConfigurationContextBuilder+ and allows changing the current +ConfigurationContext+.
+
+The overall size of the library is very small. All required components are implemented and registered, so basically the
+Core module is a complete configuration solution. Nevertheless it is also very minimalistic, but fortunately is flexible
+enough to be extended/accommodated with additional features as needed, such as
+
+* placeholder and resolution mechanisms
+* dynamic resource path lookup, e.g. with ant styled patterns
+* configuration injection and configuration templates
+* abstraction for reusable formats
+* integration with other existing solutions
+* configuration and configuration isolation targeting Java EE
+* dynamic configuration and configuration updates
+* Configuration management extensions
+* remote configuration
+* and more
+
+For details about the extension modules available and  their functionality refer to the link:modules.html[extension user guide].
+
+
+[[CorePropertyConverters]]
+=== Default PropertyConverters in Core
+
+As mentioned the Core module delivers several default +PropertyConverter+ instances out of the box. Find below the
+listing of converters automatically registered with the Core module:
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Target Type_             |_Class Name_              |_Supported Formats_
+|java.math.BigDecimal    |BigDecimalConverter     |1.2345, 0xFF
+|java.math.BigInteger    |BigIntegerConverter     |0xFF, 1234
+|java.lang.Boolean       |BooleanConverter        |true, false, T, F, 1 ,0
+|java.lang.Byte          |ByteConverter           |0xFF, MIN_VALUE, MAX_VALUE, 123
+|java.lang.Character     |CharConverter           |0xFF, 'a', 'H', 123
+|java.lang.Class         |ClassConverter          |<fully qualified class name>
+|java.util.Currency      |CurrencyConverter       |CHF, 123
+|java.lang.Double        |DoubleConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
+|_Enums_                 |EnumConverter           |<Enum item name>
+|java.lang.Float         |FloatConverter          |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY, MIN_VALUE, MAX_VALUE
+|java.lang.Integer       |IntegerConverter        |1, 0xD3, MIN_VALUE, MAX_VALUE
+|LocalDate               |LocalDateConverter      |<Date as defined by LocalDate.parse(String)
+|LocalTime               |LocalTimeConverter      |<Time as defined by LocalTime.parse(String)
+|LocalDateTime           |LocalDateTimeConverter  |<LocalDateTime as defined by LocalDateTime.parse(String)>
+|java.lang.Long          |LongConverter           |1, 0xD3, MIN_VALUE, MAX_VALUE
+|java.lang.Number        |NumberConverter         |1, 0xFF, 1.2334, NaN, NEGATIVE_INFITIY, POSITIVE_INFINITY
+|java.lang.Short         |ShortConverter          |1, 0xD3, MIN_VALUE, MAX_VALUE
+|java.net.URI            |URIConverter            |http://localhost:2020/testresource?api=true
+|java.net.URL            |URLConverter            |http://localhost:2020/testresource?api=true
+|ZoneId                  |ZoneIdConverter         |Europe/Zurich
+|=======
+
+
+=== Registering PropertyConverters
+
+Additional +PropertyConverters+ can be implemented easily. It is recommended to register then using the +java.util.ServiceLoader+,
+meaning you add a file under +META-INF/service/org.apache.tamaya.spi.PropertyConverter+ containing the fully qualified
+class names of the converters to be registered (one line per each).
+
+Alternatively you can also use a +ConfigurationContextBuilder+ to add additional converters programmatically.
+
+NOTE: API Implementations can be read-only thus not allowing adding additional converters programmatically.
+
+
+[[ComponentLoadingAndPriorization]]
+=== Component Loading and Priorization
+
+Tamaya Core in general loads all components using the +java.util.ServiceLoader+ mechanism. This means that new components
+must be registered by adding a file under +META-INF/service/<myInterfaceName>+ containing the fully qualified
+implementation class names of the components to be registered (one line per each).
+The +ServiceLoader+ itself does not provide any functionality for overriding or ordering of components. Tamaya
+core adds this functionality by the possibility to add +@Priority+ annotations to the components registered.
+By default, and if no annotation is added +0+ is used as priority. Hereby higher values preceed lower values, meaning
+
+* if a singleton component is accessed from the current +ServiceContext+ the component with the higher value
+  effectively _overrides/replaces_ any component with lower values.
+* if a collection of components is obtained from the +ServiceContext+ the components are ordered in order, where the
+  ones with higher priority are before components with lower priority.
+* if priorities match Tamaya Core additionally sorts them using the simple class name. This ensures that ordering is
+  still defined and predictable in almost all scenarios.
+
+
+[[RegisteringPropertySources]]
+=== Registering Property Sources
+
+PropertySources that provide configuration properties are registered as ordinary components as described in the previous
+section. Nevertheless the priority is not managed based on +@Priority+ annotations, but based on an explicit
++int getOrdinal()+ method. This allows to define the ordinal/priority of a +PropertySource+ explicitly. This is useful
+due to several reasons:
+
+* it allows to define the ordinal as part of the configuration, thus allowing new overriding property sources being
+  added easily.
+* it allows to define the ordinal dynamically, e.g. based on the configuration location, the time of loading or
+  whatever may be appropriate.
+
+
+[[CorePropertySources]]
+== Configuration Setup in Core
+
+Tamaya Core provides a minimal configuration setting, that allows you to configure SE
+applications already easily. Basically configuration is built  up by default as follows:
+
+. Read environment properties and add them prefixed with +env.+
+. Read all files found at +META-INF/javaconfiguration.properties+
+
+
+=== Overview of Registered Default Property Sources and Providers
+
+The Tamaya Core implementation provides a couple of default +PropertySource+ implementations, which are automatically
+registered. They are all in the package +org.apache.tamaya.core.propertysource+ and
++org.apache.tamaya.core.provider+:
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Type_                                   |_Class Name_                   |_Ordinal Used_
+|META-INF/javaconfiguration.properties    |JavaConfigurationProvider      |0
+|Environment Properties                   |EnvironmentPropertySource      |300
+|System Properties                        |SystemPropertySource           |400
+|=======
+
+
+=== Abstract Class PropertiesFilePropertySource
+
+The abstract class +PropertiesFilePropertySource+ can be used for implementing a +PropertySource+ based on a +URL+
+instance that points to a +.properites+ file. It requires a +URL+ to be passed on the constructor:
+
+[source,java]
+--------------------------------------------
+PropertiesFilePropertySource(URL url);
+--------------------------------------------
+
+
+==== Abstract Class PropertiesPropertySource
+
+The abstract class +PropertiesPropertySource+ can be used for implementing a +PropertySource+ based on a +Properties+
+instance. It requires a +PropertySource+ to be passed on the constructor:
+
+[source,java]
+--------------------------------------------
+PropertiesPropertySource(Properties properties);
+--------------------------------------------
+
+
+==== Abstract Class BasePropertySource
+
+The abstract class +BasePropertySource+ can be used for implementing custom +PropertySource+ classes. It requires only
+one method to implemented:
+
+[source,java]
+.Implementing a PropertySource using BasePropertySource
+--------------------------------------------
+public class MyPropertySource extends BasePropertySource{
+
+    public String getName(){
+        // return a unique name for the property source, e.g. based on the underlying resource. This name also
+        // allows to access the property source later
+    }
+
+    public Map<String, String> getProperties(){
+        // Get a map with all properties provided by this property source
+        // If the property source is not scannable, the map returned may be empty.
+        // In the ladder case the +boolean isScannale()+ must be overridden, since
+        // by default property sources are assumed to be scannable.
+    }
+
+}
+--------------------------------------------
+
+By default the ordinal of the property sources will be 1000, unless the key +tamaya.ordinal+ asdefined in
++PropertySource.TAMAYA_ORDINAL+ is present in the current +PropertySource+. Of course it is also possible to override
+the inherited +protected void initializeOrdinal(final int defaultOrdinal)+, or directly +int getOrdinal()+.
+
+
+[[CorePropertySourceProviders]]
+=== Default PropertySourceProvider in Core
+
+With +org.apache.tamaya.core.provider.JavaConfigurationProvider+ there is also a default +PropertySourceProvider+
+present that loads all .properties files found at +META-INF/javaconfiguration.properties+.
+
+
+[[Extensions]]
+== Adding Extensions
+
+The Core module only implements the link:API.html[API]. Many users require/wish additional functionality from a
+configuration system. Fortunately there are numerous extensions available that add further functionality.
+Loading extensions hereby is trivial: you only are required to add the corresponding dependency to the classpath.
+
+For detailed information on the extensions available refer to the link:extensions.html[extensions documentation].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/HighLevelDesign.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/HighLevelDesign.adoc b/src/site/asciidoc/HighLevelDesign.adoc
new file mode 100644
index 0000000..1e85677
--- /dev/null
+++ b/src/site/asciidoc/HighLevelDesign.adoc
@@ -0,0 +1,166 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+'''
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+
+[[Core Concepts]]
+== The Tamaya High Level Design
+Though Tamaya is a very powerful and flexible solution there are basically only a few simple core concepts required
+that build the base of all the other mechanisms:
+
+The *API* (package +org.apache.tamaya+) provides
+
+* A simple but complete SE *API* for accessing key/value based _Configuration_:
+  ** +Configuration+ hereby models configuration, the main interface of Tamaya, providing key/value pairs as raw
+     (String-based) key/value pairs, allowing also access to typed values.
+  ** +ConfigurationProvider+ provides the static entry point for accessing configuration.
+
+The *SPI* (package +org.apache.tamaya.spi+) provides:
+  ** A simple minimalistic model for configuration data, called _PropertySource_.
+  ** Several extension points for adding additional configuration property sources or adapting the internal workings
+     of the overall system.
+  ** A +ServiceContext / ServiceContextManager+ that controls the loading of the components in Tamaya. This allows to
+     adapt the behaviour depending on the runtime environment in use, e.g. a Java standalone application, an OSGI
+     container or a Java EE application server.
+
+Tamaya *Modules* finally allow to add additional functionality to customize your configuration solution with the
+functionality you want. E.g. modules are providing features such as
+
+* Configuration _injection_
+* _Dynamic placeholders_ and resolution mechanism for configuration values
+* Abstractions for reusable _configuration formats_
+* Dynamic configuration updates and change events
+* Support for OSGI/Java EE Classloading
+* A configuration server/client
+* and more...
+
+
+== How Tamaya organizes Configuration
+=== Overview
+
+All the mentioned artifacts are used to organize configuration in a higly flexible and extendable way. Hereby the
++PropertySource+ is the key artifact. In general Tamaya organizes Configuration as follows:
+
+image::../images/CoreDesign.png[]
+
+Key abstraction hereby is the +ConfigurationContext+, which basically
+
+* an ordered chain of +PropertySource+ instances. This chain is used to evaluate raw configuration values.
+* a set of +PropertyFilter+ instances that filter the raw values evaluated from the property source chain.
+* a set of +PropertyConverter+ that convert String values into typed values when needed.
+
+In most standalone use cases only one +ConfigurationContext+ will be active at a time. But in more complex scenarios,
+such as Java EE also multiple contexts could be active that are active depending on the current runtime context
+(e.g. attached to the corresponding classloader(s)). These aspects are basically handled by the
++ConfigurationProvider+ and its corresponding SPIs.
+
+=== Loading the current _ConfigurationContext_
+
+The +ConfigurationContext+ is the core of Tamaya. It manages all configuration sources and additional components
+required to evaluate a concrete configuration value:
+
+* Tamaya loads all available +PropertySource+ instances. Hereby +PropertySource+ instances can be
+  ** Directly registered (using the mechanism defined by the current +ServiceContext+ implementation, by default
+     the Java +ServiceLoader+.
+  ** Provided by a registered instance of +PropertySourceProvider+.
+* All loaded property sources are _ordered based on each ordinal_, returned from +PropertySource.getOrdinal()+ as
+  an ordered chain of PropertySources, building up the ordered chain of +PropertySource+ instances used for raw
+  configuration value evaluation.
+* Tamaya loads all available +PropertyFilter+ instances. Hereby +PropertyFilter+ instances can be registered
+  by default using the Java +ServiceLoader+ API. The +PropertyFilter+ instances loaded are ordered based on the
+  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed.
+* Tamaya loads all available +PropertyConverter+ instances. Hereby +PropertyConverter+ instances can be registered
+  by default using the Java +ServiceLoader+ API. The +PropertyConverter+ instances loaded are ordered based on the
+  +@Priority+ annotations found on each filter. If no priority annotation is present, +0+ is assumed. It is
+  possible to register multiple converters for the same target type.
+
+=== Evaluating raw property values
+When evaluating a concrete configuration value for a given key, Tamaya iterates through this chain of registered
+PropertySources. Hereby the final value, by default, is determined by the last non-null value returned from a
++PropertySource+.
+
+Since the ladder may not always be appropriate, e.g. when values should be combined instead of overridden, a
+instance of +PropertyValueCombinationPolicy+ can be registered, which allows to add more detailed behaviour how values
+are combined.
+
+Access to the complete configuration +Map+ is performing the same resolution and combination algorithm, but for all
+key/value pairs available.
+
+=== Filtering the raw properties:
+Each raw configuration value evaluated is filtered by the ordered filter chain, as long as there are any changes
+applied by any of the filters called. This ensures that also transitive replacements by filters are possible.
+If, after a configurable number of evaluation loops still values are changes during each loop, the filtering
+process is aborted, since a non-resolvable circular filter issue is assumed.
+
+The output is the final configuration value as type +String+.
+
+=== Applying type conversion:
+Finally, if the required target type, does not match +Java.lang.String+, all registered +PropertyConverter+
+instances targeting the corresponding target type are asked to convert the given (String-based) configuration
+entry to the required (non String) target type.
+
+Hereby the first _non-null_ value returned by a +PropertyConverter+ is used as the final typed configuration value and
+returned to the caller.
+
+=== Advanced Features
+Basically the bahaviour of Tamaya can be customized using the following mechanisms. Basically configuration can be
+provided using the following mechanism:
+
+* Registering additional (default) +PropertySource+ instances. Depending on their _ordinal value_ they
+  will override or extend existing configuration.
+* Registering additional (default) +PropertySourceProvider+ instances.that can provide multiple +PropertySource+
+  instances.
+
+Additionally Tamaya provides hooks for further adapting the internal workings:
+
+* Adapting the way how multiple entries with the same key are combined (+PropertyValueCombinationPolicy+). This
+  may be useful, if overriding is not the way how entries of the same key should be combined. An example, where
+  such an alternate scenario is useful are list entries, that combine all entries encountered to a collecting
+  list entry.
+* Adding additional support for new target types configurable by registering additional +PropertyConverter+
+  instances. This can be used for adding support for new types as well as for adding support for additional
+  formats.
+* Complex extensions may adapt the complete +ConfigurationContext+, using the +ConfigurationContextBuilder+ and
+  reapply the changed instance using +ConfigurationProvider.setConfigurationContext(ConfigurationContext)+.
+  This is one example how to react on dynamic changes detected on configuration files read.
+* Registering additional +PropertyFilter+ instances, that filter the configuration values extracted.
+* Registering an alternate +ServiceContext+ to support alternate runtime containers, e.g. a CDI container.
+* A combination of all above.
+
+Additionally instances of +ConfigOperator, ConfigQuery+ can be provided that provide additional functionality
+that should not be globally visible. It is recommended to provide them from a singleton accessor, hereby hiding
+the effective implementation classes.
+
+== Component Loading
+
+As mentioned the component loading of Tamaya can be adapted. By default the JDK +ServiceLoader+ API is used to determine
+a +ServiceContext+ implementation that should control
+Tamaya's overall component loading. If not found, a default implementation is registered, which relies on the
+Java +hava.util.ServiceLoader+ mechanism. This behaviour can be changed by implementing your own version
+of the +ServiceContext+ interface, annotating it with a +@Priority+ annotation and registering it using the
++java.util.ServiceLoader+ mechanism.
+
+== Compatibility
+
+The Tamaya API is compatible with Java 7 and beyond.
+
+== Further Documentation
+
+Being here we recommend to have a look at the more detailed documentation of Tamaya's link:API.html[API and SPI],
+and of its current available link:extensions.html[modules].

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/Requirements.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/Requirements.adoc b/src/site/asciidoc/Requirements.adoc
new file mode 100644
index 0000000..1c6ead1
--- /dev/null
+++ b/src/site/asciidoc/Requirements.adoc
@@ -0,0 +1,250 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+[[Requirements]]
+== Requirements
+=== Core Configuration Requirements
+==== General
+
+Tamaya must provide a Java SE API for accessing key/value based configuration. Hereby
+
+* +Configuration+ is modelled by an interface
+* +Configuration+ is organized as key/value pairs, using a subset of functionality present on +Map<String,String>+ as
+  follows:
+  ** access a value by key (+get+)
+  ** check if a value is present (+containsKey+)
+  ** get a set of all defined keys (+keySet+)
+  ** a configuration must be convertible to a +Map+, by calling +toMap()+
+  ** a configuration must provide access to its meta information.
+* +Configuration+ value access methods must never return null.
+* The API must support undefined values.
+* The API must support passing default values, to be returned if a value is undefined.
+* The API must allow to throw exceptions, when a value is undefined. Customized exceptions hereby should be supported.
+* Properties can be stored in the classpath, on a file or accessible by URL.
+* Properties can be stored minimally in properties, xml-properties or ini-format.
+
+
+==== Minimalistic Property Source
+
+For enabling easy integration of custom built configuration sources a minimalistic API/SPI must be defined, that
+
+* is modelled by an interface
+* is a minimal subset of +Configuration+ necessary to implement a configuration.
+* must be convertible to a "Configuration+.
+
+==== Extension Points
+
+For supporting more complex scenarios, +Configuration+
+
+* must implement the composite pattern, meaning new +Configuration+ instances can be created by combining existing
+  configurations.
+* must be adaptable, by creating a new configuration by applying a +UnaryOperator<COnfiguration>+ to it.
+* must be queryable, by passing a +ConfigQuery+ to an +Configuration+ instance.
+
+
+==== Type Safety
+
+Besides Strings +Configuration+ should also support the following types:
+
+* Primitive types
+* Wrapper types
+* All other types (by using a +PropertyAdapter+
+
+Hereby type conversion should be done as follows:
+
+. Check if for the given target type an explicit adapter is registered, if so, use the registered adapter.
+. If no adapter is present, check if the target type T has static methods called +T of(String), T getInstance(String), T valueOf(String), T from(String)+. If so
+use this method to create the non value of T.
+. Check if the target type has a constructor T(String). If so, try to instantiate an instance using the constructor.
+. Give up, throw a IllegalArgument exception.
+
+=== Configuration Fomats
+
+By default Tamaya support the following configuration formats:
+
+* .properties
+* .xml properties
+* .ini files
+
+It must be possible to add additional formats by registering them with the current +ServiceContext+.
+
+=== Mutability
+
+* Configurations can be mutable, mutability can be accessed as a property.
+* Configuration can be changed by collecting the changes into a +ConfigCHangeSet+ and apply this set to the
+  given +Configuration+ instance.
+* Besides the points above, +Configuration+ is immutable.
+
+=== Serializability and Immutability of Configuration
+
+* Configuration is modelled as a service. Therefore serialization may not work. This can be mitigated by adding
+  a freeze feature, where the know key/value pairs are extracted into an immutable and serializable form.
+
+=== Configuration Combination Requirements
+
+At least the following composition policies must be supported:
+
+* override: subsequent entries override existing ones.
+* aggregate-exception: key/values were added, in case of conflicts a +ConfigException+ must be thrown.
+* aggregate-ignore-duplicates: similar to union, whereas duplicates are ignored (leaving the initial value loaded).
+* aggregate-combine: conflicting entries were resolved by adding them both to the target configuration by
+  redefining partial keys.
+* custom: any function determining the key/values to be kept must be possible
+
+When combining configuration it must also be possible to override (file/classpath) configuration by
+
+* system properties.
+* command line arguments.
+
+
+=== Configuration Injection
+
+As metnioned configuration can be injected by passing a unconfigured instance of an annotated class to the
++Configuration.configure+ static method:
+
+[source, java]
+.Configuring a POJO
+----------------------------------------------------
+MyPojo instance = new MyPojo();
+Configuration.configure(instance);
+----------------------------------------------------
+
+Hereby
+* It must be possible to define default values to be used, if no valid value is present.
+* It must be possible to define dynamic expressions, at least for default values.
+* The values configured can be reinjected, if the underlying configuration changes. This should also be the case
+  for final classes, such as Strings.
+* Reinjection should be controllable by an loading policy.
+* It must be possible to evaluate multiple keys, e.g. current keys, and as a backup deprecated keys
+  from former application releases.
+* It must be possible to evaluate multiple configurations.
+* The type conversion of the properties injected must be configurable, by defining a +PropertyAdapter+.
+* The value evaluated for a property (before type conversion) must be adaptable as well.
+* It must be possible to observe configuration changes.
+
+The following annotations must be present at least:
+
+* *@ConfiguredProperty* defining the key of the property to be evaluated. It takes an optional value, defining the
+  property name. It must be possible to add multiple annotations of this kind to define an order of evaluation
+  of possible keys.
+* *@DefaultValue* (optional) defines a default String value, to be used, when no other key is present.
+* *@WithConfig* (optional) defines the name of the configuration to be used. Similar to +@ConfiguredProperty+ multiple
+  configuration can be defined for lookup.
+* *@WithConfigOperator* allows to adapt the String value evaluated, *before* it is passed as input to injection or
+  type conversion.
+* *@WithPropertyAdapter* allows to adapt the conversion to the required target type, hereby overriding any default
+  conversion in place.
+* *@WithLoadPolicy* allows to define the policy for (re)injection of configured values.
+* *@ObservesConfigChange* allows to annotate methods that should be called on configuration changes.
+* *@DefaultAreas" allows to define a key prefix key to be used for the configured key, if no absolute key
+  is defined.
+
+=== Configuration Templates
+
+For type safe configuration clients should be able to define an interface and let it implement by the
+configuration system based on +Configuration+ available:
+
+* Clients define an interface and annotate it as required (similar to above)
+* The interface methods must not take any arguments
+* The configuration system can be called to return such an interface implementation.
+* The configuration system returns a proxy hereby providing type-safe access the values required.
+* Similar to configured types also templates support multiple values and custom adapters.
+* It is possible to listen on configuration changes for templates, so users of the templates
+  may react on configuration changes.
+
+The following snippet illustrates the requirements:
+
+[source, java]
+.Type Safe Configuration Template Example
+----------------------------------------------------
+public interface MyConfig {
+
+  @ConfiguredProperty("myCurrency")
+  @DefaultValue("CHF")
+  String getCurrency();
+
+  @ConfiguredProperty("myCurrencyRate")
+  Long getCurrencyRate();
+
+  @ConfigChange
+  default configChanged(ConfigChange event){
+     ...
+  }
+
+}
+----------------------------------------------------
+
+Templates can be accessed by calling the +Configuration.current(Class)+ method:
+
+[source, java]
+.Accessing a type safe Configuration Template
+----------------------------------------------------
+MyConfig config = Configuration.current(MyConfig.class);
+----------------------------------------------------
+
+[[RequirementsServer]]
+=== Server Configuration Requirements
+
+* Ensure Configuration can be transferred over the network easily.
+* Beside serializability text based formats for serialization in +XML+ and +JSON+ must be defined.
+* A management API must be defined, which allows to inspect the configuration in place, e.g. using
+   JMX or REST services.
+
+[[RequirementsJavaEE]]
+
+Java EE leads to the following requirements:
+
+* Configuration must be contextual, depending on the current runtime context (e.g. boot level, ear, war, ...).
+* Hereby contextual aspects can even exceed the levels described above, e.g. for SaaS scenarios.
+* Resources can be unloaded, e.g. wars, ears can be restarted.
+* The different contextual levels can also be used for overriding, e.g. application specific configuration
+may override ear or system configuration.
+* Configuration may be read from different sources (different classloaders, files, databases, remote locations).
+* Configuration may be read in different formats (deployment descriptors, +ServiceLoader+ configuration, alt-DD feature, ...)
+* JSF also knows the concept of stages.
+* Many SPI's of Java EE require the implementation of some well defined Java interface, so it would be useful if the
+   configuration solution supports easy implementation of such instances.
+* In general it would be useful to model the +Environment+ explicitly.
+* Configuration used as preferences is writable as well. This requires mutability to be modelled in way, without the
+   need of synchronization.
+* JNDI can be used for configuration as well.
+
+[[RequirementsMultitenancy]]
+
+Configurations made in the tenant or user layer override the default app configuration etc., so
+
+* It must be possible to structure Configuration in layers that can override/extend each other.
+* The current environment must be capable of mapping tenant, user and other aspects, so a corresponding configuration
+  (or layer) can be derived.
+
+[[RequirementsExtensions]]
+=== Extensions Requirements
+
+It must be possible to easily add additional functionality by implementing external functional interfaces operating
+on +Configuration+.
+
+* +UnaryOperator<Configuration>+ for converting into other version of +Configuration+.
+* +ConfigQuery<T>+ extending +Function<T, Configuration>+.
+
+[[RequirementsNonFunctional]]
+=== Non Functional Requirements
+THe following non-functional requirements must be met:
+
+* tbd
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/community.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/community.adoc b/src/site/asciidoc/community.adoc
index c10b119..d2917a3 100644
--- a/src/site/asciidoc/community.adoc
+++ b/src/site/asciidoc/community.adoc
@@ -17,15 +17,16 @@
 // under the License.
 //
 
+include::temp-properties-files-for-site/attributes.adoc[]
 
-= Community
+== Community
 :toc:
 :sectnums:
 
 // Document properties
 :twitterhandle: tamayaconf
 
-== Users
+=== Users
 
 // todo Fix the links when finishing the new homepage, Oliver B. Fischer, 2015-09-12
 If you are a new user and you would like to participate in Tamaya
@@ -44,7 +45,7 @@ You are very welcome to follow our twitter account
 http://twitter.com/{twitterhandle}[@{twitterhandle}^] and spread the word
 of Tamaya with tweets, blog entries,...
 
-== Getting Involved
+=== Getting Involved
 
 Everybody is welcome to get involved with our community. You can find general
 information at http://apache.org/foundation/getinvolved.html and
@@ -59,7 +60,7 @@ documentation.html[instructions about the Documentation]
 that addresses how to contribute, render and publish it.
 
 
-=== Contributors
+==== Contributors
 
 Before you get a committer you have to contribute to our effort.
 E.g. you can help users, participate in discussions on the dev list,
@@ -69,14 +70,14 @@ or http://www.apache.org/licenses/cla-corporate.txt[Software Grant and Corporate
 and send it to secretary at apache dot org (or fax it) as early as possible.
 
 If you would like to submit a patch through Jira, you can have a look at the
-link:devguide/050-gitworkflow.html[suggested Git approach].
+link:devguide.html[suggested Git approach].
 
 // todo Fix the link when finishing the new homepage, Oliver B. Fischer, 2015-09-12
 The lists of current contributors and committers can be found
 on the link:contributors.html[contributers page^].
 
 
-=== Committers
+==== Committers
 
 Before you read this section, please ensure that you have read
 the contributor section. All of you are welcome to join our development effort.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/devguide.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/devguide.adoc b/src/site/asciidoc/devguide.adoc
new file mode 100644
index 0000000..a61a10e
--- /dev/null
+++ b/src/site/asciidoc/devguide.adoc
@@ -0,0 +1,209 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+// .
+//   http://www.apache.org/licenses/LICENSE-2.0
+// .
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+== Apache Tamaya -- Development Guide
+
+=== Suggested Git Workflows
+
+==== Avoid git pull!
+
+`git pull` should never get invoked if you have dirty files lying around
+or if your branch is ahead of master. This will always lead to
+some dirty artifacts in the commit history:
+
+----
+Merge branch 'master' of http://git-wip-us.apache.org/tamaya into master
+----
+
+==== Use git pull --rebase
+
+An easy version for getting rid of the auto-merges is using
+
+----
+$ git pull --rebase
+----
+
+Please note that this sometimes trashes your working tree if there
+are unmergeable files around. Cleaning this up with a forced manual
+rebase is not something we would recommend for a git beginner.
+
+==== Working in an own branch
+
+This is actually the suggested way to prevent auto-merges. Create an own
+branch where you do your feature work. Either do all your work in one
+branch or create one branch per feature you are working on.
+
+----
+$ git branch mybranch
+----
+
+After you finished your feature, first add (`git add`) and commit (`git commit`) your work.
+Check with `git status` that you don't have any dirty files and uncommitted
+changes around. You can use `git stash` to 'backup' unfinished work.
+
+Then switch back to the master branch and pull changes
+done by other committers in the meantime.
+
+----
+$ git checkout master
+$ git pull --rebase
+----
+
+You should now get all the changes done by other committers and
+the will get applied to your local master branch. Now go back to
+your private branch and rebase your locally performed work to the HEAD of master.
+
+----
+$ git checkout mybranch
+$ git rebase master
+----
+
+If you got conflicts, you will get lines with ">>>>" added to those
+files. Resolve those conflicts manually, add them and finish the rebase.
+
+Check with `git-status` and `gitk` if the merge went well and the history now contains your changes.
+If all is well, go back to the master branch and merge your changes in.
+
+----
+$ git pull --rebase     // (just for safety, you should see no changes)
+$ git checkout master
+$ git merge mybranch
+----
+
+Finally you can push your changes to the ASF git repo
+
+----
+$ git push
+----
+
+[[contributing-workflow]]
+=== Contribution workflow
+
+==== Creating patches
+
+You should use the following workflow, if you plan to contribute
+patches or new features to Tamaya.
+
+First update you local copy of the repository:
+
+----
+$ git checkout master
+$ git pull --rebase
+----
+
+Then create a new local branch for your work. It's good practice to name
+it after the corresponding JIRA issue.
+
+----
+$ git checkout -b TAMAYA-XXX
+----
+
+Now you can start to work on your patch. When you are finished, commit your changes. But don't forget to **add the name
+of the JIRA issue to the commit message**.
+
+----
+$ git add -am "TAMAYA-XXX: Fixed some issue"
+----
+
+For small patches we recommend to do a single commit containing your changes. For larger contributions you should try
+to group your work into separate sub-tasks that you can commit one by one.
+
+Before you create your patch you should make sure that your local repository is up to date with the master repository.
+This is very important especially if you work on your branch for a long time. Use the following commands to pull the
+latest changes from the upstream repository and rebase your branch against the current master.
+
+
+----
+$ git checkout master
+$ git pull --rebase
+$ git checkout TAMAYA-XXX
+$ git rebase master
+----
+
+Now you are ready to create your patch:
+
+----
+$ git checkout TAMAYA-XXX
+$ git format-patch --stdout master > ../TAMAYA-XXX.patch
+----
+
+Please attach the resulting patch file to the correspoding JIRA issue.
+
+==== Applying patches
+
+If you are a committer and want to apply a patch you should do so in a separate branch.
+
+----
+$ git checkout -b TAMAYA-XXX
+----
+
+Then apply the patch using `git am` and rebase it against the master branch.
+
+----
+$ git am < ../TAMAYA-XXX.patch
+$ git rebase master
+----
+
+After reviewing the changes and testing the code, the changes are ready to 
+be merged into the master branch:
+
+----
+$ git checkout master
+$ git merge TAMAYA-XXX
+$ git branch -d TAMAYA-XXX
+----
+
+==== Discussion workflow (optional)
+
+All discussions which lead to a decision take place on the mailing list. 
+Sometimes it's required to show-case an idea esp. if the solution is 
+more than few lines. As shown above it makes sense to use local branches 
+for developing new parts. Git allows to push such local branches to a 
+public repository. So it's easier to share it with the community
+for discussing it. The following listings show an example in combination 
+with GitHub - for sure it works with any hosting platform like BitBucket, 
+Google-Code,... The only important part here is that such branches 
+*NEVER* get pushed to the main Apache repository to keep the commit history 
+as clean as possible.
+
+==== Initial setup
+
+----
+$ git clone https://git-wip-us.apache.org/repos/asf/incubator-tamaya.git
+$ git remote add discuss https://[username]@github.com/[username]/[repo-name].git
+$ git push -u discuss master
+----
+
+==== Branches for discussions
+
+----
+$ git checkout -b TAMAYA-XXX # 1-n commits
+$ git push discuss TAMAYA-XXX # share the link to the branch for the discussions
+----
+
+*If the community agrees on the suggested change, the implementation will be applied to the origin master. A committer
+has to follow the steps described above for the basic workflow to keep the commit history simple, clean and straight.
+A contributor has to follow the steps described above for creating a patch.*
+
+==== Delete the branch again
+
+----
+$ git push discuss :TAMAYA-XXX
+$ git branch -d TAMAYA-XXX
+----

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/devguide/index.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/devguide/index.adoc b/src/site/asciidoc/devguide/index.adoc
deleted file mode 100644
index 599d9a1..0000000
--- a/src/site/asciidoc/devguide/index.adoc
+++ /dev/null
@@ -1,207 +0,0 @@
-= Apache Tamaya -- Development Guide
-//:name: Tamaya
-//:rootpackage: org.apache.tamaya
-//:title: Apache Tamaya
-//:revnumber: 0.1-SNAPSHOT
-//:revremark: Incubator
-//:revdate: November 2014
-//:longversion: {revnumber} ({revremark}) {revdate}
-//:authorinitials: ATR
-//:author: Anatole Tresch
-//:email: <an...@apache.org>
-:source-highlighter: coderay
-//:website: http://tamaya.incubator.apache.org/
-:toc:
-//:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-
-== Suggested Git Workflows
-
-=== Avoid git pull!
-
-`git pull` should never get invoked if you have dirty files lying around
-or if your branch is ahead of master. This will always lead to
-some dirty artifacts in the commit history:
-
-----
-Merge branch 'master' of http://git-wip-us.apache.org/tamaya into master
-----
-
-=== Use git pull --rebase
-
-An easy version for getting rid of the auto-merges is using
-
-----
-$ git pull --rebase
-----
-
-Please note that this sometimes trashes your working tree if there
-are unmergeable files around. Cleaning this up with a forced manual
-rebase is not something we would recommend for a git beginner.
-
-=== Working in an own branch
-
-This is actually the suggested way to prevent auto-merges. Create an own
-branch where you do your feature work. Either do all your work in one
-branch or create one branch per feature you are working on.
-
-----
-$ git branch mybranch
-----
-
-After you finished your feature, first add (`git add`) and commit (`git commit`) your work.
-Check with `git status` that you don't have any dirty files and uncommitted
-changes around. You can use `git stash` to 'backup' unfinished work.
-
-Then switch back to the master branch and pull changes
-done by other committers in the meantime.
-
-----
-$ git checkout master
-$ git pull --rebase
-----
-
-You should now get all the changes done by other committers and
-the will get applied to your local master branch. Now go back to
-your private branch and rebase your locally performed work to the HEAD of master.
-
-----
-$ git checkout mybranch
-$ git rebase master
-----
-
-If you got conflicts, you will get lines with ">>>>" added to those
-files. Resolve those conflicts manually, add them and finish the rebase.
-
-Check with `git-status` and `gitk` if the merge went well and the history now contains your changes.
-If all is well, go back to the master branch and merge your changes in.
-
-----
-$ git pull --rebase     // (just for safety, you should see no changes)
-$ git checkout master
-$ git merge mybranch
-----
-
-Finally you can push your changes to the ASF git repo
-
-----
-$ git push
-----
-
-[[contributing-workflow]]
-== Contribution workflow
-
-=== Creating patches
-
-You should use the following workflow, if you plan to contribute
-patches or new features to Tamaya.
-
-First update you local copy of the repository:
-
-----
-$ git checkout master
-$ git pull --rebase
-----
-
-Then create a new local branch for your work. It's good practice to name
-it after the corresponding JIRA issue.
-
-----
-$ git checkout -b TAMAYA-XXX
-----
-
-Now you can start to work on your patch. When you are finished, commit your changes. But don't forget to **add the name
-of the JIRA issue to the commit message**.
-
-----
-$ git add -am "TAMAYA-XXX: Fixed some issue"
-----
-
-For small patches we recommend to do a single commit containing your changes. For larger contributions you should try
-to group your work into separate sub-tasks that you can commit one by one.
-
-Before you create your patch you should make sure that your local repository is up to date with the master repository.
-This is very important especially if you work on your branch for a long time. Use the following commands to pull the
-latest changes from the upstream repository and rebase your branch against the current master.
-
-
-----
-$ git checkout master
-$ git pull --rebase
-$ git checkout TAMAYA-XXX
-$ git rebase master
-----
-
-Now you are ready to create your patch:
-
-----
-$ git checkout TAMAYA-XXX
-$ git format-patch --stdout master > ../TAMAYA-XXX.patch
-----
-
-Please attach the resulting patch file to the correspoding JIRA issue.
-
-=== Applying patches
-
-If you are a committer and want to apply a patch you should do so in a separate branch.
-
-----
-$ git checkout -b TAMAYA-XXX
-----
-
-Then apply the patch using `git am` and rebase it against the master branch.
-
-----
-$ git am < ../TAMAYA-XXX.patch
-$ git rebase master
-----
-
-After reviewing the changes and testing the code, the changes are ready to 
-be merged into the master branch:
-
-----
-$ git checkout master
-$ git merge TAMAYA-XXX
-$ git branch -d TAMAYA-XXX
-----
-
-=== Discussion workflow (optional)
-
-All discussions which lead to a decision take place on the mailing list. 
-Sometimes it's required to show-case an idea esp. if the solution is 
-more than few lines. As shown above it makes sense to use local branches 
-for developing new parts. Git allows to push such local branches to a 
-public repository. So it's easier to share it with the community
-for discussing it. The following listings show an example in combination 
-with GitHub - for sure it works with any hosting platform like BitBucket, 
-Google-Code,... The only important part here is that such branches 
-*NEVER* get pushed to the main Apache repository to keep the commit history 
-as clean as possible.
-
-=== Initial setup
-
-----
-$ git clone https://git-wip-us.apache.org/repos/asf/incubator-tamaya.git
-$ git remote add discuss https://[username]@github.com/[username]/[repo-name].git
-$ git push -u discuss master
-----
-
-=== Branches for discussions
-
-----
-$ git checkout -b TAMAYA-XXX # 1-n commits
-$ git push discuss TAMAYA-XXX # share the link to the branch for the discussions
-----
-
-*If the community agrees on the suggested change, the implementation will be applied to the origin master. A committer
-has to follow the steps described above for the basic workflow to keep the commit history simple, clean and straight.
-A contributor has to follow the steps described above for creating a patch.*
-
-=== Delete the branch again
-
-----
-$ git push discuss :TAMAYA-XXX
-$ git branch -d TAMAYA-XXX
-----

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/download.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/download.adoc b/src/site/asciidoc/download.adoc
index e81332b..78e0700 100644
--- a/src/site/asciidoc/download.adoc
+++ b/src/site/asciidoc/download.adoc
@@ -20,9 +20,7 @@
 include::temp-properties-files-for-site/attributes.adoc[]
 :linkattrs: true
 
-= Downloading Apache Tamaya
-
-// @todo Is a ToC here really required? :toc:
+== Downloading Apache Tamaya
 
 The latest release is Apache Tamaya {tamaya_version_current}.
 You can download it it from the


[03/11] incubator-tamaya git commit: Moved documentation to site part.

Posted by an...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/injection.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/injection.adoc b/src/site/asciidoc/userguide/uc/injection.adoc
new file mode 100644
index 0000000..4468d6c
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/injection.adoc
@@ -0,0 +1,31 @@
+=== Configuration Injection
+
+Users want to be able to polulate configured items by injecting configured values. Hereby
+
+* the lifecycle of the instances is not managed by Tamaya
+* all references to items configured are managed as weak references, to prevent memoryleaks.
+* Injection should if possible evaluate the properties by defaults. Even properties without
+  any annotations are possible.
+* Users expect to exclude certain properties from calculation
+* Beside injection of properties it is also possible to call setter methods with one parameter similarly.
+* Basically injection is performed, when the instance is passed to the Tamaya configuration system. It should also
+  be possible to inject/provide final values, especially Strings. Changes on configured values should be
+  reflected in the current value. Setters methods similarly can be called again, with the new values, on changes.
+* Users expect to control dynamic values and recall of setter methods, basically the following strategies should be
+  supported:
+  ** inject only once and ignore further changes.
+  ** reinject/reinitialize on each change
+
+* Dynamic Values can easily be modeled as +ConfiguredValue+ instances, which should have the following functionality:
+  ** access the current value
+  ** access the new value
+  ** access the latest value access time in ms
+  ** access the latest value update time in ms
+  ** evaluate easily if the value has changed since the last access
+  ** accept the change
+  *** as a shortcut it should be possible to accept the change on access of the value implicitly, hereby always accessing
+      the latest valid value.
+  ** ignore the change
+  ** register +Consumer<DynamicValue>+ liasteners to listen on the changes (ans also removing them later again).
+
+All observing functionality can be done completely asynchronously and in parallel.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/java8.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/java8.adoc b/src/site/asciidoc/userguide/uc/java8.adoc
new file mode 100644
index 0000000..0cdf069
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/java8.adoc
@@ -0,0 +1,14 @@
+=== Java 8 Functional Support
+
+Users want to be able to benefit from the new programming styles introduced with Java 8. Configuration
+should provide extension points for different aspects, where additional code can be hooked in easily.
+In short: were possible functional interfaces should be modelled.
+
+Examples:
+
+* code that converts a configuration to another kind of configuration: +UnaryOperator<Configuration>+
+* code that creates any kind of result based on a configuration: +Function<Configuration,T>+
+* Adapters for type conversion are defined as +Function<String,T>+
+* Key, value filters ccan be modelled as +BiFunction<String,String,String>+
+* etc.
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/locations.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/locations.adoc b/src/site/asciidoc/userguide/uc/locations.adoc
new file mode 100644
index 0000000..5e0f774
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/locations.adoc
@@ -0,0 +1,10 @@
+=== Configuration Locations
+
+Users want to be able to
+
+* read configuration from different locations.
+* By default classpath and file resources are
+  supported. But similarly remote access using a JSON ReST call should be possible.
+* Tamaya should define a JSON and XML format for configuration.
+* Configuration locations should be scannable using ant-styled resource patterns, if possible.
+* Scanning and reading logic can be modularized by using a +ConfigReader+ interface.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/management.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/management.adoc b/src/site/asciidoc/userguide/uc/management.adoc
new file mode 100644
index 0000000..ff997a5
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/management.adoc
@@ -0,0 +1,7 @@
+=== MX/ReST Management
+
+Users want to be have comprehensive management support, which should allow
+
+* to change configuration
+* to remove configuration
+* to view configuration and its provider details
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc b/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc
new file mode 100644
index 0000000..ee185a0
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/minimal-propertysource.adoc
@@ -0,0 +1,6 @@
+=== Minimal Property Source SPI
+
+Users expect that implementing an additional configuration property source is as easy as possible.
+So there should be an SPI defined that allows any kind of data source to be used for providing configuration data.
+The interface to be implemented is expected to be minimal to reduce the implementation burden. Default
+methods should be used where possible, so only a few methods are expected to be required to implement.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/multiple-configurations.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/multiple-configurations.adoc b/src/site/asciidoc/userguide/uc/multiple-configurations.adoc
new file mode 100644
index 0000000..2ee133f
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/multiple-configurations.adoc
@@ -0,0 +1,14 @@
+=== Multiple Configurations
+
+When systems grow they must be modularized to keep control. Whereas that sounds not really fancy, it leads to additional
+aspects to be considered by a configuration system.
+
+* Different code modules, libraries, plugins or products want to have their "own" separated configuration.
+* Similar it should be possible to add fully specific additional configurations.
+
+The default configuration hereby should always be present, whereas additional configurations are optional.
+Users want to be able to check the availability of such an additional configuration.
+
+Of course, additional configuration must be identifiable. The best way to do is to be discussed, nevertheless the
+mechanism must not depend on Java EE and the identifying keys must be serializable easily.
+Basically simple names are sufficient and woukld provide exact this required functionality.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/scannable-properties.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/scannable-properties.adoc b/src/site/asciidoc/userguide/uc/scannable-properties.adoc
new file mode 100644
index 0000000..e2a6b64
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/scannable-properties.adoc
@@ -0,0 +1,4 @@
+=== Scannable Properties
+
+If possible configuration should be scannable, meaning it should be possible to evaluate the keys available.
+The corresponding capabilities should be accessible by a +isScannable()+ method.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/service-context.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/service-context.adoc b/src/site/asciidoc/userguide/uc/service-context.adoc
new file mode 100644
index 0000000..ceeea4a
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/service-context.adoc
@@ -0,0 +1,15 @@
+=== Adaptable Service Context
+
+Tamaya should support an adaptable +ServiceContext+ to resolve any kind of implememntation services, both API services as core
+framework services. The +ServiceContext+ should be dynamically replecable by configuring an alternate instance of
+using the Java *ServiceContet+.
+
+This decouples component usage from its load and management part and als greatly simplifies integration with
+new/alternate runtime environments.
+The service context is exptected to provide
+
+* single singleton instances: these service can be cached.
+* access to multiple instances which implement some commons SPI interface.
+* as useful priorization of components is done by the model itself.
+
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/simple-access.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/simple-access.adoc b/src/site/asciidoc/userguide/uc/simple-access.adoc
new file mode 100644
index 0000000..d4ada1e
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/simple-access.adoc
@@ -0,0 +1,25 @@
+=== Simple Access
+
+Users want to be able to access configuration in a unified way both in SE and EE. EE may provide additional
+mechanism, such as injection, but the SE mechanisms should work as well, so any code written in SE is fully
+portable to EE as well.
+This can only be achieved by providing a static accessor, e.g.
+
+[source,java]
+------------------------------------------------------------
+Configuration config = Configuration.current();
+------------------------------------------------------------
+
+The call above should work exactly the same in EE. To enable this the static call must be delegated in the
+internals of the singleton, depending on the runtime. In EE the executing component can behave contextually,
+or even be loaded within the CDI environment (at least for post loading, application runtime aspects, but not earlier).
+
+Additionally in EE it should also be possible to inject Configuration, which gives you the same results as the call
+above:
+
+[source,java]
+------------------------------------------------------------
+@Inject
+private Configuration cfg;
+------------------------------------------------------------
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/simple-property-access.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/simple-property-access.adoc b/src/site/asciidoc/userguide/uc/simple-property-access.adoc
new file mode 100644
index 0000000..81fb879
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/simple-property-access.adoc
@@ -0,0 +1,9 @@
+=== Simple Lookup of Properties
+
+Users just want to create a configuration ad hoc, from given property files. The
+files could be locally in the file system, on the classpath.
+
+Tamaya should provide a simple Java API for accessing key/value based configuration. Hereby users want to access
+properties as simple String values.
+
+Hereby returning Java 8 Optional values must be considered as well, instead of returning +null+.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/templates.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/templates.adoc b/src/site/asciidoc/userguide/uc/templates.adoc
new file mode 100644
index 0000000..2aab3d2
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/templates.adoc
@@ -0,0 +1,12 @@
+=== Configuration Templates
+
+Users want to be able to let Tamaya implement an interface template based on configuration.
+This use case is pretty similar to the injection use case. Basically the values are not injected,
+but cached within the template proxy returned, e.g. as +DynamicValue+.
+Similarly it could even be possible to define callback methods (default methods)
+or register listeners to DynamicValue instances returned.
+
+Templates hereby can easily be managed, but provide a excellent mechanism to provide type-safe configuration
+to clients in a very transparent way. Details can be controlled by using the same annotations as for
+normal configuration injection.
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/type-safe-properties.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/type-safe-properties.adoc b/src/site/asciidoc/userguide/uc/type-safe-properties.adoc
new file mode 100644
index 0000000..e71d31c
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/type-safe-properties.adoc
@@ -0,0 +1,10 @@
+=== Type Safe Properties
+
+Users just want to access properties not only as Strings, but let Tamaya do the conversion to the required
+or the configred target type. By defauklt all java.lang wrapper and primitive types should be supported, but also
+other common types like date/time types, math numeric types and more.
+
+It must be possible that users can register their own custom types.
+
+Finally users also want to be able to dynamically provide or override type adaption (conversion), when reading a value,
+for a certain key/value pair.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/uc/value-placeholders.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/uc/value-placeholders.adoc b/src/site/asciidoc/userguide/uc/value-placeholders.adoc
new file mode 100644
index 0000000..57857a8
--- /dev/null
+++ b/src/site/asciidoc/userguide/uc/value-placeholders.adoc
@@ -0,0 +1,8 @@
+=== Value Placeholders
+
+Users just want to to be able to add placeholders to the values of configuration (not the keys). The mechanisms for
+resolving the placeholders hereby should be not constraint to one single lanmguage like EL. Instead of different
+replacement strategies should be selectable, e.g. by prefixing an expression with the name of the resolver that
+should do the work (eg +"blabla ${env:HOME} using Java version ${sys:java.version}."+.
+This allows resolution mechanism to be isolated easily and also allows to use simpler mechanisms, if no more complex
+ones like EL are required. This is especially useful to deal with low resource environment like ME.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/078d93b4/src/site/asciidoc/userguide/usecases.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide/usecases.adoc b/src/site/asciidoc/userguide/usecases.adoc
new file mode 100644
index 0000000..fa6b8df
--- /dev/null
+++ b/src/site/asciidoc/userguide/usecases.adoc
@@ -0,0 +1,58 @@
+= Apache Tamaya -- Use Cases
+:name: Tamaya
+:rootpackage: org.apache.tamaya
+:title: Apache Tamaya
+:revnumber: 0.1-SNAPSHOT
+:revremark: Incubator
+:revdate: November 2014
+:longversion: {revnumber} ({revremark}) {revdate}
+:authorinitials: OBF
+:author: Oliver B. Fischer
+:email: <pl...@apache.org>
+:source-highlighter: coderay
+:website: http://tamaya.incubator.apache.org/
+:toc:
+:toc-placement: manual
+:encoding: UTF-8
+:numbered:
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+toc::[]
+
+
+== Use Cases
+
+include::src/site/asciidoc/userguide/uc/simple-access.adoc[]
+include::src/site/asciidoc/userguide/uc/simple-property-access.adoc[]
+include::src/site/asciidoc/userguide/uc/value-placeholders.adoc[]
+include::src/site/asciidoc/userguide/uc/type-safe-properties.adoc[]
+include::src/site/asciidoc/userguide/uc/templates.adoc[]
+include::src/site/asciidoc/userguide/uc/java8.adoc[]
+include::src/site/asciidoc/userguide/uc/locations.adoc[]
+include::src/site/asciidoc/userguide/uc/formats.adoc[]
+include::src/site/asciidoc/userguide/uc/multiple-configurations.adoc[]
+include::src/site/asciidoc/userguide/uc/external-configuration.adoc[]
+include::src/site/asciidoc/userguide/uc/context-dependent-configuration.adoc[]
+include::src/site/asciidoc/userguide/uc/dynamic-provisioning.adoc[]
+include::src/site/asciidoc/userguide/uc/minimal-propertysource.adoc[]
+include::src/site/asciidoc/userguide/uc/scannable-properties.adoc[]
+include::src/site/asciidoc/userguide/uc/combine-configs.adoc[]
+include::src/site/asciidoc/userguide/uc/management.adoc[]
+include::src/site/asciidoc/userguide/uc/service-context.adoc[]
+include::src/site/asciidoc/userguide/uc/injection.adoc[]
+
+


[10/11] incubator-tamaya git commit: Moved all docs to site part. Removed some of the file hierarchies for getting things work.

Posted by an...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/examples.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/examples.adoc b/src/site/asciidoc/examples.adoc
new file mode 100644
index 0000000..9f4892a
--- /dev/null
+++ b/src/site/asciidoc/examples.adoc
@@ -0,0 +1,69 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+= Apache Tamaya -- Examples
+
+toc::[]
+
+== Tamaya Examples
+
+=== Minimal
+
+This example shows the basic functionality that is available when Tamaya is used without any further extensions.
+It shows how configuration can be added to the classpath and how it can be accessed.
+
+=== Simple PropertySource
+
+This example shows how to write and register an additional +PropertySource+ and +PropertySourceProvider+, which is
+the SPI to add your own configuration data and locations. For a more advanced example you may also have a look at
+the provided default metamodels, e.g. the simple metamodel (currently in the experimental part and not shipped with
+the current release).
+
+=== Resources
+
+This example shows how resources can be located using ANT-styled paths and this feature can help you to implement
++PropertySourceProvider+ instances that provide configuration for a set of files/folders at a certain (searchable)
+location, as provided by the resource extension_.
+
+=== Resolver
+
+The resolver example defines a configuration file that illustrates the usage of placeholders that are resolved on
+configuration access, as provided by the _resolver extension_.
+
+=== Injection
+
+The injection sample shows how to inject configuration into a created object instance, or how to instantiate a proxied
+configuration template, which provides a type-safe configuration access mechanism. This functionality is provided
+by the _injection extension_. Hereby neither JSR 330 nor 299 are used, so it is pure and minimal SE based
+implementation.
+
+=== FileObserver
+
+This example shows how the +event extension+ can be used to automatically adapt the current configuration when
+the underlying configuration data is changing, e.g. when new configuration is added to a file folder, or removed or
+adapted.
+
+=== Builder
+
+This example shows how to build a +Configuration+ using a simple pure SE builder API as provided by the
+_builder extension_.
+
+=== Remote
+
+THe remote example shows a simple setup where parts of the +Configuration+ are read remotedly.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions.adoc b/src/site/asciidoc/extensions.adoc
new file mode 100644
index 0000000..ec72f29
--- /dev/null
+++ b/src/site/asciidoc/extensions.adoc
@@ -0,0 +1,105 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+== Apache Tamaya -- Extension Modules
+
+toc::[]
+
+=== Mature Extensions
+
+Mature extensions have a stable API and SPI, similar to the API and Implementations provided.
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Artifact_                                 |_Description_                                |_Links_
+|                                           | N/A: currently no extensions have reached that maturity level.  | -
+|+org.apache.tamaya.ext:tamaya-formats+       |Provides an abstract model for configuration formats   |link:extensions/mod_formats.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-functions+     |Provides several functional extension points.          |link:extensions/mod_functions.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-json+          |Provides format support for JSON based configuration.  |link:extensions/mod_json.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-optional+      |Lets a Tamaya configuration to be used as an optional project extension only.  |link:extensions/mod_optional.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-resolver+      |Provides placeholder and dynamic resolution functionality for configuration values.  |link:extensions/mod_resolver.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-spi-support+   |Tamaya support module for SPI implementation.          |link:extensions/mod_spi-support.html[Documentation]
+|=======
+
+
+=== Extensions
+
+Extensions in _draft state_ are tested well and normally should have rather stable APIs. Nevertheless API changes may
+still occurr, but we try to prevent such changes if possible.
+
+NOTE All extensions currently run on Java 7 as well as on Java 8.
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Artifact_                                   |_Description_                                          |_Links_
+|+org.apache.tamaya.ext:tamaya-builder+       |Provides a fluent-style builder for configurations     | link:extensions/mod_builder.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-classloader-support+  |Manages Tamaya configuration and services considering classloading hierarchies.  |link:extensions/mod_classloader_support.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-events+        |Provides support for publishing configuration changes  |link:extensions/mod_events.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-filter+        |Provides a programmatic filter for config entries.     | link:extensions/mod_filter.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-injection+     |Provides configuration injection services and congiruation template support.  |link:extensions/mod_injection.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-management+    |Provides JMX support for inspecting configuration.     |link:extensions/mod_management.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-model+         |Provides support documenting ang validating configuration during runtime.  |link:extensions/mod_model.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-mutable-config+|Provides API/SPI for writing configuration             |link:extensions/mod_mutable_config.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-remote+        |Provides remote configuration support.                 |link:extensions/mod_remote.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-resources+     |Provides ant-style resource path resolution  |link:extensions/mod_resources.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-server+        |Lets a Tamaya configuration instance provide scoped configuration as a REST service.     |link:extensions/mod_server.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-yaml+          |Support for using yaml as a configuration format.      |link:extensions/mod_yaml.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-collections+   |Collections support.                                   |link:extensions/mod_collections.html[Documentation]
+|=======
+
+=== Integrations
+
+These extensions integrate/bridge Tamayas functionality with other frameworks turning their configuration capabilities
+from a sledgehammer to a scalpell:
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Artifact_                                 |_Description_                                 |_Links_
+|+org.apache.tamaya.ext:tamaya-cdi+         | Java EE/standalone compliant CDI integration | link:extensions/mod_cdi.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-camel+       | Integration for Apache Camel.                | link:extensions/mod_camel.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-spring+      | Integration for Spring / Spring Boot.        | link:extensions/mod_spring.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-osgi+        | Integration for OSGI containers.             | link:extensions/mod_osgi.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-consul+      | Integration with consul clusters.            | link:extensions/mod_consul.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-etcd+        | Integration with etcd clusters.              | link:extensions/mod_etcd.html[Documentation]
+|=======
+
+
+=== Extensions in Experimental Stage
+
+Extensions in _experimental mode_ may still be under discussions. API changes may still happen, so use them
+very carefully and especially give us feedback, so we can improve them before progressing to _draft_ state.
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Artifact_                                 |_Description_                                          |_Links_
+|+org.apache.tamaya.ext:tamaya-jodatime+    |Provides support for JodaTime.                         | link:extensions/mod_jodatime.html[Documentation]
+|+org.apache.tamaya.ext:tamaya-staged+      |Simple configuration extension to add staged config.   | link:extensions/mod_metamodel-staged.html[Documentation]
+|=======
+
+
+=== Integrations in Experimental Stage
+
+Integrations in _experimental mode_ may still be under discussions, or may even not compile ! API changes may still happen, so use them
+very carefully and especially give us feedback, so we can improve them before progressing to _draft_ state.
+
+[width="100%",frame="1",options="header",grid="all"]
+|=======
+|_Artifact_                                     |_Description_                                                     |_Links_
+|+org.apache.tamaya.ext:tamaya-commons+         |Integration with Apache Commons Configuration.                    | -
+|=======

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/index.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/index.adoc b/src/site/asciidoc/extensions/index.adoc
deleted file mode 100644
index 2aab46b..0000000
--- a/src/site/asciidoc/extensions/index.adoc
+++ /dev/null
@@ -1,124 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-Apache Tamaya -- Extension Modules
-==================================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya Extension Modules
-:revnumber: {tamayaVersion}
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-toc::[]
-
-== Mature Extensions
-
-Mature extensions have a stable API and SPI, similar to the API and Implementations provided.
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Artifact_                                 |_Description_                                |_Links_
-|                                           | N/A: currently no extensions have reached that maturity level.  | -
-|+org.apache.tamaya.ext:tamaya-formats+       |Provides an abstract model for configuration formats   |link:mod_formats.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-functions+     |Provides several functional extension points.          |link:mod_functions.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-json+          |Provides format support for JSON based configuration.  |link:mod_json.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-optional+      |Lets a Tamaya configuration to be used as an optional project extension only.  |link:mod_optional.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-resolver+      |Provides placeholder and dynamic resolution functionality for configuration values.  |link:mod_resolver.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-spi-support+   |Tamaya support module for SPI implementation.          |link:mod_spi-support.html[Documentation]
-|=======
-
-
-== Extensions
-
-Extensions in _draft state_ are tested well and normally should have rather stable APIs. Nevertheless API changes may
-still occurr, but we try to prevent such changes if possible.
-
-NOTE All extensions currently run on Java 7 as well as on Java 8.
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Artifact_                                   |_Description_                                          |_Links_
-|+org.apache.tamaya.ext:tamaya-builder+       |Provides a fluent-style builder for configurations     | link:mod_builder.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-classloader-support+  |Manages Tamaya configuration and services considering classloading hierarchies.  |link:mod_classloader_support.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-events+        |Provides support for publishing configuration changes  |link:mod_events.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-filter+        |Provides a programmatic filter for config entries.     | link:mod_filter.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-injection+     |Provides configuration injection services and congiruation template support.  |link:mod_injection.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-management+    |Provides JMX support for inspecting configuration.     |link:mod_management.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-model+         |Provides support documenting ang validating configuration during runtime.  |link:mod_model.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-mutable-config+|Provides API/SPI for writing configuration             |link:mod_mutable_config.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-remote+        |Provides remote configuration support.                 |link:mod_remote.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-resources+     |Provides ant-style resource path resolution  |link:mod_resources.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-server+        |Lets a Tamaya configuration instance provide scoped configuration as a REST service.     |link:mod_server.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-yaml+          |Support for using yaml as a configuration format.      |link:mod_yaml.html[Documentation]
-|=======
-
-== Integrations
-
-These extensions integrate/bridge Tamayas functionality with other frameworks turning their configuration capabilities
-from a sledgehammer to a scalpell:
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Artifact_                                 |_Description_                                 |_Links_
-|+org.apache.tamaya.ext:tamaya-cdi+         | Java EE/standalone compliant CDI integration | link:mod_cdi.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-camel+       | Integration for Apache Camel.                | link:mod_camel.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-spring+      | Integration for Spring / Spring Boot.        | link:mod_spring.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-osgi+        | Integration for OSGI containers.             | link:mod_osgi.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-consul+      | Integration with consul clusters.            | link:mod_consul.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-etcd+        | Integration with etcd clusters.              | link:mod_etcd.html[Documentation]
-|=======
-
-
-== Extensions in Experimental Stage
-
-Extensions in _experimental mode_ may still be under discussions. API changes may still happen, so use them
-very carefully and especially give us feedback, so we can improve them before progressing to _draft_ state.
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Artifact_                                 |_Description_                                          |_Links_
-|+org.apache.tamaya.ext:tamaya-jodatime+    |Provides support for JodaTime.                         | link:mod_jodatime.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-staged+      |Simple configuration extension to add staged config.   | link:mod_metamodel-staged.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-collections+ |Collections support.                                   | link:mod_collections.html[Documentation]
-|+org.apache.tamaya.ext:tamaya-ui+          |UI for Managing Configuration.                         | -
-|=======
-
-
-== Integrations in Experimental Stage
-
-Integrations in _experimental mode_ may still be under discussions, or may even not compile ! API changes may still happen, so use them
-very carefully and especially give us feedback, so we can improve them before progressing to _draft_ state.
-
-[width="100%",frame="1",options="header",grid="all"]
-|=======
-|_Artifact_                                     |_Description_                                                     |_Links_
-|+org.apache.tamaya.ext:tamaya-store+           |SPI for writing configuration.                                    | -
-|+org.apache.tamaya.ext:tamaya-store-file+      |Store SPI implementation using file storage.                      | -
-|+org.apache.tamaya.ext:tamaya-store-hazelcast+ |Store SPI implementation using a Hazelcast Datagrid.              | -
-|+org.apache.tamaya.ext:tamaya-store-ignite+    |Store SPI implementation using Apache Ignite.                     | -
-|+org.apache.tamaya.ext:tamaya-commons+         |Integration with Apache Commons Configuration.                    | -
-|=======

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_builder.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_builder.adoc b/src/site/asciidoc/extensions/mod_builder.adoc
index 2a22217..34472a8 100644
--- a/src/site/asciidoc/extensions/mod_builder.adoc
+++ b/src/site/asciidoc/extensions/mod_builder.adoc
@@ -19,20 +19,6 @@
 
 include::temp-properties-files-for-site/attributes.adoc[]
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.builder
-:title: Apache Tamaya Extension: Builder
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: OBF
-:author: Oliver B. Fischer
-:email: <pl...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:encoding: UTF-8
-:numbered:
 
 [[BuilderCore]]
 == Tamaya Builder (Extension Module)

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_camel.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_camel.adoc b/src/site/asciidoc/extensions/mod_camel.adoc
index 41e97c8..abb5199 100644
--- a/src/site/asciidoc/extensions/mod_camel.adoc
+++ b/src/site/asciidoc/extensions/mod_camel.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Integration with Apache Camel
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.camel
-:title: Apache Tamaya Extension: Integration with Apache Camel
-:revdate: December 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Optional]]
 == Integration with Apache Camel (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_cdi.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_cdi.adoc b/src/site/asciidoc/extensions/mod_cdi.adoc
index 40cf835..e5fe95e 100644
--- a/src/site/asciidoc/extensions/mod_cdi.adoc
+++ b/src/site/asciidoc/extensions/mod_cdi.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Classloader Isolation Support
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.cdi
-:title: Apache Tamaya Extension: CDI Integration of tamaya-injection (SE)
-:revdate: September 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Remote]]
 == Tamaya CDI Integration (Extension Modules)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_classloader_support.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_classloader_support.adoc b/src/site/asciidoc/extensions/mod_classloader_support.adoc
index aa3e42a..f8bf529 100644
--- a/src/site/asciidoc/extensions/mod_classloader_support.adoc
+++ b/src/site/asciidoc/extensions/mod_classloader_support.adoc
@@ -17,29 +17,8 @@
 
 = Apache Tamaya -- Extension: Classloader Isolation Support
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.clsupport
-:title: Apache Tamaya Extension: Classloader Isolation Support
-:revdate: September 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
 [[Remote]]
 == Tamaya Classloader Aware ServiceContext (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_collections.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_collections.adoc b/src/site/asciidoc/extensions/mod_collections.adoc
index 02a1c5e..835a20c 100644
--- a/src/site/asciidoc/extensions/mod_collections.adoc
+++ b/src/site/asciidoc/extensions/mod_collections.adoc
@@ -17,29 +17,8 @@
 
 = Apache Tamaya -- Extension: Collection Support
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.collection
-:title: Apache Tamaya Extension: Collection Support
-:revdate: February 2016
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
 [[Optional]]
 == Tamaya Collection Support (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_consul.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_consul.adoc b/src/site/asciidoc/extensions/mod_consul.adoc
index 497da89..5aa3055 100644
--- a/src/site/asciidoc/extensions/mod_consul.adoc
+++ b/src/site/asciidoc/extensions/mod_consul.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Integration with consul (Hashicorp)
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.consul
-:title: Apache Tamaya Extension: Integration with consul service
-:revdate: February 2016
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Optional]]
 == Integration with consul (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_environment.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_environment.adoc b/src/site/asciidoc/extensions/mod_environment.adoc
index 39f9665..2e5921f 100644
--- a/src/site/asciidoc/extensions/mod_environment.adoc
+++ b/src/site/asciidoc/extensions/mod_environment.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Classloader Isolation Support
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.environment
-:title: Apache Tamaya Extension: Environment
-:revdate: September 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Remote]]
 == Tamaya Environment Model (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_etcd.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_etcd.adoc b/src/site/asciidoc/extensions/mod_etcd.adoc
index d7fc70f..bfb4b30 100644
--- a/src/site/asciidoc/extensions/mod_etcd.adoc
+++ b/src/site/asciidoc/extensions/mod_etcd.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Integration with etcd (Core OS)
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.etcd
-:title: Apache Tamaya Extension: Integration with etcd service
-:revdate: January 2016
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Optional]]
 == Integration with etcd (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_events.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_events.adoc b/src/site/asciidoc/extensions/mod_events.adoc
index a399e0d..d325948 100644
--- a/src/site/asciidoc/extensions/mod_events.adoc
+++ b/src/site/asciidoc/extensions/mod_events.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Events
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.ext.events
-:title: Apache Tamaya Extension: Events
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Core]]
 == Tamaya Events (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_filter.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_filter.adoc b/src/site/asciidoc/extensions/mod_filter.adoc
index 1b810b8..9b3cd0f 100644
--- a/src/site/asciidoc/extensions/mod_filter.adoc
+++ b/src/site/asciidoc/extensions/mod_filter.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Integration with etcd (Core OS)
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.filter
-:title: Apache Tamaya Extension: Progrmmatic filtering of config entries
-:revdate: January 2016
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Optional]]
 == COnfiguration Filtering (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_formats.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_formats.adoc b/src/site/asciidoc/extensions/mod_formats.adoc
index 951cf4e..4905586 100644
--- a/src/site/asciidoc/extensions/mod_formats.adoc
+++ b/src/site/asciidoc/extensions/mod_formats.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Formats
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.ext.formats
-:title: Apache Tamaya Extension: Formats
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Core]]
 == Tamaya Formats (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_functions.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_functions.adoc b/src/site/asciidoc/extensions/mod_functions.adoc
index 9f3d930..041ef75 100644
--- a/src/site/asciidoc/extensions/mod_functions.adoc
+++ b/src/site/asciidoc/extensions/mod_functions.adoc
@@ -17,32 +17,8 @@
 
 = Apache Tamaya -- Extension: Functions
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.functions
-:title: Apache Tamaya Extension: Functions
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: August 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
 [[Core]]
 == Tamaya Functions (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_injection.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_injection.adoc b/src/site/asciidoc/extensions/mod_injection.adoc
index 2b31c16..4b85f3e 100644
--- a/src/site/asciidoc/extensions/mod_injection.adoc
+++ b/src/site/asciidoc/extensions/mod_injection.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Injection
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.ext.injection
-:title: Apache Tamaya Extension: Injection
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Core]]
 == Tamaya Injection (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_jodatime.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_jodatime.adoc b/src/site/asciidoc/extensions/mod_jodatime.adoc
index 0f7f1c9..6dd05b6 100644
--- a/src/site/asciidoc/extensions/mod_jodatime.adoc
+++ b/src/site/asciidoc/extensions/mod_jodatime.adoc
@@ -17,32 +17,8 @@
 
 = Apache Tamaya -- Extension: JodaTime
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.ext.jodatime
-:title: Apache Tamaya Extension: JodaTime
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: April 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: OBF
-:author: Oliver B. Fischer
-:email: <pl...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
 [[Core]]
 == Tamaya JodaTime (Extension Module)
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_json.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_json.adoc b/src/site/asciidoc/extensions/mod_json.adoc
index a851bcf..f85eb55 100644
--- a/src/site/asciidoc/extensions/mod_json.adoc
+++ b/src/site/asciidoc/extensions/mod_json.adoc
@@ -17,47 +17,9 @@
 
 = Apache Tamaya -- Extension: Builder
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.json
-:title: Apache Tamaya Extension: JSON
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[BuilderCore]]
 == Tamaya JSON (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_management.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_management.adoc b/src/site/asciidoc/extensions/mod_management.adoc
index 390c737..b9f8de0 100644
--- a/src/site/asciidoc/extensions/mod_management.adoc
+++ b/src/site/asciidoc/extensions/mod_management.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: JMX Management Access
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.management
-:title: Apache Tamaya Extension: JMX Management Access
-:revnumber: 0.1
-:revremark: Incubator
-:revdate: August 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[ExtModel]]
 == Tamaya Management (JMX Support) (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_metamodel-staged.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_metamodel-staged.adoc b/src/site/asciidoc/extensions/mod_metamodel-staged.adoc
index b6dfd5a..9fb89c3 100644
--- a/src/site/asciidoc/extensions/mod_metamodel-staged.adoc
+++ b/src/site/asciidoc/extensions/mod_metamodel-staged.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Staged PropertySources
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.cdi
-:title: Apache Tamaya Extension: Staged PropertySources
-:revdate: October 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Remote]]
 == Tamaya Metamodel: Staged PropertySources (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_model.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_model.adoc b/src/site/asciidoc/extensions/mod_model.adoc
index add7de9..b1cb3af 100644
--- a/src/site/asciidoc/extensions/mod_model.adoc
+++ b/src/site/asciidoc/extensions/mod_model.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Model Documentation and Validation
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.model
-:title: Apache Tamaya Extension: Model Documentation and Validation
-:revnumber: 0.1
-:revremark: Incubator
-:revdate: August 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[ExtModel]]
 == Tamaya Model Documentation and Validation (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_mutable_config.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_mutable_config.adoc b/src/site/asciidoc/extensions/mod_mutable_config.adoc
index cbe0e8d..a63c262 100644
--- a/src/site/asciidoc/extensions/mod_mutable_config.adoc
+++ b/src/site/asciidoc/extensions/mod_mutable_config.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Mutable Configuration
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.mutableconfig
-:title: Apache Tamaya Extension: Mutable Configuration
-:revnumber: 0.1
-:revremark: Incubator
-:revdate: March 2016
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Core]]
 == Tamaya Mutable Configuration (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_optional.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_optional.adoc b/src/site/asciidoc/extensions/mod_optional.adoc
index 6296f6b..369df68 100644
--- a/src/site/asciidoc/extensions/mod_optional.adoc
+++ b/src/site/asciidoc/extensions/mod_optional.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Optional Tamaya Configuration
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.optional
-:title: Apache Tamaya Extension: Optional Tamaya Configuration
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Optional]]
 == Tamaya Optional Configuration (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_osgi.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_osgi.adoc b/src/site/asciidoc/extensions/mod_osgi.adoc
index b44553d..52518a7 100644
--- a/src/site/asciidoc/extensions/mod_osgi.adoc
+++ b/src/site/asciidoc/extensions/mod_osgi.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extensions: OSGI Integrations
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.osgi
-:title: Apache Tamaya Extensions: OSGI Integration
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: December 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Optional]]
 == Tamaya OSGI Support
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_remote.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_remote.adoc b/src/site/asciidoc/extensions/mod_remote.adoc
index c4c1faf..d82b7ba 100644
--- a/src/site/asciidoc/extensions/mod_remote.adoc
+++ b/src/site/asciidoc/extensions/mod_remote.adoc
@@ -17,32 +17,9 @@
 
 = Apache Tamaya -- Extension: Remote Configuration
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.remote
-:title: Apache Tamaya Extension: Remote Configuration
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Remote]]
 == Tamaya Remote Configuration (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_resolver.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_resolver.adoc b/src/site/asciidoc/extensions/mod_resolver.adoc
index fe0e774..96df765 100644
--- a/src/site/asciidoc/extensions/mod_resolver.adoc
+++ b/src/site/asciidoc/extensions/mod_resolver.adoc
@@ -19,21 +19,6 @@
 
 include::temp-properties-files-for-site/attributes.adoc[]
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.ext.resolver
-:title: Apache Tamaya Extension: Resolver
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:encoding: UTF-8
-:numbered:
-
 
 [[Core]]
 == Tamaya Resolver (Extension Module)

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_resources.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_resources.adoc b/src/site/asciidoc/extensions/mod_resources.adoc
index b30dfa8..92fd240 100644
--- a/src/site/asciidoc/extensions/mod_resources.adoc
+++ b/src/site/asciidoc/extensions/mod_resources.adoc
@@ -19,21 +19,6 @@
 
 include::temp-properties-files-for-site/attributes.adoc[]
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.ext.resources
-:title: Apache Tamaya Extension: Resources
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:encoding: UTF-8
-:numbered:
-
 [[Core]]
 == Tamaya Resources (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_server.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_server.adoc b/src/site/asciidoc/extensions/mod_server.adoc
index 02dfe56..44398d7 100644
--- a/src/site/asciidoc/extensions/mod_server.adoc
+++ b/src/site/asciidoc/extensions/mod_server.adoc
@@ -1,21 +1,3 @@
-= Apache Tamaya -- Extension: Configuration Server
-
-:name: Tamaya
-:rootpackage: org.apache.tamaya.server
-:title: Apache Tamaya Extension: Configuration Server
-:revnumber: 0.1.1
-:revremark: Incubator
-:revdate: March 2015
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
 // Licensed to the Apache Software Foundation (ASF) under one
 // or more contributor license agreements.  See the NOTICE file
 // distributed with this work for additional information
@@ -32,15 +14,12 @@
 // KIND, either express or implied.  See the License for the
 // specific language governing permissions and limitations
 // under the License.
-'''
 
-<<<
+= Apache Tamaya -- Extension: Configuration Server
 
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Remote]]
 == Tamaya Configuration Server (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_spi-support.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_spi-support.adoc b/src/site/asciidoc/extensions/mod_spi-support.adoc
index 7194919..c507c1a 100644
--- a/src/site/asciidoc/extensions/mod_spi-support.adoc
+++ b/src/site/asciidoc/extensions/mod_spi-support.adoc
@@ -17,29 +17,9 @@
 
 = Apache Tamaya -- Extension: Classloader Isolation Support
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.cdi
-:title: Apache Tamaya Extension: SPI Implementation Support Classes
-:revdate: October 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[SPISupport]]
 == Tamaya SPI Support (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_spring.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_spring.adoc b/src/site/asciidoc/extensions/mod_spring.adoc
index a1be554..5f6d65e 100644
--- a/src/site/asciidoc/extensions/mod_spring.adoc
+++ b/src/site/asciidoc/extensions/mod_spring.adoc
@@ -17,28 +17,9 @@
 
 = Apache Tamaya -- Extension: Spring Integration
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.integration.spring
-:title: Apache Tamaya Extension: Spring Integration
-:revdate: November 2015
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[Remote]]
 == Tamaya Spring Integration (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/extensions/mod_yaml.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/extensions/mod_yaml.adoc b/src/site/asciidoc/extensions/mod_yaml.adoc
index f5560b9..61b5fb3 100644
--- a/src/site/asciidoc/extensions/mod_yaml.adoc
+++ b/src/site/asciidoc/extensions/mod_yaml.adoc
@@ -17,47 +17,9 @@
 
 = Apache Tamaya -- Extension: Builder
 
-:name: Tamaya
-:rootpackage: org.apache.tamaya.yaml
-:title: Apache Tamaya Extension: YAML
-:revnumber: 0.1
-:revremark: Incubator
-:revdate: March 2016
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
 toc::[]
 
-<<<
-:numbered!:
-<<<
+
 [[BuilderCore]]
 == Tamaya YAML (Extension Module)
 === Overview

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/history.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/history.adoc b/src/site/asciidoc/history.adoc
index d99979f..9fe1d8f 100644
--- a/src/site/asciidoc/history.adoc
+++ b/src/site/asciidoc/history.adoc
@@ -20,7 +20,7 @@
 include::temp-properties-files-for-site/attributes.adoc[]
 :linkattrs: true
 
-= Release History of Tamaya
+== Release History of Tamaya
 
 Overview off all released versions of Apache Tamaya.
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/misc/PossibleContributions.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/misc/PossibleContributions.adoc b/src/site/asciidoc/misc/PossibleContributions.adoc
index 095a276..23840c2 100644
--- a/src/site/asciidoc/misc/PossibleContributions.adoc
+++ b/src/site/asciidoc/misc/PossibleContributions.adoc
@@ -1,31 +1,26 @@
-Apache Tamaya - Possible Tasks
-==============================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Draft
-:revdate: October 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <at...@gmail.com>
-:source-highlighter: coderay
-:website: http://tamaya.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
--> add image : : https://raw.githubusercontent.com/JavaConfig/config-api/master/src/main/asciidoc/images/javaconfig.jpg[]
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+// .
+//   http://www.apache.org/licenses/LICENSE-2.0
+// .
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
 
 toc::[]
 
-<<<
+= Apache Tamaya - Possible Tasks
+
 :numbered!:
 -----------------------------------------------------------
 Licensed to the Apache Software Foundation (ASF) under one

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/quickstart.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/quickstart.adoc b/src/site/asciidoc/quickstart.adoc
index 3e1c53b..8dc342b 100644
--- a/src/site/asciidoc/quickstart.adoc
+++ b/src/site/asciidoc/quickstart.adoc
@@ -17,7 +17,7 @@
 
 include::temp-properties-files-for-site/attributes.adoc[]
 
-= Apache Tamaya Quickstart
+== Apache Tamaya Quickstart
 
 The fastest way to start with Tamaya is just using the _Core_ implementation,
 implementing the **API** in small, minimalistic way. For that add the following
@@ -51,7 +51,7 @@ These modules doe not depend on core, so alternative
 implementations of the Tamaya API should work similarly.
 
 
-== Multiple configuration files
+=== Multiple configuration files
 
 By default you can provide multiple `javaconfig.properties` files, e.g. as part
 of multiple jars loaded into your system. The system internally creates one
@@ -86,14 +86,14 @@ tamaya.ordinal=123
 
 This assigns an ordinal of 123 to each entry in that configuration resource.
 
-== Using additional features of Tamaya
+=== Using additional features of Tamaya
 
 There many modules that extend the capabilities of
 Tamaya. These modules doe not depend on core, so alternative
 implementations of the Tamaya API should work similarly. Following a
 small extract of most important modules available (or available soon):
 
-=== Dynamic Resolution and Value Placeholders
+==== Dynamic Resolution and Value Placeholders
 
 [source,xml,subs="verbatim,attributes"]
 ----
@@ -117,7 +117,7 @@ String resolved = Resolver.evaluateExpression(myExpression);
 ----
 
 
-=== Ant-styled Path Resolution of Resources
+==== Ant-styled Path Resolution of Resources
 
 [source,xml,subs="verbatim,attributes"]
 ----
@@ -141,7 +141,7 @@ Collection<URL> urls = ResourceResolver.getResources("META-INF/cfg/**/*.properti
 For further details refer to the module documentation.
 
 
-=== Configuration Injection
+==== Configuration Injection
 
 [source,xml,subs="verbatim,attributes"]
 ----
@@ -203,9 +203,3 @@ Currently the following resolvers are available:
 
 |===
 
-
-// @todo
-//Look [here][1] For further documentation on available extension modules.
-
-
-//  [1]: documentation/modules.html

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/release-guide.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/release-guide.adoc b/src/site/asciidoc/release-guide.adoc
index 49e017e..73f480f 100644
--- a/src/site/asciidoc/release-guide.adoc
+++ b/src/site/asciidoc/release-guide.adoc
@@ -15,15 +15,15 @@
 // specific language governing permissions and limitations
 // under the License.
 
-= Apache Tamaya -- Release Guide
-
 include::temp-properties-files-for-site/attributes.adoc[]
 
+== Apache Tamaya -- Release Guide
+
 Performing a release requires several steps. This document describes each step, so everybody in the committer's
 team should be able to perform the release procedure.
 
 
-== Tell the others you would proceed with the release procedure
+=== Tell the others you would proceed with the release procedure
 
 [listing,text]
 ----------------------------------------
@@ -39,7 +39,7 @@ team should be able to perform the release procedure.
 ----------------------------------------
 
 
-== Check everything is ready
+=== Check everything is ready
 
 * Check the jenkins builds.
 * Ensure all JIRA-tickets targeting the release are resolved. If not, get in contact with the ticket
@@ -48,7 +48,7 @@ team should be able to perform the release procedure.
   ** how long it takes to resolve it and if one can help.
 
 
-== Prepare the release
+=== Prepare the release
 
 * Create release notes and commit them to `tamaya/readme/` (format `ReleaseNotes-[version].html`)
 * Create a release branch in git and switch to this branch:
@@ -111,7 +111,7 @@ git push
 * Check contents on https://dist.apache.org/repos/dist/dev/incubator/tamaya/[version]
 
 
-== Start the vote
+=== Start the vote
 
 [listing,text]
 ----------------------------------------
@@ -213,7 +213,7 @@ If the binding majority approved the vote continue:
 ----------------------------------------
 
 
-== Updating the Tamaya Project Site
+=== Updating the Tamaya Project Site
 
 Currently Tamaya's Site located at https://svn.apache.org/repos/asf/incubator/tamaya/site/trunk must be updated
 manually. This should change in the future (then a simple mvn site site:deploy) should be sufficient. This

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/source.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/source.adoc b/src/site/asciidoc/source.adoc
index ab33754..39837f9 100644
--- a/src/site/asciidoc/source.adoc
+++ b/src/site/asciidoc/source.adoc
@@ -17,8 +17,7 @@
 
 include::temp-properties-files-for-site/attributes.adoc[]
 
-
-= Sources of Apache Tamaya
+== Sources of Apache Tamaya
 
 The current source code can be found at:
 
@@ -33,4 +32,4 @@ The GitHub mirror also provides the project as downloadable zip archive.
 == Contributions
 
 If you like to contribute to Apache Tamaya please also refer also to our
-<<devguide/index.adoc#contributing-workflow,section on contributing to Apache Tamaya>>.
\ No newline at end of file
+<<devguide.adoc#contributing-workflow,section on contributing to Apache Tamaya>>.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/usecases.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/usecases.adoc b/src/site/asciidoc/usecases.adoc
new file mode 100644
index 0000000..a82f6b7
--- /dev/null
+++ b/src/site/asciidoc/usecases.adoc
@@ -0,0 +1,273 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+== Apache Tamaya -- Use Cases
+
+toc::[]
+
+
+=== Simple Access
+
+Users want to be able to access configuration in a unified way both in SE and EE. EE may provide additional
+mechanism, such as injection, but the SE mechanisms should work as well, so any code written in SE is fully
+portable to EE as well.
+This can only be achieved by providing a static accessor, e.g.
+
+[source,java]
+------------------------------------------------------------
+Configuration config = Configuration.current();
+------------------------------------------------------------
+
+The call above should work exactly the same in EE. To enable this the static call must be delegated in the
+internals of the singleton, depending on the runtime. In EE the executing component can behave contextually,
+or even be loaded within the CDI environment (at least for post loading, application runtime aspects, but not earlier).
+
+Additionally in EE it should also be possible to inject Configuration, which gives you the same results as the call
+above:
+
+[source,java]
+------------------------------------------------------------
+@Inject
+private Configuration cfg;
+------------------------------------------------------------
+
+
+=== Simple Lookup of Properties
+
+Users just want to create a configuration ad hoc, from given property files. The
+files could be locally in the file system, on the classpath.
+
+Tamaya should provide a simple Java API for accessing key/value based configuration. Hereby users want to access
+properties as simple String values.
+
+Hereby returning Java 8 Optional values must be considered as well, instead of returning +null+.
+
+
+=== Value Placeholders
+
+Users just want to to be able to add placeholders to the values of configuration (not the keys). The mechanisms for
+resolving the placeholders hereby should be not constraint to one single lanmguage like EL. Instead of different
+replacement strategies should be selectable, e.g. by prefixing an expression with the name of the resolver that
+should do the work (eg +"blabla ${env:HOME} using Java version ${sys:java.version}."+.
+This allows resolution mechanism to be isolated easily and also allows to use simpler mechanisms, if no more complex
+ones like EL are required. This is especially useful to deal with low resource environment like ME.
+
+
+=== Type Safe Properties
+
+Users just want to access properties not only as Strings, but let Tamaya do the conversion to the required
+or the configred target type. By defauklt all java.lang wrapper and primitive types should be supported, but also
+other common types like date/time types, math numeric types and more.
+
+It must be possible that users can register their own custom types.
+
+Finally users also want to be able to dynamically provide or override type adaption (conversion), when reading a value,
+for a certain key/value pair.
+
+
+=== Configuration Templates
+
+Users want to be able to let Tamaya implement an interface template based on configuration.
+This use case is pretty similar to the injection use case. Basically the values are not injected,
+but cached within the template proxy returned, e.g. as +DynamicValue+.
+Similarly it could even be possible to define callback methods (default methods)
+or register listeners to DynamicValue instances returned.
+
+Templates hereby can easily be managed, but provide a excellent mechanism to provide type-safe configuration
+to clients in a very transparent way. Details can be controlled by using the same annotations as for
+normal configuration injection.
+
+
+=== Java 8 Functional Support
+
+Users want to be able to benefit from the new programming styles introduced with Java 8. Configuration
+should provide extension points for different aspects, where additional code can be hooked in easily.
+In short: were possible functional interfaces should be modelled.
+
+Examples:
+
+* code that converts a configuration to another kind of configuration: +UnaryOperator<Configuration>+
+* code that creates any kind of result based on a configuration: +Function<Configuration,T>+
+* Adapters for type conversion are defined as +Function<String,T>+
+* Key, value filters ccan be modelled as +BiFunction<String,String,String>+
+* etc.
+
+
+=== Configuration Locations
+
+Users want to be able to
+
+* read configuration from different locations.
+* By default classpath and file resources are
+  supported. But similarly remote access using a JSON ReST call should be possible.
+* Tamaya should define a JSON and XML format for configuration.
+* Configuration locations should be scannable using ant-styled resource patterns, if possible.
+* Scanning and reading logic can be modularized by using a +ConfigReader+ interface.
+
+
+=== Configuration Formats
+
+Users want to be able to use the format they prefer.
+
+* properties, xml-properties and ini-format should be supported by default
+* Other/custom formats should be easily addable by registering or providing the format on configuration evaluation (read).
+* When possible Tamaya should figure out which format to be used and how the InputStream should be correctly
+  interpreted.
+
+
+=== Multiple Configurations
+
+When systems grow they must be modularized to keep control. Whereas that sounds not really fancy, it leads to additional
+aspects to be considered by a configuration system.
+
+* Different code modules, libraries, plugins or products want to have their "own" separated configuration.
+* Similar it should be possible to add fully specific additional configurations.
+
+The default configuration hereby should always be present, whereas additional configurations are optional.
+Users want to be able to check the availability of such an additional configuration.
+
+Of course, additional configuration must be identifiable. The best way to do is to be discussed, nevertheless the
+mechanism must not depend on Java EE and the identifying keys must be serializable easily.
+Basically simple names are sufficient and woukld provide exact this required functionality.
+
+
+=== External Configuration
+
+Users want to be able to replace, override, extend or adapt any parts or all of an existing configuration from
+external sources.
+This also must be the case for multi-context environments, where the context identifiers are
+the only way to link to the correct remote configuration.
+
+
+=== Context Dependent Configuration
+
+In multi tenancy setups or complex systems a hierarchical/graph model of contexts for configurations is required, or different runtime contexts are executed in parallel
+within the same VN. What sounds normal for EE also may be the case for pure SE environments:
+
+* Users want to be able to model different layers of runtime context
+* Users want to identiofy the current layer, so configuration used may be adapted.
+
+
+
+=== Dynamic Provisioning (UC8)
+
+In Cloud Computing, especially the PaaS and SaaS areas a typical use case would be that an application (or server)
+is deployed, configured and started dynamically. Typically things are controlled by some "active controller components",
+which are capable of
+
+* creating new nodes (using IaaS services)
+* deploying and starting the required runtime platform , e.g. as part of a PaaS solution.
+* deploying and starting the application modules.
+
+All these steps require some kind of configuration. As of today required files are often created on the target node
+before the systems are started, using proprietary formats and mechanism. Similarly accessing the configuration in place
+may require examining the file system or using again proprietary management functions. Of course, a configuration
+solution should not try to solve that, but it can provide a significant bunch of functionality useful in such scenarios:
+
+* provide remote capabilities for configuration
+* allow configuration to be updated remotely.
+* allow client code to listen for configuration changes and react as needed.
+
+
+=== Minimal Property Source SPI
+
+Users expect that implementing an additional configuration property source is as easy as possible.
+So there should be an SPI defined that allows any kind of data source to be used for providing configuration data.
+The interface to be implemented is expected to be minimal to reduce the implementation burden. Default
+methods should be used where possible, so only a few methods are expected to be required to implement.
+
+
+=== Scannable Properties
+
+If possible configuration should be scannable, meaning it should be possible to evaluate the keys available.
+The corresponding capabilities should be accessible by a +isScannable()+ method.
+
+
+=== Combine Configurations
+
+Users want to be able to combine different configurations to a new configuration instance.
+Hereby the resulting configuration can be
+
+* a union of both, ignoring duplicates (and optionally log them)
+* a union of both, duplicates are ignored
+* a union of both, conflicts are thrown as ConfigException
+* an intersection of both, containing only keys present and equal in both configurations
+* an arbitrary mapping or filter, modelled by an +CombinationPolicy+, which basically can be modelled
+  as +BiFunction<String, String, String>+, hereby
+  ** a result of +null+ will remove the key
+  ** any other result will use the value returned as final value of the combination.
+
+
+=== MX/ReST Management
+
+Users want to be have comprehensive management support, which should allow
+
+* to change configuration
+* to remove configuration
+* to view configuration and its provider details
+
+
+=== Adaptable Service Context
+
+Tamaya should support an adaptable +ServiceContext+ to resolve any kind of implememntation services, both API services as core
+framework services. The +ServiceContext+ should be dynamically replecable by configuring an alternate instance of
+using the Java *ServiceContet+.
+
+This decouples component usage from its load and management part and als greatly simplifies integration with
+new/alternate runtime environments.
+The service context is exptected to provide
+
+* single singleton instances: these service can be cached.
+* access to multiple instances which implement some commons SPI interface.
+* as useful priorization of components is done by the model itself.
+
+
+=== Configuration Injection
+
+Users want to be able to polulate configured items by injecting configured values. Hereby
+
+* the lifecycle of the instances is not managed by Tamaya
+* all references to items configured are managed as weak references, to prevent memoryleaks.
+* Injection should if possible evaluate the properties by defaults. Even properties without
+  any annotations are possible.
+* Users expect to exclude certain properties from calculation
+* Beside injection of properties it is also possible to call setter methods with one parameter similarly.
+* Basically injection is performed, when the instance is passed to the Tamaya configuration system. It should also
+  be possible to inject/provide final values, especially Strings. Changes on configured values should be
+  reflected in the current value. Setters methods similarly can be called again, with the new values, on changes.
+* Users expect to control dynamic values and recall of setter methods, basically the following strategies should be
+  supported:
+  ** inject only once and ignore further changes.
+  ** reinject/reinitialize on each change
+
+* Dynamic Values can easily be modeled as +ConfiguredValue+ instances, which should have the following functionality:
+  ** access the current value
+  ** access the new value
+  ** access the latest value access time in ms
+  ** access the latest value update time in ms
+  ** evaluate easily if the value has changed since the last access
+  ** accept the change
+  *** as a shortcut it should be possible to accept the change on access of the value implicitly, hereby always accessing
+      the latest valid value.
+  ** ignore the change
+  ** register +Consumer<DynamicValue>+ liasteners to listen on the changes (ans also removing them later again).
+
+All observing functionality can be done completely asynchronously and in parallel.
+
+

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/fbda5b8e/src/site/asciidoc/userguide.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/userguide.adoc b/src/site/asciidoc/userguide.adoc
new file mode 100644
index 0000000..86a3602
--- /dev/null
+++ b/src/site/asciidoc/userguide.adoc
@@ -0,0 +1,36 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+include::temp-properties-files-for-site/attributes.adoc[]
+
+== Apache Tamaya -- User Guide
+
+This user guide contains detailed documentation on Tamaya's architecture, design and core API. Also included are
+references to additional project documentation such as use cases and derived requirements.
+
+toc::[]
+
+
+include::usecases.adoc[]
+
+include::Requirements.adoc[]
+
+include::HighLevelDesign.adoc[]
+include::API.adoc[]
+include::Core.adoc[]
+
+include::examples.adoc[]
\ No newline at end of file


[02/11] incubator-tamaya git commit: [maven-release-plugin] prepare for next development iteration

Posted by an...@apache.org.
[maven-release-plugin] prepare for next development iteration


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/b4c7ed2c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/b4c7ed2c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/b4c7ed2c

Branch: refs/heads/master
Commit: b4c7ed2ce715439f4d784f04a4626f2fe83e7a55
Parents: 2be0c91
Author: anatole <an...@apache.org>
Authored: Wed Mar 16 16:20:17 2016 +0100
Committer: anatole <an...@apache.org>
Committed: Wed Mar 16 16:20:17 2016 +0100

----------------------------------------------------------------------
 buildconfigurations/pom.xml                      | 4 ++--
 code/api/pom.xml                                 | 2 +-
 code/core/pom.xml                                | 2 +-
 code/pom.xml                                     | 2 +-
 distribution/pom.xml                             | 4 ++--
 docs/pom.xml                                     | 4 ++--
 examples/1-minimal-example/pom.xml               | 2 +-
 examples/2-simple-propertysource-example/pom.xml | 2 +-
 examples/3-resources-example/pom.xml             | 2 +-
 examples/4-resolver-example/pom.xml              | 2 +-
 examples/5-injection-example/pom.xml             | 2 +-
 examples/6-fileobserver-example/pom.xml          | 2 +-
 examples/7-builder-example/pom.xml               | 2 +-
 examples/8-remote-example/client/pom.xml         | 2 +-
 examples/8-remote-example/pom.xml                | 2 +-
 examples/8-remote-example/server/pom.xml         | 2 +-
 examples/pom.xml                                 | 2 +-
 modules/builder/pom.xml                          | 2 +-
 modules/classloader-support/pom.xml              | 2 +-
 modules/collections/pom.xml                      | 2 +-
 modules/events/pom.xml                           | 2 +-
 modules/filter/pom.xml                           | 2 +-
 modules/formats/pom.xml                          | 2 +-
 modules/functions/pom.xml                        | 2 +-
 modules/injection-api/pom.xml                    | 2 +-
 modules/injection/pom.xml                        | 2 +-
 modules/integration/camel/pom.xml                | 2 +-
 modules/integration/cdi-se/pom.xml               | 2 +-
 modules/integration/cdi/pom.xml                  | 2 +-
 modules/integration/consul/pom.xml               | 2 +-
 modules/integration/etcd/pom.xml                 | 2 +-
 modules/integration/osgi/pom.xml                 | 2 +-
 modules/integration/pom.xml                      | 2 +-
 modules/integration/spring/pom.xml               | 2 +-
 modules/json/pom.xml                             | 2 +-
 modules/management/pom.xml                       | 2 +-
 modules/model/pom.xml                            | 2 +-
 modules/mutable-config/pom.xml                   | 2 +-
 modules/optional/pom.xml                         | 2 +-
 modules/pom.xml                                  | 2 +-
 modules/resolver/pom.xml                         | 2 +-
 modules/resources/pom.xml                        | 2 +-
 modules/server/pom.xml                           | 2 +-
 modules/spi-support/pom.xml                      | 2 +-
 modules/yaml/pom.xml                             | 2 +-
 pom.xml                                          | 4 ++--
 46 files changed, 50 insertions(+), 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/buildconfigurations/pom.xml
----------------------------------------------------------------------
diff --git a/buildconfigurations/pom.xml b/buildconfigurations/pom.xml
index 7ea3663..df02971 100644
--- a/buildconfigurations/pom.xml
+++ b/buildconfigurations/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>buildconfigurations</artifactId>
@@ -45,7 +45,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>tamaya-all-0.2-incubating</tag>
+      <tag>HEAD</tag>
   </scm>
     
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/code/api/pom.xml
----------------------------------------------------------------------
diff --git a/code/api/pom.xml b/code/api/pom.xml
index 0b441a3..23d75cd 100644
--- a/code/api/pom.xml
+++ b/code/api/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-code</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/code/core/pom.xml
----------------------------------------------------------------------
diff --git a/code/core/pom.xml b/code/core/pom.xml
index 220f2b1..673b22f 100644
--- a/code/core/pom.xml
+++ b/code/core/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-code</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/code/pom.xml
----------------------------------------------------------------------
diff --git a/code/pom.xml b/code/pom.xml
index 1d6a728..de68cb5 100644
--- a/code/pom.xml
+++ b/code/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-code</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/distribution/pom.xml
----------------------------------------------------------------------
diff --git a/distribution/pom.xml b/distribution/pom.xml
index 4ffaeba..e151979 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-distribution</artifactId>
@@ -580,7 +580,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>tamaya-all-0.2-incubating</tag>
+      <tag>HEAD</tag>
   </scm>
 
     <build>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/docs/pom.xml
----------------------------------------------------------------------
diff --git a/docs/pom.xml b/docs/pom.xml
index 32c4b3e..1f7acad 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 
@@ -57,7 +57,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>tamaya-all-0.2-incubating</tag>
+      <tag>HEAD</tag>
   </scm>
 
     <build>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/1-minimal-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/1-minimal-example/pom.xml b/examples/1-minimal-example/pom.xml
index 5be06bf..c9d157f 100644
--- a/examples/1-minimal-example/pom.xml
+++ b/examples/1-minimal-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-minimal</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/2-simple-propertysource-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/2-simple-propertysource-example/pom.xml b/examples/2-simple-propertysource-example/pom.xml
index 659b031..8d8e6b6 100644
--- a/examples/2-simple-propertysource-example/pom.xml
+++ b/examples/2-simple-propertysource-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-simple-propertysource</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/3-resources-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/3-resources-example/pom.xml b/examples/3-resources-example/pom.xml
index a5b5c3a..3d594c9 100644
--- a/examples/3-resources-example/pom.xml
+++ b/examples/3-resources-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-resources</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/4-resolver-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/4-resolver-example/pom.xml b/examples/4-resolver-example/pom.xml
index 46780b4..9602c5d 100644
--- a/examples/4-resolver-example/pom.xml
+++ b/examples/4-resolver-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-resolver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/5-injection-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/5-injection-example/pom.xml b/examples/5-injection-example/pom.xml
index 2dd55f6..6aff00c 100644
--- a/examples/5-injection-example/pom.xml
+++ b/examples/5-injection-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-injection</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/6-fileobserver-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/6-fileobserver-example/pom.xml b/examples/6-fileobserver-example/pom.xml
index 9658169..5b12c5f 100644
--- a/examples/6-fileobserver-example/pom.xml
+++ b/examples/6-fileobserver-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-fileobserver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/7-builder-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/7-builder-example/pom.xml b/examples/7-builder-example/pom.xml
index e7908dd..94c5a7e 100644
--- a/examples/7-builder-example/pom.xml
+++ b/examples/7-builder-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/8-remote-example/client/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/client/pom.xml b/examples/8-remote-example/client/pom.xml
index cf98702..6bfafd7 100644
--- a/examples/8-remote-example/client/pom.xml
+++ b/examples/8-remote-example/client/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.examples</groupId>
         <artifactId>tamaya-example-remote</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote-client</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/8-remote-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/pom.xml b/examples/8-remote-example/pom.xml
index 759600f..8b18a6d 100644
--- a/examples/8-remote-example/pom.xml
+++ b/examples/8-remote-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/8-remote-example/server/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/server/pom.xml b/examples/8-remote-example/server/pom.xml
index 7289705..d21c863 100644
--- a/examples/8-remote-example/server/pom.xml
+++ b/examples/8-remote-example/server/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.examples</groupId>
         <artifactId>tamaya-example-remote</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote-server</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index fc22080..df7e369 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/builder/pom.xml
----------------------------------------------------------------------
diff --git a/modules/builder/pom.xml b/modules/builder/pom.xml
index 9202d80..96f6244 100644
--- a/modules/builder/pom.xml
+++ b/modules/builder/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/classloader-support/pom.xml
----------------------------------------------------------------------
diff --git a/modules/classloader-support/pom.xml b/modules/classloader-support/pom.xml
index 82bbd15..1d27df4 100644
--- a/modules/classloader-support/pom.xml
+++ b/modules/classloader-support/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/collections/pom.xml
----------------------------------------------------------------------
diff --git a/modules/collections/pom.xml b/modules/collections/pom.xml
index 5fdc1f6..44200bd 100644
--- a/modules/collections/pom.xml
+++ b/modules/collections/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/events/pom.xml
----------------------------------------------------------------------
diff --git a/modules/events/pom.xml b/modules/events/pom.xml
index a019a94..74d3a4b 100644
--- a/modules/events/pom.xml
+++ b/modules/events/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-events</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/filter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/filter/pom.xml b/modules/filter/pom.xml
index a59a968..d9d4854 100644
--- a/modules/filter/pom.xml
+++ b/modules/filter/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-filter</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/formats/pom.xml
----------------------------------------------------------------------
diff --git a/modules/formats/pom.xml b/modules/formats/pom.xml
index 4f95110..baf3666 100644
--- a/modules/formats/pom.xml
+++ b/modules/formats/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-formats</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/functions/pom.xml
----------------------------------------------------------------------
diff --git a/modules/functions/pom.xml b/modules/functions/pom.xml
index e01e7ca..88d95e4 100644
--- a/modules/functions/pom.xml
+++ b/modules/functions/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/injection-api/pom.xml
----------------------------------------------------------------------
diff --git a/modules/injection-api/pom.xml b/modules/injection-api/pom.xml
index 7d50e40..9b2d580 100644
--- a/modules/injection-api/pom.xml
+++ b/modules/injection-api/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-injection-api</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/injection/pom.xml
----------------------------------------------------------------------
diff --git a/modules/injection/pom.xml b/modules/injection/pom.xml
index 1852300..eae751c 100644
--- a/modules/injection/pom.xml
+++ b/modules/injection/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-injection</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/camel/pom.xml b/modules/integration/camel/pom.xml
index 1ea44ab..07adc0b 100644
--- a/modules/integration/camel/pom.xml
+++ b/modules/integration/camel/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-camel</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/cdi-se/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/cdi-se/pom.xml b/modules/integration/cdi-se/pom.xml
index 422fc3e..bcaf441 100644
--- a/modules/integration/cdi-se/pom.xml
+++ b/modules/integration/cdi-se/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-cdi-se</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/cdi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/cdi/pom.xml b/modules/integration/cdi/pom.xml
index eb61f46..df7288a 100644
--- a/modules/integration/cdi/pom.xml
+++ b/modules/integration/cdi/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-cdi</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/consul/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/consul/pom.xml b/modules/integration/consul/pom.xml
index 8a35abe..d1f5265 100644
--- a/modules/integration/consul/pom.xml
+++ b/modules/integration/consul/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-consul</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/etcd/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/etcd/pom.xml b/modules/integration/etcd/pom.xml
index e0cda6e..7520822 100644
--- a/modules/integration/etcd/pom.xml
+++ b/modules/integration/etcd/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-etcd</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/pom.xml b/modules/integration/osgi/pom.xml
index 1a8ff95..3fa6516 100644
--- a/modules/integration/osgi/pom.xml
+++ b/modules/integration/osgi/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-osgi</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/pom.xml b/modules/integration/pom.xml
index d635653..df4775d 100644
--- a/modules/integration/pom.xml
+++ b/modules/integration/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <packaging>pom</packaging>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/integration/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/spring/pom.xml b/modules/integration/spring/pom.xml
index d7de8d5..ee1628c 100644
--- a/modules/integration/spring/pom.xml
+++ b/modules/integration/spring/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-spring</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/json/pom.xml
----------------------------------------------------------------------
diff --git a/modules/json/pom.xml b/modules/json/pom.xml
index c491d7c..49f4629 100644
--- a/modules/json/pom.xml
+++ b/modules/json/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-json</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/management/pom.xml
----------------------------------------------------------------------
diff --git a/modules/management/pom.xml b/modules/management/pom.xml
index 4b3ee41..8603cf9 100644
--- a/modules/management/pom.xml
+++ b/modules/management/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/model/pom.xml
----------------------------------------------------------------------
diff --git a/modules/model/pom.xml b/modules/model/pom.xml
index fe1bd85..b121c24 100644
--- a/modules/model/pom.xml
+++ b/modules/model/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/mutable-config/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mutable-config/pom.xml b/modules/mutable-config/pom.xml
index 852096a..0ddd7bf 100644
--- a/modules/mutable-config/pom.xml
+++ b/modules/mutable-config/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/optional/pom.xml
----------------------------------------------------------------------
diff --git a/modules/optional/pom.xml b/modules/optional/pom.xml
index 2d92494..622c3f7 100644
--- a/modules/optional/pom.xml
+++ b/modules/optional/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/pom.xml
----------------------------------------------------------------------
diff --git a/modules/pom.xml b/modules/pom.xml
index d14765c..e32b92f 100644
--- a/modules/pom.xml
+++ b/modules/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/resolver/pom.xml
----------------------------------------------------------------------
diff --git a/modules/resolver/pom.xml b/modules/resolver/pom.xml
index 1496304..596abb7 100644
--- a/modules/resolver/pom.xml
+++ b/modules/resolver/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-resolver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/resources/pom.xml
----------------------------------------------------------------------
diff --git a/modules/resources/pom.xml b/modules/resources/pom.xml
index 5f30f52..1ba7dbe 100644
--- a/modules/resources/pom.xml
+++ b/modules/resources/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-resources</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/server/pom.xml
----------------------------------------------------------------------
diff --git a/modules/server/pom.xml b/modules/server/pom.xml
index 590926e..55c75ec 100644
--- a/modules/server/pom.xml
+++ b/modules/server/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/spi-support/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spi-support/pom.xml b/modules/spi-support/pom.xml
index 1b9f4ce..62082eb 100644
--- a/modules/spi-support/pom.xml
+++ b/modules/spi-support/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/modules/yaml/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yaml/pom.xml b/modules/yaml/pom.xml
index 909f3ae..483b6a9 100644
--- a/modules/yaml/pom.xml
+++ b/modules/yaml/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.2-incubating</version>
+        <version>0.3-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-yaml</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/b4c7ed2c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 42f245b..a109220 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@ under the License.
     </parent>
     <groupId>org.apache.tamaya</groupId>
     <artifactId>tamaya-all</artifactId>
-    <version>0.2-incubating</version>
+    <version>0.3-incubating-SNAPSHOT</version>
     <packaging>pom</packaging>
 
     <name>Apache Tamaya</name>
@@ -103,7 +103,7 @@ under the License.
         <url>
             https://git-wip-us.apache.org/repos/asf?p=incubator-tamaya.git
         </url>
-      <tag>tamaya-all-0.2-incubating</tag>
+      <tag>HEAD</tag>
   </scm>
 
     <issueManagement>


[05/11] incubator-tamaya git commit: Reset version, integrated docs into site.

Posted by an...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/misc/PossibleContributions.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/misc/PossibleContributions.adoc b/docs/src/main/asciidoc/misc/PossibleContributions.adoc
deleted file mode 100644
index 9a6c78d..0000000
--- a/docs/src/main/asciidoc/misc/PossibleContributions.adoc
+++ /dev/null
@@ -1,315 +0,0 @@
-Apache Tamaya - Possible Tasks
-==============================
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Draft
-:revdate: October 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <at...@gmail.com>
-:source-highlighter: coderay
-:website: http://tamaya.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-
-'''
-
-<<<
-
--> add image : : https://raw.githubusercontent.com/JavaConfig/config-api/master/src/main/asciidoc/images/javaconfig.jpg[]
-
-toc::[]
-
-<<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
-
-<<<
-
-== Introduction
-
-== What is Tamaya
-
-{name} is the Apache standard for flexible and powerful configuration. Objective is to provide flavors for
-Java SE, ME as well as to ship with powerful features for Java EE and Cloud Solutions. All functions provided
-is build on top of a small but very powerful, flexible and extendible API. This API is implemented by a core implementation,
-which then can be extended or adapted for use in different runtime scenarios, such as SE, ME, EE, Spring, OSGI
-and more. Similarly additional modules may be provided that help also existing solution to be plugged into
-{name}, so you can start right away using {name} without having to rebuild/change your existing application.
-
-
-=== Purpose of this Document
-
-The document should help to organize people and ideas around the Apache Tamaya Library. It list possible features,
-ideas and tasks that need to be done. Everybody can have a look at and see, where hos contribution and capabilities
-would fit best.
-
-
-== Main Features
-
-=== Metadata Model
-
-Currently +MetaInfo+ models metadata as a separate constuct. It has been shown that this leads to more complex
-handling when creating composites and makes the API overall more complex. The idea is to model metadata as simple
-key/value pairs, that are part of the provider/configuration data as well, but handled separately. Metadata hereby
-is identified by a starting '_' character in its key. For example refer to the following configuration properties:
-
-[source,listing]
-.Basic Properties
-----------------------------------------------------------------
-a.b.Foo=foo
-a.b.Bar=bar
-a.AnyOther=whatelse
-Something=none
-----------------------------------------------------------------
-
-Now we can model meta-data as follows:
-
-[source,listing]
-.Metadata Properties
-----------------------------------------------------------------
-[a.b].info=An area info
-[a.b.Foo].auth=role1,role2
-[a.b.Foo].encrypt=PGP
-[a.b.Foo].sensitive=true
-[].info=This is a test configuration example.
-----------------------------------------------------------------
-
-The above would model the following:
-
-* The area +a.b+ has the meta property +info+.
-* The entry +a.b.Foo+ has three meta properties +auth,encrypt+ and +sensitive+. These could be interpreted by a security
-  view and used to encrypt the values returned by the configuration instance, if not the current user has one of the
-  specified roles.
-* The last meta data defines an attribute +info+ for the whole provider/configuration (the root area).
-
-Given that the overall entries would be as follows:
-
-[source,listing]
-.Full Properties with Meta Properties
-----------------------------------------------------------------
-[a.b].info=An area info
-a.b.Foo=foo
-[a.b.Foo].auth=role1,role2
-[a.b.Foo].encrypt=PGP
-[a.b.Foo].sensitive=true
-a.b.Bar=bar
-[].info=This is a test configuration example.
-a.AnyOther=whatelse
-Something=none
-----------------------------------------------------------------
-
-The current +MetaInfo+ class could be adapted, so it is reading data from the underlying configuration/provider,
-instead of its own datastructure. This would make a later mapping of configuration and its metadata into DB table, JSON
-etc, much more easier.
-The providers on the other side may suppress any metadata from ordinary output, such
-as +toString()+, Similarly accessing metadata using the official config API (+get, getOrDefault, getAreas+ etc)
-should be disabled. The +MetaInfoBuilder+ must probably as well adapted or redesigned.
-
-=== Collection Support
-
-Add a key/value based model for mapping collections such as sets, maps, list. Implement according adapters.
-In combination with the metadata model above this could be something like:
-
-[source,listing]
-.Collection Support
-----------------------------------------------------------------
-mySet=[a,b,c,d,e\,e,f]
-[mySet].type=set
-#optional define the implementation class
-[mySet].class=java.util.TreeSet
-
-myList=[a,b,c,d,e\,e,f]
-[myList].type=list
-#optional define the implementation class
-[myList].class=java.util.ArrayList
-
-myMap=[a:aa,b:bb,c:cc,d:dd,e:e\,e,f:ff]
-[myMap].type=map
-#optional define the implementation class
-[myMap].class=java.util.TreeMap
-
-#Finally we could also add support for non String based types
-myTypedSet=[1,2,3,4.5,6,7.10.123]
-[myTypedSet].contentClass=java.lang.Double
-myTypedList=[CHF 10.20, EUR 12.20, BTC 0.002]
-[myTypedList].contentType=org.javamoney.moneta.FastMoney
-myTypedMap=[CHF:CHF 10.20, EUR:EUR 12.20, BTC:BTC 0.002]
-[myTypedMap].contentTypes=javax.money.CurrencyUnit,javax.money.MonetaryAmount
-----------------------------------------------------------------
-
-
-=== Management Client
-
-A nice web-based client to manage configuration data would be nice as well. This also includes a UI for creating new
-configurations.
-
-=== Mapping Configuration to a Database
-
-A flexible mechanism should be implemented that allows the use of databases (SQL/JPA as well as non-SQL) for
-storing/retreiving/managing configuration:
-
-* JPA, Hibernate
-* MongoDB
-* ...
-
-
-=== Integration with OSGI
-
-Examples are to be created and tested, where OSGI is used as the basic runtime platform, e.g. Apache Felix, but as well
-others.
-
-=== Integration with Jigsaw
-
-Once Jigsaw is mature and in a usable (still early) stage, examples are to be created and tested, where OSGI is used as
-the basic runtime platform, e.g. Apache Felix, but as well others.
-
-== Distributed/Remote Configuration Support
-
-=== Configuration Server
-
-A configuration server should be implemented that provides access to configurations and triggers updates to registered
-clients (push). Similarly a poull model should be supported, where clients can asl for the current version id of a certain
-configuration and reload it if necessary.
-
-
-=== Configuration Distribution Policies
-
-Different configuration distribution policies should be defined any implemented, e.g. distributed cache, restful services,
-web services, EJB/RMI calls, asynchronous queues, publish/subsribe models, ...
-
-
-=== Configuration Client
-
-A subset of the API would be created that exposes only a well defined subset, of exactly one configuration targeted
-to a certain instance, VM or whatever. The client should be connectable to a server in different ways (see configuration
-distributiont policies).
-
-
-=== Preferences Support
-
-Write a +PreferencesFactory+ for +java.util.preferences+.
-
-
-== Third Party Integration
-
-=== Integration with Deltaspike Config
-
-Integration with Deltaspike Config should be implemented and discussed with Deltaspike guys.
-
-=== Integration with Spring
-
-A {name} module should be created that allows Spring to be used either as client or configuration provider.
-
-=== Integration with Jetty
-
-A {name} module should be created that allows a Jetty instance to be deployed and started that is (completely)
-configured based on configuration server.
-
-=== Integration with Tomcat
-
-A {name} module should be created that allows a Tomcat instance to be deployed and started that is (completely)
-configured based on configuration server.
-
-=== Configuration of Java EE
-
-In the Java EE area there would be several options:
-
-=== Configuration of Application Servers (administrative resources)
-
-It should be possible to start a application server instance remotely and configure all administrative resources and the
-deployments based on the configuration service, server to be considered maybe
-
-* Wildfly
-* IBM
-* Weblogic
-* Glassfish
-* Apache Geronimo
-
-==== Configuration of Bean Validation
-
-* Add configurable validators.
-* Configure bean validation based on configuration
-* ...
-
-=== JNDI Support
-
-Write a +JCA+ adapter to provide configuration data through JNDI.
-
-==== Configure JSF
-
-Use the JSF +XML Document+ event to completely configure JSF.
-
-==== Configure Web Services
-
-Provide a WebServiceProviderFactory that may be configured.
-
-==== Configure JPA
-
-Provide an implementation that allows configuration of persistence units. Talk with JPA EG people to see if we can
-get an SPI to hook in a stadardized way.
-
-==== Configure EJBs
-
-Provide an implementation that allows configuration of EJBs and MDBs:
-
-* Register beans
-* Unregister/disable beans
-* Intercept beans
-* Support Configuration Injection (in the worst case using a standard Interceptor, provide supporting artifacts to
-  help developers to achive this easily).
-* Talk with EE8 Umbrella EG (Bill Shanon, Linda DeMichels) on a feasible SPI for EE8, if possible join the EG.
-
-==== Configure ...
-
-Just think of any Java EE aspects that might be worth to be configured. If it can be done, e.g. by managing CDI managed
-resources, it might be easy. For others it is a good idea to discuss things with our matter of experts...
-
-== Special Goodies
-
-=== Maintenance Mode Servlet Filter
-
-Provide a servlet filter that is capable of switching to maintenance mode, based on configuration. Similarly also a forwarding
-servlet could be useful, wehere only request based on configuration are forwarded, other might be rejected or dropped
-as configured.
-
-=== Dynamic Camel Routes
-
-Provides dynamic (configurable) Camel routes, e.g. usable within ServiceMix or standalone.
-
-=== Dynamic CXF
-
-Provides dynamic (configurable) CXF adapters, e.g. usable within ServiceMix or standalone.
-
-=== Configurable Apache MQ
-
-Provides an implementation for configuring Apache MQ.
-
-=== Dynamic ...
-
-Interested to see what other ideas are around. Let us know!
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/misc/examples.adoc.nonfunc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/misc/examples.adoc.nonfunc b/docs/src/main/asciidoc/misc/examples.adoc.nonfunc
deleted file mode 100644
index 0fca744..0000000
--- a/docs/src/main/asciidoc/misc/examples.adoc.nonfunc
+++ /dev/null
@@ -1,91 +0,0 @@
-= Tamayas Asciidoctor Example Document
-Oliver B. Fischer
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-:encoding: UTF-8
-:source-highlighter: coderay
-
-This document is used to see if the current setup
-of Asciidoctor within the Tamaya project is working
-correctly. Therefore it contains some sections
-with different examples of Asciidoctors capabilities.
-
-== Asciidoctor Environment
-
-Some facts on the current Asciidoctor environment.
-
-Asciidoctor version:: {asciidoctor-version}
-
-
-== Plant UML
-
-This chapter contains a
-http://plantuml.sourceforge.net/[Plant UML] diagram.
-
-
-[plantuml, diagram-classes, png]
-....
-class BlockProcessor
-class DiagramBlock
-class DitaaBlock
-class PlantUmlBlock
-
-BlockProcessor <|-- DiagramBlock
-DiagramBlock <|-- DitaaBlock
-DiagramBlock <|-- PlantUmlBlock
-....
-
-
-== Ditaa
-
-This section contains a diagram from
-http://asciidoctor.org/docs/asciidoctor-diagram/[Asciidoctor Diagram website]
-generated with http://ditaa.sourceforge.net/[ditaa].
-
-[ditaa, "asciidoctor-diagram-process"]
-....
-                   +-------------+
-                   | Asciidoctor |-------+
-                   |   diagram   |       |
-                   +-------------+       | PNG out
-                       ^                 |
-                       | ditaa in        |
-                       |                 v
- +--------+   +--------+----+    /---------------\
- |        |---+ Asciidoctor +--->|               |
- |  Text  |   +-------------+    |   Beautiful   |
- |Document|   |   !magic!   |    |    Output     |
- |     {d}|   |             |    |               |
- +---+----+   +-------------+    \---------------/
-     :                                   ^
-     |          Lots of work             |
-     +-----------------------------------+
-....
-
-
-
-== GraphViz
-
-This section contains a diagram
-[graphviz]
-....
-graph {
-    a -- b; b -- c; c -- d; d -- e; e -- f; a -- f; a -- c[color=red];
-    a -- d; a -- e; b -- d; b -- e; b -- f; c -- e; c -- f;
-    d -- f;
-}
-....

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/releaseguide/ReleaseGuide.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/releaseguide/ReleaseGuide.adoc b/docs/src/main/asciidoc/releaseguide/ReleaseGuide.adoc
deleted file mode 100644
index 6b2b326..0000000
--- a/docs/src/main/asciidoc/releaseguide/ReleaseGuide.adoc
+++ /dev/null
@@ -1,273 +0,0 @@
-# Release Guide of Apache Tamaya (incubating)
-
-This directory contains the release guide of Apache Tamaya (incubating).
-=======
-Apache Tamaya -- Release Guide
-==============================
-:name: Tamaya
-:title: Apache Tamaya Release Guide
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: March 2016
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: ATR
-:author: Anatole Tresch
-:email: <an...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-'''
-
-<<<
-
-image::http://tamaya.incubator.apache.org/resources/images/logos/logo_wood.png[]
-
-toc::[]
-
-<<<
-:numbered!:
------------------------------------------------------------
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
------------------------------------------------------------
-
-:numbered:
-
-
-Performing a release requires several steps. This document describes each step, so everybody in the committer's
-team should be able to perform the release procedure.
-
-
-== Tell the others you would proceed with the release procedure
-
-[listing,text]
-----------------------------------------
-    first steps for the next release
-
-    hi @ all,
-
-    if there are no objections, i'll start with the first steps for the next release (review, documentation,...).
-    it would be great to start with the release procedure next week.
-
-    regards,
-    [name]
-----------------------------------------
-
-
-== Check everything is ready
-
-* Check the jenkins builds.
-* Ensure all JIRA-tickets targeting the release are resolved. If not, get in contact with the ticket
-  owner/assignee to check
-  ** if the ticket can be postponed for the next release
-  ** how long it takes to resolve it and if one can help.
-
-
-== Prepare the release
-
-* Create release notes and commit them to `tamaya/readme/` (format `ReleaseNotes-[version].html`)
-* Create a release branch in git and switch to this branch:
-
-[listing,text]
-----------------------------------------
-    git checkout -b vote-tamaya-[release version]
-
-    export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
-    mvn release:prepare -DdryRun=true
-
-    //copy prepared workspace (to continue faster if an upload fails in the next step)
-----------------------------------------
-
-* If something fails you may switch to the master branch, fix whatever is needed and rebase your release branch to
-  accomodate the latest changes done.
-* On success you can check the release packages from `dist/target`.
-* If everything looks good you can proceed with the release:
-
-[listing,text]
-----------------------------------------
-    export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
-    mvn release:prepare
-    mvn release:perform
-----------------------------------------
-
-* check the created commits including user-name and email
-* login to https://repository.apache.org/ and go to "Staging Repositories"
-* check the contents of the newly created tamaya staging repository
-* _close_ the repository to let Nexus do its validations
-* On success:
-* push the release-branch to the git repo
-
-[listing,text]
-----------------------------------------
-git push
-----------------------------------------
-
-* Add the distributiong artifacts to the dev repositories:
-
-[listing,text]
-----------------------------------------
-    svn co https://dist.apache.org/repos/dist/dev/incubator/tamaya/
-    mkdir [version]
-    set RELEASE_HOME='pwd'/[version]
-    cd PROJECT_ROOT
-    cp DISCLAIMER $RELEASE_HOME
-    cp NOTICE $RELEASE_HOME
-    cp LICENCE $RELEASE_HOME
-    cp readme/ReleaseNotes-[version].html $RELEASE_HOME
-    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.zip $RELEASE_HOME
-    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.tar.gz $RELEASE_HOME
-    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.zip $RELEASE_HOME
-    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.tar.gz $RELEASE_HOME
-    // add corresponding asc, md5, sha1 file as well
-    svn add [version]
-    svn commit --username <apacheId>
-----------------------------------------
-
-* Check contents on https://dist.apache.org/repos/dist/dev/incubator/tamaya/[version]
-
-
-== Start the vote
-
-[listing,text]
-----------------------------------------
-    [VOTE] Release of Apache Tamaya [version]
-
-
-    Hi,
-
-    I was running the needed tasks to get the [version] release of Apache Tamaya out.
-    The artifacts are deployed to Nexus [1] (and [2]).
-
-    The tag is available at [3] and will renamed once the vote passed.
-
-    Please take a look at the artifacts and vote!
-
-    Please note:
-    This vote is a "majority approval" with a minimum of three +1 votes (see [4]).
-
-    ------------------------------------------------
-    [ ] +1 for community members who have reviewed the bits
-    [ ] +0
-    [ ] -1 for fatal flaws that should cause these bits not to be released, and why..............
-    ------------------------------------------------
-
-    Thanks,
-    [name]
-
-    [1] https://repository.apache.org/content/repositories/...
-    [2] https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.zip
-        https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.zip
-    [3] https://git1-us-west.apache.org/repos/asf?p=incubator-tamaya.git;a=commit;h=2910da468fce16210e6dd77d8ba23ddbdd434efe
-    [4] http://www.apache.org/foundation/voting.html#ReleaseVotes
-----------------------------------------
-
-* Announce the Vote
-  ** Create a short link to the release at http://s.apache.org (format Tamaya_[version])
-  ** Tweet about the vote via _@TamayaConf_
-
-* After 72 hours close the vote write a reult email, e.g.
-
-[listing,text]
-----------------------------------------
-    [Result] (was: Re: [VOTE] Release of Apache Tamaya [version])
-
-    thank you for voting!
-
-    X binding +1 votes (pmc):
-    [list]
-
-    Y non-binding +1 votes:
-    [list]
-
-    Z -1 votes
-    [list]
-----------------------------------------
-
-
-== Perform the release
-
-If the binding majority approved the vote continue:
-
-* Login to https://repository.apache.org/ and _release_ the repository
-* Rename the vote branch:
-
-[listing,text]
-----------------------------------------
-    git branch -m vote-tamaya-[version] tamaya-[version]
-----------------------------------------
-
-* Add a release tag:
-
-----------------------------------------
-    git tag -a tamaya-[version]
-----------------------------------------
-
-* Merge master with the new prepared version:
-
-[listing,text]
-----------------------------------------
-    git checkout master
-    git merge tamaya-[version]
-    git push origin tamaya-[version]
-    git push origin master
-----------------------------------------
-
-* Close the release and corresponding tickets at JIRA
-
-* Wait some minutes and check `http://repo2.maven.org/maven2/org/apache/tamaya`
-
-* Upload the distribution Artifacts
-
-[listing,text]
-----------------------------------------
-    svn co https://dist.apache.org/repos/dist/release/incubator/tamaya/
-    mkdir [version]
-    // add and commit the artifacts (*source-release.zip, *bin-release.zip + asc, md5, sha1)
-    // use the artifacts from:
-    //  http://repo1.maven.org/maven2/org/apache/tamaya/tamaya-distribution/[version]/
-----------------------------------------
-
-
-== Updating the Tamaya Project Site
-
-Currently Tamaya's Site located at https://svn.apache.org/repos/asf/incubator/tamaya/site/trunk must be updated
-manually. This should change in the future (then a simple mvn site site:deploy) should be sufficient. This
-includes:
-
-* Updating the entry pages with the new release
-* Updating the news page with the new release
-* Updating all Javadocs published on the site
-* Updating the documentation htmls generated from asciidoc

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/combine-configs.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/combine-configs.adoc b/docs/src/main/asciidoc/uc/combine-configs.adoc
deleted file mode 100644
index 2d83ab7..0000000
--- a/docs/src/main/asciidoc/uc/combine-configs.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-=== Combine Configurations
-
-Users want to be able to combine different configurations to a new configuration instance.
-Hereby the resulting configuration can be
-
-* a union of both, ignoring duplicates (and optionally log them)
-* a union of both, duplicates are ignored
-* a union of both, conflicts are thrown as ConfigException
-* an intersection of both, containing only keys present and equal in both configurations
-* an arbitrary mapping or filter, modelled by an +CombinationPolicy+, which basically can be modelled
-  as +BiFunction<String, String, String>+, hereby
-  ** a result of +null+ will remove the key
-  ** any other result will use the value returned as final value of the combination.
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/context-dependent-configuration.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/context-dependent-configuration.adoc b/docs/src/main/asciidoc/uc/context-dependent-configuration.adoc
deleted file mode 100644
index 737232f..0000000
--- a/docs/src/main/asciidoc/uc/context-dependent-configuration.adoc
+++ /dev/null
@@ -1,7 +0,0 @@
-=== Context Dependent Configuration
-
-In multi tenancy setups or complex systems a hierarchical/graph model of contexts for configurations is required, or different runtime contexts are executed in parallel
-within the same VN. What sounds normal for EE also may be the case for pure SE environments:
-
-* Users want to be able to model different layers of runtime context
-* Users want to identiofy the current layer, so configuration used may be adapted.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/dynamic-provisioning.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/dynamic-provisioning.adoc b/docs/src/main/asciidoc/uc/dynamic-provisioning.adoc
deleted file mode 100644
index 1629914..0000000
--- a/docs/src/main/asciidoc/uc/dynamic-provisioning.adoc
+++ /dev/null
@@ -1,18 +0,0 @@
-=== Dynamic Provisioning (UC8)
-
-In Cloud Computing, especially the PaaS and SaaS areas a typical use case would be that an application (or server)
-is deployed, configured and started dynamically. Typically things are controlled by some "active controller components",
-which are capable of
-
-* creating new nodes (using IaaS services)
-* deploying and starting the required runtime platform , e.g. as part of a PaaS solution.
-* deploying and starting the application modules.
-
-All these steps require some kind of configuration. As of today required files are often created on the target node
-before the systems are started, using proprietary formats and mechanism. Similarly accessing the configuration in place
-may require examining the file system or using again proprietary management functions. Of course, a configuration
-solution should not try to solve that, but it can provide a significant bunch of functionality useful in such scenarios:
-
-* provide remote capabilities for configuration
-* allow configuration to be updated remotely.
-* allow client code to listen for configuration changes and react as needed.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/external-configuration.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/external-configuration.adoc b/docs/src/main/asciidoc/uc/external-configuration.adoc
deleted file mode 100644
index ea2e687..0000000
--- a/docs/src/main/asciidoc/uc/external-configuration.adoc
+++ /dev/null
@@ -1,6 +0,0 @@
-=== External Configuration
-
-Users want to be able to replace, override, extend or adapt any parts or all of an existing configuration from
-external sources.
-This also must be the case for multi-context environments, where the context identifiers are
-the only way to link to the correct remote configuration.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/formats.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/formats.adoc b/docs/src/main/asciidoc/uc/formats.adoc
deleted file mode 100644
index a5a1bf7..0000000
--- a/docs/src/main/asciidoc/uc/formats.adoc
+++ /dev/null
@@ -1,8 +0,0 @@
-=== Configuration Formats
-
-Users want to be able to use the format they prefer.
-
-* properties, xml-properties and ini-format should be supported by default
-* Other/custom formats should be easily addable by registering or providing the format on configuration evaluation (read).
-* When possible Tamaya should figure out which format to be used and how the InputStream should be correctly
-  interpreted.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/injection.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/injection.adoc b/docs/src/main/asciidoc/uc/injection.adoc
deleted file mode 100644
index 4468d6c..0000000
--- a/docs/src/main/asciidoc/uc/injection.adoc
+++ /dev/null
@@ -1,31 +0,0 @@
-=== Configuration Injection
-
-Users want to be able to polulate configured items by injecting configured values. Hereby
-
-* the lifecycle of the instances is not managed by Tamaya
-* all references to items configured are managed as weak references, to prevent memoryleaks.
-* Injection should if possible evaluate the properties by defaults. Even properties without
-  any annotations are possible.
-* Users expect to exclude certain properties from calculation
-* Beside injection of properties it is also possible to call setter methods with one parameter similarly.
-* Basically injection is performed, when the instance is passed to the Tamaya configuration system. It should also
-  be possible to inject/provide final values, especially Strings. Changes on configured values should be
-  reflected in the current value. Setters methods similarly can be called again, with the new values, on changes.
-* Users expect to control dynamic values and recall of setter methods, basically the following strategies should be
-  supported:
-  ** inject only once and ignore further changes.
-  ** reinject/reinitialize on each change
-
-* Dynamic Values can easily be modeled as +ConfiguredValue+ instances, which should have the following functionality:
-  ** access the current value
-  ** access the new value
-  ** access the latest value access time in ms
-  ** access the latest value update time in ms
-  ** evaluate easily if the value has changed since the last access
-  ** accept the change
-  *** as a shortcut it should be possible to accept the change on access of the value implicitly, hereby always accessing
-      the latest valid value.
-  ** ignore the change
-  ** register +Consumer<DynamicValue>+ liasteners to listen on the changes (ans also removing them later again).
-
-All observing functionality can be done completely asynchronously and in parallel.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/java8.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/java8.adoc b/docs/src/main/asciidoc/uc/java8.adoc
deleted file mode 100644
index 0cdf069..0000000
--- a/docs/src/main/asciidoc/uc/java8.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-=== Java 8 Functional Support
-
-Users want to be able to benefit from the new programming styles introduced with Java 8. Configuration
-should provide extension points for different aspects, where additional code can be hooked in easily.
-In short: were possible functional interfaces should be modelled.
-
-Examples:
-
-* code that converts a configuration to another kind of configuration: +UnaryOperator<Configuration>+
-* code that creates any kind of result based on a configuration: +Function<Configuration,T>+
-* Adapters for type conversion are defined as +Function<String,T>+
-* Key, value filters ccan be modelled as +BiFunction<String,String,String>+
-* etc.
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/locations.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/locations.adoc b/docs/src/main/asciidoc/uc/locations.adoc
deleted file mode 100644
index 5e0f774..0000000
--- a/docs/src/main/asciidoc/uc/locations.adoc
+++ /dev/null
@@ -1,10 +0,0 @@
-=== Configuration Locations
-
-Users want to be able to
-
-* read configuration from different locations.
-* By default classpath and file resources are
-  supported. But similarly remote access using a JSON ReST call should be possible.
-* Tamaya should define a JSON and XML format for configuration.
-* Configuration locations should be scannable using ant-styled resource patterns, if possible.
-* Scanning and reading logic can be modularized by using a +ConfigReader+ interface.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/management.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/management.adoc b/docs/src/main/asciidoc/uc/management.adoc
deleted file mode 100644
index ff997a5..0000000
--- a/docs/src/main/asciidoc/uc/management.adoc
+++ /dev/null
@@ -1,7 +0,0 @@
-=== MX/ReST Management
-
-Users want to be have comprehensive management support, which should allow
-
-* to change configuration
-* to remove configuration
-* to view configuration and its provider details
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/minimal-propertysource.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/minimal-propertysource.adoc b/docs/src/main/asciidoc/uc/minimal-propertysource.adoc
deleted file mode 100644
index ee185a0..0000000
--- a/docs/src/main/asciidoc/uc/minimal-propertysource.adoc
+++ /dev/null
@@ -1,6 +0,0 @@
-=== Minimal Property Source SPI
-
-Users expect that implementing an additional configuration property source is as easy as possible.
-So there should be an SPI defined that allows any kind of data source to be used for providing configuration data.
-The interface to be implemented is expected to be minimal to reduce the implementation burden. Default
-methods should be used where possible, so only a few methods are expected to be required to implement.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/multiple-configurations.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/multiple-configurations.adoc b/docs/src/main/asciidoc/uc/multiple-configurations.adoc
deleted file mode 100644
index 2ee133f..0000000
--- a/docs/src/main/asciidoc/uc/multiple-configurations.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-=== Multiple Configurations
-
-When systems grow they must be modularized to keep control. Whereas that sounds not really fancy, it leads to additional
-aspects to be considered by a configuration system.
-
-* Different code modules, libraries, plugins or products want to have their "own" separated configuration.
-* Similar it should be possible to add fully specific additional configurations.
-
-The default configuration hereby should always be present, whereas additional configurations are optional.
-Users want to be able to check the availability of such an additional configuration.
-
-Of course, additional configuration must be identifiable. The best way to do is to be discussed, nevertheless the
-mechanism must not depend on Java EE and the identifying keys must be serializable easily.
-Basically simple names are sufficient and woukld provide exact this required functionality.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/scannable-properties.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/scannable-properties.adoc b/docs/src/main/asciidoc/uc/scannable-properties.adoc
deleted file mode 100644
index e2a6b64..0000000
--- a/docs/src/main/asciidoc/uc/scannable-properties.adoc
+++ /dev/null
@@ -1,4 +0,0 @@
-=== Scannable Properties
-
-If possible configuration should be scannable, meaning it should be possible to evaluate the keys available.
-The corresponding capabilities should be accessible by a +isScannable()+ method.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/service-context.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/service-context.adoc b/docs/src/main/asciidoc/uc/service-context.adoc
deleted file mode 100644
index ceeea4a..0000000
--- a/docs/src/main/asciidoc/uc/service-context.adoc
+++ /dev/null
@@ -1,15 +0,0 @@
-=== Adaptable Service Context
-
-Tamaya should support an adaptable +ServiceContext+ to resolve any kind of implememntation services, both API services as core
-framework services. The +ServiceContext+ should be dynamically replecable by configuring an alternate instance of
-using the Java *ServiceContet+.
-
-This decouples component usage from its load and management part and als greatly simplifies integration with
-new/alternate runtime environments.
-The service context is exptected to provide
-
-* single singleton instances: these service can be cached.
-* access to multiple instances which implement some commons SPI interface.
-* as useful priorization of components is done by the model itself.
-
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/simple-access.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/simple-access.adoc b/docs/src/main/asciidoc/uc/simple-access.adoc
deleted file mode 100644
index d4ada1e..0000000
--- a/docs/src/main/asciidoc/uc/simple-access.adoc
+++ /dev/null
@@ -1,25 +0,0 @@
-=== Simple Access
-
-Users want to be able to access configuration in a unified way both in SE and EE. EE may provide additional
-mechanism, such as injection, but the SE mechanisms should work as well, so any code written in SE is fully
-portable to EE as well.
-This can only be achieved by providing a static accessor, e.g.
-
-[source,java]
-------------------------------------------------------------
-Configuration config = Configuration.current();
-------------------------------------------------------------
-
-The call above should work exactly the same in EE. To enable this the static call must be delegated in the
-internals of the singleton, depending on the runtime. In EE the executing component can behave contextually,
-or even be loaded within the CDI environment (at least for post loading, application runtime aspects, but not earlier).
-
-Additionally in EE it should also be possible to inject Configuration, which gives you the same results as the call
-above:
-
-[source,java]
-------------------------------------------------------------
-@Inject
-private Configuration cfg;
-------------------------------------------------------------
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/simple-property-access.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/simple-property-access.adoc b/docs/src/main/asciidoc/uc/simple-property-access.adoc
deleted file mode 100644
index 81fb879..0000000
--- a/docs/src/main/asciidoc/uc/simple-property-access.adoc
+++ /dev/null
@@ -1,9 +0,0 @@
-=== Simple Lookup of Properties
-
-Users just want to create a configuration ad hoc, from given property files. The
-files could be locally in the file system, on the classpath.
-
-Tamaya should provide a simple Java API for accessing key/value based configuration. Hereby users want to access
-properties as simple String values.
-
-Hereby returning Java 8 Optional values must be considered as well, instead of returning +null+.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/templates.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/templates.adoc b/docs/src/main/asciidoc/uc/templates.adoc
deleted file mode 100644
index 2aab3d2..0000000
--- a/docs/src/main/asciidoc/uc/templates.adoc
+++ /dev/null
@@ -1,12 +0,0 @@
-=== Configuration Templates
-
-Users want to be able to let Tamaya implement an interface template based on configuration.
-This use case is pretty similar to the injection use case. Basically the values are not injected,
-but cached within the template proxy returned, e.g. as +DynamicValue+.
-Similarly it could even be possible to define callback methods (default methods)
-or register listeners to DynamicValue instances returned.
-
-Templates hereby can easily be managed, but provide a excellent mechanism to provide type-safe configuration
-to clients in a very transparent way. Details can be controlled by using the same annotations as for
-normal configuration injection.
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/type-safe-properties.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/type-safe-properties.adoc b/docs/src/main/asciidoc/uc/type-safe-properties.adoc
deleted file mode 100644
index e71d31c..0000000
--- a/docs/src/main/asciidoc/uc/type-safe-properties.adoc
+++ /dev/null
@@ -1,10 +0,0 @@
-=== Type Safe Properties
-
-Users just want to access properties not only as Strings, but let Tamaya do the conversion to the required
-or the configred target type. By defauklt all java.lang wrapper and primitive types should be supported, but also
-other common types like date/time types, math numeric types and more.
-
-It must be possible that users can register their own custom types.
-
-Finally users also want to be able to dynamically provide or override type adaption (conversion), when reading a value,
-for a certain key/value pair.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/uc/value-placeholders.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/uc/value-placeholders.adoc b/docs/src/main/asciidoc/uc/value-placeholders.adoc
deleted file mode 100644
index 57857a8..0000000
--- a/docs/src/main/asciidoc/uc/value-placeholders.adoc
+++ /dev/null
@@ -1,8 +0,0 @@
-=== Value Placeholders
-
-Users just want to to be able to add placeholders to the values of configuration (not the keys). The mechanisms for
-resolving the placeholders hereby should be not constraint to one single lanmguage like EL. Instead of different
-replacement strategies should be selectable, e.g. by prefixing an expression with the name of the resolver that
-should do the work (eg +"blabla ${env:HOME} using Java version ${sys:java.version}."+.
-This allows resolution mechanism to be isolated easily and also allows to use simpler mechanisms, if no more complex
-ones like EL are required. This is especially useful to deal with low resource environment like ME.

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/asciidoc/usecases.adoc
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/usecases.adoc b/docs/src/main/asciidoc/usecases.adoc
deleted file mode 100644
index fb36344..0000000
--- a/docs/src/main/asciidoc/usecases.adoc
+++ /dev/null
@@ -1,58 +0,0 @@
-= Apache Tamaya -- Use Cases
-:name: Tamaya
-:rootpackage: org.apache.tamaya
-:title: Apache Tamaya
-:revnumber: 0.1-SNAPSHOT
-:revremark: Incubator
-:revdate: November 2014
-:longversion: {revnumber} ({revremark}) {revdate}
-:authorinitials: OBF
-:author: Oliver B. Fischer
-:email: <pl...@apache.org>
-:source-highlighter: coderay
-:website: http://tamaya.incubator.apache.org/
-:toc:
-:toc-placement: manual
-:encoding: UTF-8
-:numbered:
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-toc::[]
-
-
-== Use Cases for Java SE Environments
-
-include::src/main/asciidoc/uc/simple-access.adoc[]
-include::src/main/asciidoc/uc/simple-property-access.adoc[]
-include::src/main/asciidoc/uc/value-placeholders.adoc[]
-include::src/main/asciidoc/uc/type-safe-properties.adoc[]
-include::src/main/asciidoc/uc/templates.adoc[]
-include::src/main/asciidoc/uc/java8.adoc[]
-include::src/main/asciidoc/uc/locations.adoc[]
-include::src/main/asciidoc/uc/formats.adoc[]
-include::src/main/asciidoc/uc/multiple-configurations.adoc[]
-include::src/main/asciidoc/uc/external-configuration.adoc[]
-include::src/main/asciidoc/uc/context-dependent-configuration.adoc[]
-include::src/main/asciidoc/uc/dynamic-provisioning.adoc[]
-include::src/main/asciidoc/uc/minimal-propertysource.adoc[]
-include::src/main/asciidoc/uc/scannable-properties.adoc[]
-include::src/main/asciidoc/uc/combine-configs.adoc[]
-include::src/main/asciidoc/uc/management.adoc[]
-include::src/main/asciidoc/uc/service-context.adoc[]
-include::src/main/asciidoc/uc/injection.adoc[]
-
-

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/assembly/documentation.xml
----------------------------------------------------------------------
diff --git a/docs/src/main/assembly/documentation.xml b/docs/src/main/assembly/documentation.xml
index 0f8b11d..501a0c6 100644
--- a/docs/src/main/assembly/documentation.xml
+++ b/docs/src/main/assembly/documentation.xml
@@ -29,11 +29,9 @@ under the License.
     </formats>
 
     <fileSets>
-
         <fileSet>
-            <directory>${project.build.directory}/adocs</directory>
+            <directory>${project.directory}/../src/site/asciidoc</directory>
             <outputDirectory>docs</outputDirectory>
-
         </fileSet>
     </fileSets>
 </assembly>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/docs/src/main/images/CoreDesign.png
----------------------------------------------------------------------
diff --git a/docs/src/main/images/CoreDesign.png b/docs/src/main/images/CoreDesign.png
deleted file mode 100644
index a84d8a6..0000000
Binary files a/docs/src/main/images/CoreDesign.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/1-minimal-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/1-minimal-example/pom.xml b/examples/1-minimal-example/pom.xml
index c9d157f..900a90d 100644
--- a/examples/1-minimal-example/pom.xml
+++ b/examples/1-minimal-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-minimal</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/2-simple-propertysource-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/2-simple-propertysource-example/pom.xml b/examples/2-simple-propertysource-example/pom.xml
index 8d8e6b6..41306ab 100644
--- a/examples/2-simple-propertysource-example/pom.xml
+++ b/examples/2-simple-propertysource-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-simple-propertysource</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/3-resources-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/3-resources-example/pom.xml b/examples/3-resources-example/pom.xml
index 3d594c9..ec9ae47 100644
--- a/examples/3-resources-example/pom.xml
+++ b/examples/3-resources-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-resources</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/4-resolver-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/4-resolver-example/pom.xml b/examples/4-resolver-example/pom.xml
index 9602c5d..3cc724e 100644
--- a/examples/4-resolver-example/pom.xml
+++ b/examples/4-resolver-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-resolver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/5-injection-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/5-injection-example/pom.xml b/examples/5-injection-example/pom.xml
index 6aff00c..1dfcc4c 100644
--- a/examples/5-injection-example/pom.xml
+++ b/examples/5-injection-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-injection</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/6-fileobserver-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/6-fileobserver-example/pom.xml b/examples/6-fileobserver-example/pom.xml
index 5b12c5f..c22ed27 100644
--- a/examples/6-fileobserver-example/pom.xml
+++ b/examples/6-fileobserver-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-fileobserver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/7-builder-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/7-builder-example/pom.xml b/examples/7-builder-example/pom.xml
index 94c5a7e..7d95305 100644
--- a/examples/7-builder-example/pom.xml
+++ b/examples/7-builder-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/8-remote-example/client/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/client/pom.xml b/examples/8-remote-example/client/pom.xml
index 6bfafd7..6bab59b 100644
--- a/examples/8-remote-example/client/pom.xml
+++ b/examples/8-remote-example/client/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.examples</groupId>
         <artifactId>tamaya-example-remote</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote-client</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/8-remote-example/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/pom.xml b/examples/8-remote-example/pom.xml
index 8b18a6d..8985e33 100644
--- a/examples/8-remote-example/pom.xml
+++ b/examples/8-remote-example/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-examples</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/8-remote-example/server/pom.xml
----------------------------------------------------------------------
diff --git a/examples/8-remote-example/server/pom.xml b/examples/8-remote-example/server/pom.xml
index d21c863..02e26fe 100644
--- a/examples/8-remote-example/server/pom.xml
+++ b/examples/8-remote-example/server/pom.xml
@@ -21,7 +21,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.examples</groupId>
         <artifactId>tamaya-example-remote</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-example-remote-server</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index df7e369..9cbb8ac 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/builder/pom.xml
----------------------------------------------------------------------
diff --git a/modules/builder/pom.xml b/modules/builder/pom.xml
index 96f6244..32dc6b5 100644
--- a/modules/builder/pom.xml
+++ b/modules/builder/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/classloader-support/pom.xml
----------------------------------------------------------------------
diff --git a/modules/classloader-support/pom.xml b/modules/classloader-support/pom.xml
index 1d27df4..24322dd 100644
--- a/modules/classloader-support/pom.xml
+++ b/modules/classloader-support/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/collections/pom.xml
----------------------------------------------------------------------
diff --git a/modules/collections/pom.xml b/modules/collections/pom.xml
index 44200bd..db22903 100644
--- a/modules/collections/pom.xml
+++ b/modules/collections/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/events/pom.xml
----------------------------------------------------------------------
diff --git a/modules/events/pom.xml b/modules/events/pom.xml
index 74d3a4b..21269ed 100644
--- a/modules/events/pom.xml
+++ b/modules/events/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-events</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/filter/pom.xml
----------------------------------------------------------------------
diff --git a/modules/filter/pom.xml b/modules/filter/pom.xml
index d9d4854..6222349 100644
--- a/modules/filter/pom.xml
+++ b/modules/filter/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-filter</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/formats/pom.xml
----------------------------------------------------------------------
diff --git a/modules/formats/pom.xml b/modules/formats/pom.xml
index baf3666..71b3912 100644
--- a/modules/formats/pom.xml
+++ b/modules/formats/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-formats</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/functions/pom.xml
----------------------------------------------------------------------
diff --git a/modules/functions/pom.xml b/modules/functions/pom.xml
index 88d95e4..1009298 100644
--- a/modules/functions/pom.xml
+++ b/modules/functions/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/injection-api/pom.xml
----------------------------------------------------------------------
diff --git a/modules/injection-api/pom.xml b/modules/injection-api/pom.xml
index 9b2d580..e4fc7b7 100644
--- a/modules/injection-api/pom.xml
+++ b/modules/injection-api/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-injection-api</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/injection/pom.xml
----------------------------------------------------------------------
diff --git a/modules/injection/pom.xml b/modules/injection/pom.xml
index eae751c..f40c472 100644
--- a/modules/injection/pom.xml
+++ b/modules/injection/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-injection</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/camel/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/camel/pom.xml b/modules/integration/camel/pom.xml
index 07adc0b..ff62b8a 100644
--- a/modules/integration/camel/pom.xml
+++ b/modules/integration/camel/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-camel</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/cdi-se/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/cdi-se/pom.xml b/modules/integration/cdi-se/pom.xml
index bcaf441..a0dfc3f 100644
--- a/modules/integration/cdi-se/pom.xml
+++ b/modules/integration/cdi-se/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-cdi-se</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/cdi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/cdi/pom.xml b/modules/integration/cdi/pom.xml
index df7288a..caa1527 100644
--- a/modules/integration/cdi/pom.xml
+++ b/modules/integration/cdi/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-cdi</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/consul/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/consul/pom.xml b/modules/integration/consul/pom.xml
index d1f5265..879d484 100644
--- a/modules/integration/consul/pom.xml
+++ b/modules/integration/consul/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-consul</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/etcd/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/etcd/pom.xml b/modules/integration/etcd/pom.xml
index 7520822..ac6f14b 100644
--- a/modules/integration/etcd/pom.xml
+++ b/modules/integration/etcd/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-etcd</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/pom.xml b/modules/integration/osgi/pom.xml
index 3fa6516..23f0da2 100644
--- a/modules/integration/osgi/pom.xml
+++ b/modules/integration/osgi/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-osgi</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/pom.xml b/modules/integration/pom.xml
index df4775d..b887700 100644
--- a/modules/integration/pom.xml
+++ b/modules/integration/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <packaging>pom</packaging>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/integration/spring/pom.xml
----------------------------------------------------------------------
diff --git a/modules/integration/spring/pom.xml b/modules/integration/spring/pom.xml
index ee1628c..0feaa9b 100644
--- a/modules/integration/spring/pom.xml
+++ b/modules/integration/spring/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-integration</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>tamaya-spring</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/json/pom.xml
----------------------------------------------------------------------
diff --git a/modules/json/pom.xml b/modules/json/pom.xml
index 49f4629..670516c 100644
--- a/modules/json/pom.xml
+++ b/modules/json/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-json</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/management/pom.xml
----------------------------------------------------------------------
diff --git a/modules/management/pom.xml b/modules/management/pom.xml
index 8603cf9..4953682 100644
--- a/modules/management/pom.xml
+++ b/modules/management/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/model/pom.xml
----------------------------------------------------------------------
diff --git a/modules/model/pom.xml b/modules/model/pom.xml
index b121c24..521d714 100644
--- a/modules/model/pom.xml
+++ b/modules/model/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/mutable-config/pom.xml
----------------------------------------------------------------------
diff --git a/modules/mutable-config/pom.xml b/modules/mutable-config/pom.xml
index 0ddd7bf..38cabbc 100644
--- a/modules/mutable-config/pom.xml
+++ b/modules/mutable-config/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/optional/pom.xml
----------------------------------------------------------------------
diff --git a/modules/optional/pom.xml b/modules/optional/pom.xml
index 622c3f7..142bdd8 100644
--- a/modules/optional/pom.xml
+++ b/modules/optional/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/pom.xml
----------------------------------------------------------------------
diff --git a/modules/pom.xml b/modules/pom.xml
index e32b92f..d85849c 100644
--- a/modules/pom.xml
+++ b/modules/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya</groupId>
         <artifactId>tamaya-all</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/resolver/pom.xml
----------------------------------------------------------------------
diff --git a/modules/resolver/pom.xml b/modules/resolver/pom.xml
index 596abb7..eb9af80 100644
--- a/modules/resolver/pom.xml
+++ b/modules/resolver/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-resolver</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/resources/pom.xml
----------------------------------------------------------------------
diff --git a/modules/resources/pom.xml b/modules/resources/pom.xml
index 1ba7dbe..369a839 100644
--- a/modules/resources/pom.xml
+++ b/modules/resources/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-resources</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/server/pom.xml
----------------------------------------------------------------------
diff --git a/modules/server/pom.xml b/modules/server/pom.xml
index 55c75ec..7e34018 100644
--- a/modules/server/pom.xml
+++ b/modules/server/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/spi-support/pom.xml
----------------------------------------------------------------------
diff --git a/modules/spi-support/pom.xml b/modules/spi-support/pom.xml
index 62082eb..af70402 100644
--- a/modules/spi-support/pom.xml
+++ b/modules/spi-support/pom.xml
@@ -22,7 +22,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/modules/yaml/pom.xml
----------------------------------------------------------------------
diff --git a/modules/yaml/pom.xml b/modules/yaml/pom.xml
index 483b6a9..f659efb 100644
--- a/modules/yaml/pom.xml
+++ b/modules/yaml/pom.xml
@@ -23,7 +23,7 @@ under the License.
     <parent>
         <groupId>org.apache.tamaya.ext</groupId>
         <artifactId>tamaya-extensions</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.2-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
     <artifactId>tamaya-yaml</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index a109220..0cc6f49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@ under the License.
     </parent>
     <groupId>org.apache.tamaya</groupId>
     <artifactId>tamaya-all</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.2-incubating-SNAPSHOT</version>
     <packaging>pom</packaging>
 
     <name>Apache Tamaya</name>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/src/site/asciidoc/release-guide.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/release-guide.adoc b/src/site/asciidoc/release-guide.adoc
index ffc9547..49e017e 100644
--- a/src/site/asciidoc/release-guide.adoc
+++ b/src/site/asciidoc/release-guide.adoc
@@ -1,7 +1,225 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+// .
+//   http://www.apache.org/licenses/LICENSE-2.0
+// .
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
 = Apache Tamaya -- Release Guide
 
-This document contains the guidelines for Tamaya.
+include::temp-properties-files-for-site/attributes.adoc[]
+
+Performing a release requires several steps. This document describes each step, so everybody in the committer's
+team should be able to perform the release procedure.
+
+
+== Tell the others you would proceed with the release procedure
+
+[listing,text]
+----------------------------------------
+    first steps for the next release
+
+    hi @ all,
+
+    if there are no objections, i'll start with the first steps for the next release (review, documentation,...).
+    it would be great to start with the release procedure next week.
+
+    regards,
+    [name]
+----------------------------------------
+
+
+== Check everything is ready
+
+* Check the jenkins builds.
+* Ensure all JIRA-tickets targeting the release are resolved. If not, get in contact with the ticket
+  owner/assignee to check
+  ** if the ticket can be postponed for the next release
+  ** how long it takes to resolve it and if one can help.
+
+
+== Prepare the release
+
+* Create release notes and commit them to `tamaya/readme/` (format `ReleaseNotes-[version].html`)
+* Create a release branch in git and switch to this branch:
+
+[listing,text]
+----------------------------------------
+    git checkout -b vote-tamaya-[release version]
+
+    export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
+    mvn release:prepare -DdryRun=true
+
+    //copy prepared workspace (to continue faster if an upload fails in the next step)
+----------------------------------------
+
+* If something fails you may switch to the master branch, fix whatever is needed and rebase your release branch to
+  accomodate the latest changes done.
+* On success you can check the release packages from `dist/target`.
+* If everything looks good you can proceed with the release:
+
+[listing,text]
+----------------------------------------
+    export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
+    mvn release:prepare
+    mvn release:perform
+----------------------------------------
+
+* check the created commits including user-name and email
+* login to https://repository.apache.org/ and go to "Staging Repositories"
+* check the contents of the newly created tamaya staging repository
+* _close_ the repository to let Nexus do its validations
+* On success:
+* push the release-branch to the git repo
+
+[listing,text]
+----------------------------------------
+git push
+----------------------------------------
+
+* Add the distributiong artifacts to the dev repositories:
+
+[listing,text]
+----------------------------------------
+    svn co https://dist.apache.org/repos/dist/dev/incubator/tamaya/
+    mkdir [version]
+    set RELEASE_HOME='pwd'/[version]
+    cd PROJECT_ROOT
+    cp DISCLAIMER $RELEASE_HOME
+    cp NOTICE $RELEASE_HOME
+    cp LICENCE $RELEASE_HOME
+    cp readme/ReleaseNotes-[version].html $RELEASE_HOME
+    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.zip $RELEASE_HOME
+    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.tar.gz $RELEASE_HOME
+    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.zip $RELEASE_HOME
+    curl https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.tar.gz $RELEASE_HOME
+    // add corresponding asc, md5, sha1 file as well
+    svn add [version]
+    svn commit --username <apacheId>
+----------------------------------------
+
+* Check contents on https://dist.apache.org/repos/dist/dev/incubator/tamaya/[version]
+
+
+== Start the vote
+
+[listing,text]
+----------------------------------------
+    [VOTE] Release of Apache Tamaya [version]
+
+
+    Hi,
+
+    I was running the needed tasks to get the [version] release of Apache Tamaya out.
+    The artifacts are deployed to Nexus [1] (and [2]).
+
+    The tag is available at [3] and will renamed once the vote passed.
+
+    Please take a look at the artifacts and vote!
+
+    Please note:
+    This vote is a "majority approval" with a minimum of three +1 votes (see [4]).
+
+    ------------------------------------------------
+    [ ] +1 for community members who have reviewed the bits
+    [ ] +0
+    [ ] -1 for fatal flaws that should cause these bits not to be released, and why..............
+    ------------------------------------------------
+
+    Thanks,
+    [name]
+
+    [1] https://repository.apache.org/content/repositories/...
+    [2] https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.zip
+        https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.zip
+    [3] https://git1-us-west.apache.org/repos/asf?p=incubator-tamaya.git;a=commit;h=2910da468fce16210e6dd77d8ba23ddbdd434efe
+    [4] http://www.apache.org/foundation/voting.html#ReleaseVotes
+----------------------------------------
+
+* Announce the Vote
+  ** Create a short link to the release at http://s.apache.org (format Tamaya_[version])
+  ** Tweet about the vote via _@TamayaConf_
+
+* After 72 hours close the vote write a reult email, e.g.
+
+[listing,text]
+----------------------------------------
+    [Result] (was: Re: [VOTE] Release of Apache Tamaya [version])
+
+    thank you for voting!
+
+    X binding +1 votes (pmc):
+    [list]
+
+    Y non-binding +1 votes:
+    [list]
+
+    Z -1 votes
+    [list]
+----------------------------------------
+
+
+== Perform the release
+
+If the binding majority approved the vote continue:
+
+* Login to https://repository.apache.org/ and _release_ the repository
+* Rename the vote branch:
+
+[listing,text]
+----------------------------------------
+    git branch -m vote-tamaya-[version] tamaya-[version]
+----------------------------------------
+
+* Add a release tag:
+
+----------------------------------------
+    git tag -a tamaya-[version]
+----------------------------------------
+
+* Merge master with the new prepared version:
+
+[listing,text]
+----------------------------------------
+    git checkout master
+    git merge tamaya-[version]
+    git push origin tamaya-[version]
+    git push origin master
+----------------------------------------
+
+* Close the release and corresponding tickets at JIRA
+
+* Wait some minutes and check `http://repo2.maven.org/maven2/org/apache/tamaya`
+
+* Upload the distribution Artifacts
+
+[listing,text]
+----------------------------------------
+    svn co https://dist.apache.org/repos/dist/release/incubator/tamaya/
+    mkdir [version]
+    // add and commit the artifacts (*source-release.zip, *bin-release.zip + asc, md5, sha1)
+    // use the artifacts from:
+    //  http://repo1.maven.org/maven2/org/apache/tamaya/tamaya-distribution/[version]/
+----------------------------------------
+
+
+== Updating the Tamaya Project Site
 
-TDB
+Currently Tamaya's Site located at https://svn.apache.org/repos/asf/incubator/tamaya/site/trunk must be updated
+manually. This should change in the future (then a simple mvn site site:deploy) should be sufficient. This
+includes:
 
-// Add an instruction to always add the release to the release overview page
+* Updating the entry pages with the new release
+* Updating the news page with the new release
+* Updating all Javadocs published on the site
+* Updating the documentation htmls generated from asciidoc

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/3854cc22/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index 7afd539..6cf5a5f 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -40,16 +40,17 @@ under the License.
 
         <menu name="Documentation">
             <item name="Quickstart" href="quickstart.html"/>
+            <item name="User Guide" href="userguide/index.html"/>
             <item name="Extension Guide" href="extensions/index.html"/>
             <item name="${project.version} JavaDoc" target="" href="apidocs/index.html"/>
         </menu>
 
         <menu name="Development">
-            <item name="Release Guide" href="release-guide.html"/>
-            <item name="Development Guide" href="devguide/"/>
+            <item name="Sources" href="source.html"/>
             <item name="Community" href="community.html"/>
             <item name="Issues" href="https://issues.apache.org/jira/browse/TAMAYA" target="_blank"/>
-            <item name="Sources" href="source.html"/>
+            <item name="Development Guide" href="devguide/"/>
+            <item name="Release Guide" href="release-guide.html"/>
         </menu>
 
         <menu name="Reports" ref="reports">
@@ -58,7 +59,6 @@ under the License.
         <menu name="Releases">
             <item name="Download" href="download.html"/>
             <item name="Release History" href="history.html"/>
-
         </menu>
 
     </body>