TAMAYA-178: Regenerate fresh homepage.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/commit/97bc8884 Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/tree/97bc8884 Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/diff/97bc8884 Branch: refs/heads/asf-site Commit: 97bc8884e441b2ed21c52f142b9ca77d7aef5ffc Parents: 46ed954 Author: Phil Ottlinger <[email protected]> Authored: Wed Nov 2 23:51:35 2016 +0100 Committer: Phil Ottlinger <[email protected]> Committed: Wed Nov 2 23:51:35 2016 +0100 ---------------------------------------------------------------------- about.html | 152 -- api.html | 1015 ------------- apidocs/allclasses-frame.html | 76 - apidocs/allclasses-noframe.html | 76 - apidocs/constant-values.html | 222 --- apidocs/deprecated-list.html | 154 -- apidocs/help-doc.html | 230 --- apidocs/index-all.html | 1413 ------------------ apidocs/index.html | 76 - apidocs/org/apache/tamaya/ConfigException.html | 299 ---- apidocs/org/apache/tamaya/ConfigOperator.html | 238 --- apidocs/org/apache/tamaya/ConfigQuery.html | 237 --- apidocs/org/apache/tamaya/Configuration.html | 511 ------- .../apache/tamaya/ConfigurationProvider.html | 329 ---- apidocs/org/apache/tamaya/TypeLiteral.html | 481 ------ .../tamaya/class-use/ConfigException.html | 125 -- .../apache/tamaya/class-use/ConfigOperator.html | 189 --- .../apache/tamaya/class-use/ConfigQuery.html | 189 --- .../apache/tamaya/class-use/Configuration.html | 302 ---- .../tamaya/class-use/ConfigurationProvider.html | 125 -- .../apache/tamaya/class-use/TypeLiteral.html | 410 ----- .../core/internal/DefaultConfiguration.html | 643 -------- .../internal/DefaultConfigurationContext.html | 598 -------- .../DefaultConfigurationContextBuilder.html | 643 -------- .../internal/DefaultConfigurationProvider.html | 398 ----- .../core/internal/DefaultServiceContext.html | 368 ----- .../tamaya/core/internal/OSGIActivator.html | 302 ---- .../core/internal/OSGIServiceContext.html | 360 ----- .../tamaya/core/internal/OSGIServiceLoader.html | 288 ---- .../internal/PriorityServiceComparator.html | 340 ----- .../core/internal/PropertyConverterManager.html | 475 ------ .../core/internal/PropertyFilterComparator.html | 297 ---- .../tamaya/core/internal/PropertyFiltering.html | 263 ---- .../core/internal/PropertySourceComparator.html | 297 ---- .../tamaya/core/internal/ReflectionUtil.html | 241 --- .../class-use/DefaultConfiguration.html | 125 -- .../class-use/DefaultConfigurationContext.html | 125 -- .../DefaultConfigurationContextBuilder.html | 125 -- .../class-use/DefaultConfigurationProvider.html | 125 -- .../class-use/DefaultServiceContext.html | 125 -- .../core/internal/class-use/OSGIActivator.html | 125 -- .../internal/class-use/OSGIServiceContext.html | 125 -- .../internal/class-use/OSGIServiceLoader.html | 125 -- .../class-use/PriorityServiceComparator.html | 125 -- .../class-use/PropertyConverterManager.html | 125 -- .../class-use/PropertyFilterComparator.html | 125 -- .../internal/class-use/PropertyFiltering.html | 125 -- .../class-use/PropertySourceComparator.html | 125 -- .../core/internal/class-use/ReflectionUtil.html | 125 -- .../converters/BigDecimalConverter.html | 308 ---- .../converters/BigIntegerConverter.html | 308 ---- .../internal/converters/BooleanConverter.html | 300 ---- .../core/internal/converters/ByteConverter.html | 314 ---- .../core/internal/converters/CharConverter.html | 307 ---- .../internal/converters/ClassConverter.html | 305 ---- .../internal/converters/CurrencyConverter.html | 307 ---- .../internal/converters/DoubleConverter.html | 307 ---- .../core/internal/converters/EnumConverter.html | 300 ---- .../internal/converters/FloatConverter.html | 307 ---- .../internal/converters/IntegerConverter.html | 314 ---- .../core/internal/converters/LongConverter.html | 314 ---- .../internal/converters/NumberConverter.html | 307 ---- .../internal/converters/ShortConverter.html | 314 ---- .../core/internal/converters/URIConverter.html | 300 ---- .../core/internal/converters/URLConverter.html | 300 ---- .../class-use/BigDecimalConverter.html | 125 -- .../class-use/BigIntegerConverter.html | 125 -- .../converters/class-use/BooleanConverter.html | 125 -- .../converters/class-use/ByteConverter.html | 125 -- .../converters/class-use/CharConverter.html | 125 -- .../converters/class-use/ClassConverter.html | 125 -- .../converters/class-use/CurrencyConverter.html | 125 -- .../converters/class-use/DoubleConverter.html | 125 -- .../converters/class-use/EnumConverter.html | 125 -- .../converters/class-use/FloatConverter.html | 125 -- .../converters/class-use/IntegerConverter.html | 125 -- .../converters/class-use/LongConverter.html | 125 -- .../converters/class-use/NumberConverter.html | 125 -- .../converters/class-use/ShortConverter.html | 125 -- .../converters/class-use/URIConverter.html | 125 -- .../converters/class-use/URLConverter.html | 125 -- .../core/internal/converters/package-frame.html | 36 - .../internal/converters/package-summary.html | 329 ---- .../core/internal/converters/package-tree.html | 153 -- .../core/internal/converters/package-use.html | 125 -- .../tamaya/core/internal/package-frame.html | 34 - .../tamaya/core/internal/package-summary.html | 225 --- .../tamaya/core/internal/package-tree.html | 151 -- .../tamaya/core/internal/package-use.html | 125 -- .../core/propertysource/BasePropertySource.html | 489 ------ .../core/propertysource/CLIPropertySource.html | 342 ----- .../EnvironmentPropertySource.html | 496 ------ .../propertysource/SimplePropertySource.html | 413 ----- .../propertysource/SystemPropertySource.html | 493 ------ .../class-use/BasePropertySource.html | 174 --- .../class-use/CLIPropertySource.html | 125 -- .../class-use/EnvironmentPropertySource.html | 125 -- .../class-use/SimplePropertySource.html | 125 -- .../class-use/SystemPropertySource.html | 125 -- .../core/propertysource/package-frame.html | 25 - .../core/propertysource/package-summary.html | 175 --- .../core/propertysource/package-tree.html | 145 -- .../tamaya/core/propertysource/package-use.html | 161 -- .../provider/JavaConfigurationProvider.html | 377 ----- .../class-use/JavaConfigurationProvider.html | 125 -- .../tamaya/core/provider/package-frame.html | 21 - .../tamaya/core/provider/package-summary.html | 148 -- .../tamaya/core/provider/package-tree.html | 138 -- .../tamaya/core/provider/package-use.html | 125 -- apidocs/org/apache/tamaya/package-frame.html | 32 - apidocs/org/apache/tamaya/package-summary.html | 201 --- apidocs/org/apache/tamaya/package-tree.html | 158 -- apidocs/org/apache/tamaya/package-use.html | 246 --- .../apache/tamaya/spi/ConfigurationContext.html | 464 ------ .../tamaya/spi/ConfigurationContextBuilder.html | 560 ------- .../tamaya/spi/ConfigurationProviderSpi.html | 339 ----- .../tamaya/spi/ConversionContext.Builder.html | 480 ------ .../apache/tamaya/spi/ConversionContext.html | 463 ------ apidocs/org/apache/tamaya/spi/Experimental.html | 170 --- .../org/apache/tamaya/spi/FilterContext.html | 380 ----- .../apache/tamaya/spi/PropertyConverter.html | 252 ---- .../org/apache/tamaya/spi/PropertyFilter.html | 250 ---- .../org/apache/tamaya/spi/PropertySource.html | 453 ------ .../tamaya/spi/PropertySourceProvider.html | 284 ---- .../org/apache/tamaya/spi/PropertyValue.html | 376 ----- .../apache/tamaya/spi/PropertyValueBuilder.html | 377 ----- .../spi/PropertyValueCombinationPolicy.html | 296 ---- .../org/apache/tamaya/spi/ServiceContext.html | 290 ---- .../tamaya/spi/ServiceContextManager.html | 273 ---- .../spi/class-use/ConfigurationContext.html | 363 ----- .../class-use/ConfigurationContextBuilder.html | 375 ----- .../spi/class-use/ConfigurationProviderSpi.html | 167 --- .../class-use/ConversionContext.Builder.html | 205 --- .../tamaya/spi/class-use/ConversionContext.html | 281 ---- .../tamaya/spi/class-use/Experimental.html | 176 --- .../tamaya/spi/class-use/FilterContext.html | 168 --- .../tamaya/spi/class-use/PropertyConverter.html | 542 ------- .../tamaya/spi/class-use/PropertyFilter.html | 270 ---- .../tamaya/spi/class-use/PropertySource.html | 362 ----- .../spi/class-use/PropertySourceProvider.html | 193 --- .../tamaya/spi/class-use/PropertyValue.html | 211 --- .../spi/class-use/PropertyValueBuilder.html | 182 --- .../PropertyValueCombinationPolicy.html | 235 --- .../tamaya/spi/class-use/ServiceContext.html | 219 --- .../spi/class-use/ServiceContextManager.html | 125 -- .../org/apache/tamaya/spi/package-frame.html | 42 - .../org/apache/tamaya/spi/package-summary.html | 262 ---- apidocs/org/apache/tamaya/spi/package-tree.html | 159 -- apidocs/org/apache/tamaya/spi/package-use.html | 391 ----- apidocs/overview-frame.html | 27 - apidocs/overview-summary.html | 160 -- apidocs/overview-tree.html | 221 --- apidocs/package-list | 6 - apidocs/script.js | 30 - apidocs/serialized-form.html | 186 --- apidocs/stylesheet.css | 574 ------- archive.html | 194 --- blog/2013/first-post.html | 171 --- blog/2013/fourth-post.html | 164 -- blog/2013/second-post.html | 148 -- blog/2013/third-post.html | 164 -- blog/2016/first-post.html | 171 --- blog/2016/fourth-post.html | 164 -- blog/2016/second-post.html | 148 -- blog/2016/third-post.html | 164 -- blog/quickstart.html | 374 ----- community.html | 293 ---- core.html | 559 ------- css/asciidoctor.css | 512 ------- css/base.css | 52 - css/bootstrap.min.css | 7 - css/prettify.css | 1 - devguide.html | 385 ----- download.html | 247 --- examples.html | 213 --- extensions.html | 410 ----- extensions/mod_builder.html | 235 --- extensions/mod_camel.html | 287 ---- extensions/mod_cdi.html | 420 ------ extensions/mod_classloader_support.html | 256 ---- extensions/mod_collections.html | 443 ------ extensions/mod_consul.html | 222 --- extensions/mod_environment.html | 192 --- extensions/mod_etcd.html | 358 ----- extensions/mod_events.html | 593 -------- extensions/mod_filter.html | 278 ---- extensions/mod_formats.html | 476 ------ extensions/mod_functions.html | 315 ---- extensions/mod_injection.html | 676 --------- extensions/mod_jodatime.html | 200 --- extensions/mod_json.html | 211 --- extensions/mod_management.html | 274 ---- extensions/mod_metamodel-staged.html | 229 --- extensions/mod_model.html | 769 ---------- extensions/mod_mutable_config.html | 447 ------ extensions/mod_optional.html | 202 --- extensions/mod_osgi.html | 292 ---- extensions/mod_remote.html | 265 ---- extensions/mod_resolver.html | 290 ---- extensions/mod_resources.html | 314 ---- extensions/mod_server.html | 559 ------- extensions/mod_spi-support.html | 221 --- extensions/mod_spring.html | 308 ---- extensions/mod_yaml.html | 262 ---- favicon.ico | Bin 15086 -> 0 bytes favicons/android-chrome-144x144.png | Bin 21238 -> 0 bytes favicons/android-chrome-192x192.png | Bin 34004 -> 0 bytes favicons/android-chrome-36x36.png | Bin 2361 -> 0 bytes favicons/android-chrome-48x48.png | Bin 3627 -> 0 bytes favicons/android-chrome-72x72.png | Bin 6836 -> 0 bytes favicons/android-chrome-96x96.png | Bin 10837 -> 0 bytes favicons/apple-touch-icon-114x114.png | Bin 13188 -> 0 bytes favicons/apple-touch-icon-120x120.png | Bin 14440 -> 0 bytes favicons/apple-touch-icon-144x144.png | Bin 19621 -> 0 bytes favicons/apple-touch-icon-152x152.png | Bin 21329 -> 0 bytes favicons/apple-touch-icon-180x180.png | Bin 28243 -> 0 bytes favicons/apple-touch-icon-57x57.png | Bin 4357 -> 0 bytes favicons/apple-touch-icon-60x60.png | Bin 4710 -> 0 bytes favicons/apple-touch-icon-72x72.png | Bin 6328 -> 0 bytes favicons/apple-touch-icon-76x76.png | Bin 6854 -> 0 bytes favicons/apple-touch-icon-precomposed.png | Bin 31150 -> 0 bytes favicons/apple-touch-icon.png | Bin 28243 -> 0 bytes favicons/browserconfig.xml | 12 - favicons/favicon-16x16.png | Bin 1922 -> 0 bytes favicons/favicon-194x194.png | Bin 31800 -> 0 bytes favicons/favicon-32x32.png | Bin 2932 -> 0 bytes favicons/favicon-96x96.png | Bin 10679 -> 0 bytes favicons/favicon.ico | Bin 15086 -> 0 bytes favicons/manifest.json | 41 - favicons/mstile-144x144.png | Bin 2499 -> 0 bytes favicons/mstile-150x150.png | Bin 2397 -> 0 bytes favicons/mstile-310x150.png | Bin 2638 -> 0 bytes favicons/mstile-310x310.png | Bin 5949 -> 0 bytes favicons/mstile-70x70.png | Bin 1731 -> 0 bytes feed.xml | 213 --- fonts/glyphicons-halflings-regular.eot | Bin 20335 -> 0 bytes fonts/glyphicons-halflings-regular.svg | 229 --- fonts/glyphicons-halflings-regular.ttf | Bin 41280 -> 0 bytes fonts/glyphicons-halflings-regular.woff | Bin 23320 -> 0 bytes highleveldesign.html | 417 ------ history.html | 178 --- index.html | 339 ----- js/bootstrap.min.js | 6 - js/html5shiv.min.js | 4 - js/jquery-1.11.1.min.js | 4 - js/prettify.js | 30 - logos/egg-logo2.png | Bin 7241 -> 0 bytes quickstart.html | 375 ----- release-guide.html | 531 ------- sitemap.xml | 157 -- source.html | 176 --- start.html | 172 --- usecases.html | 1050 ------------- 253 files changed, 57094 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/97bc8884/about.html ---------------------------------------------------------------------- diff --git a/about.html b/about.html deleted file mode 100644 index faeadcd..0000000 --- a/about.html +++ /dev/null @@ -1,152 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta charset="utf-8"/> - <title>About</title> - <meta name="viewport" content="width=device-width, initial-scale=1.0"/> - <meta name="description" content=""/> - <meta name="author" content=""/> - <meta name="keywords" content=""/> - <meta name="generator" content="'JBake '+'${version}"/> - - <!-- Le styles --> - <link href="css/bootstrap.min.css" rel="stylesheet"/> - <link href="css/asciidoctor.css" rel="stylesheet"/> - <link href="css/base.css" rel="stylesheet"/> - <link href="css/prettify.css" rel="stylesheet"/> - - <!-- HTML5 shim, for IE6-8 support of HTML5 elements --> - <!--[if lt IE 9]> - <script src="js/html5shiv.min.js"></script> - <![endif]--> - - <!-- Fav and touch icons from ASF --> - <link rel="shortcut icon" href="favicon.ico"/> - <link rel="apple-touch-icon" sizes="57x57" href="favicons/apple-touch-icon-57x57.png"/> - <link rel="apple-touch-icon" sizes="60x60" href="favicons/apple-touch-icon-60x60.png"/> - <link rel="apple-touch-icon" sizes="72x72" href="favicons/apple-touch-icon-72x72.png"/> - <link rel="apple-touch-icon" sizes="76x76" href="favicons/apple-touch-icon-76x76.png"/> - <link rel="apple-touch-icon" sizes="114x114" href="favicons/apple-touch-icon-114x114.png"/> - <link rel="apple-touch-icon" sizes="120x120" href="favicons/apple-touch-icon-120x120.png"/> - <link rel="apple-touch-icon" sizes="144x144" href="favicons/apple-touch-icon-144x144.png"/> - <link rel="apple-touch-icon" sizes="152x152" href="favicons/apple-touch-icon-152x152.png"/> - <link rel="apple-touch-icon" sizes="180x180" href="favicons/apple-touch-icon-180x180.png"/> - <link rel="icon" type="image/png" href="favicons/favicon-32x32.png" sizes="32x32"/> - <link rel="icon" type="image/png" href="favicons/favicon-194x194.png" sizes="194x194"/> - <link rel="icon" type="image/png" href="favicons/favicon-96x96.png" sizes="96x96"/> - <link rel="icon" type="image/png" href="favicons/android-chrome-192x192.png" sizes="192x192"/> - <link rel="icon" type="image/png" href="favicons/favicon-16x16.png" sizes="16x16"/> - <link rel="manifest" href="favicons/manifest.json"/> - <link rel="shortcut icon" href="favicons/favicon.ico"/> - <meta name="msapplication-TileColor" content="#603cba"/> - <meta name="msapplication-TileImage" content="favicons/mstile-144x144.png"/> - <meta name="msapplication-config" content="favicons/browserconfig.xml"/> - <meta name="theme-color" content="#303284"/> - </head> - <body onload="prettyPrint()"> - <div id="wrap"> - <div> - - <!-- Fixed navbar --> - <div class="navbar navbar-default navbar-fixed-top" role="navigation"> - <div class="container"> - <div class="navbar-header"> - <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> - <span class="sr-only">Toggle navigation</span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - </button> - <a class="navbar-brand" href="">Apache Tamaya (incubating)</a> - </div> - <div class="navbar-collapse collapse"> - <ul class="nav navbar-nav"> - <li><a href="index.html">Home</a></li> - <li><a href="quickstart.html">Quickstart</a></li> - <li><a href="index.html">Documentation</a></li> - <li><a href="/apidocs/index.html">API</a></li> - <li><a href="index.html">Development</a></li> - <li><a href="index.html">Releases</a></li> - <li><a href="about.html">About</a></li> - <li><a href="sitemap.xml">Sitemap</a></li> - <li><a href="feed.xml">Subscribe</a></li> -<!-- - <li class="dropdown"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> - <ul class="dropdown-menu"> - <li><a href="#">Action</a></li> - <li><a href="#">Another action</a></li> - <li><a href="#">Something else here</a></li> - <li class="divider"></li> - <li class="dropdown-header">Nav header</li> - <li><a href="#">Separated link</a></li> - <li><a href="#">One more separated link</a></li> - </ul> - </li> ---> - </ul> - </div><!--/.nav-collapse --> - </div> - </div> - - </div> - <div class="container"> - - <div class="page-header"> - <h1>About</h1> - </div> - - <p><em>2013-09-24</em></p> - - <p> -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque vel diam purus. Curabitur ut nisi lacus. -Nam id nisl quam. Donec a lorem sit amet libero pretium vulputate vel ut purus. Suspendisse leo arcu, -mattis et imperdiet luctus, pulvinar vitae mi. Quisque fermentum sollicitudin feugiat. Mauris nec leo -ligula. Vestibulum tristique odio ut risus ultricies a hendrerit quam iaculis. Duis tempor elit sit amet -ligula vehicula et iaculis sem placerat. Fusce dictum, metus at volutpat lacinia, elit massa auctor risus, -id auctor arcu enim eu augue. Donec ultrices turpis in mi imperdiet ac venenatis sapien sodales. In -consequat imperdiet nunc quis bibendum. Nulla semper, erat quis ornare tristique, lectus massa posuere -libero, ut vehicula lectus nunc ut lorem. Aliquam erat volutpat. -</p> - - <hr /> - </div> - </div> - <div> - <div id="push"></div> - - <div id="footer"> - <div class="container"> - <p class="muted credit">© 2014-2016 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.0</span></a> - at <span>2016-11-02</span> - </p> - <p> - <b>Disclaimer</b> - Apache Tamaya (incubating) is an effort undergoing - incubation at - The Apache Software Foundation (ASF), sponsored by - the name of Apache Incubator. Incubation is required of - all newly accepted projects until a further review indicates - that the infrastructure, communications, and decision making - process have stabilized in a manner consistent with other - successful ASF projects. While incubation status is not - necessarily a reflection of the completeness or stability of - the code, it does indicate that the project has yet to - be fully endorsed by the ASF.<br /> - <a href="http://incubator.apache.org/guides/website.html" style="border:0px;" target="_target"><img class="incubator-logo" src="logos/egg-logo2.png"/></a> - </p> - </div> - </div> - - <!-- Le javascript - ================================================== --> - <!-- Placed at the end of the document so the pages load faster --> - <script src="js/jquery-1.11.1.min.js"></script> - <script src="js/bootstrap.min.js"></script> - <script src="js/prettify.js"></script> - - </div> - </body> -</html> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/97bc8884/api.html ---------------------------------------------------------------------- diff --git a/api.html b/api.html deleted file mode 100644 index f61ca48..0000000 --- a/api.html +++ /dev/null @@ -1,1015 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta charset="utf-8"/> - <title>Tamaya Incubator</title> - <meta name="viewport" content="width=device-width, initial-scale=1.0"/> - <meta name="description" content=""/> - <meta name="author" content=""/> - <meta name="keywords" content=""/> - <meta name="generator" content="'JBake '+'${version}"/> - - <!-- Le styles --> - <link href="css/bootstrap.min.css" rel="stylesheet"/> - <link href="css/asciidoctor.css" rel="stylesheet"/> - <link href="css/base.css" rel="stylesheet"/> - <link href="css/prettify.css" rel="stylesheet"/> - - <!-- HTML5 shim, for IE6-8 support of HTML5 elements --> - <!--[if lt IE 9]> - <script src="js/html5shiv.min.js"></script> - <![endif]--> - - <!-- Fav and touch icons from ASF --> - <link rel="shortcut icon" href="favicon.ico"/> - <link rel="apple-touch-icon" sizes="57x57" href="favicons/apple-touch-icon-57x57.png"/> - <link rel="apple-touch-icon" sizes="60x60" href="favicons/apple-touch-icon-60x60.png"/> - <link rel="apple-touch-icon" sizes="72x72" href="favicons/apple-touch-icon-72x72.png"/> - <link rel="apple-touch-icon" sizes="76x76" href="favicons/apple-touch-icon-76x76.png"/> - <link rel="apple-touch-icon" sizes="114x114" href="favicons/apple-touch-icon-114x114.png"/> - <link rel="apple-touch-icon" sizes="120x120" href="favicons/apple-touch-icon-120x120.png"/> - <link rel="apple-touch-icon" sizes="144x144" href="favicons/apple-touch-icon-144x144.png"/> - <link rel="apple-touch-icon" sizes="152x152" href="favicons/apple-touch-icon-152x152.png"/> - <link rel="apple-touch-icon" sizes="180x180" href="favicons/apple-touch-icon-180x180.png"/> - <link rel="icon" type="image/png" href="favicons/favicon-32x32.png" sizes="32x32"/> - <link rel="icon" type="image/png" href="favicons/favicon-194x194.png" sizes="194x194"/> - <link rel="icon" type="image/png" href="favicons/favicon-96x96.png" sizes="96x96"/> - <link rel="icon" type="image/png" href="favicons/android-chrome-192x192.png" sizes="192x192"/> - <link rel="icon" type="image/png" href="favicons/favicon-16x16.png" sizes="16x16"/> - <link rel="manifest" href="favicons/manifest.json"/> - <link rel="shortcut icon" href="favicons/favicon.ico"/> - <meta name="msapplication-TileColor" content="#603cba"/> - <meta name="msapplication-TileImage" content="favicons/mstile-144x144.png"/> - <meta name="msapplication-config" content="favicons/browserconfig.xml"/> - <meta name="theme-color" content="#303284"/> - </head> - <body onload="prettyPrint()"> - <div id="wrap"> - <div> - - <!-- Fixed navbar --> - <div class="navbar navbar-default navbar-fixed-top" role="navigation"> - <div class="container"> - <div class="navbar-header"> - <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> - <span class="sr-only">Toggle navigation</span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - </button> - <a class="navbar-brand" href="">Apache Tamaya (incubating)</a> - </div> - <div class="navbar-collapse collapse"> - <ul class="nav navbar-nav"> - <li><a href="index.html">Home</a></li> - <li><a href="quickstart.html">Quickstart</a></li> - <li><a href="index.html">Documentation</a></li> - <li><a href="/apidocs/index.html">API</a></li> - <li><a href="index.html">Development</a></li> - <li><a href="index.html">Releases</a></li> - <li><a href="about.html">About</a></li> - <li><a href="sitemap.xml">Sitemap</a></li> - <li><a href="feed.xml">Subscribe</a></li> -<!-- - <li class="dropdown"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> - <ul class="dropdown-menu"> - <li><a href="#">Action</a></li> - <li><a href="#">Another action</a></li> - <li><a href="#">Something else here</a></li> - <li class="divider"></li> - <li class="dropdown-header">Nav header</li> - <li><a href="#">Separated link</a></li> - <li><a href="#">One more separated link</a></li> - </ul> - </li> ---> - </ul> - </div><!--/.nav-collapse --> - </div> - </div> - - </div> - <div class="container"> - - <div class="page-header"> - <h1></h1> - </div> - - <p><em>2016-10-31</em></p> - - <p><div class="sect1"> -<h2 id="CoreDesign">Apache Tamaya: API</h2> -<div class="sectionbody"> -<div class="paragraph"> -<p>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 -l<a href="HighLevelDesign.html">High Level Design Documentation</a></p> -</div> -</div> -</div> -<div class="sect1"> -<h2 id="API">The Tamaya API</h2> -<div class="sectionbody"> -<div class="paragraph"> -<p>The API provides the artifacts as described in the <a href="HighLevelDesign.html">High Level Design Documentation</a>, which are:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>A simple but complete SE <strong>API</strong> for accessing key/value based <em>Configuration</em>:</p> -<div class="ulist"> -<ul> -<li> -<p>Configuration hereby models configuration, the main interface of Tamaya. Configuration provides</p> -<div class="ulist"> -<ul> -<li> -<p>access to literal key/value pairs.</p> -</li> -<li> -<p>functional extension points (with, query) using a unary ConfigOperator or -a function ConfigurationQuery<T>.</p> -</li> -</ul> -</div> -</li> -<li> -<p>ConfigurationProvider provides with getConfiguration() the static entry point for accessing configuration.</p> -</li> -<li> -<p>ConfigException defines a runtime exception for usage by the configuration system.</p> -</li> -<li> -<p>TypeLiteral provides a possibility to type safely define the target type to be returned by a registered -PropertyProvider.</p> -</li> -<li> -<p>PropertyConverter, which defines conversion of configuration values (String) into any required target type.</p> -</li> -</ul> -</div> -</li> -<li> -<p>Additionally the <strong>SPI</strong> provides:</p> -<div class="ulist"> -<ul> -<li> -<p><em>PropertySource:</em> is the the SPI for adding configuration data. A PropertySource hereby</p> -<div class="ulist"> -<ul> -<li> -<p>is designed as a minimalistic interface that be implemented by any kind of data provider (local or remote)</p> -</li> -<li> -<p>provides single access for key/value pairs in raw format as String key/values only (getPropertyValue).</p> -</li> -<li> -<p>can optionally support scanning of its provided values, implementing getProperties().</p> -</li> -</ul> -</div> -</li> -<li> -<p><em>PropertySourceProvider:</em> allows to register multiple property sources dynamically, e.g. all config files found in -file system folder..</p> -</li> -<li> -<p>ConfigurationProviderSpi defines the SPI that is used as a backing bean for the ConfigurationProvider -singleton.</p> -</li> -<li> -<p>PropertyFilter, which allows filtering of property values prior getting returned to the caller.</p> -</li> -<li> -<p>ConfigurationContext, which provides the container that contains the property sources and filters that form a -configuration.</p> -</li> -<li> -<p>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.</p> -</li> -<li> -<p>ServiceContext, which provides access to the components loaded, depending on the current runtime stack.</p> -</li> -<li> -<p>ServiceContextManager provides static access to the ServiceContext loaded.</p> -</li> -</ul> -</div> -</li> -</ul> -</div> -<div class="paragraph"> -<p>This is also reflected in the main packages of the API:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>org.apache.tamaya contains the main API abstractions used by users.</p> -</li> -<li> -<p>org.apache.tamaya.spi contains the SPI interfaces to be implemented by implementations and the ServiceContext -mechanism.</p> -</li> -</ul> -</div> -<div class="sect2"> -<h3 id="APIKeyValues">Key/Value Pairs</h3> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="listingblock"> -<div class="title">A simple properties file</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-properties" data-lang="properties">a.b.c=cVal -a.b.c.1=cVal1 -a.b.c.2=cVal2 -a=aVal -a.b=abVal -a.b2=abVal</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Now you can use java.util.Properties to read this file and access the corresponding properties, e.g.</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-properties" data-lang="properties">Properties props = new Properties(); -props.readProperties(...); -String val = props.getProperty("a.b.c"); -val = props.getProperty("a.b.c.1"); -...</code></pre> -</div> -</div> -<div class="sect3"> -<h4 id="_why_using_strings_only">Why Using Strings Only</h4> -<div class="paragraph"> -<p>There are good reason to keep of non String-values as core storage representation of configuration. Mostly -there are several huge advantages:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>Strings are simple to understand</p> -</li> -<li> -<p>Strings are human readable and therefore easy to prove for correctness</p> -</li> -<li> -<p>Strings can easily be used within different language, different VMs, files or network communications.</p> -</li> -<li> -<p>Strings can easily be compared and manipulated</p> -</li> -<li> -<p>Strings can easily be searched, indexed and cached</p> -</li> -<li> -<p>It is very easy to provide Strings as configuration, which gives much flexibility for providing configuration in -production as well in testing.</p> -</li> -<li> -<p>and more…​</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>On the other side there are also disadvantages:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>Strings are inherently not type safe, they do not provide validation out of the box for special types, such as -numbers, dates etc.</p> -</li> -<li> -<p>In many cases you want to access configuration in a typesafe way avoiding conversion to the target types explicitly -throughout your code.</p> -</li> -<li> -<p>Strings are neither hierarchical nor multi-valued, so mapping hierarchical and collection structures requires some -extra efforts.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>Nevertheless most of these advantages can be mitigated easily, hereby still keeping all the benefits from above:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>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.</p> -</li> -<li> -<p>Also multi-valued, complex and collection types can be defined as a corresponding PropertyAdapter knows how to -parse and create the target instance required.</p> -</li> -<li> -<p>String s also can be used as references pointing to other locations and formats, where configuration is -accessible.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>[[API Configuration]] -=== Configuration</p> -</div> -<div class="paragraph"> -<p>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:</p> -</div> -<div class="listingblock"> -<div class="title">Interface Configuration</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">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(); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Hereby</p> -</div> -<div class="ulist"> -<ul> -<li> -<p><T> T get(String, Class<T>) provides type safe accessors for all basic wrapper types of the JDK.</p> -</li> -<li> -<p>with, query provide the extension points for adding additional functionality.</p> -</li> -<li> -<p>getProperties() provides access to all key/values, whereas entries from non scannable property sources may not -be included.</p> -</li> -<li> -<p>getOrDefault allows to pass default values as needed, returned if the requested value evaluated to null.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>The class TypeLiteral is basically similar to the same class provided with CDI:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="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){...} - - [...] -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Instances of Configuration can be accessed from the ConfigurationProvider singleton:</p> -</div> -<div class="listingblock"> -<div class="title">Accessing Configuration</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Configuration config = ConfigurationProvider.getConfiguration();</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Hereby the singleton is backed up by an instance of ConfigurationProviderSpi.</p> -</div> -</div> -<div class="sect3"> -<h4 id="PropertyConverter">Property Converters</h4> -<div class="paragraph"> -<p>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:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">public interface PropertyConverter<T>{ - T convert(String value, ConversionContext context); - //X TODO Collection<String> getSupportedFormats(); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>The ConversionContext contains additional meta-information for the accessed key, inclusing the key’a name and -additional metadata.</p> -</div> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="paragraph"> -<p>Access to converters is provided by the current ConfigurationContext, which is accessible from -the ConfigurationProvider singleton.</p> -</div> -</div> -</div> -<div class="sect2"> -<h3 id="ExtensionPoints">Extension Points</h3> -<div class="paragraph"> -<p>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:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>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.</p> -</li> -<li> -<p>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.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>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:</p> -</div> -<div class="listingblock"> -<div class="title">Applying a ConfigurationQuery using a method reference</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">ConfigSecurity securityContext = ConfigurationProvider.getConfiguration().query(ConfigSecurity::targetSecurityContext);</code></pre> -</div> -</div> -<div class="admonitionblock note"> -<table> -<tr> -<td class="icon"> -<div class="title">Note</div> -</td> -<td class="content"> -ConfigSecurity is an arbitrary class only for demonstration purposes. -</td> -</tr> -</table> -</div> -<div class="paragraph"> -<p>Operator calls basically look similar:</p> -</div> -<div class="listingblock"> -<div class="title">Applying a ConfigurationOperator using a lambda expression:</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Configuration secured = ConfigurationProvider.getConfiguration() - .with((config) -> - config.get("foo")!=null?; - FooFilter.apply(config): - config);</code></pre> -</div> -</div> -</div> -<div class="sect2"> -<h3 id="ConfigException">ConfigException</h3> -<div class="paragraph"> -<p>The class ConfigException models the base <strong>runtime</strong> exception used by the configuration system.</p> -</div> -</div> -</div> -</div> -<div class="sect1"> -<h2 id="SPI">SPI</h2> -<div class="sectionbody"> -<div class="sect2"> -<h3 id="PropertySource">Interface PropertySource</h3> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="paragraph"> -<p>To render an implementation of a custom PropertySource as convenient as possible only the following methods were -identified to be necessary:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">public interface PropertySource{ - int getOrdinal(); - String getName(); - String get(String key); - boolean isScannable(); - Map<String, String> getProperties(); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Hereby</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>get looks similar to the methods on Map. It may return null in case no such entry is available.</p> -</li> -<li> -<p>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.</p> -</li> -<li> -<p>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.</p> -</li> -<li> -<p>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.</p> -</li> -<li> -<p>Finally getName() returns a (unique) name that identifies the PropertySource within the current -ConfigurationContext.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="paragraph"> -<p>PropertySources are by default registered using the Java ServiceLoader or the mechanism provided by the current - active ServiceContext.</p> -</div> -<div class="sect3"> -<h4 id="PropertySourceProvider">Interface PropertySourceProvider</h4> -<div class="paragraph"> -<p>Instances of this type can be used to register multiple instances of PropertySource.</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">// @FunctionalInterface in Java 8 -public interface PropertySourceProvider{ - Collection<PropertySource> getPropertySources(); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>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 <a id="ConfigurationContext"></a>.</p> -</div> -<div class="paragraph"> -<p>PropertySourceProviders are by default registered using the Java ServiceLoader or the mechanism provided by the -current active ServiceContext.</p> -</div> -</div> -<div class="sect3"> -<h4 id="PropertyFilter">Interface PropertyFilter</h4> -<div class="paragraph"> -<p>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</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>resolving placeholders</p> -</li> -<li> -<p>masking sensitive entries, such as passwords</p> -</li> -<li> -<p>constraining visibility based on the current active user</p> -</li> -<li> -<p>…​</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="paragraph"> -<p>A PropertyFilter is defined as follows:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">// Functional Interface -public interface PropertyFilter{ - String filterProperty(String value, FilterContext context); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Hereby:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>returning null will remove the key from the final result</p> -</li> -<li> -<p>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.</p> -</li> -<li> -<p>FilterContext provides additional metdata, inclusing the key accessed, which is useful in many use cases.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>This method is called each time a single entry is accessed, and for each property in a full properties result.</p> -</div> -</div> -<div class="sect3"> -<h4 id="PropertyValueCombinationPolicy">Interface PropertyValueCombinationPolicy</h4> -<div class="paragraph"> -<p>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.</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="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); - -}</code></pre> -</div> -</div> -</div> -<div class="sect3"> -<h4 id="ConfigurationContext">The Configuration Context</h4> -<div class="paragraph"> -<p>A Configuration is basically based on a so called ConfigurationContext, which is -accessible from Configuration.getContext():</p> -</div> -<div class="listingblock"> -<div class="title">Accessing the current ConfigurationContext</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">ConfigurationContext context = ConfigurationProvider.getConfiguration().getContext();</code></pre> -</div> -</div> -<div class="paragraph"> -<p>The ConfigurationContext provides access to the internal building blocks that determine the final Configuration:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>PropertySources registered (including the PropertySources provided from PropertySourceProvider instances).</p> -</li> -<li> -<p>PropertyFilters registered, which filter values before they are returned to the client</p> -</li> -<li> -<p>PropertyConverter instances that provide conversion functionality for converting String values to any other types.</p> -</li> -<li> -<p>the current PropertyValueCombinationPolicy that determines how property values from different PropertySources are -combined to the final property value returned to the client.</p> -</li> -</ul> -</div> -</div> -<div class="sect3"> -<h4 id="Mutability">Changing the current Configuration Context</h4> -<div class="paragraph"> -<p>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:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>New configuration files where detected in a folder observed by Tamaya.</p> -</li> -<li> -<p>Remote configuration, e.g. stored in a database or alternate ways has been updated and the current system must -be adapted to these changes.</p> -</li> -<li> -<p>The overall configuration context is manually setup by the application logic.</p> -</li> -<li> -<p>Within unit testing alternate configuration setup should be setup to meet the configuration requirements of the -tests executed.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>In such cases the ConfigurationContext must be mutable, meaning it must be possible:</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>to add or remove PropertySource instances</p> -</li> -<li> -<p>to add or remove PropertyFilter instances</p> -</li> -<li> -<p>to add or remove PropertyConverter instances</p> -</li> -<li> -<p>to redefine the current PropertyValueCombinationPolicy instances.</p> -</li> -</ul> -</div> -<div class="paragraph"> -<p>This can be achieved by obtaining an instance of ConfigurationContextBuilder. Instances of this builder can be -accessed either</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>from the current ConfigurationContext, hereby returning a builder instance preinitialized with the values from the -current ConfigurationContext</p> -</li> -<li> -<p>from the current ConfigurationProvider singleton.</p> -</li> -</ul> -</div> -<div class="listingblock"> -<div class="title">Accessing a ConfigurationContextBuilder</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext().toBuilder(); -ConfigurationContextBuilder emptyContextBuilder = ConfigurationProvider.getConfigurationContextBuilder();</code></pre> -</div> -</div> -<div class="paragraph"> -<p>With such a builder a new ConfigurationContext can be created and then applied:</p> -</div> -<div class="listingblock"> -<div class="title">Creating and applying a new ConfigurationContext</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">ConfigurationContextBuilder preinitializedContextBuilder = ConfigurationProvider.getConfiguration().getContext() - .toBuilder(); -ConfigurationContext context = preinitializedContextBuilder.addPropertySources(new MyPropertySource()) - .addPropertyFilter(new MyFilter()).build(); -ConfigurationProvider.setConfigurationContext(context);</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Hereby ConfigurationProvider.setConfigurationContext(context) can throw an UnsupportedOperationException. -This can be checked by calling the method boolean ConfigurationProvider.isConfigurationContextSettable().</p> -</div> -</div> -<div class="sect3"> -<h4 id="ConfigurationProviderSpi">Implementing and Managing Configuration</h4> -<div class="paragraph"> -<p>One of the most important SPI in Tamaya if the ConfigurationProviderSpi interface, which is backing up the -ConfigurationProvider singleton. Implementing this class allows</p> -</div> -<div class="ulist"> -<ul> -<li> -<p>to fully determine the implementation class for Configuration</p> -</li> -<li> -<p>to manage the current ConfigurationContext in the scope and granularity required.</p> -</li> -<li> -<p>to provide access to the right Configuration/ConfigurationContext based on the current runtime context.</p> -</li> -<li> -<p>Performing changes as set with the current ConfigurationContextBuilder.</p> -</li> -</ul> -</div> -</div> -<div class="sect3"> -<h4 id="ServiceContext">The ServiceContext</h4> -<div class="paragraph"> -<p>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:</p> -</div> -<div class="listingblock"> -<div class="title">Accessing the ServiceContext</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">ServiceContext serviceContext = ServiceContextManager.getServiceContext(); - -public interface ServiceContext{ - int ordinal(); - <T> T getService(Class<T> serviceType); - <T> List<T> getServices(Class<T> serviceType); -}</code></pre> -</div> -</div> -<div class="paragraph"> -<p>With the ServiceContext a component can be accessed in two different ways:</p> -</div> -<div class="olist arabic"> -<ol class="arabic"> -<li> -<p>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.</p> -</li> -<li> -<p>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.</p> -</li> -</ol> -</div> -</div> -</div> -</div> -</div> -<div class="sect1"> -<h2 id="_examples">Examples</h2> -<div class="sectionbody"> -<div class="sect2"> -<h3 id="_accessing_configuration">Accessing Configuration</h3> -<div class="paragraph"> -<p><em>Configuration</em> is obtained from the ConfigurationProvider singleton:</p> -</div> -<div class="listingblock"> -<div class="title">Accessing Configuration</div> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Configuration config = ConfigurationProvider.getConfiguration();</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Many users in a SE context will probably only work with <em>Configuration</em>, 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 <strong>Map<String,String></strong>, whereas in Java 8 additionally usage of <em>Optional</em> is supported:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">Configuration config = ConfigurationProvider.getConfiguration(); -String myKey = config.get("myKey"); // may return null -int myLimit = config.get("all.size.limit", int.class);</code></pre> -</div> -</div> -</div> -<div class="sect2"> -<h3 id="_environment_and_system_properties">Environment and System Properties</h3> -<div class="paragraph"> -<p>By default environment and system properties are included into the <em>Configuration</em>. So we can access the current -<em>PROMPT</em> environment variable as follows:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">String prompt = ConfigurationProvider.getConfiguration().get("PROMPT");</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Similary the system properties are directly applied to the <em>Configuration</em>. So if we pass the following system -property to our JVM:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">java ... -Duse.my.system.answer=yes</code></pre> -</div> -</div> -<div class="paragraph"> -<p>we can access it as follows:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java">boolean useMySystem = ConfigurationProvider.getConfiguration().get("use.my.system.answer", boolean.class);</code></pre> -</div> -</div> -</div> -<div class="sect2"> -<h3 id="_adding_a_custom_configuration">Adding a Custom Configuration</h3> -<div class="paragraph"> -<p>Adding a classpath based configuration is simply as well: just implement an according <em>PropertySource</em>. With the -<em>tamaya-spi-support</em> module you just have to perform a few steps:</p> -</div> -<div class="olist arabic"> -<ol class="arabic"> -<li> -<p>Define a PropertySource as follows:</p> -</li> -</ol> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-java" data-lang="java"> public class MyPropertySource extends PropertiesResourcePropertySource{ - - public MyPropertySource(){ - super(ClassLoader.getSystemClassLoader().getResource("META-INF/cfg/myconfig.properties"), DEFAULT_ORDINAL); - } - }</code></pre> -</div> -</div> -<div class="paragraph"> -<p>Then register MyPropertySource using the ServiceLoader by adding the following file:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-listing" data-lang="listing">META-INF/services/org.apache.tamaya.spi.PropertySource</code></pre> -</div> -</div> -<div class="paragraph"> -<p>…​containing the following line:</p> -</div> -<div class="listingblock"> -<div class="content"> -<pre class="prettyprint highlight"><code class="language-listing" data-lang="listing">com.mypackage.MyPropertySource</code></pre> -</div> -</div> -</div> -</div> -</div> -<div class="sect1"> -<h2 id="APIImpl">API Implementation</h2> -<div class="sectionbody"> -<div class="paragraph"> -<p>The API is implemented by the Tamaya _Core_module. Refer to the <a href="Core.html">Core documentation</a> for -further details.</p> -</div> -</div> -</div></p> - - <hr /> - </div> - </div> - <div> - <div id="push"></div> - - <div id="footer"> - <div class="container"> - <p class="muted credit">© 2014-2016 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.0</span></a> - at <span>2016-11-02</span> - </p> - <p> - <b>Disclaimer</b> - Apache Tamaya (incubating) is an effort undergoing - incubation at - The Apache Software Foundation (ASF), sponsored by - the name of Apache Incubator. Incubation is required of - all newly accepted projects until a further review indicates - that the infrastructure, communications, and decision making - process have stabilized in a manner consistent with other - successful ASF projects. While incubation status is not - necessarily a reflection of the completeness or stability of - the code, it does indicate that the project has yet to - be fully endorsed by the ASF.<br /> - <a href="http://incubator.apache.org/guides/website.html" style="border:0px;" target="_target"><img class="incubator-logo" src="logos/egg-logo2.png"/></a> - </p> - </div> - </div> - - <!-- Le javascript - ================================================== --> - <!-- Placed at the end of the document so the pages load faster --> - <script src="js/jquery-1.11.1.min.js"></script> - <script src="js/bootstrap.min.js"></script> - <script src="js/prettify.js"></script> - - </div> - </body> -</html> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/97bc8884/apidocs/allclasses-frame.html ---------------------------------------------------------------------- diff --git a/apidocs/allclasses-frame.html b/apidocs/allclasses-frame.html deleted file mode 100644 index eb662ce..0000000 --- a/apidocs/allclasses-frame.html +++ /dev/null @@ -1,76 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<!-- NewPage --> -<html lang="de"> -<head> -<!-- Generated by javadoc --> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>All Classes (Apache Tamaya 0.3-incubating-SNAPSHOT API)</title> -<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> -<script type="text/javascript" src="script.js"></script> -</head> -<body> -<h1 class="bar">All Classes</h1> -<div class="indexContainer"> -<ul> -<li><a href="org/apache/tamaya/core/propertysource/BasePropertySource.html" title="class in org.apache.tamaya.core.propertysource" target="classFrame">BasePropertySource</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/BigDecimalConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">BigDecimalConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/BigIntegerConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">BigIntegerConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/BooleanConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">BooleanConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/ByteConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">ByteConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/CharConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">CharConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/ClassConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">ClassConverter</a></li> -<li><a href="org/apache/tamaya/core/propertysource/CLIPropertySource.html" title="class in org.apache.tamaya.core.propertysource" target="classFrame">CLIPropertySource</a></li> -<li><a href="org/apache/tamaya/ConfigException.html" title="class in org.apache.tamaya" target="classFrame">ConfigException</a></li> -<li><a href="org/apache/tamaya/ConfigOperator.html" title="interface in org.apache.tamaya" target="classFrame"><span class="interfaceName">ConfigOperator</span></a></li> -<li><a href="org/apache/tamaya/ConfigQuery.html" title="interface in org.apache.tamaya" target="classFrame"><span class="interfaceName">ConfigQuery</span></a></li> -<li><a href="org/apache/tamaya/Configuration.html" title="interface in org.apache.tamaya" target="classFrame"><span class="interfaceName">Configuration</span></a></li> -<li><a href="org/apache/tamaya/spi/ConfigurationContext.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">ConfigurationContext</span></a></li> -<li><a href="org/apache/tamaya/spi/ConfigurationContextBuilder.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">ConfigurationContextBuilder</span></a></li> -<li><a href="org/apache/tamaya/ConfigurationProvider.html" title="class in org.apache.tamaya" target="classFrame">ConfigurationProvider</a></li> -<li><a href="org/apache/tamaya/spi/ConfigurationProviderSpi.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">ConfigurationProviderSpi</span></a></li> -<li><a href="org/apache/tamaya/spi/ConversionContext.html" title="class in org.apache.tamaya.spi" target="classFrame">ConversionContext</a></li> -<li><a href="org/apache/tamaya/spi/ConversionContext.Builder.html" title="class in org.apache.tamaya.spi" target="classFrame">ConversionContext.Builder</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/CurrencyConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">CurrencyConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfiguration.html" title="class in org.apache.tamaya.core.internal" target="classFrame">DefaultConfiguration</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfigurationContext.html" title="class in org.apache.tamaya.core.internal" target="classFrame">DefaultConfigurationContext</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfigurationContextBuilder.html" title="class in org.apache.tamaya.core.internal" target="classFrame">DefaultConfigurationContextBuilder</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfigurationProvider.html" title="class in org.apache.tamaya.core.internal" target="classFrame">DefaultConfigurationProvider</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultServiceContext.html" title="class in org.apache.tamaya.core.internal" target="classFrame">DefaultServiceContext</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/DoubleConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">DoubleConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/EnumConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">EnumConverter</a></li> -<li><a href="org/apache/tamaya/core/propertysource/EnvironmentPropertySource.html" title="class in org.apache.tamaya.core.propertysource" target="classFrame">EnvironmentPropertySource</a></li> -<li><a href="org/apache/tamaya/spi/Experimental.html" title="annotation in org.apache.tamaya.spi" target="classFrame">Experimental</a></li> -<li><a href="org/apache/tamaya/spi/FilterContext.html" title="class in org.apache.tamaya.spi" target="classFrame">FilterContext</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/FloatConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">FloatConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/IntegerConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">IntegerConverter</a></li> -<li><a href="org/apache/tamaya/core/provider/JavaConfigurationProvider.html" title="class in org.apache.tamaya.core.provider" target="classFrame">JavaConfigurationProvider</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/LongConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">LongConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/NumberConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">NumberConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/OSGIActivator.html" title="class in org.apache.tamaya.core.internal" target="classFrame">OSGIActivator</a></li> -<li><a href="org/apache/tamaya/core/internal/OSGIServiceContext.html" title="class in org.apache.tamaya.core.internal" target="classFrame">OSGIServiceContext</a></li> -<li><a href="org/apache/tamaya/core/internal/OSGIServiceLoader.html" title="class in org.apache.tamaya.core.internal" target="classFrame">OSGIServiceLoader</a></li> -<li><a href="org/apache/tamaya/core/internal/PriorityServiceComparator.html" title="class in org.apache.tamaya.core.internal" target="classFrame">PriorityServiceComparator</a></li> -<li><a href="org/apache/tamaya/spi/PropertyConverter.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">PropertyConverter</span></a></li> -<li><a href="org/apache/tamaya/core/internal/PropertyConverterManager.html" title="class in org.apache.tamaya.core.internal" target="classFrame">PropertyConverterManager</a></li> -<li><a href="org/apache/tamaya/spi/PropertyFilter.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">PropertyFilter</span></a></li> -<li><a href="org/apache/tamaya/core/internal/PropertyFilterComparator.html" title="class in org.apache.tamaya.core.internal" target="classFrame">PropertyFilterComparator</a></li> -<li><a href="org/apache/tamaya/core/internal/PropertyFiltering.html" title="class in org.apache.tamaya.core.internal" target="classFrame">PropertyFiltering</a></li> -<li><a href="org/apache/tamaya/spi/PropertySource.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">PropertySource</span></a></li> -<li><a href="org/apache/tamaya/core/internal/PropertySourceComparator.html" title="class in org.apache.tamaya.core.internal" target="classFrame">PropertySourceComparator</a></li> -<li><a href="org/apache/tamaya/spi/PropertySourceProvider.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">PropertySourceProvider</span></a></li> -<li><a href="org/apache/tamaya/spi/PropertyValue.html" title="class in org.apache.tamaya.spi" target="classFrame">PropertyValue</a></li> -<li><a href="org/apache/tamaya/spi/PropertyValueBuilder.html" title="class in org.apache.tamaya.spi" target="classFrame">PropertyValueBuilder</a></li> -<li><a href="org/apache/tamaya/spi/PropertyValueCombinationPolicy.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">PropertyValueCombinationPolicy</span></a></li> -<li><a href="org/apache/tamaya/core/internal/ReflectionUtil.html" title="class in org.apache.tamaya.core.internal" target="classFrame">ReflectionUtil</a></li> -<li><a href="org/apache/tamaya/spi/ServiceContext.html" title="interface in org.apache.tamaya.spi" target="classFrame"><span class="interfaceName">ServiceContext</span></a></li> -<li><a href="org/apache/tamaya/spi/ServiceContextManager.html" title="class in org.apache.tamaya.spi" target="classFrame">ServiceContextManager</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/ShortConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">ShortConverter</a></li> -<li><a href="org/apache/tamaya/core/propertysource/SimplePropertySource.html" title="class in org.apache.tamaya.core.propertysource" target="classFrame">SimplePropertySource</a></li> -<li><a href="org/apache/tamaya/core/propertysource/SystemPropertySource.html" title="class in org.apache.tamaya.core.propertysource" target="classFrame">SystemPropertySource</a></li> -<li><a href="org/apache/tamaya/TypeLiteral.html" title="class in org.apache.tamaya" target="classFrame">TypeLiteral</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/URIConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">URIConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/URLConverter.html" title="class in org.apache.tamaya.core.internal.converters" target="classFrame">URLConverter</a></li> -</ul> -</div> -</body> -</html> http://git-wip-us.apache.org/repos/asf/incubator-tamaya-site/blob/97bc8884/apidocs/allclasses-noframe.html ---------------------------------------------------------------------- diff --git a/apidocs/allclasses-noframe.html b/apidocs/allclasses-noframe.html deleted file mode 100644 index 7b6828d..0000000 --- a/apidocs/allclasses-noframe.html +++ /dev/null @@ -1,76 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<!-- NewPage --> -<html lang="de"> -<head> -<!-- Generated by javadoc --> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>All Classes (Apache Tamaya 0.3-incubating-SNAPSHOT API)</title> -<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> -<script type="text/javascript" src="script.js"></script> -</head> -<body> -<h1 class="bar">All Classes</h1> -<div class="indexContainer"> -<ul> -<li><a href="org/apache/tamaya/core/propertysource/BasePropertySource.html" title="class in org.apache.tamaya.core.propertysource">BasePropertySource</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/BigDecimalConverter.html" title="class in org.apache.tamaya.core.internal.converters">BigDecimalConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/BigIntegerConverter.html" title="class in org.apache.tamaya.core.internal.converters">BigIntegerConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/BooleanConverter.html" title="class in org.apache.tamaya.core.internal.converters">BooleanConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/ByteConverter.html" title="class in org.apache.tamaya.core.internal.converters">ByteConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/CharConverter.html" title="class in org.apache.tamaya.core.internal.converters">CharConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/ClassConverter.html" title="class in org.apache.tamaya.core.internal.converters">ClassConverter</a></li> -<li><a href="org/apache/tamaya/core/propertysource/CLIPropertySource.html" title="class in org.apache.tamaya.core.propertysource">CLIPropertySource</a></li> -<li><a href="org/apache/tamaya/ConfigException.html" title="class in org.apache.tamaya">ConfigException</a></li> -<li><a href="org/apache/tamaya/ConfigOperator.html" title="interface in org.apache.tamaya"><span class="interfaceName">ConfigOperator</span></a></li> -<li><a href="org/apache/tamaya/ConfigQuery.html" title="interface in org.apache.tamaya"><span class="interfaceName">ConfigQuery</span></a></li> -<li><a href="org/apache/tamaya/Configuration.html" title="interface in org.apache.tamaya"><span class="interfaceName">Configuration</span></a></li> -<li><a href="org/apache/tamaya/spi/ConfigurationContext.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">ConfigurationContext</span></a></li> -<li><a href="org/apache/tamaya/spi/ConfigurationContextBuilder.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">ConfigurationContextBuilder</span></a></li> -<li><a href="org/apache/tamaya/ConfigurationProvider.html" title="class in org.apache.tamaya">ConfigurationProvider</a></li> -<li><a href="org/apache/tamaya/spi/ConfigurationProviderSpi.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">ConfigurationProviderSpi</span></a></li> -<li><a href="org/apache/tamaya/spi/ConversionContext.html" title="class in org.apache.tamaya.spi">ConversionContext</a></li> -<li><a href="org/apache/tamaya/spi/ConversionContext.Builder.html" title="class in org.apache.tamaya.spi">ConversionContext.Builder</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/CurrencyConverter.html" title="class in org.apache.tamaya.core.internal.converters">CurrencyConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfiguration.html" title="class in org.apache.tamaya.core.internal">DefaultConfiguration</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfigurationContext.html" title="class in org.apache.tamaya.core.internal">DefaultConfigurationContext</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfigurationContextBuilder.html" title="class in org.apache.tamaya.core.internal">DefaultConfigurationContextBuilder</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultConfigurationProvider.html" title="class in org.apache.tamaya.core.internal">DefaultConfigurationProvider</a></li> -<li><a href="org/apache/tamaya/core/internal/DefaultServiceContext.html" title="class in org.apache.tamaya.core.internal">DefaultServiceContext</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/DoubleConverter.html" title="class in org.apache.tamaya.core.internal.converters">DoubleConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/EnumConverter.html" title="class in org.apache.tamaya.core.internal.converters">EnumConverter</a></li> -<li><a href="org/apache/tamaya/core/propertysource/EnvironmentPropertySource.html" title="class in org.apache.tamaya.core.propertysource">EnvironmentPropertySource</a></li> -<li><a href="org/apache/tamaya/spi/Experimental.html" title="annotation in org.apache.tamaya.spi">Experimental</a></li> -<li><a href="org/apache/tamaya/spi/FilterContext.html" title="class in org.apache.tamaya.spi">FilterContext</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/FloatConverter.html" title="class in org.apache.tamaya.core.internal.converters">FloatConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/IntegerConverter.html" title="class in org.apache.tamaya.core.internal.converters">IntegerConverter</a></li> -<li><a href="org/apache/tamaya/core/provider/JavaConfigurationProvider.html" title="class in org.apache.tamaya.core.provider">JavaConfigurationProvider</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/LongConverter.html" title="class in org.apache.tamaya.core.internal.converters">LongConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/NumberConverter.html" title="class in org.apache.tamaya.core.internal.converters">NumberConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/OSGIActivator.html" title="class in org.apache.tamaya.core.internal">OSGIActivator</a></li> -<li><a href="org/apache/tamaya/core/internal/OSGIServiceContext.html" title="class in org.apache.tamaya.core.internal">OSGIServiceContext</a></li> -<li><a href="org/apache/tamaya/core/internal/OSGIServiceLoader.html" title="class in org.apache.tamaya.core.internal">OSGIServiceLoader</a></li> -<li><a href="org/apache/tamaya/core/internal/PriorityServiceComparator.html" title="class in org.apache.tamaya.core.internal">PriorityServiceComparator</a></li> -<li><a href="org/apache/tamaya/spi/PropertyConverter.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">PropertyConverter</span></a></li> -<li><a href="org/apache/tamaya/core/internal/PropertyConverterManager.html" title="class in org.apache.tamaya.core.internal">PropertyConverterManager</a></li> -<li><a href="org/apache/tamaya/spi/PropertyFilter.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">PropertyFilter</span></a></li> -<li><a href="org/apache/tamaya/core/internal/PropertyFilterComparator.html" title="class in org.apache.tamaya.core.internal">PropertyFilterComparator</a></li> -<li><a href="org/apache/tamaya/core/internal/PropertyFiltering.html" title="class in org.apache.tamaya.core.internal">PropertyFiltering</a></li> -<li><a href="org/apache/tamaya/spi/PropertySource.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">PropertySource</span></a></li> -<li><a href="org/apache/tamaya/core/internal/PropertySourceComparator.html" title="class in org.apache.tamaya.core.internal">PropertySourceComparator</a></li> -<li><a href="org/apache/tamaya/spi/PropertySourceProvider.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">PropertySourceProvider</span></a></li> -<li><a href="org/apache/tamaya/spi/PropertyValue.html" title="class in org.apache.tamaya.spi">PropertyValue</a></li> -<li><a href="org/apache/tamaya/spi/PropertyValueBuilder.html" title="class in org.apache.tamaya.spi">PropertyValueBuilder</a></li> -<li><a href="org/apache/tamaya/spi/PropertyValueCombinationPolicy.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">PropertyValueCombinationPolicy</span></a></li> -<li><a href="org/apache/tamaya/core/internal/ReflectionUtil.html" title="class in org.apache.tamaya.core.internal">ReflectionUtil</a></li> -<li><a href="org/apache/tamaya/spi/ServiceContext.html" title="interface in org.apache.tamaya.spi"><span class="interfaceName">ServiceContext</span></a></li> -<li><a href="org/apache/tamaya/spi/ServiceContextManager.html" title="class in org.apache.tamaya.spi">ServiceContextManager</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/ShortConverter.html" title="class in org.apache.tamaya.core.internal.converters">ShortConverter</a></li> -<li><a href="org/apache/tamaya/core/propertysource/SimplePropertySource.html" title="class in org.apache.tamaya.core.propertysource">SimplePropertySource</a></li> -<li><a href="org/apache/tamaya/core/propertysource/SystemPropertySource.html" title="class in org.apache.tamaya.core.propertysource">SystemPropertySource</a></li> -<li><a href="org/apache/tamaya/TypeLiteral.html" title="class in org.apache.tamaya">TypeLiteral</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/URIConverter.html" title="class in org.apache.tamaya.core.internal.converters">URIConverter</a></li> -<li><a href="org/apache/tamaya/core/internal/converters/URLConverter.html" title="class in org.apache.tamaya.core.internal.converters">URLConverter</a></li> -</ul> -</div> -</body> -</html>
