You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bu...@apache.org on 2015/09/22 12:23:33 UTC

svn commit: r966334 [6/11] - in /websites/staging/sling/trunk/content: ./ documentation/ documentation/bundles/ documentation/bundles/scripting/ documentation/development/ documentation/getting-started/ documentation/legacy/ documentation/the-sling-eng...

Modified: websites/staging/sling/trunk/content/documentation/development/monitoring-requests.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/monitoring-requests.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/monitoring-requests.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Monitoring Requests</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,7 +101,18 @@
       
       
       <h1>Monitoring Requests</h1>
-      <p>Sling provides a simple OSGi console plugin to monitor recent requests. This is quite useful when debugging and to understand how things work, though it's obviously not a replacement for full-blown HTTP trafic monitoring tools.</p>
+      <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>Sling provides a simple OSGi console plugin to monitor recent requests. This is quite useful when debugging and to understand how things work, though it's obviously not a replacement for full-blown HTTP trafic monitoring tools.</p>
 <p>The console plugin is available at /system/console/requests, listed as <em>Recent Requests</em> in the console menu.</p>
 <p>The plugin keeps track of the latest 20 requests processed by Sling, and displays the information provided by the RequestProgressTracker, for the selected request. The screenshot below shows an example.</p>
 <p>Any information that's added to the RequestProgressTracker (which is available from the SlingHttpServletRequest object) during request processing will be displayed by this plugin.</p>

Modified: websites/staging/sling/trunk/content/documentation/development/osgi-mock.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/osgi-mock.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/osgi-mock.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - OSGi Mocks</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,7 +101,18 @@
       
       
       <h1>OSGi Mocks</h1>
-      <p>Mock implementation of selected OSGi APIs for easier testing.</p>
+      <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>Mock implementation of selected OSGi APIs for easier testing.</p>
 <div class="toc">
 <ul>
 <li><a href="#maven-dependency">Maven Dependency</a></li>
@@ -103,7 +125,7 @@
 </li>
 </ul>
 </div>
-<h2 id="maven-dependency">Maven Dependency</h2>
+<h2 id="maven-dependency">Maven Dependency<a class="headerlink" href="#maven-dependency" title="Permanent link">&para;</a></h2>
 <table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre>1
 2
 3
@@ -115,7 +137,7 @@
 </td></tr></table>
 
 <p>See latest version on the <a href="/downloads.cgi">downloads page</a>.</p>
-<h2 id="implemented-mock-features">Implemented mock features</h2>
+<h2 id="implemented-mock-features">Implemented mock features<a class="headerlink" href="#implemented-mock-features" title="Permanent link">&para;</a></h2>
 <p>The mock implementation supports:</p>
 <ul>
 <li>Instantiating OSGi <code>Bundle</code>, <code>BundleContext</code> and <code>ComponentContext</code> objects and navigate between them.</li>
@@ -128,8 +150,8 @@
 <li>Mock implementation of <code>LogService</code> which logs to SLF4J in JUnit context</li>
 <li>Mock implementation of <code>EventAdmin</code> which supports <code>EventHandler</code> services</li>
 </ul>
-<h2 id="usage">Usage</h2>
-<h3 id="osgi-context-junit-rule">OSGi Context JUnit Rule</h3>
+<h2 id="usage">Usage<a class="headerlink" href="#usage" title="Permanent link">&para;</a></h2>
+<h3 id="osgi-context-junit-rule">OSGi Context JUnit Rule<a class="headerlink" href="#osgi-context-junit-rule" title="Permanent link">&para;</a></h3>
 <p>The OSGi mock context can be injected into a JUnit test using a custom JUnit rule named <code>OsgiContext</code>.
 This rules takes care of all initialization and cleanup tasks required to make sure all unit tests can run 
 independently (and in parallel, if required).</p>
