Author: buildbot
Date: Thu Oct 13 13:37:05 2016
New Revision: 999317

Log:
Staging update by buildbot for sling

Added:
    
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration.html
Removed:
    
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-configuration.html
Modified:
    websites/staging/sling/trunk/content/   (props changed)
    websites/staging/sling/trunk/content/documentation/bundles.html
    
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-default-implementation.html
    
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-spi.html
    websites/staging/sling/trunk/content/sitemap.html

Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Thu Oct 13 13:37:05 2016
@@ -1 +1 @@
-1764671
+1764672

Modified: websites/staging/sling/trunk/content/documentation/bundles.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/bundles.html (original)
+++ websites/staging/sling/trunk/content/documentation/bundles.html Thu Oct 13 
13:37:05 2016
@@ -161,7 +161,7 @@ h2:hover > .headerlink, h3:hover > .head
 <li><a href="/documentation/bundles/sling-pipes.html">Sling Pipes</a></li>
 <li><a href="/documentation/bundles/metrics.html">Sling Metrics</a></li>
 <li><a href="/documentation/bundles/servlet-helpers.html">Servlet 
Helpers</a></li>
-<li><a 
href="/documentation/bundles/context-aware-configuration/context-aware-configuration.html">Context-Aware
 Configuration</a></li>
+<li><a 
href="/documentation/bundles/context-aware-configuration.html">Context-Aware 
Configuration</a></li>
 </ul>
 <h2 id="content-presentation">Content Presentation<a class="headerlink" 
href="#content-presentation" title="Permanent link">&para;</a></h2>
 <ul>

Added: 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration.html
==============================================================================
--- 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration.html
 (added)
+++ 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration.html
 Thu Oct 13 13:37:05 2016
