You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2015/09/18 11:21:29 UTC

[8/8] jena git commit: JENA-1029: Comment and clean JenaSystem.

JENA-1029: Comment and clean JenaSystem.


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/68a76909
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/68a76909
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/68a76909

Branch: refs/heads/Jena-1029_subsystem
Commit: 68a769098846bee02a843ddf3fb77edbc491c1dd
Parents: 3e96cae
Author: Andy Seaborne <an...@apache.org>
Authored: Fri Sep 18 08:59:56 2015 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Fri Sep 18 08:59:56 2015 +0100

----------------------------------------------------------------------
 .../apache/jena/system/JenaSubsystemRegistryBasic.java   | 11 +++++------
 .../src/main/java/org/apache/jena/system/JenaSystem.java | 10 +++++++++-
 2 files changed, 14 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/68a76909/jena-core/src/main/java/org/apache/jena/system/JenaSubsystemRegistryBasic.java
----------------------------------------------------------------------
diff --git a/jena-core/src/main/java/org/apache/jena/system/JenaSubsystemRegistryBasic.java b/jena-core/src/main/java/org/apache/jena/system/JenaSubsystemRegistryBasic.java
index 3e12fca..7a23b4f 100644
--- a/jena-core/src/main/java/org/apache/jena/system/JenaSubsystemRegistryBasic.java
+++ b/jena-core/src/main/java/org/apache/jena/system/JenaSubsystemRegistryBasic.java
@@ -23,7 +23,10 @@ import java.util.List ;
 import java.util.ServiceLoader ;
 
 /** Implementation of {@link JenaSubsystemRegistry} for use in the simple 
- * but common case of runing a a collection (classpath) of jars. 
+ *  but common case of running Jena as a collection of jars
+ *  on the classpath. 
+ *  <p>
+ *  Uses {@link ServiceLoader} to find sub-systems. 
  */
 public class JenaSubsystemRegistryBasic implements JenaSubsystemRegistry {
     
@@ -38,11 +41,7 @@ public class JenaSubsystemRegistryBasic implements JenaSubsystemRegistry {
         synchronized (registryLock) {
             // Find subsystems asking for initialization. 
             ServiceLoader<JenaSubsystemLifecycle> sl = ServiceLoader.load(JenaSubsystemLifecycle.class) ;
-            sl.forEach(life-> {
-                if ( JenaSystem.DEBUG_INIT )
-                    System.err.println("  "+life.getClass().getSimpleName()) ;
-                add(life);
-            }) ;
+            sl.forEach(this::add) ;
         }
     }
 

http://git-wip-us.apache.org/repos/asf/jena/blob/68a76909/jena-core/src/main/java/org/apache/jena/system/JenaSystem.java
----------------------------------------------------------------------
diff --git a/jena-core/src/main/java/org/apache/jena/system/JenaSystem.java b/jena-core/src/main/java/org/apache/jena/system/JenaSystem.java
index 8360f3b..5e8e9a8 100644
--- a/jena-core/src/main/java/org/apache/jena/system/JenaSystem.java
+++ b/jena-core/src/main/java/org/apache/jena/system/JenaSystem.java
@@ -57,6 +57,8 @@ public class JenaSystem {
     /** Initialize Jena.
      * <p>
      * This function is cheap to call when already initialized so can be called to be sure.
+     * A commonly used idom in jena is in static initailizers in key classes.
+     * <p> 
      * By default, initialization happens by using {@code ServiceLoader.load} to find
      * {@link JenaSubsystemLifecycle} objects.
      * See {@link #set} to intercept that choice.
@@ -79,8 +81,14 @@ public class JenaSystem {
                 set(new JenaSubsystemRegistryBasic()) ;
             
             get().load() ;
-            get().add(new JenaInitLevel0());
             
+            // Debug : what did we find?
+            if ( JenaSystem.DEBUG_INIT ) {
+                get().snapshot().forEach(mod->
+                    System.err.println("  "+mod.getClass().getSimpleName())) ;
+            }
+            get().add(new JenaInitLevel0()) ;
+
             JenaSystem.forEach( module -> {
                 if ( DEBUG_INIT )
                     System.err.println("Init: "+module.getClass().getSimpleName());