Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-getting-started.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-getting-started.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-getting-started.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Apache Felix User Admin - Getting Started</h1>
-      <h2 id="authentication">Authentication</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="authentication">Authentication<a class="headerlink" 
href="#authentication" title="Permanent link">&para;</a></h2>
 <p>To test whether an initiator of an action is known to the UserAdmin 
service, it should be authenticated. To authenticate a user, you typically do 
something like:</p>
 <p>{code:java}
 private UserAdmin m_userAdmin;
@@ -92,7 +114,7 @@ if (user == null || !user.hasCredential(
 <span class="p">}</span>
 </pre></div>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-introduction.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-introduction.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-introduction.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,9 +77,20 @@
       </div>
 
       <h1>Apache Felix User Admin - Introduction</h1>
-      <p>The Apache Felix User Admin provides an implementation of the OSGi 
UserAdmin compendium service. It allows you to manage roles (users and groups), 
define RBAC-like authorization schemes and test whether certain roles are 
authorized to initiate certain actions. </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 Apache Felix User Admin provides an implementation of the OSGi 
UserAdmin compendium service. It allows you to manage roles (users and groups), 
define RBAC-like authorization schemes and test whether certain roles are 
authorized to initiate certain actions. </p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-mongodb-store.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-mongodb-store.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-user-admin/apache-felix-user-admin-mongodb-store.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Apache Felix User Admin - MongoDB Store</h1>
-      <p>The Apache Felix User Admin MongoDB store provides a MongoDB-based 
store for use with the Felix UserAdmin service. It uses MongoDB to persist the 
role information.</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 Apache Felix User Admin MongoDB store provides a MongoDB-based store 
for use with the Felix UserAdmin service. It uses MongoDB to persist the role 
information.</p>
 <p>Note that this driver additionally needs the <a 
href="http://www.mongodb.org/display/DOCS/Java+Language+Center";>MongoDB java 
driver</a> in order to operate! </p>
 <p>The MongoDB-based store service this bundle provides can be configured at 
runtime by using the service PID 
"<code>org.apache.felix.useradmin.mongodb</code>". The configuration options 
recognized by this service are:</p>
 <ul>
@@ -79,7 +101,7 @@
 <p>Alternatively, one can also supply the above mentioned configuration keys 
prefixed with "<code>org.apache.felix.useradmin.mongodb.</code>" as system 
properties. For
 example by adding 
<code>-Dorg.apache.felix.useradmin.mongodb.server=my.mongo.server:29000</code> 
to your JVM arguments will let this service use the MongoDB server at 
"<code>my.mongo.server</code>" on port 29000. However, using system properties 
will imply that only a single store can be configured on a system (which could 
be a sensible default for some situations)!</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Apache Felix Web Console</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="#requirements">Requirements</a></li>
 <li><a href="#variants">Variants</a></li>
@@ -89,7 +111,7 @@
 </ul>
 </div>
 <p>The Apache Felix Web Console is a simple tool to inspect and manage OSGi 
framework instances using your favourite Web Browser.</p>
-<h2 id="requirements">Requirements</h2>
+<h2 id="requirements">Requirements<a class="headerlink" href="#requirements" 
title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>The Web Console only has a single required dependency on the framework: A 
running implementation of the OSGi Http Service Specification. The reason for 
this is, that the Web Console is implemented as a servlet (actually just a 
gateway servlet dispatching to Web Console plugins) which is registered with 
the Http Service. If your framework does not yet have a Http Service installed, 
you might select from a variety of such implementations. The following is just 
an incomplete list:</p>
 <ul>
@@ -104,7 +126,7 @@
 <li>Apache Felix Declarative Services -- If your framework uses the Apache 
Felix Declarative Services implementation, you can use to the Web Console to 
inspect the declared components available from the various bundles and managed 
by the Service Component Runtime.</li>
 </ul>
 <p>Note, that the Apache Felix Declarative Services implementation is the only 
Apache Felix dependency contained in the Web Console. If you do not use the 
Apache Felix Declarative Services implementation, you just cannot inspect the 
declared components (because there is no official public API for this). 
Otherwise the Web Console perfectly operates without any problems.</p>
-<h2 id="variants">Variants</h2>
+<h2 id="variants">Variants<a class="headerlink" href="#variants" 
title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>The Web Console Bundle is available in two variants: A <em>full</em> 
variant and a <em>bare</em> variant. The <em>full</em> variant embeds three 
Java libraries which are not embedded in the <em>bare</em> variant. The 
<em>bare</em> variant expects the packages provided by those libraries to be 
exported from bundles installed in the framework.</p>
 <p>The three libraries are :</p>
@@ -118,7 +140,7 @@
 <li><em>Full</em> variant symbolic name: 
<code>org.apache.felix.webconsole</code></li>
 <li><em>Bare</em> variant symbolic name: 
<code>org.apache.felix.webconsole.bare</code></li>
 </ul>
-<h2 id="installation">Installation</h2>
+<h2 id="installation">Installation<a class="headerlink" href="#installation" 
title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>To install just use your favourite current means of installing new bundles 
in to the OSGi framework. For example using the Apache Felix shell console you 
might do:</p>
 <div class="codehilite"><pre><span class="o">&gt;</span> <span 
class="n">install</span> <span class="n">http</span><span 
class="p">:</span><span class="o">//</span><span class="n">mirror</span><span 
class="p">.</span><span class="k">switch</span><span class="p">.</span><span 
class="n">ch</span><span class="o">/</span><span class="n">mirror</span><span 
class="o">/</span><span class="n">apache</span><span class="o">/</span><span 
class="n">dist</span><span class="o">/</span><span class="n">felix</span><span 
class="o">/</span><span class="n">org</span><span class="p">.</span><span 
class="n">apache</span><span class="p">.</span><span 
class="n">felix</span><span class="p">.</span><span 
class="n">webconsole</span><span class="o">-</span>2<span 
class="p">.</span>0<span class="p">.</span>6<span class="p">.</span><span 
class="n">jar</span>
@@ -128,12 +150,12 @@
 
 
 <p>where <em>x</em> is the bundle number printed by the Shell Console 
indicating the Bundle ID of the Web Console bundle.</p>
-<h2 id="configuration">Configuration</h2>
+<h2 id="configuration">Configuration<a class="headerlink" 
href="#configuration" title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>The configuration of the Web Console consists of two parts: One part is the 
configuration of the Http Service defining at which host address (host and port 
number) the servlet container is accessible. This configuration is technically 
outside of the scope of the Web Console configuration. See below for more 
information and how this is influenced.</p>
 <p>The second part of the Web Console configuration is the configuration of 
the console itself. The Web Console is configured using the OSGi Configuration 
Admin Service in that the Web Console registered a <code>ManagedService</code> 
with Service PID 
<code>org.apache.felix.webconsole.internal.servlet.OsgiManager</code> (of 
course you may well use the Web Console to edit the configuration of the Web 
Console itself).</p>
 <p>The Web Console supports the following settings with their corresponding 
default values:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Property</th>
@@ -185,9 +207,9 @@
 </tbody>
 </table>
 <p>The default values apply if the respective property is missing from the 
configuration or if no configuration is provided at all.</p>
-<h4 id="framework-properties">Framework Properties</h4>
+<h4 id="framework-properties">Framework Properties<a class="headerlink" 
href="#framework-properties" title="Permanent link">&para;</a></h4>
 <p>Some of the configuration properties supported through the OSGi 
Configuration Admin service can also be set globally and statically as 
framework properties. Such framework properties will also be considered actual 
default values for missing properties in Configuration Admin configuration as 
well as for the Metatype descriptor.</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Framework Property</th>
@@ -222,13 +244,13 @@
 </tbody>
 </table>
 <p>Please note that setting any of these properties as framework property 
makes them visible to all bundles deployed. This is particularly to be 
considered in case of the <code>felix.webconsole.password</code> property (as 
for authentication, the use of a <a 
href="/documentation/subprojects/apache-felix-web-console/web-console-security-provider.html">Web
 Console Security Provider</a> is suggested anyway).</p>
-<h4 id="configuration-of-the-osgi-http-service">Configuration of the OSGi Http 
Service</h4>
+<h4 id="configuration-of-the-osgi-http-service">Configuration of the OSGi Http 
Service<a class="headerlink" href="#configuration-of-the-osgi-http-service" 
title="Permanent link">&para;</a></h4>
 <p>As said above, the configuration of the OSGi Http Service used by the Web 
Console to register itself is outside of the scope of the Web Console. Lets 
just say, the OSGi Http Service specification defines a system propety -- 
<code>org.osgi.service.http.port</code> -- which may be set to define the port 
at which the Http Service should listen for HTTP requests. The respective Http 
Service implementation may define additional properties to define the actual 
interface on which to listen or to define a servlet context path.</p>
 <p>By default it is probably safe to assume, that having set the 
<code>org.osgi.service.http.port</code> to a defined value, the Http Service 
implementation will listen on all interfaces for requests at the set port 
number and that no servlet context path actually exists. For example, given the 
<code>org.osgi.service.http.port</code> property is set to <em>8888</em> the 
Web Console in the local system can be reached at : 
<code>http://localhost:8888/system/console</code>, where the 
<code>/system/console</code> path is configured using the 
<code>manager.root</code> configuration property (see the Configuration 
section).</p>
 <p>If you happen to deploy an OSGi framework instance inside a traditional web 
application and thus the Http Service implementation is actually a bridge into 
the existing servlet container (see for example <a 
href="http://www.eclipse.org/equinox/server/http*in*container.php";>Equinox in a 
Servlet Container</a> or the Apache Sling Launchpad Web application), the host, 
port and context path are defined by your servlet container and web application 
deployment. For example, if the servlet container listens on host 
<code>sample.org</code> at port <code>8888</code> and the web application with 
your OSGi container is available in the <code>/osgi</code> context, the Web 
Console would be accessible at 
<code>http://sample.org:8888/osgi/system/console</code>.</p>
-<h2 id="configuration-manager">Configuration Manager</h2>
+<h2 id="configuration-manager">Configuration Manager<a class="headerlink" 
href="#configuration-manager" title="Permanent link">&para;</a></h2>
 <p>The Configuration Manager is available via 
<code>http://localhost:8888/system/console/configMgr</code>. It display all 
OSGi services which can be configured.</p>
-<h3 id="configuration-factories">Configuration factories</h3>
+<h3 id="configuration-factories">Configuration factories<a class="headerlink" 
href="#configuration-factories" title="Permanent link">&para;</a></h3>
 <p>The Configuration Manager has special support for configuration factories 
by allowing to add new items via the "plus" buttons or editing or removing 
existing ones.</p>
 <p>By default for each confguration factory item a unique ID is displayed, 
which is quite cryptic. Example: 
<code>org.apache.felix.jaas.Configuration.factory.18a6be2a-3173-4120-8f56-77fabff7b7ea</code>.</p>
 <p>The developer of the service with configuration factory can define a 
special "name hint" configuration propery which defines a name template which 
is used to build the configuration factory item name when displayed in the 
Configuration Manager. The name of this property is 
<code>webconsole.configurationFactory.nameHint</code>. It allows referencing 
other service property names as placeholders by enclosing in brackets.</p>
@@ -237,35 +259,35 @@
 jaas.realmName = "myRealm"
 jaas.classname = "myClass"</code></p>
 <p>In this case the Configuration Manager displays the name "myRealm, myClass" 
as display name for the configuration entry which is much more human-readable 
than the cryptic name. Please not that the OSGi configuration property 
<code>webconsole.configurationFactory.nameHint</code> must not be set to 
"private". It is never displayed by the Configuration Manager.</p>
-<h2 id="security">Security</h2>
+<h2 id="security">Security<a class="headerlink" href="#security" 
title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>The Web Console only has very basic security at the moment supporting only 
HTTP Basic authentication. This security is enabled by default and may be 
disabled by simply clearing the <code>username</code> property.</p>
 <p>To enhance the security of the Web Console you strongly encouraged to 
change at least the <code>password</code> for the admin user.</p>
 <p>As of Web Console 3.1.0 this simple user setup can be extended by providing 
<a 
href="/documentation/subprojects/apache-felix-web-console/web-console-security-provider.html">Web
 Console Security Provider</a>. See that page for more information.</p>
-<h2 id="browser-compliance">Browser Compliance</h2>
+<h2 id="browser-compliance">Browser Compliance<a class="headerlink" 
href="#browser-compliance" title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>The goal of the Web Console is to support as big a range of Web Browsers as 
possible. As it stands now, Firefox (versions 2 and 3), Opera and Internet 
Explorer (versions 6 and 7) seem to be capable of using the Web Console. Should 
you encounter any problems with your particular browser, please report an issue 
for the <em>Web Console</em> in our issue tracking system (<a 
href="https://issues.apache.org/jira/browse/Felix";>JIRA</a>).</p>
 <p>Beginning with Release 1.2.8 the Web Console is using JQuery to enhance the 
user experience. This should also help in keeping browser support on the 
broadest possible basis.</p>
-<h2 id="extending-the-web-console">Extending the Web Console</h2>
+<h2 id="extending-the-web-console">Extending the Web Console<a 
class="headerlink" href="#extending-the-web-console" title="Permanent 
link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>The Web Console can be extended by registering an OSGi service for the 
interface <code>javax.servlet.Servlet</code> with the service property 
<code>felix.webconsole.label</code> set to the label (last segment in the URL) 
of the page. The respective service is called a Web Console Plugin or a plugin 
for short.</p>
 <p>Please for to the <a 
href="/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console.html">Extending
 the Apache Felix Web Console</a> for full documentation on extending the 
Apache Felix Web Console.</p>
-<h2 id="restful-api">RESTful API</h2>
+<h2 id="restful-api">RESTful API<a class="headerlink" href="#restful-api" 
title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>While the Web Console does not have a full featured and documented REST-ful 
API, most plugins try to follow REST approaches. For example the Bundles plugin 
is able to send information on all bundles or a single directly addressed 
bundle.</p>
 <p>An attempt is made to document the current state of REST-like APIs at <a 
href="/documentation/subprojects/apache-felix-web-console/web-console-restful-api.html">Web
 Console RESTful API</a></p>
-<h2 id="issues">Issues</h2>
+<h2 id="issues">Issues<a class="headerlink" href="#issues" title="Permanent 
link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>Should you have any questions using the Web Console, please send a note to 
one of our <a href="/mailinglists.html">Mailing Lists</a>.</p>
 <p>Please report any issues with the Web Console in our issue tracking system 
(<a href="https://issues.apache.org/jira/browse/Felix";>JIRA</a>) and be sure to 
report for the <em>Web Console</em> component. See our [Issue Tracking] page 
for more details.</p>
-<h2 id="screenshots">Screenshots</h2>
+<h2 id="screenshots">Screenshots<a class="headerlink" href="#screenshots" 
title="Permanent link">&para;</a></h2>
 <p><a href="">Top</a></p>
 <p>| !console-bundles.png|thumbnail! | !console-bundles-details.png|thumbnail! 
| !console-components.png|thumbnail! |
 | Bundle List | Bundle Details | Declarative Services Components (requires 
Apache Felix SCR) |
 | !console-config.png|thumbnail! | !console-status.png|thumbnail! | 
!console-system-info.png|thumbnail! |
 | Configuration Admin | System Status | System Information |</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1654730 by cziegeler on Mon, 26 Jan 2015 07:22:38 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Extending the Apache Felix Web Console</h1>
-      <h1 id="extending-the-apache-felix-web-console">Extending the Apache 
Felix Web Console</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>
+<h1 id="extending-the-apache-felix-web-console">Extending the Apache Felix Web 
Console<a class="headerlink" href="#extending-the-apache-felix-web-console" 
title="Permanent link">&para;</a></h1>
 <p>The <a 
href="/documentation/subprojects/apache-felix-web-console.html">Apache Felix 
Web Console</a> is extensible in various ways described no these pages:</p>
 <ul>
 <li><a 
href="/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-web-console-plugins.html">Providing
 Web Console Plugins</a></li>
@@ -77,7 +99,7 @@
 <li><a 
href="/documentation/subprojects/apache-felix-web-console/web-console-security-provider.html">Web
 Console Security Provider</a></li>
 </ul>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/branding-the-web-console.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/branding-the-web-console.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/branding-the-web-console.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,9 +77,20 @@
       </div>
 
       <h1>Branding the Web Console</h1>
-      <h1 id="branding-the-web-console">Branding the Web Console</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>
+<h1 id="branding-the-web-console">Branding the Web Console<a 
class="headerlink" href="#branding-the-web-console" title="Permanent 
link">&para;</a></h1>
 <p>Branding the Web Consle mainly concerns hooking into the looks of the Web 
Console providing vendor-provided setup like CSS, Logo, Main Title, Vendor URL, 
etc.</p>
-<h2 id="brandingplugin-and-defaultbrandingplugin">BrandingPlugin and 
DefaultBrandingPlugin</h2>
+<h2 id="brandingplugin-and-defaultbrandingplugin">BrandingPlugin and 
DefaultBrandingPlugin<a class="headerlink" 
href="#brandingplugin-and-defaultbrandingplugin" title="Permanent 
link">&para;</a></h2>
 <p>Branding for the Web Console can be provided in two ways: By registering a 
<code>BrandingPlugin</code> service or by providing a branding properties 
files. The Web Console uses the branding from the <code>BrandingPlugin</code> 
service registered with the highest ranking.</p>
 <p>The <code>BrandingPlugin</code> interface provides the following 
information used for branding:</p>
 <div class="codehilite"><pre><span class="c1">// Returns an indicative name of 
the branding plugin</span>
@@ -111,7 +133,7 @@
 
 <p>If no <code>BrandingPlugin</code> service is registered, the 
<code>DefaultBrandingPlugin</code> is used.</p>
 <p>The <code>DefaultBrandingPlugin</code> reads the 
<code>/META-INF/webconsole.properties</code> from the web console bundle to 
setup the branding using the following properties:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Property Name</th>
@@ -168,7 +190,7 @@
 </tbody>
 </table>
 <p><em>Note:</em> The <code>/META-INF/webconsole.properties</code> file is not 
contained in the Apache Felix Web Console bundle itself. It may be provided by 
a Fragment Bundle attaching to the Apache Felix Web Console bundle. For an 
example of such a fragment bundle see prototype <a 
href="https://svn.apache.org/repos/asf/sling/trunk/bundles/extensions/webconsolebranding/";>Sling
 Web Console Branding Bundle</a> with its 
[<code>webconsole.properties</code>|https://svn.apache.org/repos/asf/sling/trunk/bundles/extensions/webconsolebranding/src/main/resources/META-INF/webconsole.properties?view=markup]</p>
-<h2 id="branding-the-stylesheet">Branding the Stylesheet</h2>
+<h2 id="branding-the-stylesheet">Branding the Stylesheet<a class="headerlink" 
href="#branding-the-stylesheet" title="Permanent link">&para;</a></h2>
 <p>Branding the CSS Stylesheet is basically possible with the 
<code>BrandingPlugin.getMainStyleSheet()</code> method. The default value of 
the <code>DefaultBrandingPlugin</code> points to <a 
href="http://svn.apache.org/viewvc/felix/trunk/webconsole/src/main/resources/res/ui/webconsole.css?view=markup";><code>webconsole.css</code></a>.
 This allows styling the main content structure as shown here:</p>
 <p>{code:html}
 <body>
@@ -211,7 +233,7 @@
 <span class="n">It</span> <span class="n">is</span> <span class="n">yet</span> 
<span class="n">unclear</span> <span class="n">how</span> <span 
class="n">these</span> <span class="n">plugins</span> <span 
class="n">can</span> <span class="n">be</span> <span 
class="n">styled</span><span class="p">....</span>
 </pre></div>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-resources.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-resources.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-resources.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Providing Resources</h1>
-      <h1 id="providing-resources">Providing Resources</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>
+<h1 id="providing-resources">Providing Resources<a class="headerlink" 
href="#providing-resources" title="Permanent link">&para;</a></h1>
 <p>Extending the Apache Felix Web Console with new functionality is as easy as 
registering a <code>javax.servlet.Servlet</code> with at least the 
<code>felix.webconsole.label</code> service registration property set (see 
above). Providing resources is a bit more complex and requires more work on 
behalf of the plugin.</p>
 <p>Out of the box the Apache Felix Web Console plugin servces resources 
through the OSGi <code>HttpContext</code> used to register the web console with 
OSGi <code>HttpService</code>. This is done by registering resources with the 
<code>HttpService</code> below the <code>/res</code> alias. This mechanism 
though does not lend itself for easy extensibility. Therefore another mechanism 
has been chosen, which relies on similar mechanisms.</p>
 <p>A web console plugin may implement a <code>getResource</code> method which 
is looked up using reflection. This method is called by the 
<code>AbstractWebConsole.doGet</code> to check whether the request is actually 
for a resource.</p>
@@ -79,7 +101,7 @@
 <p>This method is called with the path info of the request 
(<code>HttpServletRequest.getPathInfo()</code>) and expects and URL to the 
resource to be sent to the client. If the path cannot be resolved to a resource 
the <code>getResource</code> method is expected to return <code>null</code> 
thus causing regular processing of rendering the page.</p>
 <p>If the <code>getResource</code> method returns an accessible 
non-<code>null</code> URL, the request is serviced by sending back the contents 
of the given URL. Simple caching support is included which handles the 
<code>If-Modified-Since</code> header and sets the <code>Last-Modified</code> 
header from the resource URL.</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-web-console-plugins.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-web-console-plugins.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/providing-web-console-plugins.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Providing Web Console Plugins</h1>
-      <h1 id="providing-web-console-plugins">Providing Web Console Plugins</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>
+<h1 id="providing-web-console-plugins">Providing Web Console Plugins<a 
class="headerlink" href="#providing-web-console-plugins" title="Permanent 
link">&para;</a></h1>
 <p>The Web Console can be extended by registering an OSGi service for the 
interface <code>javax.servlet.Servlet</code> with the service property 
<code>felix.webconsole.label</code> set to the label (last segment in the URL) 
of the page. The respective service is called a Web Console Plugin or a plugin 
for short.</p>
 <p>The most basic plugin is a plain old Servlet whose 
<code>service(ServletRequest, ServletResponse)</code> method is called by the 
Apache Felix Web Console. Before calling the servlet the web console sets two 
request attributes helping the plugin rendering the response:</p>
 <ul>
@@ -75,7 +97,7 @@
 <li><em><code>felix.webconsole.labelMap</code></em> -- This request attribute 
of type <code>Map</code> provides a mapping of labels to page titles of 
registered console plugins. This map may be used to render a navigation of the 
console plugins such as the 
<code>AbstractWebConsolePlugin.renderTopNavigation</code> method does. The keys 
and values of the map are of type <code>String</code>.</li>
 </ul>
 <p>To help rendering the response the Apache Felix Web Console bundle provides 
two options: One option is to extend the <code>AbstractWebConsolePlugin</code> 
overwriting the <code>renderContent</code> method. The other option is to 
register the servlet with another service registration property to indicate the 
desire to wrap the response.</p>
-<h2 id="extending-the-abstractwebconsoleplugin">Extending The 
AbstractWebConsolePlugin</h2>
+<h2 id="extending-the-abstractwebconsoleplugin">Extending The 
AbstractWebConsolePlugin<a class="headerlink" 
href="#extending-the-abstractwebconsoleplugin" title="Permanent 
link">&para;</a></h2>
 <p>To leverage the rendering of the common header and footer around the 
plugin's data area, the plugin can extend the abstract 
<code>org.apache.felix.webconsole.AbstractWebConsolePlugin</code> class 
implementing the following methods:</p>
 <ul>
 <li><em><code>renderContext(HttpServletRequest, 
HttpServletResponse)</code></em> -- This method is called to render the actual 
plugin data area.</li>
@@ -89,10 +111,10 @@
 <li><em><code>deactivate()</code></em> -- Destroys the plugin.</li>
 </ul>
 <p>In addition to these OSGi-oriented setup methods the Web Console itself 
will call the <code>Servlet.init(ServletConfig)</code> method before putting 
the plugin into service and the <code>Servlet.destroy()</code> method when the 
plugin is removed.</p>
-<h4 id="providing-css-files">Providing CSS Files</h4>
+<h4 id="providing-css-files">Providing CSS Files<a class="headerlink" 
href="#providing-css-files" title="Permanent link">&para;</a></h4>
 <p>Part of rendering the header, the <code>AbstractWebConsolePlugin</code> 
also emits links to CSS files to include for displaying the page. Since such 
CSS links may only be present in the header section of the generated HTML the 
<code>getCssReferences()</code> method is provided. This method is called to 
create links for additional CSS files. The default implementation of this 
method returns <code>null</code> meaning no additional CSS links to be 
rendered. Extensions of the <code>AbstractWebConsolePlugin</code> may overwrite 
this method to provide a list of CSS links.</p>
 <p>The CSS links provided by the <code>getCssReferences()</code> method may be 
absolute or relative paths, though relative paths are recommended. Relative 
paths are turned into absolute path by prepending them with the value of the 
<code>felix.webconsole.appRoot</code> request attribute.</p>
-<h2 id="transparent-response-wrapping">Transparent Response Wrapping</h2>
+<h2 id="transparent-response-wrapping">Transparent Response Wrapping<a 
class="headerlink" href="#transparent-response-wrapping" title="Permanent 
link">&para;</a></h2>
 <p>While being very simple and straight forward, extending the 
<code>AbstractWebConsolePlugin</code> actually creates a binding from the 
plugin provider bundle to the Web Console bundle, which may be undesired. To 
support the use case of wanting the benefits of the 
<code>AbstractWebConsolePlugin</code> but wiring independency of the Web 
Console, a plugin servlet may be registered with a second service registration 
property (besides the required <code>felix.webconsole.label</code>):</p>
 <ul>
 <li><em><code>felix.webconsole.title</code></em> -- If registered servlet does 
not extend the <code>AbstractWebConsolePlugin</code> but provides this property 
(of type <code>String</code>) the servlet is wrapped in an adapter to the 
<code>AbstractWebConsolePlugin</code> which calls 
<code>Servlet.service(ServletRequest, ServletResponse)</code> method on behalf 
of the <code>renderContent</code> implementation.</li>
@@ -109,7 +131,7 @@
 <p>Please note, that sometimes it is not desirable to have the 
<code>AbstractWebConsolePlugin</code> render the header and footer of the 
response. For this reason, the <code>AbstractWebConsolePlugin</code> only 
renders the header and footer if the request to such a wrapped plugin either 
has no extension or if the extension is <code>.html</code>. For any other 
extension, e.g. <code>.txt</code> or <code>.json</code>, the header and footer 
is not rendered and the <code>service</code> method of the plugin is directly 
called.</p>
 <p>It is suggested that plugins extend from the 
<code>javax.servlet.http.HttpServlet</code> class and implement the appropriate 
<code>doXxx(HttpServletRequest, HttpServletResponse)</code> methods such as 
<code>doGet</code> and <code>doPost</code>. In addition, unless non-GET 
requests are handled through AJAX calls, it is suggested that non-GET requests 
return a redirect after processing the request.</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/web-console-logging.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/web-console-logging.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/web-console-logging.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Web Console Logging</h1>
-      <h1 id="web-console-logging">Web Console Logging</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>
+<h1 id="web-console-logging">Web Console Logging<a class="headerlink" 
href="#web-console-logging" title="Permanent link">&para;</a></h1>
 <p>The Web Console does not provide its own mechanism for logging. Rather the 
Servlet Container logging mechanism is used by calling the 
<code>GenericServlet.log</code> methods for logging. It is expected by the OSGi 
Http Service implementation implements these <code>log</code> methods writing 
to the OSGi Log Service.</p>
 <p>The drawback of using servlet container logging is that we have no control 
over the logging levels used and applied to log messages. To at least allow 
some level of log message filtering the Web Console can be configured with a 
logging level using the <code>loglevel</code> property of the <em>Apache Felix 
OSGi Management Console</em> 
(<code>org.apache.felix.webconsole.internal.servlet.OsgiManager</code>).</p>
 <p>The <code>AbstractWebConsolePlugin</code> class provides two addition 
<code>log</code> methods taking a <code>level</code> parameter which allow 
plugins to filter certain log messages:</p>
@@ -80,7 +102,7 @@
 | 3 | LOG_INFO | This log entry may be the result of any change in the bundle 
or service and does not indicate a problem. |
 | 4 | LOG_DEBUG | This log entry is used for problem determination and may be 
irrelevant to anyone but the bundle developer. |</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/web-console-output-templating.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/web-console-output-templating.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/extending-the-apache-felix-web-console/web-console-output-templating.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,8 +77,19 @@
       </div>
 
       <h1>Web Console Output Templating</h1>
-      <p>Templating and Internationalization support of the Web Console is 
based on Java Resource Bundles loaded from the plugin bundles and is 
transparent to the plugin itself.</p>
-<h2 id="basic-mechanism">Basic Mechanism</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>
+<p>Templating and Internationalization support of the Web Console is based on 
Java Resource Bundles loaded from the plugin bundles and is transparent to the 
plugin itself.</p>
+<h2 id="basic-mechanism">Basic Mechanism<a class="headerlink" 
href="#basic-mechanism" title="Permanent link">&para;</a></h2>
 <p>All requests handled by web console plugins are wrapped by response 
wrapper, which installs a Writer filter if the response is a 
<code>text/html</code> response. This writer filter recognizes variables of the 
pattern <code>$&amp;#123;name&amp;#125;</code> and tries to replace that part 
of the output with another string:</p>
 <div class="codehilite"><pre><span class="o">*</span> <span 
class="n">If</span> <span class="n">a</span> <span class="n">variable</span> 
<span class="n">of</span> <span class="n">that</span> <span 
class="n">name</span> <span class="n">exists</span><span class="p">,</span> 
<span class="n">the</span> <span class="n">value</span> <span 
class="n">of</span> <span class="n">that</span> <span class="n">variable</span> 
<span class="n">is</span> <span class="n">used</span><span class="p">.</span> 
<span class="n">See</span> <span class="n">Variable</span> <span 
class="n">Resolution</span> <span class="n">below</span><span class="p">.</span>
 <span class="o">*</span> <span class="n">Otherwise</span> <span 
class="k">if</span> <span class="n">a</span> <span class="n">resource</span> 
<span class="n">bundle</span> <span class="n">provides</span> <span 
class="n">a</span> <span class="n">translated</span> <span 
class="n">string</span> <span class="k">for</span> <span class="n">the</span> 
<span class="n">name</span><span class="p">,</span> <span class="n">that</span> 
<span class="n">string</span> <span class="n">is</span> <span 
class="n">used</span><span class="p">.</span> <span class="n">See</span> <span 
class="n">Resource</span> <span class="n">Bundles</span> <span 
class="n">below</span><span class="p">.</span>
@@ -75,11 +97,10 @@
 </pre></div>
 
 
-<h3 id="example">Example</h3>
+<h3 id="example">Example<a class="headerlink" href="#example" title="Permanent 
link">&para;</a></h3>
 <p>Consider the plugin bundle provides a localization for the default german 
locale <code>de</code>:</p>
-<p>{panel:title=OSGI-INF/l10n/bundle_de.properties}
-Hello = Guten Tag
-{panel}</p>
+<p panel="panel">{panel:title=OSGI-INF/l10n/bundle_de.properties}
+Hello = Guten Tag</p>
 <p>And the plugin defines a variable replacement and writes output with the 
following code:</p>
 <div 
class="codehilite"><pre>WebConsoleUtil.getVariableResolver().put(&quot;world&quot;,
 &quot;Schweiz&quot;);
 response.getWriter().println(&quot;<span class="cp">${</span><span 
class="n">Hello</span><span class="cp">}</span> <span class="cp">${</span><span 
class="n">world</span><span class="cp">}</span>&quot;);
@@ -91,15 +112,15 @@ response.getWriter().println(&quot;<span
 </pre></div>
 
 
-<h2 id="variable-resolution">Variable Resolution</h2>
+<h2 id="variable-resolution">Variable Resolution<a class="headerlink" 
href="#variable-resolution" title="Permanent link">&para;</a></h2>
 <p>Variable Resolution is based on a 
<code>org.apache.felix.webconsole.VariableResolver</code> object provided as a 
request attribute prior to calling the <code>ServletResponse.getWriter()</code> 
method. If no such resolver is provided in the request, an instance of the 
<code>org.apache.felix.webconsole.DefaultVariableResolver</code> is used and 
stored in the request. Replacing the <code>VariableResolver</code> after the 
<code>getWriter()</code> has been called has no effect for variable resolution. 
Variables may be added to the <code>VariableResolver</code> even after the 
<code>getWriter()</code> method has been called.</p>
-<h2 id="resource-bundles">Resource Bundles</h2>
+<h2 id="resource-bundles">Resource Bundles<a class="headerlink" 
href="#resource-bundles" title="Permanent link">&para;</a></h2>
 <p>Resources for the Resource Bundles is provided by the Web Console bundle on 
the one hand and by the bundle providing the plugin on the other hand. 
Resources are identified inside a bundle with the 
<code>Bundle-Localization</code> manifest header as described in Section 3.10 
Localization in the Core Specification.</p>
 <p>This also means, that additional translations may be provided by fragment 
bundles.</p>
 <p>During request processing the <code>Locale</code> of the request 
(<code>ServletRequest.getLocale()</code>) is used to identify the actual 
resources to use. From this information a <code>ResourceBundle</code> is 
constructed from a collection of the resources provided by the plugin bundle 
and the resources provided by the Web Console.</p>
-<h3 id="web-console-localization">Web Console Localization</h3>
+<h3 id="web-console-localization">Web Console Localization<a 
class="headerlink" href="#web-console-localization" title="Permanent 
link">&para;</a></h3>
 <p>The Web Console contains a single localization file 
<code>OSGI-INF/l10n/bundle.properties</code>. Fragments attached to the Web 
Console bundle may provide translations for these resources. All plugins of the 
Web Console itself will use a ReosurceBundle, which is only based on the 
localization of the Web Console itself.</p>
-<h2 id="using-templating">Using Templating</h2>
+<h2 id="using-templating">Using Templating<a class="headerlink" 
href="#using-templating" title="Permanent link">&para;</a></h2>
 <p>To use the described templating, the plugin developer may provide the 
following:</p>
 <ol>
 <li>Use templated strings in the generated response. Such templated strings 
will be replaced with variable values or localization strings as available.</li>
@@ -107,7 +128,7 @@ response.getWriter().println(&quot;<span
 <li>Provide localization files and optionally set the 
<code>Bundle-Localization</code> header if the base file name is not the 
default <code>OSGI-INF/l10n/bundle</code>.</li>
 </ol>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/web-console-security-provider.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/web-console-security-provider.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-web-console/web-console-security-provider.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Web Console Security Provider</h1>
-      <h1 id="web-console-security-provider">Web Console Security Provider</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>
+<h1 id="web-console-security-provider">Web Console Security Provider<a 
class="headerlink" href="#web-console-security-provider" title="Permanent 
link">&para;</a></h1>
 <div class="toc">
 <ul>
 <li><a href="#web-console-security-provider">Web Console Security 
Provider</a><ul>
@@ -77,7 +99,7 @@
 </ul>
 </div>
 <p>As of Apache Felix Web Console 3.1.0 security of the Web Console can be 
extended by providing a <code>WebConsoleSecurityProvicer</code> service. An 
extension to this service has been introduced with the 
<code>WebConsoleSecurityProvider2</code> service in Apache Felix Web Console 
3.1.4.</p>
-<h2 id="webconsolesecurityprovider">WebConsoleSecurityProvider</h2>
+<h2 id="webconsolesecurityprovider">WebConsoleSecurityProvider<a 
class="headerlink" href="#webconsolesecurityprovider" title="Permanent 
link">&para;</a></h2>
 <p>The <code>WebConsoleSecurityProvider</code> service provides two 
methods:</p>
 <p>{code:java}
 /<em><em>
@@ -151,10 +173,10 @@ public boolean authorize( Object user, S
 
 
 <p>This method is in full control of authentication and thus has to extract 
the user credentials from the request and can also fail the request.</p>
-<h2 id="sample">Sample</h2>
+<h2 id="sample">Sample<a class="headerlink" href="#sample" title="Permanent 
link">&para;</a></h2>
 <p>A sample of a <code>WebConsoleSecurityProvider</code> service is the Apache 
Sling implementation <a 
href="http://svn.apache.org/repos/asf/sling/trunk/bundles/extensions/webconsolesecurityprovider/src/main/java/org/apache/sling/extensions/webconsolesecurityprovider/internal/SlingWebConsoleSecurityProvider.java";><code>SlingWebConsoleSecurityProvider</code></a>.
 This implementation uses a JCR implementation to login to the repository and 
thus validate the credentials.</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/mosgi-managed-osgi-framework.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/mosgi-managed-osgi-framework.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/mosgi-managed-osgi-framework.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,18 +77,29 @@
       </div>
 
       <h1>MOSGi Managed OSGi framework</h1>
-      <p>MOSGi enables the remote management of OSGi-compatible service 
gateways, using JMX. The framework is a reference architecture for end-to-end 
gateway management. It provides the following features:
+      <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>MOSGi enables the remote management of OSGi-compatible service gateways, 
using JMX. The framework is a reference architecture for end-to-end gateway 
management. It provides the following features:
 <em> relies on JMX management infrastructure (IP-based     management),
 </em> provides two JMX agents: the standard Java 1.5 agent and a    specific 
Java 1.4 lightweight embedded agent (MX4J agent deviation),
 <em> provides a way to deploy various probes on remote gateways,
 </em> provides a management console,
 * the graphical part of a probe (management console part) can   be dynamically 
plugged in the management console and is dynamically     downloaded.</p>
-<h1 id="very-fast-quickstart-guide">Very fast QuickStart Guide</h1>
+<h1 id="very-fast-quickstart-guide">Very fast QuickStart Guide<a 
class="headerlink" href="#very-fast-quickstart-guide" title="Permanent 
link">&para;</a></h1>
 <p>Go into $FELIX_HOME/trunk/mosgi.doc and read Readme.txt.</p>
-<h1 id="general-architecture">General architecture</h1>
+<h1 id="general-architecture">General architecture<a class="headerlink" 
href="#general-architecture" title="Permanent link">&para;</a></h1>
 <p>The overall architecture is presented in the following picture :</p>
 <p>!MOSGiArchitecture.png!</p>
-<h1 id="how-it-works">How it works</h1>
+<h1 id="how-it-works">How it works<a class="headerlink" href="#how-it-works" 
title="Permanent link">&para;</a></h1>
 <p>Managed OSGi gateways can install JMX probes from various repositories. A 
JMX probe is a standard OSGi bundle that registers an <a href="">#MBean</a> 
component in the managed gateway's JMX agent.</p>
 <p>The management console (running in a standard OSGi framework) is connected 
to each gateway through the JMX remoting protocol. When it connects for the 
first time to a managed gateway, it asks for probes that are installed (i.e. 
all MBeans registered in the TabUI JMX domain). Then, for each MBean found, the 
management console asks for its graphical representation through a call to our 
standard API (component getUI() call). This call redirects to a bundle in the 
GUI probe repository that is installed by the management console. So the 
management console discovers at run-time the user interface it should use to
 supervise a specific remote gateway.</p>
@@ -98,7 +120,7 @@ supervise a specific remote gateway.</p>
 <p>A JMX Console is an OSGi framework also (for simplicity) which should host 
two bundles :
 <em> JMX Console: the graphical framework that will host graphical     plugins
 </em> jmxconsole common tabs: tabs that are common to all gateways.     For 
the moment it only concerns a tab that shows remote notification    (it works 
whith remote logger)</p>
-<h1 id="osgijmx-mbean-registration">OSGi/JMX MBean registration</h1>
+<h1 id="osgijmx-mbean-registration">OSGi/JMX MBean registration<a 
class="headerlink" href="#osgijmx-mbean-registration" title="Permanent 
link">&para;</a></h1>
 <p>MOSGi installs JMX-MX4J agent at the gateways level. Any one can register 
an MBean to the JMX agent. The registration can be made in two ways. The direct 
code and the white board pattern.
 <em> In the direct code, one can register an MBean to the agent through the 
standard service interface : </em>javax.management.MBeanServer*</p>
 <p>Example:</p>
@@ -117,7 +139,7 @@ supervise a specific remote gateway.</p>
 </pre></div>
 
 
-<h1 id="management-console">Management Console</h1>
+<h1 id="management-console">Management Console<a class="headerlink" 
href="#management-console" title="Permanent link">&para;</a></h1>
 <p>The management console is a ad-hoc jmx compatible console. Its aim is not 
to be a concurrent to general purpose consoles like MX4J or JConsole but 
provides an ad-hoc user interface depending on the managed gateway. The console 
is based on a plugin framework. Each time the consol connects to a gateway it 
gets the list of available MBean. Then for each registered MBean it asks for 
specific local bundles for managing it. Each graphical bundle is integrated as 
a graphical tab in the management console.</p>
 <p>In the next screenshot, the gateway user has deployed 4 probes on the 
remote gateway : Remote Obr, Remote Bundle List, GNU/Linux and OSGi 
Plateform.!jmxconsoleGUI.png!</p>
 <p>In order to get these tabs, the gateway manager deploys the 4 probe bundles 
on the remote gateway and GUI tabs are automatically made available to the 
remote console. These bundles are :
@@ -126,10 +148,10 @@ supervise a specific remote gateway.</p>
 <em> GNU-Linux : a probe that gets status from running host    operating system
 </em> OSGi Platform : a probe that gets information from current    running 
gateway</p>
 <p>These plugin are developed as simple examples and are available in felix 
repository. A <a 
href="/documentation/subprojects/mosgi-managed-osgi-framework/probeguide.html">ProbeGuide</a>
 that  describes plugin integration is available. Plugin are dynamically 
removed and reinstalled each time you change your selected gateway.</p>
-<h3 id="mbean-definition">MBean Definition</h3>
+<h3 id="mbean-definition">MBean Definition<a class="headerlink" 
href="#mbean-definition" title="Permanent link">&para;</a></h3>
 <p>An MBean is a Management Component for the JMX framework. It is made of an 
MBean interface and an implementation of it. The MBean interface is used to 
make remote management with the implementation.&nbsp;</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/subprojects/mosgi-managed-osgi-framework/probeguide.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/subprojects/mosgi-managed-osgi-framework/probeguide.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/subprojects/mosgi-managed-osgi-framework/probeguide.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>ProbeGuide</h1>
-      <h1 id="developping-probes-for-mosgi-framework">Developping probes for 
MOSGi framework</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>
+<h1 id="developping-probes-for-mosgi-framework">Developping probes for MOSGi 
framework<a class="headerlink" href="#developping-probes-for-mosgi-framework" 
title="Permanent link">&para;</a></h1>
 <p>{quote}</p>
 <p>{quote}
 MOSGi is a management infrastructure for OSGi gateways remote management. The 
architecture relies on JMX management infrastructure and is classically build 
on a three layered system:</p>
@@ -75,7 +97,7 @@ MOSGi is a management infrastructure for
 </em> The Agent layer: there is one     agent per gateway and is responsible 
for maintaining access to a    list of available probes,
 * The Manager layer is the remote   environment that can communicate with the 
agent to get information  from the gateway through the probes</p>
 <p>There are various way to implements this architecture (CIM/Wbem, Snmp, 
JMX). We have choose to use the JMX proposal because it is standardized in the 
java virtual machine since jdk1.5.</p>
-<h1 id="jmx-management-infrastructure-synthesis">JMX management infrastructure 
synthesis</h1>
+<h1 id="jmx-management-infrastructure-synthesis">JMX management infrastructure 
synthesis<a class="headerlink" href="#jmx-management-infrastructure-synthesis" 
title="Permanent link">&para;</a></h1>
 <p>Sun JMX proposal defines the following elements :</p>
 <p>!JMXLayers.png!
 <em> The agent is the registry for     probes called MBeans and is accessed 
through connectors.
@@ -85,9 +107,9 @@ MOSGi is a management infrastructure for
 <p>!jmxmx4jhtml.png!</p>
 <p>These are various mbeans deployed on a specific gateway. We can identify 4 
columns : the mbean registered name (and domain), its implementation, a comment 
and a function to unregister it.</p>
 <p>Mbeans are component that declare a management interface that should have a 
syntactic name similar to the class they instrument. For instance the class 
foo.Test should implement a management interface whose name is foo.TestMBean. 
The registration mechanism associates a implementation (conform to the 
management interface) with an objectName (a unique identifier). The 
corresponding call is something like 
:aMbeanServer.register(aMBeanImplementation, anObjectName);. There are many 
kinds of MBeans (standard, dynamic, model and simple) but their description is 
out of the scope of this document.</p>
-<h1 id="mosgi-probe-developpement">MOSGi probe developpement</h1>
+<h1 id="mosgi-probe-developpement">MOSGi probe developpement<a 
class="headerlink" href="#mosgi-probe-developpement" title="Permanent 
link">&para;</a></h1>
 <p>Our management infrastructure proposes a framework for deploying standard 
mbean within OSGi gateways. It also embeds a reference to a graphical part 
(manager view) directly in the Mbean itself. Thus the management console is 
automatically populated with client part of the management system.</p>
-<h2 id="gateway-probes">Gateway probes</h2>
+<h2 id="gateway-probes">Gateway probes<a class="headerlink" 
href="#gateway-probes" title="Permanent link">&para;</a></h2>
 <p>These probes are developed in conformance to the following elements.
 <em> A probe must be registered under the domain TabUI. It means   that they 
will have a corresponding tab in our management console.
 </em> A probe must implement a management interface conform to the  JMX 
specification (ie : foo.LinuxProbe --&gt; foo.LinuxProbeMBean)
@@ -140,7 +162,7 @@ MOSGi is a management infrastructure for
 
 
 <p>Once the probe is made as a bundle it can be deployed on the remote 
gateway. Then a manager (management console) can ask communicate with the 
gateway agent to manage the probe.</p>
-<h2 id="mosgi-jmxconsole-architecture">MOSGi JmxConsole architecture</h2>
+<h2 id="mosgi-jmxconsole-architecture">MOSGi JmxConsole architecture<a 
class="headerlink" href="#mosgi-jmxconsole-architecture" title="Permanent 
link">&para;</a></h2>
 <p>When a probe is deployed on a remote gateway it is manageable by standard 
management consoles like JConsole, MC4J... We have developed our own management 
console that is able to manage probe in a more dedicated approach.</p>
 <p>The management console is based on a plugin mechanism. Each plugin is 
represented as a tab and each tab manages a probe. The console is launched with 
two bundles. Remotegui.jar is the execution framework and remotecomponent.jar 
contains a sole remote logger service that gets remote notification from 
gateways. The screen represented the gateway status after it has been 
launched.!EmptyConsole.png!
 The left panel identifies connected gateways,
@@ -153,7 +175,7 @@ When the user selects a gateway (green f
 <p>For instance if the user selects the green point he gets the following 
tabs.</p>
 <p>!TabbedConsole.png!</p>
 <p>4 probes have been deployed on the remote gateway and 4 graphical tabs have 
been installed.</p>
-<h2 id="graphical-tab-integration">Graphical tab integration</h2>
+<h2 id="graphical-tab-integration">Graphical tab integration<a 
class="headerlink" href="#graphical-tab-integration" title="Permanent 
link">&para;</a></h2>
 <p>When developing a probe one shall provide a corresponding MOSGi tab. It 
should follow these guidelines.
 <em> It should be a bundle in order to be remotely installed on    the console
 </em> It should implement Plugin interface with is the jmxconsole   container 
interface specification.</p>
@@ -182,10 +204,10 @@ When the user selects a gateway (green f
 
 
 <p>Implementation tabs are provided as open-source code. You can find various 
implementation of this interface in felix repository in the 
<em>mosgi.managedelements.xxx.tab</em> elements.</p>
-<h2 id="function-call-sequence">Function call sequence</h2>
+<h2 id="function-call-sequence">Function call sequence<a class="headerlink" 
href="#function-call-sequence" title="Permanent link">&para;</a></h2>
 <p>The next figure presents a function call sequence when using MOSGi 
framework.</p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project

Modified: 
websites/staging/felix/trunk/content/documentation/tutorials-examples-and-presentations.html
==============================================================================
--- 
websites/staging/felix/trunk/content/documentation/tutorials-examples-and-presentations.html
 (original)
+++ 
websites/staging/felix/trunk/content/documentation/tutorials-examples-and-presentations.html
 Tue Sep  1 06:05:17 2015
@@ -39,7 +39,18 @@
     </div>
     
     <div class="menu"> 
-      <p><a href="/news.html">news</a>  <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><a href="/news.html">news</a>  <br />
 <a href="/license.html">license</a>  <br />
 <a href="/downloads.cgi">downloads</a>  <br />
 <a href="/documentation.html">documentation</a>  <br />
@@ -66,7 +77,18 @@
       </div>
 
       <h1>Tutorials, Examples, and Presentations</h1>
-      <h1 id="tutorials-examples-and-presentations">Tutorials, Examples, and 
Presentations</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>
+<h1 id="tutorials-examples-and-presentations">Tutorials, Examples, and 
Presentations<a class="headerlink" href="#tutorials-examples-and-presentations" 
title="Permanent link">&para;</a></h1>
 <ul>
 <li><a 
href="/documentation/tutorials-examples-and-presentations/apache-felix-application-demonstration.html">Apache
 Felix Application Demonstration</a></li>
 <li><a 
href="/documentation/tutorials-examples-and-presentations/apache-felix-osgi-faq.html">OSGi
 Frequently Asked Questions</a></li>
@@ -75,7 +97,7 @@
 <li><a 
href="/documentation/tutorials-examples-and-presentations/presentations.html">Presentations</a></li>
 </ul>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; 
text-align: right;">
-        Rev. 1422427 by fmeschbe on Sun, 16 Dec 2012 00:36:51 +0000
+        Rev. 1700393 by cziegeler on Tue, 1 Sep 2015 06:04:06 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Felix, Felix, Apache, the Apache feather logo, and the Apache 
Felix project


Reply via email to