@@ -0,0 +1,300 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<html>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE- 2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+  <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+    <title>Apache Sling - Apache Sling Context-Aware Configuration</title>
+    <link rel="icon" href="/res/favicon.ico">
+    <link rel="stylesheet" href="/res/site.css" type="text/css" media="all">
+    <link rel="stylesheet" href="/res/codehilite.css" type="text/css" 
media="all">
+  </head>
+  <body>
+    <div class="title">
+      <div class="logo">
+        <a href="//sling.apache.org/">
+          <img border="0" alt="Apache Sling" src="/res/logo.png">
+        </a>
+      </div>
+      <div class="header">
+        <a href="//www.apache.org/">
+          <img border="0" alt="Apache" src="/res/apache.png">
+        </a>
+      </div>
+    </div>
+    
+    <div class="menu"> 
+      <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, 
h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, 
dt:hover > .elementid-permalink { visibility: visible }</style>
+<p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+<a href="/documentation/getting-started.html">Getting Started</a> <br />
+<a href="/documentation/the-sling-engine.html">The Sling Engine</a> <br />
+<a href="/documentation/development.html">Development</a> <br />
+<a href="/documentation/bundles.html">Bundles</a> <br />
+<a href="/documentation/tutorials-how-tos.html">Tutorials &amp; How-Tos</a> 
<br />
+<a href="/documentation/configuration.html">Configuration</a>   </p>
+<p><a href="http://s.apache.org/sling.wiki";>Wiki</a> <br />
+<a href="http://s.apache.org/sling.faq";>FAQ</a>   </p>
+<p><strong>API Docs</strong>  <br />
+<a href="/apidocs/sling8/index.html">Sling 8</a> <br />
+<a href="/apidocs/sling7/index.html">Sling 7</a> <br />
+<a href="/apidocs/sling6/index.html">Sling 6</a> <br />
+<a href="/apidocs/sling5/index.html">Sling 5</a> <br />
+<a href="/javadoc-io.html">Archive at javadoc.io</a>   </p>
+<p><strong>Project info</strong> <br />
+<a href="/downloads.cgi">Downloads</a> <br />
+<a href="http://www.apache.org/licenses/";>License</a> <br />
+<a href="/contributing.html">Contributing</a> <br />
+<a href="/news.html">News</a> <br />
+<a href="/links.html">Links</a> <br />
+<a href="/project-information.html">Project Information</a> <br />
+<a href="https://issues.apache.org/jira/browse/SLING";>Issue Tracker</a> <br />
+<a href="http://ci.apache.org/builders/sling-trunk";>Build Server</a> <br />
+<a href="/project-information/security.html">Security</a>   </p>
+<p><strong>Source</strong> <br />
+<a href="http://svn.apache.org/viewvc/sling/trunk";>Subversion</a> <br />
+<a href="git://git.apache.org/sling.git">Git</a> <br />
+<a href="https://github.com/apache/sling";>Github Mirror</a>   </p>
+<p><strong>Sponsorship</strong> <br />
+<a href="http://www.apache.org/foundation/thanks.html";>Thanks</a> <br />
+<a href="http://www.apache.org/foundation/sponsorship.html";>Become a 
Sponsor</a> <br />
+<a href="http://www.apache.org/foundation/buy_stuff.html";>Buy Stuff</a>   </p>
+<p><strong><a href="/sitemap.html">Site Map</a></strong></p>
+<!-- no valid ads for now, we'll  reactivate this when needed
+<iframe 
+    src="http://www.apache.org/ads/button.html";
+    style="border-width:0; float: left" frameborder="0" 
+    scrolling="no"
+    width="135" 
+    height="135">
+</iframe>
+-->
+    </div>
+    
+    <div class="main">
+      <div class="breadcrump" style="font-size: 80%;">
+        <a href="/">Home</a>&nbsp;&raquo&nbsp;<a 
href="/documentation.html">Documentation</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles.html">Bundles</a>
+      </div>
+
+      
+      
+      <h1>Apache Sling Context-Aware Configuration</h1>
+      <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, 
h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, 
dt:hover > .elementid-permalink { visibility: visible }</style>
+<div class="toc">
+<ul>
+<li><a href="#about">About</a></li>
+<li><a href="#java-api">Java API</a><ul>
+<li><a href="#context-aware-resources">Context-Aware Resources</a></li>
+<li><a href="#context-aware-configurations">Context-Aware 
Configurations</a></li>
+</ul>
+</li>
+<li><a href="#contexts-and-configuration-references">Contexts and 
configuration references</a></li>
+<li><a href="#describe-configurations-via-annotation-classes">Describe 
configurations via annotation classes</a></li>
+<li><a href="#context-aware-configuration-bnd-plugin">Context-Aware 
Configuration BND plugin</a></li>
+<li><a href="#customizing-the-configuration-lookup">Customizing the 
configuration lookup</a></li>
+<li><a href="#references">References</a></li>
+</ul>
+</div>
+<h1 id="about">About<a class="headerlink" href="#about" title="Permanent 
link">&para;</a></h1>
+<p>These bundles provide a service API that can be used to get context-aware 
configurations. Context-aware configurations are configurations that are 
related to a content resource or a resource tree, e.g. a web site or a tenant 
site.</p>
+<p>Here is an example how your content structure may look like:</p>
+<p><img alt="Configuration example" 
src="context-aware-configuration/context-aware-config-example.png" /></p>
+<p>The application needs different configuration for different sites, regions 
and tenants = different contexts. Some parameters may be shared, so inheritance 
for nested contexts and from global fallback values is supported as well. You 
have full control which content subtrees are the contexts in your application, 
the structure above is only an example.</p>
+<p>Using the Context-Aware Configuration Java API you can get the matching 
configuration for each content resource without caring where it is stored or 
how the inheritance works.</p>
+<h1 id="java-api">Java API<a class="headerlink" href="#java-api" 
title="Permanent link">&para;</a></h1>
+<p>To get and use configurations, the Java API must be used. Any using code 
must not make any assumptions on how the context-aware configurations are 
searched or stored!</p>
+<p>The Java API consists of two parts:</p>
+<ul>
+<li>Context-Aware Resources: 'Low-level' API for accessing configuration 
resources (which can be anything, e.g. workflow definitions)</li>
+<li>Context-Aware Configurations: 'High-level' API for accessing configuration 
data (key/value pairs)</li>
+</ul>
+<p>In most cases you will use only the 'High-level' API for getting 
context-aware configurations.</p>
+<h2 id="context-aware-resources">Context-Aware Resources<a class="headerlink" 
href="#context-aware-resources" title="Permanent link">&para;</a></h2>
+<p>The base concept are context-aware resources: for a given content resource, 
a named configuration resource can be get.
+The service for getting the configuration resources is called the 
ConfigurationResourceResolver. This service has two methods:</p>
+<ul>
+<li>getting a named configuration resource</li>
+<li>getting all child resources of a named configuration resource.</li>
+</ul>
+<p>For example to get a configuration resource for a content resource at 
/content/mysite/page1, you would get a reference to the OSGi service
+<code>org.apache.sling.contextaware.config.resource.ConfigurationResourceResolver</code>
 and write:</p>