@@ -183,7 +205,7 @@ independently (and in parallel, if requi
 <ul>
 <li>Registering and activating OSGi services and inject dependencies</li>
 </ul>
-<h3 id="getting-osgi-mock-objects">Getting OSGi mock objects</h3>
+<h3 id="getting-osgi-mock-objects">Getting OSGi mock objects<a class="headerlink" href="#getting-osgi-mock-objects" title="Permanent link">&para;</a></h3>
 <p>The factory class <code>MockOsgi</code> allows to instantiate the different mock implementations.</p>
 <p>Example:</p>
 <table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre>1
@@ -215,7 +237,7 @@ independently (and in parallel, if requi
 </pre></div>
 </td></tr></table>
 
-<h3 id="activation-and-dependency-injection">Activation and Dependency Injection</h3>
+<h3 id="activation-and-dependency-injection">Activation and Dependency Injection<a class="headerlink" href="#activation-and-dependency-injection" title="Permanent link">&para;</a></h3>
 <p>It is possible to simulate OSGi service activation, deactivation and dependency injection and the mock implementation
 tries to to its best to execute all as expected for an OSGi environment.</p>
 <p>Example:</p>

Modified: websites/staging/sling/trunk/content/documentation/development/release-management.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/release-management.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/release-management.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Release Management</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">

Modified: websites/staging/sling/trunk/content/documentation/development/repository-based-development.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/repository-based-development.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/repository-based-development.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Repository Based Development</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -95,7 +106,18 @@
       
       
       <h1>Repository Based Development</h1>
-      <div class="toc">
+      <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="#webdav-support">WebDAV Support</a><ul>
 <li><a href="#example">Example</a></li>
@@ -109,16 +131,15 @@
 <li><a href="#eclipse-plugin-for-jcr">Eclipse plugin for JCR</a></li>
 </ul>
 </div>
-<h2 id="webdav-support">WebDAV Support</h2>
+<h2 id="webdav-support">WebDAV Support<a class="headerlink" href="#webdav-support" title="Permanent link">&para;</a></h2>
 <p>WebDAV support in Sling is based on the <a href="http://jackrabbit.apache.org/jackrabbit-jcr-server.html#JackrabbitJCRServer-JCRWebdavServer">Simple WebDAV</a> implementation of Apache Jackrabbit which is integrated in the <code>jcr/webdav</code> project. This bundle provides WebDAV access to Sling's repository in two flavours: (1) Access to all workspaces of the repository on a separate URL space -- by default rooted at <code>/dav</code> in the Sling context -- and (2) access to the workspace used by Sling itself at the root of the Sling context.</p>
-<h4 id="example">Example</h4>
+<h4 id="example">Example<a class="headerlink" href="#example" title="Permanent link">&para;</a></h4>
 <p>Consider Sling be installed on a Servlet container in the <code>/sling</code> context on <code>some.host.net:8080</code>. Here you would access the Sling workspace by directing your WebDAV client to the URL <code>http://some.host.net:8080/sling</code>. To access the <code>sample</code> workspace, which is not used by Sling itself, you would direct your WebDAV client to the URL <code>http://some.host.net:8080/sling/dav/sample</code>.</p>
 <p>Please note that accessing the repository in the separate URI space is actually faster, since requests do not pass the Sling resource and script resolution framework but instead hit the Jackrabbit Simple WebDAV Servlet directly.</p>
-<h4 id="separate-uri-space-webdav">Separate URI Space WebDAV</h4>
+<h4 id="separate-uri-space-webdav">Separate URI Space WebDAV<a class="headerlink" href="#separate-uri-space-webdav" title="Permanent link">&para;</a></h4>
 <p>When accessing the repository through WebDAV in its separate URI Space, the URLs have the following generic structure:</p>
-<p>{panel}
-slingroot/prefix/workspace/item
-{panel}</p>
+<p panel="panel">{panel}
+slingroot/prefix/workspace/item</p>
 <ul>
 <li><code>*slingroot*</code> is the URL of the Sling web application context. In the above example, this would <code>http://some.host.net:8080/sling</code>.</li>
 <li><code>*prefix*</code> is the URL prefix to address the WebDAV servlet. By default this is set to <code>/dav</code> but may be configured to any valid path.</li>
@@ -126,9 +147,9 @@ slingroot/prefix/workspace/item
 <li><code>*item*</code> is the path to the JCR Item to access.</li>
 </ul>
 <p>If you access the WebDAV server at the prefix path -- e.g. <code>!http://localhost:8080/dav</code> -- you will be redirected to the default workspace with a temporary redirect status 302. Some clients, such as the Linux <em>davfs</em>, do not like this redirection and must be configured to explicitly address the default workspace.</p>
-<h3 id="configuration">Configuration</h3>
+<h3 id="configuration">Configuration<a class="headerlink" href="#configuration" title="Permanent link">&para;</a></h3>
 <p>The Jackrabbit Simple WebDAV support in Sling has the following configuration options:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Property</th>
@@ -184,7 +205,7 @@ slingroot/prefix/workspace/item
 </tr>
 </tbody>
 </table>
-<h4 id="advanced-technical-details">Advanced Technical Details</h4>
+<h4 id="advanced-technical-details">Advanced Technical Details<a class="headerlink" href="#advanced-technical-details" title="Permanent link">&para;</a></h4>
 <p>Since the Jackrabbit Simple WebDAV Servlet is originally configured using an XML configuration file, which provides a great deal of flexibility, the integration into Sling had to assume some simplifications, of which some of the above parameters are part:</p>
 <p><em>IOManager</em></p>
 <p>This implementation uses the standard <code>org.apache.jackrabbit.server.io.IOManagerImpl</code> class and adds the <code>org.apache.jackrabbit.server.io.DirListingExportHandler</code> and <code>org.apache.jackrabbit.server.io.DefaultHandler</code> IO handlers as its only handlers. The <code>DefaultHandler</code> is configured from the three node types listed as configuration parameters above (collection, non-collection, and content primary node types).</p>
@@ -194,7 +215,7 @@ slingroot/prefix/workspace/item
 <p>This implementation uses the standard <code>org.apache.jackrabbit.webdav.simple.DefaultItemFilter</code> implementation as its item filter and configures the filter with the namespace prefixes and URIs as well as the node types configured as parameters.</p>
 <p><em>Collection Node Types</em></p>
 <p>This implementation only supports listing node types which are considered representing non-collection resources. All nodes which are instances of any of the configured node types are considered non-collection resources. All other nodes are considere collection resources.</p>
-<h2 id="eclipse-plugin-for-jcr">Eclipse plugin for JCR</h2>
+<h2 id="eclipse-plugin-for-jcr">Eclipse plugin for JCR<a class="headerlink" href="#eclipse-plugin-for-jcr" title="Permanent link">&para;</a></h2>
 <p>TBD</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">
         Rev. 1499238 by fmeschbe on Wed, 3 Jul 2013 07:39:54 +0000

Modified: websites/staging/sling/trunk/content/documentation/development/resourceresolver-mock.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/resourceresolver-mock.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/resourceresolver-mock.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Resource Resolver Mock</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,7 +101,18 @@
       
       
       <h1>Resource Resolver Mock</h1>
-      <p>Mock for the resource resolver / factory for easier testing. It uses an in-memory map for storing the resource data, and supports reading, writing and a certain level of transaction and eventing support.</p>
+      <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>Mock for the resource resolver / factory for easier testing. It uses an in-memory map for storing the resource data, and supports reading, writing and a certain level of transaction and eventing support.</p>
 <div class="toc">
 <ul>
 <li><a href="#maven-dependency">Maven Dependency</a></li>
@@ -98,7 +120,7 @@
 <li><a href="#usage">Usage</a></li>
 </ul>
 </div>
-<h2 id="maven-dependency">Maven Dependency</h2>
+<h2 id="maven-dependency">Maven Dependency<a class="headerlink" href="#maven-dependency" title="Permanent link">&para;</a></h2>
 <table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre>1
 2
 3
@@ -110,7 +132,7 @@
 </td></tr></table>
 
 <p>See latest version on the <a href="/downloads.cgi">downloads page</a>.</p>
-<h2 id="implemented-mock-features">Implemented mock features</h2>
+<h2 id="implemented-mock-features">Implemented mock features<a class="headerlink" href="#implemented-mock-features" title="Permanent link">&para;</a></h2>
 <p>The mock implementation supports:</p>
 <ul>
 <li>All read and write operations of the Sling Resource API</li>
@@ -125,7 +147,7 @@
 <li>Sling Mapping is not supported</li>
 <li>Resolving resource super types</li>
 </ul>
-<h2 id="usage">Usage</h2>
+<h2 id="usage">Usage<a class="headerlink" href="#usage" title="Permanent link">&para;</a></h2>
 <p>To create a mocked resource resolver:</p>
 <table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre>1
 2</pre></div></td><td class="code"><div class="codehilite"><pre><span class="n">MockResourceResolverFactory</span> <span class="n">factory</span> <span class="o">=</span> <span class="k">new</span> <span class="n">MockResourceResolverFactory</span><span class="o">();</span>

Modified: websites/staging/sling/trunk/content/documentation/development/sling-mock.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/sling-mock.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/sling-mock.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Sling Mocks</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">

Modified: websites/staging/sling/trunk/content/documentation/development/sling-testing-tools.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/sling-testing-tools.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/sling-testing-tools.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Sling Testing Tools</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">

Modified: websites/staging/sling/trunk/content/documentation/development/sling.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/sling.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/sling.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Maven Sling Plugin</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -95,8 +106,19 @@
       
       
       <h1>Maven Sling Plugin</h1>
-      <p>The Maven Sling Plugin provides a number of goals which may be of help while developping bundles for Sling. To run the plugin you need at least Maven 2.x and JDK 1.5 or higher. Maven Sling Plugin provides the following goals:</p>
-<table>
+      <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>The Maven Sling Plugin provides a number of goals which may be of help while developping bundles for Sling. To run the plugin you need at least Maven 2.x and JDK 1.5 or higher. Maven Sling Plugin provides the following goals:</p>
+<table class="table">
 <thead>
 <tr>
 <th>Name</th>
@@ -118,7 +140,7 @@
 </tr>
 </tbody>
 </table>
-<h2 id="usage">Usage</h2>
+<h2 id="usage">Usage<a class="headerlink" href="#usage" title="Permanent link">&para;</a></h2>
 <p>You should specify the version in your project's plugin configuration:</p>
 <div class="codehilite"><pre><span class="nt">&lt;project&gt;</span>
   ...
@@ -150,9 +172,9 @@
 
 
 <p>For more information, see <a href="http://maven.apache.org/guides/mini/guide-configuring-plugins.html">"Guide to Configuring Plug-ins"</a></p>
-<h2 id="the-deploy-goal">The <code>deploy</code> goal</h2>
+<h2 id="the-deploy-goal">The <code>deploy</code> goal<a class="headerlink" href="#the-deploy-goal" title="Permanent link">&para;</a></h2>
 <p>The <code>deploy</code> goal uploads a bundle to a Sling OSGi Bundle Repository server implemented by the <em>sling-obr</em> bundle, which may be located on a remote system. The plugin places an HTTP <code>POST</code> request to the server sending the bundle file.&nbsp;</p>
-<h3 id="use">Use</h3>
+<h3 id="use">Use<a class="headerlink" href="#use" title="Permanent link">&para;</a></h3>
 <p>To use the <code>deploy</code> goal of the Maven Sling Plugin define the following elements in the <code>&lt;plugins&gt;</code> section of the POM:</p>
 <div class="codehilite"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;</span>
 <span class="nt">&lt;project&gt;</span>
@@ -182,9 +204,9 @@
 </pre></div>
 
 
-<h3 id="configuration">Configuration</h3>
+<h3 id="configuration">Configuration<a class="headerlink" href="#configuration" title="Permanent link">&para;</a></h3>
 <p>The <code>deploy</code> goal may be configured in the <code>&lt;configuration&gt;</code> element using the following properties:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Parameter</th>
@@ -220,18 +242,18 @@
 </tr>
 </tbody>
 </table>
-<h2 id="the-deploy-file-goal">The <code>deploy-file</code> goal</h2>
+<h2 id="the-deploy-file-goal">The <code>deploy-file</code> goal<a class="headerlink" href="#the-deploy-file-goal" title="Permanent link">&para;</a></h2>
 <p>The <code>deploy-file</code> goal is equivalent to the <code>deploy</code> goal except, that the <code>deploy-file</code> does not require a project descriptor file while the <code>deploy</code> goal does. In other words the <code>deploy-file</code> goal may used to upload any bundle file available to a Sling OBR server instance.</p>
-<h3 id="use_1">Use</h3>
+<h3 id="use_1">Use<a class="headerlink" href="#use_1" title="Permanent link">&para;</a></h3>
 <p>The <code>deploy-file</code> goal may only be used from the command line by explicitly calling it as in:</p>
 <div class="codehilite"><pre>$ <span class="n">mvn</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">sling</span><span class="p">:</span><span class="n">maven</span><span class="o">-</span><span class="n">sling</span><span class="o">-</span><span class="n">plugin</span><span class="p">:</span><span class="n">deploy</span><span class="o">-</span><span class="n">file</span> <span class="o">-</span><span class="n">Dsling</span><span class="p">.</span><span class="n">file</span><span class="p">=</span><span class="o">&lt;</span><span class="n">file</span><span class="o">&gt;</span> <span class="o">-</span><span class="n">Dobr</span><span class="p">=</span><span class="o">&lt;</span><span class="n">url</span><span class="o">&gt;</span>
 </pre></div>
 
 
 <p>Specifying the bundle file to upload with the <code>sling.file</code> property is required.</p>
-<h3 id="configuration_1">Configuration</h3>
+<h3 id="configuration_1">Configuration<a class="headerlink" href="#configuration_1" title="Permanent link">&para;</a></h3>
 <p>The <code>deploy-file</code> supports similar configuration parameters as the <code>deploy</code> goal with the exception of the <code>skip</code> parameter which makes no sense. In addition, all parameters must be specified on the command line by setting system properties. The <code>bundleFileName</code> parameter specified as the <code>sling.file</code> system property as well as the <code>obr</code> URL are required by the <code>deploy-file</code> goal.</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Parameter</th>
@@ -260,9 +282,9 @@
 </pre></div>
 
 
-<h2 id="the-install-goal">The <code>install</code> goal</h2>
+<h2 id="the-install-goal">The <code>install</code> goal<a class="headerlink" href="#the-install-goal" title="Permanent link">&para;</a></h2>
 <p>The <code>install</code> goal uploads a bundle to a running sling instance, which may be located on a remote system. The plugin places an HTTP <code>POST</code> request to the sling instance sending the bundle file together with flags indicating whether to start the bundle and what start level to assign the bundle. It's also possible to HTTP <code>PUT</code> instead of <code>POST</code> for WebDAV.</p>
-<h3 id="use_2">Use</h3>
+<h3 id="use_2">Use<a class="headerlink" href="#use_2" title="Permanent link">&para;</a></h3>
 <p>To use the <code>install</code> goal of the Maven Sling Plugin define the following elements in the <code>&lt;plugins&gt;</code> section of the POM:</p>
 <div class="codehilite"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;</span>
 <span class="nt">&lt;project&gt;</span>
@@ -292,9 +314,9 @@
 </pre></div>
 
 
-<h3 id="configuration_2">Configuration</h3>
+<h3 id="configuration_2">Configuration<a class="headerlink" href="#configuration_2" title="Permanent link">&para;</a></h3>
 <p>The <code>install</code> goal may be configured in the <code>&lt;configuration&gt;</code> element using the following properties:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Parameter</th>
@@ -361,16 +383,16 @@
 </tbody>
 </table>
 <p>{anchor:install-file}</p>
-<h2 id="the-install-file-goal">The <code>install-file</code> goal</h2>
+<h2 id="the-install-file-goal">The <code>install-file</code> goal<a class="headerlink" href="#the-install-file-goal" title="Permanent link">&para;</a></h2>
 <p>The <code>install-file</code> goal is equivalent to the <code>install</code> goal except, that the <code>install-file</code> does not require a project descriptor file while the <code>install</code> goal does. In other words the <code>install-file</code> goal may used to upload any bundle file available to a running Sling instance.</p>
-<h3 id="use_3">Use</h3>
+<h3 id="use_3">Use<a class="headerlink" href="#use_3" title="Permanent link">&para;</a></h3>
 <p>The <code>install-file</code> goal may only be used from the command line by explicitly calling it as in:</p>
 <div class="codehilite"><pre>$ <span class="n">mvn</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">sling</span><span class="p">:</span><span class="n">maven</span><span class="o">-</span><span class="n">sling</span><span class="o">-</span><span class="n">plugin</span><span class="p">:</span><span class="n">install</span><span class="o">-</span><span class="n">file</span> <span class="o">-</span><span class="n">Dsling</span><span class="p">.</span><span class="n">file</span><span class="p">=</span><span class="o">&lt;</span><span class="n">file</span><span class="o">&gt;</span>
 </pre></div>
 
 
 <p>Specifying the bundle file to upload with the <code>sling.file</code> property is required.</p>
-<h3 id="configuration_3">Configuration</h3>
+<h3 id="configuration_3">Configuration<a class="headerlink" href="#configuration_3" title="Permanent link">&para;</a></h3>
 <p>The <code>install-file</code> supports the same configuration parameters as the <code>install</code> goal with the exception of the <code>skip</code> parameter which makes no sense. In addition, all parameters must be specified on the command line by setting system properties. The <code>bundleFileName</code> parameter specified as the <code>sling.file</code> system property is required by the <code>install-file</code> goal.</p>
 <p>For a description of the parameters see the configuration section of the <a href="#the-install-goal"><code>install</code> goal</a> above.</p>
 <p>Example: To upload the bundle file <code>someBundle.jar</code> you might use the goal as follows:</p>
@@ -379,9 +401,9 @@
 
 
 <p>{anchor:uninstall}</p>
-<h2 id="the-uninstall-goal">The <code>uninstall</code> goal</h2>
+<h2 id="the-uninstall-goal">The <code>uninstall</code> goal<a class="headerlink" href="#the-uninstall-goal" title="Permanent link">&para;</a></h2>
 <p>The <code>uninstall</code> goal uninstalls a bundle from a running sling instance, which may be located on a remote system. The plugin uninstalles a bundle via a HTTP <code>POST{</code>}request. It's also possible to use HTTP <code>DELETE</code> instead of <code>POST</code> for WebDAV.</p>
-<h3 id="use_4">Use</h3>
+<h3 id="use_4">Use<a class="headerlink" href="#use_4" title="Permanent link">&para;</a></h3>
 <p>To use the <code>uninstall</code> goal of the Maven Sling Plugin define the following elements in the <code>&lt;plugins&gt;</code> section of the POM:</p>
 <div class="codehilite"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;</span>
 <span class="nt">&lt;project&gt;</span>
@@ -411,9 +433,9 @@
 </pre></div>
 
 
-<h3 id="configuration_4">Configuration</h3>
+<h3 id="configuration_4">Configuration<a class="headerlink" href="#configuration_4" title="Permanent link">&para;</a></h3>
 <p>The <code>uninstall</code> goal may be configured in the <code>&lt;configuration&gt;</code> element using the following properties:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Parameter</th>
@@ -456,9 +478,9 @@
 </tbody>
 </table>
 <p>{anchor:validate}</p>
-<h2 id="the-validate-goal">The <code>validate</code> goal</h2>
+<h2 id="the-validate-goal">The <code>validate</code> goal<a class="headerlink" href="#the-validate-goal" title="Permanent link">&para;</a></h2>
 <p>The <code>validate</code> goal checks the JSON code of a bundle.</p>
-<h3 id="use_5">Use</h3>
+<h3 id="use_5">Use<a class="headerlink" href="#use_5" title="Permanent link">&para;</a></h3>
 <p>To use the <code>validate</code> goal of the Maven Sling Plugin define the following elements in the <code>&lt;plugins&gt;</code> section of the POM:</p>
 <div class="codehilite"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;</span>
 <span class="nt">&lt;project&gt;</span>
@@ -488,9 +510,9 @@
 </pre></div>
 
 
-<h3 id="configuration_5">Configuration</h3>
+<h3 id="configuration_5">Configuration<a class="headerlink" href="#configuration_5" title="Permanent link">&para;</a></h3>
 <p>The <code>validate</code> goal may be configured in the <code>&lt;configuration&gt;</code> element using the following properties:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Parameter</th>

Modified: websites/staging/sling/trunk/content/documentation/development/slingstart.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/slingstart.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/slingstart.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - The Apache Sling Provisioning Model and Apache SlingStart</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">

Modified: websites/staging/sling/trunk/content/documentation/development/version-policy.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/development/version-policy.html (original)
+++ websites/staging/sling/trunk/content/documentation/development/version-policy.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Version Policy</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,7 +101,18 @@
       
       
       <h1>Version Policy</h1>
-      <p>This page is about how we assign versions to exported packages and bundles and defines when to increase which part of the version number.</p>
+      <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>This page is about how we assign versions to exported packages and bundles and defines when to increase which part of the version number.</p>
 <div class="info">
 Please note that this page is currently in draft stage and still being discussed.
 </div>
@@ -120,7 +142,7 @@ Please note that this page is currently
 <li><a href="#references">References</a></li>
 </ul>
 </div>
-<h2 id="introduction">Introduction</h2>
+<h2 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permanent link">&para;</a></h2>
 <p>In comments to <a href="https://issues.apache.org/jira/browse/SLING-2944">SLING-1176</a> Ian Boston wrote:</p>
 <blockquote>
 <p>The exports in bundle/api/pom.xml look like they might become problematic from a support point of view, although we probably can't avoid this. [...] [The problem is the] manual maintenance of the version numbers. (not a big problem but needs to be done)</p>
@@ -133,11 +155,11 @@ Please note that this page is currently
 <li>Sling Bundles</li>
 <li>Package Exports</li>
 </ol>
-<h3 id="big-sling-releases">Big Sling Releases</h3>
+<h3 id="big-sling-releases">Big Sling Releases<a class="headerlink" href="#big-sling-releases" title="Permanent link">&para;</a></h3>
 <p>For <em>Big Sling Releases</em> we already have an ample solution in that we just use a single number increased from release to release. Just remember that a <em>Big Sling Release</em> is a convenience release of existing released Sling bundles.</p>
-<h3 id="sling-bundles">Sling Bundles</h3>
+<h3 id="sling-bundles">Sling Bundles<a class="headerlink" href="#sling-bundles" title="Permanent link">&para;</a></h3>
 <p>For <em>Sling Bundles</em> version numbers are just defined as the <code>&lt;version&gt;</code> element of the bundle's POM. The only restriction here is, that we decided to use even numbers for releases and odd numbers for SNAPSHOTs. Whether and when which version part is increased is not explicitly defined yet.</p>
-<h3 id="package-exports">Package Exports</h3>
+<h3 id="package-exports">Package Exports<a class="headerlink" href="#package-exports" title="Permanent link">&para;</a></h3>
 <p>For <em>Package Exports</em> the situation is more problematic since there are a number of places to set exported package version number:</p>
 <ul>
 <li>In a <code>packageinfo</code> file inside the package (picked up by the Maven Bundle Plugin to set the export version)</li>
@@ -159,7 +181,7 @@ Please note that this page is currently
 <p>But this would require defining the class source locations as resource location in the POM (at least for <code>packageinfo</code>) files.</p>
 <p>I am not sure ....</p>
 <p>This has not been discussed at large, but I would assume, that the POM is still the correct place to take note of the version of the exported packages.</p>
-<h3 id="future">Future</h3>
+<h3 id="future">Future<a class="headerlink" href="#future" title="Permanent link">&para;</a></h3>
 <p>The newest versions of the BND library also support an <code>@Export</code> annotation in the <code>package-info.java</code> pseudo class file. This pseudo class is supported starting with Java 5 to take package level annotations (like the <code>@Export</code> annotation) and as a replacement of the <code>package-info.html</code> file.</p>
 <p>Using this syntax something like the following would be easily possible:</p>
 <div class="codehilite"><pre><span class="cm">/**</span>
@@ -172,7 +194,7 @@ Please note that this page is currently
 
 
 <p>See <a href="http://www.aqute.biz/Bnd/Versioning">BND Versioning</a> for details.</p>
-<h2 id="version-number-syntax">Version Number Syntax</h2>
+<h2 id="version-number-syntax">Version Number Syntax<a class="headerlink" href="#version-number-syntax" title="Permanent link">&para;</a></h2>
 <p>As a small reminder, this is how a version number is constructed:  In OSGi version numbers are composed of four (4) segments: three integers and one string named <em>major</em>.<em>minor</em>.<em>micro</em>.<em>qualifier</em>.</p>
 <p>Each segment captures a different intent:</p>
 <ul>
@@ -181,7 +203,7 @@ Please note that this page is currently
 <li>the micro segment indicates bug fixes</li>
 <li>the qualifier segment is not generally used but may be used to convey more information about a particular build, such as a build time or a SVN revision number.</li>
 </ul>
-<h2 id="evolution-of-exported-package-versions">Evolution of Exported Package Versions</h2>
+<h2 id="evolution-of-exported-package-versions">Evolution of Exported Package Versions<a class="headerlink" href="#evolution-of-exported-package-versions" title="Permanent link">&para;</a></h2>
 <p>Version numbers of exported packages evolve independently from each other. Depending on the changes applied, the micro, minor, or major segement is increased. Whenever the major segment is increased, the minor and micro segments are reset to zero. Whenever the minor segment is increased, the micro segment is reset to zero.</p>
 <p>Segments are increased according to the above listing.</p>
 <p>This requires committers to think well about changes they apply to exported packages:</p>
@@ -191,7 +213,7 @@ Please note that this page is currently
 <li>Fixing a bug in an exported class just requires a minor version increase.</li>
 </ul>
 <p>JavaDoc updates generally do not constitute a reason to evolve the version number. The exception is that if the JavaDoc update is caused by a API limitation, it might be conceivable to increase the version number of the exported package. A decision on this will have to be taken on a case-by-case basis.</p>
-<h2 id="evolution-of-bundle-versions">Evolution of Bundle Versions</h2>
+<h2 id="evolution-of-bundle-versions">Evolution of Bundle Versions<a class="headerlink" href="#evolution-of-bundle-versions" title="Permanent link">&para;</a></h2>
 <p>Version numbers of bundles evolve depending on the evolution of the exported packages but also depending on the evolution of the private code, which is not exported.</p>
 <p>As a rule of thumb, the following reasons apply for increasing the segments of bundle version numbers:</p>
 <ul>
@@ -200,13 +222,13 @@ Please note that this page is currently
 <li>Increasing the micro version number of any of the exported packages or bug fixes.</li>
 </ul>
 <p>Note, that this definition does not require the bundle and epxorted package version numbers to be synchronized in any way. While doing so might help in a first or second step, over time it will become close to impossible to keep the versions in sync. So rather than trying to keep the versions in sync, we should make sure, we increase the versions correctly.</p>
-<h2 id="examples">Examples</h2>
-<h3 id="pure-api-bundle">Pure API Bundle</h3>
+<h2 id="examples">Examples<a class="headerlink" href="#examples" title="Permanent link">&para;</a></h2>
+<h3 id="pure-api-bundle">Pure API Bundle<a class="headerlink" href="#pure-api-bundle" title="Permanent link">&para;</a></h3>
 <p>An example of an almost <em>Pure API Bundle</em> is the Sling API bundle. This bundle exports 9 packages. Some are really stable -- e.g. the <code>org.apache.sling.api</code> package or the <code>org.apache.sling.wrappers</code> package -- and some are being worked on at the moment -- e.g. the <code>org.apache.sling.resource</code> package.</p>
 <p>To not break existing users of the unmodified packages, the exported versions of these packages must not be increased.</p>
 <p>To signal to users of evolving packages, that there might be new and interesting functionality, the version number must be increased according to above definition. This also conveys to the implementor(s) of the API, that they have to take some action.</p>
 <p>A hypothetical evolution of version numbers shown on two packages and the bundle version might be as follows</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Description</th>
@@ -248,10 +270,10 @@ Please note that this page is currently
 </tr>
 </tbody>
 </table>
-<h3 id="implementation-bundle-providing-api">Implementation Bundle providing API</h3>
+<h3 id="implementation-bundle-providing-api">Implementation Bundle providing API<a class="headerlink" href="#implementation-bundle-providing-api" title="Permanent link">&para;</a></h3>
 <p>An example of such a hybrid bundle is the Sling Engine bundle. This bundle exports two packages themselves defining API and contains a number of internal packages which actually implement parts of the Sling API.</p>
 <p>A hypothetical evolution of version numbers shown on one exported package and the bundle version might be as follows</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Description</th>
@@ -297,9 +319,9 @@ Please note that this page is currently
 </tr>
 </tbody>
 </table>
-<h3 id="pure-implementation-bundle">Pure Implementation Bundle</h3>
+<h3 id="pure-implementation-bundle">Pure Implementation Bundle<a class="headerlink" href="#pure-implementation-bundle" title="Permanent link">&para;</a></h3>
 <p>For Pure Implementation Bundles only the bundle version numbers are maintained because there is no exported package whose version number needs to be managed. This makes the decision process of version number evolution very simple.</p>
-<h2 id="importing-packages">Importing Packages</h2>
+<h2 id="importing-packages">Importing Packages<a class="headerlink" href="#importing-packages" title="Permanent link">&para;</a></h2>
 <p>When importing packages a version number will automatically be generated by the Maven Bundle Plugin as follows:</p>
 <ul>
 <li>If the providing package exports a package with an explicit version number, that exact version number will be used as the lower bound</li>
@@ -318,9 +340,9 @@ Please note that this page is currently
 
 
 <p>This allows for the implementation to work correctly with bug fixed package exports but as soon as there are any <em>externally visible</em> changes, the implementation bundle has to be adapted -- even if this just means increasing the upper version bound in the <code>Import-Package</code> statement thus guaranteeing compliance (again).</p>
-<h3 id="future_1">Future</h3>
+<h3 id="future_1">Future<a class="headerlink" href="#future_1" title="Permanent link">&para;</a></h3>
 <p>Recent versions of the BND library support automatic differentiation between <em>use</em> and <em>implementation</em> of API and to set the import version ranges accordingly. See <a href="http://www.aqute.biz/Bnd/Versioning">BND Versioning</a> for details.</p>
-<h2 id="references">References</h2>
+<h2 id="references">References<a class="headerlink" href="#references" title="Permanent link">&para;</a></h2>
 <ul>
 <li><a href="http://markmail.org/thread/zshobgjwtqrncajt">Version Numbers</a> -- The mail thread discussing version numbering</li>
 <li><a href="http://blog.meschberger.ch/2009/10/on-version-numbers.html">On Version Numbers</a> -- Blog about version numbers</li>

Modified: websites/staging/sling/trunk/content/documentation/getting-started.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/getting-started.html (original)
+++ websites/staging/sling/trunk/content/documentation/getting-started.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Getting Started</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,11 +101,22 @@
       
       
       <h1>Getting Started</h1>
-      <p>We're on the way to update the documentation to make it more easy to get in touch with Sling. At the moment we can give you the following starting points:</p>
+      <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>We're on the way to update the documentation to make it more easy to get in touch with Sling. At the moment we can give you the following starting points:</p>
 <ul>
 <li><a href="/documentation/getting-started/discover-sling-in-15-minutes.html">Discover Sling in 15 minutes</a></li>
 </ul>
-<h2 id="where-to-head-from-here">Where to head from here</h2>
+<h2 id="where-to-head-from-here">Where to head from here<a class="headerlink" href="#where-to-head-from-here" title="Permanent link">&para;</a></h2>
 <p>We recommend you read through following topics to get as fast as possible into Sling: </p>
 <ul>
 <li><a href="/documentation/development/getting-and-building-sling.html">Getting and building Sling</a></li>

Modified: websites/staging/sling/trunk/content/documentation/getting-started/discover-sling-in-15-minutes.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/getting-started/discover-sling-in-15-minutes.html (original)
+++ websites/staging/sling/trunk/content/documentation/getting-started/discover-sling-in-15-minutes.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Discover Sling in 15 minutes</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">

Modified: websites/staging/sling/trunk/content/documentation/legacy/logging.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/legacy/logging.html (original)
+++ websites/staging/sling/trunk/content/documentation/legacy/logging.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Logging</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,13 +101,24 @@
       
       
       <h1>Logging</h1>
-      <div class="note">
+      <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="note">
 This document is for 3.x release of Sling Commons Log components. Refer to
 <a href="http://sling.apache.org/documentation/development/logging.html">Logging</a> for documentation related
 to newer version.
 </div>
 
-<h2 id="introduction">Introduction</h2>
+<h2 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permanent link">&para;</a></h2>
 <p>Logging in Sling is supported by the <code>org.apache.sling.commons.log</code> bundle, which is one of the first bundles installed and started by the Sling Launcher. The <code>org.apache.sling.commons.log</code> bundle has the following tasks:</p>
 <ul>
 <li>Implements the OSGi Log Service Specification and registers the <code>LogService</code> and <code>LogReader</code> services</li>
@@ -109,9 +131,9 @@ to newer version.
 </li>
 <li>Configures logging through our own implementation of the SLF4J backend API</li>
 </ul>
-<h2 id="initial-configuration">Initial Configuration</h2>
+<h2 id="initial-configuration">Initial Configuration<a class="headerlink" href="#initial-configuration" title="Permanent link">&para;</a></h2>
 <p>The <code>org.apache.sling.commons.log</code> bundle gets the initial configuration from the following <code>BundleContext</code> properties:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Property</th>
@@ -152,12 +174,12 @@ to newer version.
 </tr>
 </tbody>
 </table>
-<h2 id="user-configuration">User Configuration</h2>
+<h2 id="user-configuration">User Configuration<a class="headerlink" href="#user-configuration" title="Permanent link">&para;</a></h2>
 <p>User Configuration after initial configuration is provided by the Configuration Admin Service. To this avail two <code>org.osgi.services.cm.ManagedServiceFactory</code> services are registered under the PIDs <code>org.apache.sling.commons.log.LogManager.factory.writer</code> and <code>org.apache.sling.commons.log.LogManager.factory.config</code> which may receive configuration.</p>
-<h3 id="logger-configuration">Logger Configuration</h3>
+<h3 id="logger-configuration">Logger Configuration<a class="headerlink" href="#logger-configuration" title="Permanent link">&para;</a></h3>
 <p>Loggers (or Categories) can be configured to log to specific files at specific levels using configurable patterns. To this avail factory configuration instances with factory PID <code>org.apache.sling.commons.log.LogManager.factory.config</code> may be created and configured with the Configuration Admin Service.</p>
 <p>The following properties may be set:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Property</th>
@@ -194,10 +216,10 @@ to newer version.
 </tbody>
 </table>
 <p>Note that multiple Logger Configurations may refer to the same Log Writer Configuration. If no Log Writer Configuration exists whose file name matches the file name set on the Logger Configuration an implicit Log Writer Configuration with default setup (daily log rotation) is internally created. </p>
-<h3 id="log-writer-configuration">Log Writer Configuration</h3>
+<h3 id="log-writer-configuration">Log Writer Configuration<a class="headerlink" href="#log-writer-configuration" title="Permanent link">&para;</a></h3>
 <p>Log Writer Configuration is used to setup file output and log file rotation characteristics for log writers used by the Loggers.</p>
 <p>The following properties may be set:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Property</th>
@@ -224,14 +246,14 @@ to newer version.
 </tbody>
 </table>
 <p>See the section <em>Log File Rotation</em> below for full details on the <code>org.apache.sling.commons.log.file.size</code> and <code>org.apache.sling.commons.log.file.number</code> properties.</p>
-<h2 id="log-file-rotation">Log File Rotation</h2>
+<h2 id="log-file-rotation">Log File Rotation<a class="headerlink" href="#log-file-rotation" title="Permanent link">&para;</a></h2>
 <p>Log files can grow rather quickly and fill up available disk space. To cope with this growth log files may be rotated in two ways: At specific times or when the log file reaches a configurable size. The first method is called <em>Scheduled Rotation</em> and is used by specifying a <code>SimpleDateFormat</code> pattern as the log file "size". The second method is called <em>Size Rotation</em> and is used by setting a maximum file size as the log file size.</p>
 <p>As of version 2.0.6 of the Sling Commons Log bundle, the default value for log file scheduling is <code>'.'yyyy-MM-dd</code> causing daily log rotation. Previously log rotation defaulted to a 10MB file size limit.</p>
-<h3 id="scheduled-rotation">Scheduled Rotation</h3>
+<h3 id="scheduled-rotation">Scheduled Rotation<a class="headerlink" href="#scheduled-rotation" title="Permanent link">&para;</a></h3>
 <p>The rolling schedule is specified by setting the <code>org.apache.sling.commons.log.file.size</code> property to a <code>java.text.SimpleDateFormat</code> pattern. Literal text (such as a leading dot) to be included must be <em>enclosed</em> within a pair of single quotes. A formatted version of the date pattern is used as the suffix for the rolled file name.</p>
 <p>For example, if the log file is configured as <code>/foo/bar.log</code> and the pattern set to <code>'.'yyyy-MM-dd</code>, on 2001-02-16 at midnight, the logging file <code>/foo/bar.log</code> will be renamed to <code>/foo/bar.log.2001-02-16</code> and logging for 2001-02-17 will continue in a new <code>/foo/bar.log</code> file until it rolls over the next day.</p>
 <p>It is possible to specify monthly, weekly, half-daily, daily, hourly, or minutely rollover schedules.</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>DatePattern</th>
@@ -274,7 +296,7 @@ to newer version.
 </table>
 <p>Do not use the colon ":" character in anywhere in the pattern option. The text before the colon is interpeted as the protocol specificaion of a URL which is probably not what you want.</p>
 <p>Note that Scheduled Rotation ignores the <code>org.apache.sling.commons.log.file.number</code> property since the old log files are not numbered but "dated".</p>
-<h3 id="size-rotation">Size Rotation</h3>
+<h3 id="size-rotation">Size Rotation<a class="headerlink" href="#size-rotation" title="Permanent link">&para;</a></h3>
 <p>Log file rotation by size is specified by setting the <code>org.apache.sling.commons.log.file.size</code> property to a plain number or a number plus a size multiplier. The size multiplier may be any of <code>K</code>, <code>KB</code>, <code>M</code>, <code>MB</code>, <code>G</code>, or <code>GB</code> where the case is ignored and the meaning is probably obvious.</p>
 <p>When using Size Rotation, the <code>org.apache.sling.commons.log.file.number</code> defines the number of old log file generations to keep. For example to keep 5 old log files indexed by 0 through 4, set the <code>org.apache.sling.commons.log.file.number</code> to <code>5</code> (which happens to be the default).</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">

Modified: websites/staging/sling/trunk/content/documentation/pax-exam-utils.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/pax-exam-utils.html (original)
+++ websites/staging/sling/trunk/content/documentation/pax-exam-utils.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Sling Pax Exam Utilities</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,7 +101,18 @@
       
       
       <h1>Sling Pax Exam Utilities</h1>
-      <p>Utilities to help testing Sling components with Pax Exam are available at
+      <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>Utilities to help testing Sling components with Pax Exam are available at
 <a href="https://svn.apache.org/repos/asf/sling/trunk/testing/sling-pax-util">https://svn.apache.org/repos/asf/sling/trunk/testing/sling-pax-util</a></p>
 <p>The focus is on making it easier to test Sling components against a full Sling launchpad,
 with minimal boilerplate code.</p>

Modified: websites/staging/sling/trunk/content/documentation/the-sling-engine.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/the-sling-engine.html (original)
+++ websites/staging/sling/trunk/content/documentation/the-sling-engine.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - The Sling Engine</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,13 +101,24 @@
       
       
       <h1>The Sling Engine</h1>
-      <h2 id="general">General</h2>
+      <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>
+<h2 id="general">General<a class="headerlink" href="#general" title="Permanent link">&para;</a></h2>
 <ul>
 <li><a href="/documentation/the-sling-engine/architecture.html">Architecture</a></li>
 <li><a href="/documentation/the-sling-engine/authentication.html">Authentication</a></li>
 <li><a href="/documentation/the-sling-engine/service-authentication.html">Service Authentication</a></li>
 </ul>
-<h2 id="request-handling">Request Handling</h2>
+<h2 id="request-handling">Request Handling<a class="headerlink" href="#request-handling" title="Permanent link">&para;</a></h2>
 <ul>
 <li><a href="/documentation/the-sling-engine/dispatching-requests.html">Dispatching Requests</a></li>
 <li><a href="/documentation/the-sling-engine/url-decomposition.html">URL decomposition</a></li>
@@ -107,14 +129,14 @@
 <li><a href="/documentation/the-sling-engine/errorhandling.html">Errorhandling</a></li>
 <li><a href="/documentation/the-sling-engine/request-parameters.html">Request Parameters</a></li>
 </ul>
-<h2 id="resources">Resources</h2>
+<h2 id="resources">Resources<a class="headerlink" href="#resources" title="Permanent link">&para;</a></h2>
 <ul>
 <li><a href="/documentation/the-sling-engine/resources.html">Resources</a></li>
 <li><a href="/documentation/the-sling-engine/sling-api-crud-support.html">Sling API CRUD Support</a></li>
 <li><a href="/documentation/the-sling-engine/wrap-or-decorate-resources.html">Wrap or Decorate Resources</a></li>
 <li><a href="/documentation/the-sling-engine/mappings-for-resource-resolution.html">Mappings for Resource Resolution</a></li>
 </ul>
-<h2 id="misc">Misc</h2>
+<h2 id="misc">Misc<a class="headerlink" href="#misc" title="Permanent link">&para;</a></h2>
 <ul>
 <li><a href="/documentation/the-sling-engine/adapters.html">Adapters</a></li>
 <li><a href="/documentation/the-sling-engine/featureflags.html">Feature Flags</a></li>

Modified: websites/staging/sling/trunk/content/documentation/the-sling-engine/adapters.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/the-sling-engine/adapters.html (original)
+++ websites/staging/sling/trunk/content/documentation/the-sling-engine/adapters.html Tue Sep 22 10:23:16 2015
@@ -18,11 +18,11 @@
     limitations under the License.
 -->
   <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     <title>Apache Sling - Adapters</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">
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
   </head>
   <body>
     <div class="title">
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><strong><a href="/documentation.html">Documentation</a></strong> <br />
+      <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 />
@@ -90,9 +101,20 @@
       
       
       <h1>Adapters</h1>
-      <p>The <code>Resource</code> and <code>ResourceResolver</code> interfaces are defined with a method <code>adaptTo</code>, which adapts the object to other classes. Using this mechanism the JCR session of the resource resolver calling the <code>adaptTo</code> method with the <code>javax.jcr.Session</code> class object. Likewise the JCR node on which a resource is based can be retrieved by calling the <code>Resource.adaptTo</code> method with the <code>javax.jcr.Node</code> class object.</p>
+      <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>The <code>Resource</code> and <code>ResourceResolver</code> interfaces are defined with a method <code>adaptTo</code>, which adapts the object to other classes. Using this mechanism the JCR session of the resource resolver calling the <code>adaptTo</code> method with the <code>javax.jcr.Session</code> class object. Likewise the JCR node on which a resource is based can be retrieved by calling the <code>Resource.adaptTo</code> method with the <code>javax.jcr.Node</code> class object.</p>
 <p>To use resources as scripts, the <code>Resource.adaptTo</code> method must support being called with the <code>org.apache.sling.api.script.SlingScript</code> class object. But of course, we do not want to integrate the script manager with the resource resolver. To enable adapting objects to classes which are not foreseen by the original implementation, a factory mechanism is used. This way, the script manager can provide an adapter factory to adapt <code>Resource</code> to <code>SlingScript</code> objects.</p>
-<h2 id="adaptable">Adaptable</h2>
+<h2 id="adaptable">Adaptable<a class="headerlink" href="#adaptable" title="Permanent link">&para;</a></h2>
 <p>The <code>Adaptable</code> interface defines the API to be implemented by a class providing adaptability to another class. The single method defined by this interface is</p>
 <div class="codehilite"><pre><span class="cm">/**</span>
 <span class="cm"> * Adapts the adaptable to another type.</span>
@@ -118,14 +140,14 @@
 
 
 <p>This method is called to get a view of the same object in terms of another class. Examples of implementations of this method are the Sling <code>ResourceResolver</code> implementation providing adapting to a JCR session and the Sling JCR based <code>Resource</code> implementation providing adapting to a JCR node.</p>
-<h2 id="extending-adapters">Extending Adapters</h2>
+<h2 id="extending-adapters">Extending Adapters<a class="headerlink" href="#extending-adapters" title="Permanent link">&para;</a></h2>
 <p>Sometimes an <code>Adaptable</code> implementation cannot foresee future uses and requirements. To cope with such extensibility requirements two interfaces and an abstract base class are defined:</p>
 <ul>
 <li><code>AdapterManager</code></li>
 <li><code>AdapterFactory</code></li>
 <li><code>SlingAdaptable</code></li>
 </ul>
-<h2 id="adapterfactory">AdapterFactory</h2>
+<h2 id="adapterfactory">AdapterFactory<a class="headerlink" href="#adapterfactory" title="Permanent link">&para;</a></h2>
 <p>The <code>AdapterFactory</code> interface defines the service interface and API for factories supporting extensible adapters for <code>SlingAdaptable</code> objects. The interface has a single method:</p>
 <div class="codehilite"><pre><span class="cm">/**</span>
 <span class="cm"> * Adapt the given object to the adaptable type. The adaptable object is</span>
@@ -157,7 +179,7 @@
 
 <p>Implementations of this interface are registered as OSGi services providing two lists: The list of classes which may be adapted (property named <em>adaptables</em>) and the list of classes to which the adapted class may be adapted (property named <em>adapters</em>). A good example of an Class implementing <code>AdapterFactory</code> is the <code>SlingScriptAdapterFactory</code>.</p>
 <p><code>AdapterFactory</code> services are gathered by a <code>AdapterManager</code> implementation for use by consumers. Consumers should not care for <code>AdapterFactory</code> services.</p>
-<h2 id="adaptermanager">AdapterManager</h2>
+<h2 id="adaptermanager">AdapterManager<a class="headerlink" href="#adaptermanager" title="Permanent link">&para;</a></h2>
 <p>The <code>AdapterManager</code> is defines the service interface for the generalized and extensible use of <code>AdapterFactory</code> services. Thus the adapter manager may be retrieved from the service registry to try to adapt whatever object that needs to be adapted - provided appropriate adapters exist.</p>
 <p>The <code>AdapterManager</code> interface is defined as follows:</p>
 <div class="codehilite"><pre><span class="cm">/**</span>
@@ -181,7 +203,7 @@
 
 
 <p>Any object can theoretically be adapted to any class even if it does not implement the <code>Adaptable</code> interface, if an <code>AdapterFactory</code> service delivers a <code>getAdapter()</code> method which adapts an object to another one. To check if there's any existing <code>AdapterFactory</code> which can adapt a given object to another one the <code>AdapterManager</code> service with its <code>getAdapter()</code> method does the job. So the <code>Adaptable</code> interface merely is an indicator that the object provides built-in support for being adapted.</p>
-<h2 id="slingadaptable">SlingAdaptable</h2>
+<h2 id="slingadaptable">SlingAdaptable<a class="headerlink" href="#slingadaptable" title="Permanent link">&para;</a></h2>
 <p>The <code>SlingAdaptable</code> class is an implementation of the <code>Adaptable</code> interface which provides built-in support to call the <code>AdapterManager</code> to provide an adapter from the <code>Adaptable</code> object to the requested class.</p>
 <p>An example of extending the <code>SlingAdaptable</code> class will be the Sling JCR based <code>Resource</code> implementation. This way, such a resource may be adapted to a <code>SlingScript</code> by means of an appropriately programmed <code>AdapterFactory</code> (see below).</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">