Repository: incubator-tamaya-site Updated Branches: refs/heads/asf-site d22f8ed33 -> 637aaff62
http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/extensions/mod_server.html ---------------------------------------------------------------------- diff --git a/documentation/extensions/mod_server.html b/documentation/extensions/mod_server.html index 1f284c0..97ad987 100644 --- a/documentation/extensions/mod_server.html +++ b/documentation/extensions/mod_server.html @@ -124,7 +124,7 @@ <h1>Apache Tamaya&#8201;&#8212;&#8201;Extension: Configuration Server</h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div id="preamble"> <div class="sectionbody"> @@ -168,12 +168,16 @@ configuration properties.</p> <div class="sect2"> <h3 id="_providing_configuration_using_the_tamaya_built_in_configuration_server">Providing configuration using the Tamaya Built-in Configuration Server</h3> <div class="paragraph"> -<p>THe most simple way for providing onfiguration ist to start the internal server:</p> +<p>The most simple way for providing configuration is to start the internal server:</p> </div> <div class="listingblock"> <div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Server server = org.apache.tamaya.server.ConfigServer.createServer(); -server.start(port);</code></pre> +<pre class="prettyprint highlight"><code class="language-java" data-lang="java">// using context path: '/', port 8085 +org.apache.tamaya.server.Server.start(); + +// optionally pass the root context path and/or port: +// org.apache.tamaya.server.Server.start(8088); +// org.apache.tamaya.server.Server.start("/appconf", 7787);</code></pre> </div> </div> <div class="paragraph"> @@ -182,11 +186,11 @@ server.start(port);</code></pre> <div class="ulist"> <ul> <li> -<p>GET /config provides access to the full configuration tree.</p> +<p>GET ${CONTEXT}/config provides access to the full configuration tree.</p> </li> <li> -<p>GET /config/filtered/${path} let you filter the configuration returned using regular expression (comma separated). -E.g. /config/filtered/java,sun will return all configuration entries starting with <em>java</em> and <em>sun</em>.</p> +<p>GET ${CONTEXT}/config/filtered/${path} let you filter the configuration returned using regular expression (comma separated). +E.g. ${CONTEXT}/config/filtered/java,sun will return all configuration entries starting with <em>java</em> and <em>sun</em>.</p> </li> </ul> </div> @@ -198,9 +202,8 @@ parameters:</p> <ul> <li> <p>format allows to define the target format. By default the ACCEPT header of the http request is checked, but this -setting can be explicitly controlled by passing tis parameter explicitly. The value is the expected MIME type to be -returned. By default the service supports the following types (refer to the SPI section later in this document for -options to adapt this):</p> +setting can be explicitly controlled by passing this parameter explicitly. The value is the expected MIME type to be +returned. By default the service supports the following types:</p> <div class="ulist"> <ul> <li> @@ -213,70 +216,34 @@ options to adapt this):</p> <p>application/xml</p> </li> <li> -<p>text/json</p> +<p>application/json</p> </li> </ul> </div> </li> -<li> -<p>scope,scopeId allows to use a server-side preconfigured filter/combination policy to be applied for -evaluating the entries to be returned. Hereby the scopeId paramter allows to address a certain scope. -As an example think of a scope ?scope=CLIENT&scopeId=client1 to be passed as request parameters. This -tells the server module to lookup a configured scope named 'CLIENT' and access a ConfigOperator for the -given scopeId 'client1'. The returned operator then can filter and combine any kind of entries to the -required client configuration (for client1). Refer to the scopes section for more details.</p> -</li> </ul> </div> </div> <div class="sect2"> <h3 id="_using_the_configuration_servlets">Using the Configuration Servlets</h3> <div class="paragraph"> -<p>Additionally to the fully built-in solution, it is also possible to integrate the Tamaya server module with a standard -Java EE servlet container. Tamaya provides 2 servlet implementations:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>the servlet org.apache.tamaya.server.FilteredConfigServlet can be used to register access to configurations -that also support filtering of the keys. The URL looks like</p> -</li> -</ul> -</div> -<div class="listingblock"> -<div class="content"> -<pre>http(s)://HOST/SERVLET_CONTEXT/PATHS?params - -where - HOST = host name incl port, e.g. 127.0.0.2:234 - SERVLET_CONTEXT = the base context and servlet context, e.g. /client/config/filtered - PATHS = A comma separated number of key paths to be filtered for being returned, e.g. - java,sun,client - params = the optional parameters (scope, scopeId and format)</pre> -</div> -</div> -<div class="ulist"> -<ul> -<li> -<p>the servlet org.apache.tamaya.server.FullConfigServlet can be used to register access to configurations -that alwyas returns all items known. The URL looks like</p> -</li> -</ul> +<p>You can also register a servlet, e.g. as follows;</p> </div> <div class="listingblock"> <div class="content"> -<pre>http(s)://HOST/SERVLET_CONTEXT?params - -where - HOST = host name incl port, e.g. 127.0.0.2:234 - SERVLET_CONTEXT = the base context and servlet context, e.g. /client/config/filtered - params = the optional parameters (scope, scopeId and format)</pre> +<pre><servlet> + <servlet-name>config-servlet</servlet-name> + <servlet-class>org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet</servlet-class> + <init-params> + <init-param key="javax.ws.rs.Application">org.apache.tamaya.server.Server$ResourceLoader</init-param> + </init-params> +</servlet></pre> </div> </div> <div class="sect3"> <h4 id="_formatting_used_by_default">Formatting used by Default</h4> <div class="paragraph"> -<p>The server module formats the configuration returned by default in thw following variants:</p> +<p>The server module formats the configuration returned by default in the following variants:</p> </div> <div class="listingblock"> <div class="title">Formatting for text/json</div> @@ -303,12 +270,12 @@ where "sun.jnu.encoding": "Cp1252", "sun.management.compiler": "HotSpot 64-Bit Tiered Compilers", "sun.os.patch.level": "", - "{meta}class": "org.apache.tamaya.functions.FilteredConfiguration", - "{meta}info.filter": "java.v,sun", - "{meta}info.format": "application/json", - "{meta}info.timestamp": "1441463200571", - "{meta}timestamp": "1441463200571", - "{meta}type": "Configuration" + "_class": "org.apache.tamaya.functions.FilteredConfiguration", + "_info.filter": "java.v,sun", + "_info.format": "application/json", + "_info.timestamp": "1441463200571", + "_timestamp": "1441463200571", + "_type": "Configuration" }</code></pre> </div> </div> @@ -337,12 +304,12 @@ where <entry key="sun.jnu.encoding">Cp1252</entry> <entry key="sun.management.compiler">HotSpot 64-Bit Tiered Compilers</entry> <entry key="sun.os.patch.level"></entry> - <entry key="{meta}class">org.apache.tamaya.functions.FilteredConfiguration</entry> - <entry key="{meta}info.filter">java.v,sun</entry> - <entry key="{meta}info.format">application/xml</entry> - <entry key="{meta}info.timestamp">1441463383687</entry> - <entry key="{meta}timestamp">1441463383687</entry> - <entry key="{meta}type">Configuration</entry> + <entry key="_class">org.apache.tamaya.functions.FilteredConfiguration</entry> + <entry key="_info.filter">java.v,sun</entry> + <entry key="_info.format">application/xml</entry> + <entry key="_info.timestamp">1441463383687</entry> + <entry key="_timestamp">1441463383687</entry> + <entry key="_type">Configuration</entry> </configuration></code></pre> </div> </div> @@ -371,12 +338,12 @@ where sun.jnu.encoding: Cp1252, sun.management.compiler: HotSpot 64-Bit Tiered Compilers, sun.os.patch.level: , - {meta}class: org.apache.tamaya.functions.FilteredConfiguration, - {meta}info.filter: java.v,sun, - {meta}info.format: text/plain, - {meta}info.timestamp: 1441463082020, - {meta}timestamp: 1441463082021, - {meta}type: Configuration</code></pre> + _class: org.apache.tamaya.functions.FilteredConfiguration, + _info.filter: java.v,sun, + _info.format: text/plain, + _info.timestamp: 1441463082020, + _timestamp: 1441463082021, + _type: Configuration</code></pre> </div> </div> <div class="listingblock"> @@ -409,13 +376,12 @@ Configuration: sun.jnu.encoding: Cp1252, sun.management.compiler: HotSpot 64-Bit Tiered Compilers, sun.os.patch.level: , - {meta}class: org.apache.tamaya.functions.FilteredConfiguration, - {meta}info.filter: java.v,sun, - {meta}info.format: text/html, - {meta}info.timestamp: 1441463459653, - {meta}timestamp: 1441463459654, - {meta}type: Configuration - + _class: org.apache.tamaya.functions.FilteredConfiguration, + _info.filter: java.v,sun, + _info.format: text/html, + _info.timestamp: 1441463459653, + _timestamp: 1441463459654, + _type: Configuration </pre> </body> </html></code></pre> @@ -423,127 +389,6 @@ Configuration: </div> </div> </div> -<div class="sect2"> -<h3 id="_spi">SPI</h3> -<div class="sect3"> -<h4 id="_scopes">Scopes</h4> -<div class="paragraph"> -<p>As mentioned earlier in this document scopes can be used to define the exact configuration tree to be returned, e.g. -as a result of combining multiple sub trees. Following an example of the code to be written to return a configuration -that combines common client default entries with client specific entries:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">public class ClientScopeProvider implements ScopeProvider{ - - /** - * Access the unique scope name. - * @return the unique scope name. - */ - public String getScopeType(){ - return "CLIENT"; - } - - @Override - public ConfigOperator getScope(String scopeId) { - return c -> - ConfigurationFunctions.combine("Scoped Config CLIENT="+scopeId, - c.with(ConfigurationFunctions.sectionRecursive(true, "client.default")), - c.with(ConfigurationFunctions.sectionRecursive(true, "client." + scopeId)) - ); - } -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>This class can be registered using the ServiceContext in place. By default the ServiceLoader is used, so you will -have to add the following to META-INF/services/org.apache.tamaya.server.spi.ScopeProvider:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-listing" data-lang="listing">my.full.packagename.ClientScopeProvider</code></pre> -</div> -</div> -</div> -<div class="sect3"> -<h4 id="_adapting_the_way_configuration_is_derived">Adapting the Way Configuration is Derived</h4> -<div class="paragraph"> -<p>Finally the effective readong and configuration handling logic can also be replaced or improved. This can be -done by registering your own implementation of the interface ConfigProviderService:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">public interface ConfigProviderService { - String getConfigurationWithPath(String path, String format, String scope, String scopeId, HttpServletRequest request); - String getConfiguration(String format, String scope, String scopeId, HttpServletRequest request); - void updateConfiguration(String payload, HttpServletRequest request); - void deleteConfiguration(String paths, HttpServletRequest request); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>By default the ServiceContextManager uses the java.util.ServiceLoader for component loading, so to replace the -default server code you must register a higher @Priority implementation.</p> -</div> -</div> -<div class="sect3"> -<h4 id="_replacing_the_built_in_server">Replacing the Built-In Server</h4> -<div class="paragraph"> -<p>We have seen earlier that starting a configuration server is pretty easy:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Server server = org.apache.tamaya.server.ConfigServer.createServer(); -server.start(port);</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Nevertheless one may want to replace the used implementation of Server. This can be done easily by simply -registering an overriding implementation if the corresponding interface:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">public interface Server { - void start(int port); - boolean isStarted(); - void stop(); - void destroy(); -}</code></pre> -</div> -</div> -</div> -<div class="sect3"> -<h4 id="_the_scopemanager_singleton">The ScopeManager Singleton</h4> -<div class="paragraph"> -<p>Finally whe implementing your own server, you might also benefit from the ScopeManager singleton. Basically this -class loads all registered ScopeProvider and manages the configured scope instances:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">public final class ScopeManager { - ... - - private ScopeManager(){} - - /** - * Get the scope given its name. - * @param scopeId the scope name - * @return the scope matching - * @throws ConfigException, if nos such scope is defined. - */ - public static ConfigOperator getScope(String scopeId, String target); - - /** - * Get the defined scope names. - * @return the defined scope names, never null. - */ - public static Set<String> getScopes(); - -}</code></pre> -</div> -</div> -</div> -</div> </div> </div></p> @@ -557,7 +402,7 @@ class loads all registered ScopeProvider and manages the configured scope instan <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/extensions/mod_spi-support.html ---------------------------------------------------------------------- diff --git a/documentation/extensions/mod_spi-support.html b/documentation/extensions/mod_spi-support.html index af80719..8a5d9d8 100644 --- a/documentation/extensions/mod_spi-support.html +++ b/documentation/extensions/mod_spi-support.html @@ -124,7 +124,7 @@ <h1>Apache Tamaya&#8201;&#8212;&#8201;Extension: Classloader Isolation Support</h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div id="preamble"> <div class="sectionbody"> @@ -175,10 +175,27 @@ case, where no such annotation is present).</p> + PropertyFiltering provides another helpful class that manages PropertyFilter instances and provides an easy to use high level API. + PropertySourceComparator provides an implementation that compares PropertySources based on their getOrdinal() - values and their class names.</p> + values and their class names. ++ The default configuration implementation also allows to replace the raw value evaluation + logic using a ConfigValueEvaluator, similar to Tamaya’s core implementation.</p> </li> </ul> </div> +<div class="admonitionblock note"> +<table> +<tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content"> +It is highly recommended that you read also the <a href="../core.html">documentation</a> of Tamaya’s + implementation core, since this describes the abstrations in use in more + detail. This module allows to reuse Tamaya’s implementation artifacts but + still allow alternate implementations of the core API to be used. +</td> +</tr> +</table> +</div> </div> <div class="sect2"> <h3 id="_compatibility">Compatibility</h3> @@ -189,7 +206,7 @@ case, where no such annotation is present).</p> <div class="sect2"> <h3 id="_installation">Installation</h3> <div class="paragraph"> -<p>To benefit from Tamaya CDI integration you only must add the corresponding dependency to your module:</p> +<p>To use Tamaya’s <em>spisupport</em> you only must add the corresponding dependency to your module:</p> </div> <div class="listingblock"> <div class="content"> @@ -219,7 +236,7 @@ of the Tamaya API similarly.</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/extensions/mod_spring.html ---------------------------------------------------------------------- diff --git a/documentation/extensions/mod_spring.html b/documentation/extensions/mod_spring.html index 17d9489..7c0d156 100644 --- a/documentation/extensions/mod_spring.html +++ b/documentation/extensions/mod_spring.html @@ -124,7 +124,7 @@ <h1>Apache Tamaya&#8201;&#8212;&#8201;Extension: Spring Integration</h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div id="preamble"> <div class="sectionbody"> @@ -290,7 +290,8 @@ public class ConfiguredSpringBean { </div> </div> <div class="paragraph"> -<p>Summarizing you get all the nice features of Tamaya out of the box running with your Spring code.</p> +<p>Summarizing you get all the nice features of Tamaya out of the box running +with your Spring code.</p> </div> </div> </div> @@ -306,7 +307,7 @@ public class ConfiguredSpringBean { <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/extensions/mod_usagetracker.html ---------------------------------------------------------------------- diff --git a/documentation/extensions/mod_usagetracker.html b/documentation/extensions/mod_usagetracker.html index fec06ab..7b7efa6 100644 --- a/documentation/extensions/mod_usagetracker.html +++ b/documentation/extensions/mod_usagetracker.html @@ -124,7 +124,7 @@ <h1>Apache Tamaya&#8201;&#8212;&#8201;Extension: Usage Tracking</h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div id="preamble"> <div class="sectionbody"> @@ -153,7 +153,7 @@ VM.</p> <div class="sect2"> <h3 id="_installation">Installation</h3> <div class="paragraph"> -<p>To benefit from configuration mutability support you only must add the corresponding dependency to your module:</p> +<p>To use Tamaya <em>usagetracker</em> you only must add the corresponding dependency to your module:</p> </div> <div class="listingblock"> <div class="content"> @@ -252,7 +252,7 @@ singleton for configuration statistics is defined as follows:</p> </div> </div> <div class="sect3"> -<h4 id="_customizing_the_stacktrage_for_usage_reporting">Customizing the Stacktrage for Usage Reporting</h4> +<h4 id="_customizing_the_stacktrace_for_usage_reporting">Customizing the Stacktrace for Usage Reporting</h4> <div class="paragraph"> <p>The stacktrace tracked by the system can be customized in several ways:</p> </div> @@ -339,7 +339,7 @@ logic can be adapted or replaced.</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/extensions/mod_validation.html ---------------------------------------------------------------------- diff --git a/documentation/extensions/mod_validation.html b/documentation/extensions/mod_validation.html index af87ce3..9232151 100644 --- a/documentation/extensions/mod_validation.html +++ b/documentation/extensions/mod_validation.html @@ -124,7 +124,7 @@ <h1>Apache Tamaya&#8201;&#8212;&#8201;Extension: Configuration Validation</h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div id="preamble"> <div class="sectionbody"> @@ -153,7 +153,7 @@ defined in a Tamaya Metaconfiguration XML file.</p> <div class="sect2"> <h3 id="_installation">Installation</h3> <div class="paragraph"> -<p>To benefit from Tamaya Metamodel feature you only must add the corresponding dependency to your module:</p> +<p>To activate configuration <em>validation</em> you only must add the corresponding dependency to your module:</p> </div> <div class="listingblock"> <div class="content"> @@ -274,7 +274,7 @@ a WARNING message.</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/extensions/mod_yaml.html ---------------------------------------------------------------------- diff --git a/documentation/extensions/mod_yaml.html b/documentation/extensions/mod_yaml.html index be7f7a4..381c946 100644 --- a/documentation/extensions/mod_yaml.html +++ b/documentation/extensions/mod_yaml.html @@ -124,7 +124,7 @@ <h1>Apache Tamaya&#8201;&#8212;&#8201;Extension: Builder</h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div id="preamble"> <div class="sectionbody"> @@ -153,7 +153,7 @@ use intendation for expressing hierarchy, which makes yaml configuration files v <div class="sect2"> <h3 id="_installation">Installation</h3> <div class="paragraph"> -<p>To benefit from configuration builder support you only must add the corresponding dependency to your module:</p> +<p>To use YAML as configuration format you must add the corresponding dependency to your module:</p> </div> <div class="listingblock"> <div class="content"> @@ -175,7 +175,7 @@ use intendation for expressing hierarchy, which makes yaml configuration files v </div> <div class="listingblock"> <div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">ConfigurationData dataRead = ConfigurationFormats.readConfig( +<pre class="prettyprint highlight"><code class="language-java" data-lang="java">PropertySource ps = ConfigurationFormats.createPropertySource( getClassLoader().getResource("myFileConfig.yaml"), new YAMLFormat()));</code></pre> </div> </div> @@ -263,7 +263,7 @@ comments -> Late afternoon is best. Backup contact is Nancy Billsmer @ 338-43 <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/quickstart.html ---------------------------------------------------------------------- diff --git a/documentation/quickstart.html b/documentation/quickstart.html index 388a441..9f13202 100644 --- a/documentation/quickstart.html +++ b/documentation/quickstart.html @@ -124,16 +124,18 @@ <h1></h1> </div> - <p><em>2017-02-24</em></p> + <p><em>2017-03-07</em></p> <p><div class="sect1"> <h2 id="_apache_tamaya_quickstart">Apache Tamaya: Quickstart</h2> <div class="sectionbody"> <div class="paragraph"> <p>The fastest way to start with Tamaya is just using the <em>Core</em> implementation, -implementing the <strong>API</strong> in small, minimalistic way. For that add the following +implementing the <strong>API</strong> in a minimalistic way. For that add the following Maven dependency to your project:</p> </div> +<div class="sect2"> +<h3 id="_adding_the_tamaya_dependency">Adding the Tamaya Dependency</h3> <div class="listingblock"> <div class="content"> <pre class="prettyprint highlight"><code class="language-xml" data-lang="xml"><dependency> @@ -143,8 +145,39 @@ Maven dependency to your project:</p> </dependency></code></pre> </div> </div> +</div> +<div class="sect2"> +<h3 id="_start_coding">Start Coding</h3> <div class="paragraph"> -<p>Given that you can add your configuration properties to the following locations in your classpath:</p> +<p>In your Java code you can directly access configuration from the API. In most cases it is recommended +to provide the default values when accessing the configuration:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Configuration config = ConfigurationProvider.getConfiguration(); + +String aTextValue = config.getOrDefault("my.value.key", "N/A"); +int aNumericValue = config.getOrDefault("my.numValueKey", Integer.class, 15 /* default */); +BigDecimal bdValue = config.getOrDefault("my.BD.value", BigDecimal.class, BigDecimal.valueOf(120));</code></pre> +</div> +</div> +<div class="paragraph"> +<p>With Java 8 you can, of course, also use Optional, e.g.</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Configuration config = ConfigurationProvider.getConfiguration(); + +String aTextValue = Optional.ofNullable(config.getOrDefault("my.value.key").orElse("N/A");</code></pre> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_add_define_your_configuration_data">Add/define your configuration data</h3> +<div class="paragraph"> +<p>As seen you can immedeatly start working with your configuration backend, without adding any kind of +default configuration. Nevertheless the <em>core</em> implementation also comes with a <em>default</em> mechanism, +where you can store your configuration as .properties in your classpath:</p> </div> <div class="listingblock"> <div class="content"> @@ -152,8 +185,8 @@ Maven dependency to your project:</p> </div> </div> <div class="paragraph"> -<p>Additionally also system properties are taken into account, hereby overriding the default properties. Overall -Tamaya by default defines the following configuration model per default (most significant first):</p> +<p>Additionally also system properties are taken into account, hereby overriding the <em>default</em> properties. +Overall Tamaya by default defines the following configuration model per default (most significant first):</p> </div> <div class="olist arabic"> <ol class="arabic"> @@ -165,21 +198,58 @@ Tamaya by default defines the following configuration model per default (most si </li> </ol> </div> -<div class="paragraph"> -<p>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.</p> </div> +</div> +</div> +<div class="sect1"> +<h2 id="_advanced_topics">Advanced Topics</h2> +<div class="sectionbody"> <div class="sect2"> <h3 id="_multiple_configuration_files">Multiple configuration files</h3> <div class="paragraph"> <p>By default you can provide multiple <code>javaconfig.properties</code> files, e.g. as part -of multiple jars loaded into your system. The system internally creates one +of multiple jars loaded into your system. The system creates one <code>PropertySource</code> for each file found on the classpath. All <code>PropertySource</code> -instances created are ordered by their ordinal value (an int).</p> +instances created are ordered by their precedence.</p> +</div> +<div class="paragraph"> +<p>By default the precendence of a PropertySource is evaluated based on an <em>ordinal</em> value +calculated as follows:</p> +</div> +<div class="olist arabic"> +<ol class="arabic"> +<li> +<p>the systems checks for a <code>tamaya.ordinal</code> configuration value and tries to convert to +an <code>int</code> ordinal value.</p> +</li> +<li> +<p>the systems checks if the property source has a method int getOrdinal(). If present +the result is used as ordinal.</p> +</li> +<li> +<p>the systems checks if the property source has a <code>@Priority</code> annotation and uses the +annotation’s value as ordinal.</p> +</li> +<li> +<p>if all of the above fails, 0 is assumed as ordinal.</p> +</li> +</ol> +</div> +<div class="admonitionblock note"> +<table> +<tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content"> +Since evaluation of the <code>tamaya.ordinal</code> is always done first, it is possible to change + the ordinal value by adding a corresponding configuration entry to a property source. +</td> +</tr> +</table> </div> <div class="paragraph"> -<p>Tamaya Core defines the following default ordinals (used, if no custom ordinal is defined):</p> +<p>Tamaya Core uses the following default ordinals:</p> </div> <table class="tableblock frame-all grid-all" style="width: 70%;"> <colgroup> @@ -196,19 +266,19 @@ instances created are ordered by their ordinal value (an int).</p> <td class="tableblock halign-left valign-top"><p class="tableblock">400</p></td> </tr> <tr> -<td class="tableblock halign-left valign-top"><p class="tableblock">Environment Variables</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Environment Properties</p></td> <td class="tableblock halign-left valign-top"><p class="tableblock">300</p></td> </tr> <tr> -<td class="tableblock halign-left valign-top"><p class="tableblock">Java Configuration Properties</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Properties from <code>META-INF/javaconfiguration.properties</code></p></td> <td class="tableblock halign-left valign-top"><p class="tableblock">100</p></td> </tr> </tbody> </table> <div class="paragraph"> <p>That means that the value of a configuration variable <code>x</code> overhanded via <code>-Dx=yes</code> has -a higher precedence then the entry for configuration variable <code>x</code> specified in a <code>javaconfig.properties</code> -as <code>x=no</code>.</p> +a higher precedence then the entry for configuration variable <code>x</code> specified in +<code>META-INF/javaconfig.properties</code> as <code>x=no</code>.</p> </div> <div class="paragraph"> <p>These ordinal values can be either hardcoded, or be dynamically @@ -222,7 +292,8 @@ tamaya.ordinal=123</code></pre> </div> </div> <div class="paragraph"> -<p>This assigns an ordinal of 123 to each entry in that configuration resource.</p> +<p>This assigns an ordinal of 123 to each entry in that property source providing this configuration +properties.</p> </div> </div> <div class="sect2"> @@ -231,7 +302,9 @@ tamaya.ordinal=123</code></pre> <p>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):</p> +small extract of most important modules available (or available soon). +Refer to <a href="extensions/extensions.html">this list</a> for a complete +overview.</p> </div> <div class="sect3"> <h4 id="_dynamic_resolution_and_value_placeholders">Dynamic Resolution and Value Placeholders</h4> @@ -303,7 +376,7 @@ annotated classes or let Tamaya implement a configuration template.</p> <div class="listingblock"> <div class="content"> <pre class="prettyprint highlight"><code class="language-xml" data-lang="xml">public class MyType { - @ConfiguredProperty("name") + @Config("my.key") private String typeName; public String getName() { @@ -321,7 +394,7 @@ ConfigurationInjector.configure(type);</code></pre> <div class="listingblock"> <div class="content"> <pre class="prettyprint highlight"><code class="language-xml" data-lang="xml">public interface MyTypeTemplate { - @ConfiguredProperty("name") + @Config("my.key") public String getName(); } @@ -370,7 +443,7 @@ MyTypeTemplate type = ConfigurationInjector.createTemplate(MyTypeTemplate.class) <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/documentation/usecases.html ---------------------------------------------------------------------- diff --git a/documentation/usecases.html b/documentation/usecases.html index ceaba60..098e77b 100644 --- a/documentation/usecases.html +++ b/documentation/usecases.html @@ -1045,7 +1045,7 @@ on Configuration.</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/download.html ---------------------------------------------------------------------- diff --git a/download.html b/download.html index 2856bc2..9415dab 100644 --- a/download.html +++ b/download.html @@ -242,7 +242,7 @@ $ gpg --verify tamaya-project-1.2.0-source-release.zip.asc</code></pre> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/examples.html ---------------------------------------------------------------------- diff --git a/examples.html b/examples.html index 67938b8..03caa4f 100644 --- a/examples.html +++ b/examples.html @@ -208,7 +208,7 @@ adapted.</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/feed.xml ---------------------------------------------------------------------- diff --git a/feed.xml b/feed.xml index 9c5a27b..7b6a5e6 100644 --- a/feed.xml +++ b/feed.xml @@ -6,8 +6,8 @@ <atom:link href="https://tamaya.incubator.apache.org/feed.xml" rel="self" type="application/rss+xml" /> <description>Apache Tamaya RSS feed template</description> <language>en-gb</language> - <pubDate>Fr, 24 Feb 2017 22:17:25 +0100</pubDate> - <lastBuildDate>Fr, 24 Feb 2017 22:17:25 +0100</lastBuildDate> + <pubDate>Di, 7 Mär 2017 21:53:28 +0100</pubDate> + <lastBuildDate>Di, 7 Mär 2017 21:53:28 +0100</lastBuildDate> <item> <title>Blog post (German) - Dirk Weil: Anwendungskonfiguration mit Apache Tamaya</title> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/highleveldesign.html ---------------------------------------------------------------------- diff --git a/highleveldesign.html b/highleveldesign.html index 4bd7029..c1740ef 100644 --- a/highleveldesign.html +++ b/highleveldesign.html @@ -412,7 +412,7 @@ and of its current available <a href="documentation/extensions.html">modules</a> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/history.html ---------------------------------------------------------------------- diff --git a/history.html b/history.html index 0e99bd8..46965c8 100644 --- a/history.html +++ b/history.html @@ -173,7 +173,7 @@ <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/index.html ---------------------------------------------------------------------- diff --git a/index.html b/index.html index 3398436..0001b2c 100644 --- a/index.html +++ b/index.html @@ -451,7 +451,7 @@ <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/release-guide.html ---------------------------------------------------------------------- diff --git a/release-guide.html b/release-guide.html index 1cbbaac..b51c7ed 100644 --- a/release-guide.html +++ b/release-guide.html @@ -526,7 +526,7 @@ Also drop a short mail on the mailing list.</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/sitemap.xml ---------------------------------------------------------------------- diff --git a/sitemap.xml b/sitemap.xml index aeec1b0..9f2e32c 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,136 +1,145 @@ <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"> <url> - <loc>https://tamaya.incubator.apache.org/history.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/development/source.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/release-guide.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/api.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/start.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/core.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/apidocs/index.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_camel.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/development/community.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_features.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/development/possible-contributions.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_hazelcast.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/development/source.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_jndi.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/development/team.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_mutable_config.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/devguide.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_optional.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/api.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_osgi.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/core.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_remote.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_camel.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_resolver.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_cdi.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_resources.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_classloader_support.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_server.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_collections.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_spi-support.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_consul.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_spring.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_etcd.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_usagetracker.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_events.html</loc> - <lastmod>2017-02-24</lastmod> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_validation.html</loc> + <lastmod>2017-03-07</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_filter.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_yaml.html</loc> + <lastmod>2017-03-07</lastmod> + </url><url> + <loc>https://tamaya.incubator.apache.org/documentation/extensions.html</loc> + <lastmod>2017-03-07</lastmod> + </url><url> + <loc>https://tamaya.incubator.apache.org/documentation/quickstart.html</loc> + <lastmod>2017-03-07</lastmod> + </url><url> + <loc>https://tamaya.incubator.apache.org/download.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_formats.html</loc> + <loc>https://tamaya.incubator.apache.org/examples.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_functions.html</loc> + <loc>https://tamaya.incubator.apache.org/highleveldesign.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_injection.html</loc> + <loc>https://tamaya.incubator.apache.org/history.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_jodatime.html</loc> + <loc>https://tamaya.incubator.apache.org/release-guide.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_json.html</loc> + <loc>https://tamaya.incubator.apache.org/start.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_management.html</loc> + <loc>https://tamaya.incubator.apache.org/apidocs/index.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_metamodel.html</loc> + <loc>https://tamaya.incubator.apache.org/development/community.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_mutable_config.html</loc> + <loc>https://tamaya.incubator.apache.org/development/possible-contributions.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_optional.html</loc> + <loc>https://tamaya.incubator.apache.org/development/team.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_osgi.html</loc> + <loc>https://tamaya.incubator.apache.org/devguide.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_remote.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_cdi.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_resolver.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_classloader_support.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_resources.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_collections.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_server.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_consul.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_spi-support.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_etcd.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_spring.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_events.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_usagetracker.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_filter.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_validation.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_formats.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_yaml.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_functions.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/extensions.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_injection.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/quickstart.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_jodatime.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/documentation/usecases.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_json.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/download.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_management.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/examples.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/extensions/mod_metamodel.html</loc> <lastmod>2017-02-24</lastmod> </url><url> - <loc>https://tamaya.incubator.apache.org/highleveldesign.html</loc> + <loc>https://tamaya.incubator.apache.org/documentation/usecases.html</loc> <lastmod>2017-02-24</lastmod> </url><url> <loc>https://tamaya.incubator.apache.org/blog/2016/dirk-weil-javaeeblog.html</loc> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/637aaff6/start.html ---------------------------------------------------------------------- diff --git a/start.html b/start.html index f2fe2b5..f61b810 100644 --- a/start.html +++ b/start.html @@ -238,7 +238,7 @@ or in a clustered Docker environment in production, it stays the same!</p> <div class="container"> <p class="muted credit">© 2014-<span>2017</span> Apache Software Foundation | Mixed with <a href="http://getbootstrap.com/">Bootstrap v3.1.1</a> | Baked with <a href="http://jbake.org">JBake <span>v2.5.1</span></a> - at <span>2017-02-24</span> | + at <span>2017-03-07</span> | <a href="https://twitter.com/tamayaconf" class="twitter-follow-button" data-show-count="false">Follow @TamayaConf</a><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script> </p> <p>