+<table class="codehilitetable"><tr><td class="linenos"><div 
class="linenodiv"><pre>1
+2
+3</pre></div></td><td class="code"><div class="codehilite"><pre><span 
class="n">Resource</span> <span class="n">contentResource</span> <span 
class="o">=</span> <span class="n">resourceResolver</span><span 
class="o">.</span><span class="na">getResource</span><span 
class="o">(</span><span class="s">&quot;/content/mysite/page1&quot;</span><span 
class="o">);</span>
+
+<span class="n">Resource</span> <span class="n">configResource</span> <span 
class="o">=</span> <span class="n">configurationResourceResolver</span><span 
class="o">.</span><span class="na">getResource</span><span 
class="o">(</span><span class="n">contentResource</span><span 
class="o">,</span> <span class="s">&quot;my-bucket&quot;</span><span 
class="o">,</span> <span class="s">&quot;my-config&quot;</span><span 
class="o">);</span>
+</pre></div>
+</td></tr></table>
+
+<p>Or if you have several configuration resources of the same type and you 
need all of them:</p>
+<table class="codehilitetable"><tr><td class="linenos"><div 
class="linenodiv"><pre>1</pre></div></td><td class="code"><div 
class="codehilite"><pre><span class="n">Collection</span><span 
class="o">&lt;</span><span class="n">Resource</span><span class="o">&gt;</span> 
<span class="n">configResources</span> <span class="o">=</span> <span 
class="n">configurationResourceResolver</span><span class="o">.</span><span 
class="na">getResourceCollection</span><span class="o">(</span><span 
class="n">contentResource</span><span class="o">,</span> <span 
class="s">&quot;my-bucket&quot;</span><span class="o">,</span> <span 
class="s">&quot;my-config&quot;</span><span class="o">);</span>
+</pre></div>
+</td></tr></table>
+
+<p>The ConfigurationResourceResolver has a concept of "buckets" (2nd parameter 
in the method signatures) that allows to separate different types of 
configuration resources into different resource hierarchies, so you have a 
separate "namespaces" for the named configuration resources. For example one 
bucket for workflow definitions, one bucket for template definitions, one for 
key/value-pairs.</p>
+<p>The configuration name (3rd parameter) defines which configuration you are 
interested in. The name can be a relative path as well (e.g. 
<code>"sub1/my-config"</code>).</p>
+<h2 id="context-aware-configurations">Context-Aware Configurations<a 
class="headerlink" href="#context-aware-configurations" title="Permanent 
link">&para;</a></h2>
+<p>While context-aware resources give you pure resources and your application 
code can decide what to do with it,
+the most common use case is some configuration. A configuration is usually 
described by an annotation class
+(like Declarative Services does for component configurations). These are typed 
configuration objects
+and the context-aware configuration support automatically converts resources 
into the wanted configuration type.</p>
+<p>Context-aware configurations are built on top of context-aware resources. 
The same concept is used: configurations are
+named and the service to get them is the ConfigurationResolver. You can get a 
reference to the OSGi service
+<code>org.apache.sling.contextaware.config.ConfigurationResolver</code> - it 
has a single method to get a ConfigurationBuilder.
+Alternatively you can directly adapt your content resource directly to the 
ConfigurationBuilder interface and get the configuration:</p>
+<table class="codehilitetable"><tr><td class="linenos"><div 
class="linenodiv"><pre>1
+2
+3</pre></div></td><td class="code"><div class="codehilite"><pre><span 
class="n">Resource</span> <span class="n">contentResource</span> <span 
class="o">=</span> <span class="n">resourceResolver</span><span 
class="o">.</span><span class="na">getResource</span><span 
class="o">(</span><span class="s">&quot;/content/mysite/page1&quot;</span><span 
class="o">);</span>
+
+<span class="n">MyConfig</span> <span class="n">config</span> <span 
class="o">=</span> <span class="n">contentResource</span><span 
class="o">.</span><span class="na">adaptTo</span><span class="o">(</span><span 
class="n">ConfigurationBuilder</span><span class="o">.</span><span 
class="na">class</span><span class="o">).</span><span class="na">as</span><span 
class="o">(</span><span class="n">MyConfig</span><span class="o">.</span><span 
class="na">class</span><span class="o">);</span>
+</pre></div>
+</td></tr></table>
+
+<p>Or if you want to get a list of configurations:</p>
+<table class="codehilitetable"><tr><td class="linenos"><div 
class="linenodiv"><pre>1</pre></div></td><td class="code"><div 
class="codehilite"><pre><span class="n">Collection</span><span 
class="o">&lt;</span><span class="n">MyConfig</span><span class="o">&gt;</span> 
<span class="n">configs</span> <span class="o">=</span> <span 
class="n">contentResource</span><span class="o">.</span><span 
class="na">adaptTo</span><span class="o">(</span><span 
class="n">ConfigurationBuilder</span><span class="o">.</span><span 
class="na">class</span><span class="o">).</span><span 
class="na">asCollection</span><span class="o">(</span><span 
class="n">MyConfig</span><span class="o">.</span><span 
class="na">class</span><span class="o">);</span>
+</pre></div>
+</td></tr></table>
+
+<p>The ConfigurationBuilder also supports getting the configurations as 
ValueMap or by adapting the configuration resources e.g. to a Sling Model. In 
this case you have to specify a configuration name which is otherwise derived 
automatically from the annotation class.</p>
+<p>Internally the ConfigurationResolver used the ConfigurationResourceResolver 
to get the configuration resources. It uses always the bucket name 
<code>sling:configs</code>.</p>
+<h1 id="contexts-and-configuration-references">Contexts and configuration 
references<a class="headerlink" href="#contexts-and-configuration-references" 
title="Permanent link">&para;</a></h1>
+<p>When you use the <a href="">Default Implementation</a> contexts in the 
content resource hierarchy is defined by setting <code>sling:config-ref</code> 
properties. Each resource that has a <code>sling:config-ref</code> property set 
defines the root resource of a context, the whole subtree is the context. 
Within the subtree further nested contexts can be defined. The property 
contains a resource path pointing to a resource below <code>/conf</code>. This 
is the configuration reference.</p>
+<p>Example:</p>
+<p><img alt="Context and config reference" 
src="context-aware-configuration/context-and-config-reference.png" /></p>
+<p>If you define nested contexts or use a deeper hierarchy of resourced in 
<code>/conf</code> the inheritance rules are applied. Additionally it is 
possible to define default values as fallback if no configuration resource 
exists yet in <code>/conf</code>. See <a href="">Default Implementation</a> for 
details.</p>
+<h1 id="describe-configurations-via-annotation-classes">Describe 
configurations via annotation classes<a class="headerlink" 
href="#describe-configurations-via-annotation-classes" title="Permanent 
link">&para;</a></h1>
+<p>You need an annotation class for each configuration you want to read via 
the ConfigurationBuilder. The annotation classes may be provided by
+the applications/libraries you use, or you can define your own annotation 
classes for your application.</p>
+<p>The annotation class may look like this:</p>
+<table class="codehilitetable"><tr><td class="linenos"><div 
class="linenodiv"><pre> 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13</pre></div></td><td class="code"><div class="codehilite"><pre><span 
class="nd">@Configuration</span><span class="o">(</span><span 
class="n">label</span><span class="o">=</span><span class="s">&quot;My 
Configuration&quot;</span><span class="o">,</span> <span 
class="n">description</span><span class="o">=</span><span 
class="s">&quot;Describe me&quot;</span><span class="o">)</span>
+<span class="kd">public</span> <span class="nd">@interface</span> <span 
class="n">MyConfig</span> <span class="o">{</span>
+
+    <span class="nd">@Property</span><span class="o">(</span><span 
class="n">label</span><span class="o">=</span><span class="s">&quot;Parameter 
#1&quot;</span><span class="o">,</span> <span class="n">description</span><span 
class="o">=</span><span class="s">&quot;Describe me&quot;</span><span 
class="o">)</span>
+    <span class="n">String</span> <span class="nf">param1</span><span 
class="o">();</span>
+
+    <span class="nd">@Property</span><span class="o">(</span><span 
class="n">label</span><span class="o">=</span><span class="s">&quot;Parameter 
with Default value&quot;</span><span class="o">,</span> <span 
class="n">description</span><span class="o">=</span><span 
class="s">&quot;Describe me&quot;</span><span class="o">)</span>
+    <span class="n">String</span> <span 
class="nf">paramWithDefault</span><span class="o">()</span> <span 
class="k">default</span> <span class="s">&quot;defValue&quot;</span><span 
class="o">;</span>
+
+    <span class="nd">@Property</span><span class="o">(</span><span 
class="n">label</span><span class="o">=</span><span class="s">&quot;Integer 
parameter&quot;</span><span class="o">,</span> <span 
class="n">description</span><span class="o">=</span><span 
class="s">&quot;Describe me&quot;</span><span class="o">)</span>
+    <span class="kt">int</span> <span class="nf">intParam</span><span 
class="o">();</span>
+
+<span class="o">}</span>
+</pre></div>
+</td></tr></table>
+
+<p>The <code>@Configuration</code> annotation is mandatory. All properties on 
the <code>@Configuration</code> annotation and the <code>@Property</code> 
annotations are optional - they provide additional metadata for tooling e.g. 
configuration editors. </p>
+<p>By default the annotation class name is used as configuration name, which 
is also the recommended option. If you want to use an arbitrary configuration 
name you can specify it via a <code>name</code> property on the 
<code>@Configuration</code> annotation.</p>
+<p>You may specify custom properties (via <code>property</code> string array) 
for the configuration class or each properties. They are not used by the Sling 
Context-Aware configuration implementation, but may be used by additional 
tooling to manage the configurations.</p>
+<p>If you provide your own configuration annotation classes in your bundle, 
you have to export them and list all class names in a bundle header named 
<code>Sling-ContextAware-Configuration-Classes</code> - example:</p>
+<div class="codehilite"><pre><span class="n">Sling</span><span 
class="o">-</span><span class="n">ContextAware</span><span 
class="o">-</span><span class="n">Configuration</span><span 
class="o">-</span><span class="n">Classes</span><span class="p">:</span> <span 
class="n">x</span><span class="p">.</span><span class="n">y</span><span 
class="p">.</span><span class="n">z</span><span class="p">.</span><span 
class="n">MyConfig</span><span class="p">,</span> <span class="n">x</span><span 
class="p">.</span><span class="n">y</span><span class="p">.</span><span 
class="n">z</span><span class="p">.</span><span class="n">MyConfig2</span>
+</pre></div>
+
+
+<p>To automate this you can use the Context-Aware Configuration BND plugin 
(see next chapter).     </p>
+<h1 id="context-aware-configuration-bnd-plugin">Context-Aware Configuration 
BND plugin<a class="headerlink" href="#context-aware-configuration-bnd-plugin" 
title="Permanent link">&para;</a></h1>
+<p>A <a href="http://bnd.bndtools.org/";>BND</a> plugin is provided that scans 
the classpath of a bundle Maven project at build time and automatically 
generates a <code>Sling-ContextAware-Configuration-Classes</code> bundle header 
for all annotation classes annotated with <code>@Configuration</code>. It can 
be used by both <a 
href="http://felix.apache.org/documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html";>maven-bundle-plugin</a>
 and <a 
