You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by bu...@apache.org on 2015/09/19 14:09:45 UTC
svn commit: r966007 - in /websites/staging/jena/trunk/content: ./
documentation/notes/system-initialization.html
Author: buildbot
Date: Sat Sep 19 12:09:45 2015
New Revision: 966007
Log:
Staging update by buildbot for jena
Modified:
websites/staging/jena/trunk/content/ (props changed)
websites/staging/jena/trunk/content/documentation/notes/system-initialization.html
Propchange: websites/staging/jena/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sat Sep 19 12:09:45 2015
@@ -1 +1 @@
-1703995
+1703996
Modified: websites/staging/jena/trunk/content/documentation/notes/system-initialization.html
==============================================================================
--- websites/staging/jena/trunk/content/documentation/notes/system-initialization.html (original)
+++ websites/staging/jena/trunk/content/documentation/notes/system-initialization.html Sat Sep 19 12:09:45 2015
@@ -167,13 +167,16 @@ compoents. See below for how to control
<p>Initialization occurs when <code>JenaSystem.init()</code> is first called. Jena ensures that this
is done when the application first uses any Jena code by using class initializers.</p>
<h2 id="initialization-code">Initialization code<a class="headerlink" href="#initialization-code" title="Permanent link">¶</a></h2>
-<p>Initialzation code is an implementation of <code>JenaSubsystemLifecycle</code>.
-and must have a zero-argument constructor.</p>
-<p><code>public interface JenaSubsystemLifecycle {
- public void start() ;
- public void stop() ;
- default public int level() { return 9999 ; }
-}</code></p>
+<p>Initialzation code is an implementation of <code>JenaSubsystemLifecycle</code>
+and the class must have a zero-argument constructor.</p>
+<div class="codehilite"><pre><span class="n">public</span> <span class="n">interface</span> <span class="n">JenaSubsystemLifecycle</span> <span class="p">{</span>
+ <span class="n">public</span> <span class="n">void</span> <span class="n">start</span><span class="p">()</span> <span class="p">;</span>
+ <span class="n">public</span> <span class="n">void</span> <span class="n">stop</span><span class="p">()</span> <span class="p">;</span>
+ <span class="n">default</span> <span class="n">public</span> <span class="n">int</span> <span class="n">level</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> 9999 <span class="p">;</span> <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+
+
<p>The code also supply a level, indicating its place in the order of initialization.
The levels used by Jena are:</p>
<ul>
@@ -195,7 +198,7 @@ Any subsequent calls are cheap, so calli
when in doubt about the initialization state is safe.</p>
<p>Overlapping concurrent calls to <code>JenaSystem.init()</code> are thread-safe.
On a return from <code>JenaSystem.init()</code>, Jena has been initialized at some point.</p>
-<p>== The Standard Subsystem Registry</p>
+<h2 id="the-standard-subsystem-registry">The Standard Subsystem Registry<a class="headerlink" href="#the-standard-subsystem-registry" title="Permanent link">¶</a></h2>
<p>The <code>JenaSubsystemRegistry</code> normally used is based on <code>java.util.ServiceLoader</code>.
It looks for class resources
<code>META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle</code>
@@ -215,17 +218,17 @@ that initialization code is discovered.<
<p>An application can change the <code>JenaSubsystemRegistry</code> instance.
This must be done before any Jena code is called anywhere
in the current JVM. </p>
-<p>```
- // Example alternative registry.
- JenaSubsystemRegistry r = new JenaSubsystemRegistryBasic() {
- @Override
- public void load() {
- if ( JenaSystem.DEBUG_INIT )
- System.err.println("Example custom load") ;
- super.load();
- }
- } ;</p>
-<div class="codehilite"><pre><span class="c1">// Set the sub-system registry</span>
+<div class="codehilite"><pre><span class="c1">// Example alternative registry.</span>
+<span class="n">JenaSubsystemRegistry</span> <span class="n">r</span> <span class="o">=</span> <span class="k">new</span> <span class="n">JenaSubsystemRegistryBasic</span><span class="p">()</span> <span class="p">{</span>
+ <span class="p">@</span><span class="n">Override</span>
+ <span class="n">public</span> <span class="k">void</span> <span class="n">load</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">if</span> <span class="p">(</span> <span class="n">JenaSystem</span><span class="p">.</span><span class="no">DEBUG_INIT</span> <span class="p">)</span>
+ <span class="n">System</span><span class="p">.</span><span class="n">err</span><span class="p">.</span><span class="n">println</span><span class="p">(</span><span class="s">"Example custom load"</span><span class="p">)</span> <span class="p">;</span>
+ <span class="k">super</span><span class="p">.</span><span class="n">load</span><span class="p">();</span>
+ <span class="p">}</span>
+<span class="p">}</span> <span class="p">;</span>
+
+<span class="c1">// Set the sub-system registry</span>
<span class="n">JenaSystem</span><span class="p">.</span><span class="n">setSubsystemRegistry</span><span class="p">(</span><span class="n">r</span><span class="p">);</span>
<span class="c1">// Enable output if required</span>
@@ -234,9 +237,6 @@ in the current JVM. </p>
<span class="c1">// Initialize Jena</span>
<span class="n">JenaSystem</span><span class="p">.</span><span class="n">init</span><span class="p">()</span> <span class="p">;</span>
</pre></div>
-
-
-<p>```</p>
</div>
</div>