href="https://github.com/bndtools/bnd/tree/master/maven";>bnd-maven-plugin</a>, 
as both use the BND library internally.</p>
+<p>Example configuration:</p>
+<table class="codehilitetable"><tr><td class="linenos"><div 
class="linenodiv"><pre> 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18</pre></div></td><td class="code"><div class="codehilite"><pre><span 
class="nt">&lt;plugin&gt;</span>
+    <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span 
class="nt">&lt;/groupId&gt;</span>
+    <span class="nt">&lt;artifactId&gt;</span>maven-bundle-plugin<span 
class="nt">&lt;/artifactId&gt;</span>
+    <span class="nt">&lt;extensions&gt;</span>true<span 
class="nt">&lt;/extensions&gt;</span>
+    <span class="nt">&lt;configuration&gt;</span>
+        <span class="nt">&lt;instructions&gt;</span>
+            <span class="c">&lt;!-- Generate bundle header containing all 
configuration annotation classes --&gt;</span>
+            <span 
class="nt">&lt;_plugin&gt;</span>org.apache.sling.contextaware.config.bndplugin.ConfigurationClassScannerPlugin<span
 class="nt">&lt;/_plugin&gt;</span>
+        <span class="nt">&lt;/instructions&gt;</span>
+    <span class="nt">&lt;/configuration&gt;</span>
+    <span class="nt">&lt;dependencies&gt;</span>
+        <span class="nt">&lt;dependency&gt;</span>
+            <span class="nt">&lt;groupId&gt;</span>org.apache.sling<span 
class="nt">&lt;/groupId&gt;</span>
+            <span 
class="nt">&lt;artifactId&gt;</span>org.apache.sling.contextaware.config.bnd-plugin<span
 class="nt">&lt;/artifactId&gt;</span>
+            <span class="nt">&lt;version&gt;</span>1.0.0<span 
class="nt">&lt;/version&gt;</span>
+        <span class="nt">&lt;/dependency&gt;</span>
+    <span class="nt">&lt;/dependencies&gt;</span>
+<span class="nt">&lt;/plugin&gt;</span>
+</pre></div>
+</td></tr></table>
+
+<h1 id="customizing-the-configuration-lookup">Customizing the configuration 
lookup<a class="headerlink" href="#customizing-the-configuration-lookup" 
title="Permanent link">&para;</a></h1>
+<p>The Context-Aware Configuration implementation provides a set of Service 
Provider Interfaces (SPI) that allows you to overlay, enhance or replace the 
default implementation and adapt it to your needs.</p>
+<p>See <a href="">SPI</a> for details.</p>
+<h1 id="references">References<a class="headerlink" href="#references" 
title="Permanent link">&para;</a></h1>
+<ul>
+<li><a href="">Context-Aware Configuration - Default Implementation</a></li>
+<li><a href="">Context-Aware Configuration - SPI</a></li>
+<li><a 
href="https://adapt.to/2016/en/schedule/sling-context-aware-configuration.html";>Sling
 Context-Aware Configuration - Talk from adaptTo() 2016</a></li>
+</ul>
+      <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
+        Rev. 1764672 by sseifert on Thu, 13 Oct 2016 13:36:35 +0000
+      </div>
+      <div class="trademarkFooter"> 
+        Apache Sling, Sling, Apache, the Apache feather logo, and the Apache 
Sling project
+        logo are trademarks of The Apache Software Foundation. All other marks 
mentioned
+        may be trademarks or registered trademarks of their respective owners.
+      </div>
+    </div>
+  </body>
+</html>

Modified: 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-default-implementation.html
==============================================================================
--- 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-default-implementation.html
 (original)
+++ 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-default-implementation.html
 Thu Oct 13 13:37:05 2016
@@ -97,7 +97,7 @@ h2:hover > .headerlink, h3:hover > .head
     
     <div class="main">
       <div class="breadcrump" style="font-size: 80%;">
-        <a href="/">Home</a>&nbsp;&raquo&nbsp;<a 
href="/documentation.html">Documentation</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles.html">Bundles</a>
+        <a href="/">Home</a>&nbsp;&raquo&nbsp;<a 
href="/documentation.html">Documentation</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles.html">Bundles</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles/context-aware-configuration.html">Apache Sling 
Context-Aware Configuration</a>
       </div>
 
       

Modified: 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-spi.html
==============================================================================
--- 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-spi.html
 (original)
+++ 
websites/staging/sling/trunk/content/documentation/bundles/context-aware-configuration/context-aware-config-spi.html
 Thu Oct 13 13:37:05 2016
@@ -97,7 +97,7 @@ h2:hover > .headerlink, h3:hover > .head
     
     <div class="main">
       <div class="breadcrump" style="font-size: 80%;">
-        <a href="/">Home</a>&nbsp;&raquo&nbsp;<a 
href="/documentation.html">Documentation</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles.html">Bundles</a>
+        <a href="/">Home</a>&nbsp;&raquo&nbsp;<a 
href="/documentation.html">Documentation</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles.html">Bundles</a>&nbsp;&raquo&nbsp;<a 
href="/documentation/bundles/context-aware-configuration.html">Apache Sling 
Context-Aware Configuration</a>
       </div>
 
       

Modified: websites/staging/sling/trunk/content/sitemap.html
==============================================================================
--- websites/staging/sling/trunk/content/sitemap.html (original)
+++ websites/staging/sling/trunk/content/sitemap.html Thu Oct 13 13:37:05 2016
@@ -127,6 +127,11 @@ h2:hover > .headerlink, h3:hover > .head
 <li><a 
href="/documentation/bundles/configuration-installer-factory.html">Configuration
 Installer Factory</a></li>
 <li><a href="/documentation/bundles/content-distribution.html">Content 
Distribution (org.apache.sling.distribution)</a></li>
 <li><a 
href="/documentation/bundles/content-loading-jcr-contentloader.html">Content 
Loading and Nodetype Support (jcr.contentloader)</a></li>
+<li><a href="/documentation/bundles/context-aware-configuration.html">Apache 
Sling Context-Aware Configuration</a><ul>
+<li><a 
href="/documentation/bundles/context-aware-configuration/context-aware-config-default-implementation.html">Apache
 Sling Context-Aware Configuration - Default Implementation</a></li>
+<li><a 
href="/documentation/bundles/context-aware-configuration/context-aware-config-spi.html">Apache
 Sling Context-Aware Configuration - SPI</a></li>
+</ul>
+</li>
 <li><a href="/documentation/bundles/datasource-providers.html">DataSource 
Provider</a></li>
 <li><a href="/documentation/bundles/discovery-api-and-impl.html">Discovery API 
and its implementations</a></li>
 <li><a href="/documentation/bundles/file-installer-provider.html">File 
Installer Provider</a></li>
@@ -175,6 +180,7 @@ h2:hover > .headerlink, h3:hover > .head
 <li><a href="/documentation/development/embedding-sling.html">Embedding 
Sling</a></li>
 <li><a 
href="/documentation/development/getting-and-building-sling.html">Getting and 
Building Sling</a></li>
 <li><a href="/documentation/development/hamcrest.html">Hamcrest 
Integration</a></li>
+<li><a href="/documentation/development/htl-maven-plugin.html">HTL Maven 
Plugin</a></li>
 <li><a href="/documentation/development/ide-tooling.html">Sling IDE tooling 
for Eclipse User Guide</a><ul>
 </ul>
 </li>


Reply via email to