Author: alexdma
Date: Mon Aug 13 16:11:16 2012
New Revision: 1372490

URL: http://svn.apache.org/viewvc?rev=1372490&view=rev
Log:
Moved connectivity policy to all OWLExportable objects, implemented tight 
connectivity policy for session ontologies as well. This resolves STANBOL-681. 
For more elaborate policies please open a new ticket.

Modified:
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/ontology/OWLExportable.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/scope/CustomOntologySpace.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/session/SessionManager.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/AbstractOntologyCollectorImpl.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CoreSpaceImpl.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CustomSpaceImpl.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/ontology/OntologyScopeImpl.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionImpl.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionManagerImpl.java
    
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/resources/OSGI-INF/metatype/metatype.properties

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/ontology/OWLExportable.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/ontology/OWLExportable.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/ontology/OWLExportable.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/ontology/OWLExportable.java
 Mon Aug 13 16:11:16 2012
@@ -27,6 +27,28 @@ import org.semanticweb.owlapi.model.IRI;
 public interface OWLExportable {
 
     /**
+     * The policy that determines how an OWL exportable objects should 
represent other referenced objects.
+     * 
+     * @author alexdma
+     * 
+     */
+    public enum ConnectivityPolicy {
+
+        /**
+         * A minimum set of import statements will be used to connect this 
artifact with other referenced
+         * objects.
+         */
+        LOOSE,
+
+        /**
+         * This artifact will be connected with other referenced objects using 
as many import statements as
+         * can guarantee the greatest expressiveness of the ontologies.
+         */
+        TIGHT
+
+    };
+
+    /**
      * Returns an ontological form of this object of the specified return 
type, if supported. If the supplied
      * class is not a supported return type, an {@link 
UnsupportedOperationException} is thrown. <br>
      * <br>
@@ -54,4 +76,20 @@ public interface OWLExportable {
      */
     <O> O export(Class<O> returnType, boolean merge, IRI universalPrefix);
 
+    /**
+     * Returns the connectivity policy adopted by this object when exported to 
an OWL artifact.
+     * 
+     * @return the connectivity policy.
+     */
+    ConnectivityPolicy getConnectivityPolicy();
+
+    /**
+     * Sets the connectivity policy that will be adopted by this object when 
it is exported to an OWL
+     * artifact.
+     * 
+     * @param policy
+     *            the new connectivity policy.
+     */
+    void setConnectivityPolicy(ConnectivityPolicy policy);
+
 }

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/scope/CustomOntologySpace.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/scope/CustomOntologySpace.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/scope/CustomOntologySpace.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/scope/CustomOntologySpace.java
 Mon Aug 13 16:11:16 2012
@@ -30,13 +30,4 @@ package org.apache.stanbol.ontologymanag
  */
 public interface CustomOntologySpace extends OntologySpace {
 
-    enum ConnectivityPolicy {
-        LOOSE,
-        TIGHT
-    };
-
-    ConnectivityPolicy getConnectivityPolicy();
-
-    void setConnectivityPolicy(ConnectivityPolicy policy);
-
 }

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/session/SessionManager.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/session/SessionManager.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/session/SessionManager.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/api/session/SessionManager.java
 Mon Aug 13 16:11:16 2012
@@ -35,6 +35,11 @@ import org.semanticweb.owlapi.model.OWLO
 public interface SessionManager extends NamedArtifact, SessionListenable {
 
     /**
+     * The key used to configure the connectivity policy.
+     */
+    String CONNECTIVITY_POLICY = 
"org.apache.stanbol.ontologymanager.ontonet.session_connectivity";
+
+    /**
      * The key used to configure the base namespace of the ontology network.
      */
     String ID = "org.apache.stanbol.ontologymanager.ontonet.session_mgr_id";

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/AbstractOntologyCollectorImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/AbstractOntologyCollectorImpl.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/AbstractOntologyCollectorImpl.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/AbstractOntologyCollectorImpl.java
 Mon Aug 13 16:11:16 2012
@@ -89,6 +89,8 @@ public abstract class AbstractOntologyCo
      */
     protected int backwardPathLength = 0;
 
+    protected ConnectivityPolicy connectivityPolicy;
+
     private Set<OntologyCollectorListener> listeners = new 
HashSet<OntologyCollectorListener>();
 
     /**
@@ -484,6 +486,11 @@ public abstract class AbstractOntologyCo
     }
 
     @Override
+    public ConnectivityPolicy getConnectivityPolicy() {
+        return this.connectivityPolicy;
+    }
+
+    @Override
     public IRI getDefaultNamespace() {
         return this.namespace;
     }
@@ -730,6 +737,11 @@ public abstract class AbstractOntologyCo
         listeners.remove(listener);
     }
 
+    @Override
+    public void setConnectivityPolicy(ConnectivityPolicy policy) {
+        this.connectivityPolicy = policy;
+    }
+
     /**
      * @param namespace
      *            The OntoNet namespace that will prefix the space ID in Web 
references. This implementation

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CoreSpaceImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CoreSpaceImpl.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CoreSpaceImpl.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CoreSpaceImpl.java
 Mon Aug 13 16:11:16 2012
@@ -36,6 +36,7 @@ public class CoreSpaceImpl extends Abstr
 
     public CoreSpaceImpl(String scopeID, IRI namespace, OntologyProvider<?> 
ontologyProvider) {
         super(buildId(scopeID), namespace, SpaceType.CORE, ontologyProvider);
+        setConnectivityPolicy(ConnectivityPolicy.LOOSE);
     }
 
     @Override

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CustomSpaceImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CustomSpaceImpl.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CustomSpaceImpl.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/clerezza/CustomSpaceImpl.java
 Mon Aug 13 16:11:16 2012
@@ -49,8 +49,6 @@ public class CustomSpaceImpl extends Abs
         return (scopeID != null ? scopeID : "") + "/" + SUFFIX;
     }
 
-    private ConnectivityPolicy policy;
-
     public CustomSpaceImpl(String scopeID, IRI namespace, OntologyProvider<?> 
ontologyProvider) {
         super(buildId(scopeID), namespace, SpaceType.CUSTOM, ontologyProvider);
     }
@@ -68,11 +66,6 @@ public class CustomSpaceImpl extends Abs
     }
 
     @Override
-    public ConnectivityPolicy getConnectivityPolicy() {
-        return policy;
-    }
-
-    @Override
     protected MGraph getOntologyAsMGraph(OWLOntologyID ontologyId, boolean 
merge, IRI universalPrefix) {
         MGraph o = super.getOntologyAsMGraph(ontologyId, merge, 
universalPrefix);
         switch (getConnectivityPolicy()) {
@@ -121,11 +114,6 @@ public class CustomSpaceImpl extends Abs
         return o;
     }
 
-    @Override
-    public void setConnectivityPolicy(ConnectivityPolicy policy) {
-        this.policy = policy;
-    }
-
     /**
      * Once it is set up, a custom space is write-locked.
      */

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/ontology/OntologyScopeImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/ontology/OntologyScopeImpl.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/ontology/OntologyScopeImpl.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/ontology/OntologyScopeImpl.java
 Mon Aug 13 16:11:16 2012
@@ -322,6 +322,11 @@ public class OntologyScopeImpl implement
     }
 
     @Override
+    public ConnectivityPolicy getConnectivityPolicy() {
+        return ConnectivityPolicy.LOOSE;
+    }
+
+    @Override
     public CoreOntologySpace getCoreSpace() {
         return coreSpace;
     }
@@ -375,6 +380,12 @@ public class OntologyScopeImpl implement
     }
 
     @Override
+    public void setConnectivityPolicy(ConnectivityPolicy policy) {
+        throw new UnsupportedOperationException(
+                "Cannot set connectivity policy on scopes. Ontology scopes 
only allow LOOSE connectivity policy (set by default).");
+    }
+
+    @Override
     public synchronized void setCustomSpace(CustomOntologySpace customSpace) 
throws UnmodifiableOntologyCollectorException {
         if (this.customSpace != null && this.customSpace.isLocked()) throw new 
UnmodifiableOntologyCollectorException(
                 getCustomSpace());

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionImpl.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionImpl.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionImpl.java
 Mon Aug 13 16:11:16 2012
@@ -23,6 +23,7 @@ import java.util.List;
 import java.util.Set;
 
 import org.apache.clerezza.rdf.core.MGraph;
+import org.apache.clerezza.rdf.core.TripleCollection;
 import org.apache.clerezza.rdf.core.UriRef;
 import org.apache.clerezza.rdf.core.impl.TripleImpl;
 import org.apache.clerezza.rdf.ontologies.OWL;
@@ -38,6 +39,7 @@ import org.semanticweb.owlapi.model.IRI;
 import org.semanticweb.owlapi.model.OWLDataFactory;
 import org.semanticweb.owlapi.model.OWLOntology;
 import org.semanticweb.owlapi.model.OWLOntologyChange;
+import org.semanticweb.owlapi.model.OWLOntologyID;
 import org.semanticweb.owlapi.model.OWLOntologyManager;
 import org.slf4j.LoggerFactory;
 
@@ -85,6 +87,34 @@ public class SessionImpl extends Abstrac
         fireScopeAppended(scopeId);
     }
 
+    private void attachScopeImportsClerezza(TripleCollection target, IRI 
prefix) {
+        UriRef iri = new UriRef(prefix + _id);
+        String scopePrefix = prefix.toString();
+        scopePrefix = scopePrefix.substring(0, scopePrefix.lastIndexOf("/" + 
shortName + "/")) + "/ontology/";
+        for (String scopeID : attachedScopes) {
+            UriRef physIRI = new UriRef(scopePrefix + scopeID);
+            target.add(new TripleImpl(iri, OWL.imports, physIRI));
+        }
+    }
+
+    private void attachScopeImportsOwlApi(OWLOntology target, IRI prefix) {
+        if (!attachedScopes.isEmpty()) {
+            String scopePrefix = prefix.toString();
+            scopePrefix = scopePrefix.substring(0, scopePrefix.lastIndexOf("/" 
+ shortName + "/"))
+                          + "/ontology/";
+            List<OWLOntologyChange> changes = new 
LinkedList<OWLOntologyChange>();
+            OWLOntologyManager ontologyManager = 
target.getOWLOntologyManager();
+            OWLDataFactory df = ontologyManager.getOWLDataFactory();
+            // Add import declarations for attached scopes.
+            for (String scopeID : attachedScopes) {
+                IRI physIRI = IRI.create(scopePrefix + scopeID);
+                changes.add(new AddImport(target, 
df.getOWLImportsDeclaration(physIRI)));
+            }
+            // Commit
+            ontologyManager.applyChanges(changes);
+        }
+    }
+
     @Override
     public void clearScopes() {
         attachedScopes.clear();
@@ -127,14 +157,7 @@ public class SessionImpl extends Abstrac
     @Override
     protected MGraph exportToMGraph(boolean merge, IRI universalPrefix) {
         MGraph mg = super.exportToMGraph(merge, universalPrefix);
-        // Add import declarations for attached scopes.
-        UriRef iri = new UriRef(universalPrefix + _id);
-        String scopePrefix = universalPrefix.toString();
-        scopePrefix = scopePrefix.substring(0, scopePrefix.lastIndexOf("/" + 
shortName + "/")) + "/ontology/";
-        for (String scopeID : attachedScopes) {
-            UriRef physIRI = new UriRef(scopePrefix + scopeID);
-            mg.add(new TripleImpl(iri, OWL.imports, physIRI));
-        }
+        attachScopeImportsClerezza(mg, universalPrefix);
         return mg;
     }
 
@@ -144,21 +167,7 @@ public class SessionImpl extends Abstrac
     @Override
     protected OWLOntology exportToOWLOntology(boolean merge, IRI 
universalPrefix) {
         OWLOntology o = super.exportToOWLOntology(merge, universalPrefix);
-        if (!attachedScopes.isEmpty()) {
-            String scopePrefix = universalPrefix.toString();
-            scopePrefix = scopePrefix.substring(0, scopePrefix.lastIndexOf("/" 
+ shortName + "/"))
-                          + "/ontology/";
-            List<OWLOntologyChange> changes = new 
LinkedList<OWLOntologyChange>();
-            OWLOntologyManager ontologyManager = o.getOWLOntologyManager();
-            OWLDataFactory df = ontologyManager.getOWLDataFactory();
-            // Add import declarations for attached scopes.
-            for (String scopeID : attachedScopes) {
-                IRI physIRI = IRI.create(scopePrefix + scopeID);
-                changes.add(new AddImport(o, 
df.getOWLImportsDeclaration(physIRI)));
-            }
-            // Commit
-            ontologyManager.applyChanges(changes);
-        }
+        attachScopeImportsOwlApi(o, universalPrefix);
         return o;
     }
 
@@ -190,6 +199,38 @@ public class SessionImpl extends Abstrac
     }
 
     @Override
+    protected MGraph getOntologyAsMGraph(OWLOntologyID ontologyId, boolean 
merge, IRI universalPrefix) {
+        MGraph o = super.getOntologyAsMGraph(ontologyId, merge, 
universalPrefix);
+        switch (getConnectivityPolicy()) {
+            case LOOSE:
+                break;
+            case TIGHT:
+                attachScopeImportsClerezza(o, universalPrefix);
+                break;
+            default:
+                break;
+        }
+        return o;
+    }
+
+    @Override
+    protected OWLOntology getOntologyAsOWLOntology(OWLOntologyID ontologyId,
+                                                   boolean merge,
+                                                   IRI universalPrefix) {
+        OWLOntology o = super.getOntologyAsOWLOntology(ontologyId, merge, 
universalPrefix);
+        switch (getConnectivityPolicy()) {
+            case LOOSE:
+                break;
+            case TIGHT:
+                attachScopeImportsOwlApi(o, universalPrefix);
+                break;
+            default:
+                break;
+        }
+        return o;
+    }
+
+    @Override
     public Collection<SessionListener> getSessionListeners() {
         return listeners;
     }

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionManagerImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionManagerImpl.java?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionManagerImpl.java
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/java/org/apache/stanbol/ontologymanager/ontonet/impl/session/SessionManagerImpl.java
 Mon Aug 13 16:11:16 2012
@@ -29,6 +29,7 @@ import org.apache.felix.scr.annotations.
 import org.apache.felix.scr.annotations.Component;
 import org.apache.felix.scr.annotations.Deactivate;
 import org.apache.felix.scr.annotations.Property;
+import org.apache.felix.scr.annotations.PropertyOption;
 import org.apache.felix.scr.annotations.Reference;
 import org.apache.felix.scr.annotations.Service;
 import org.apache.stanbol.ontologymanager.ontonet.api.ONManager;
@@ -37,6 +38,7 @@ import org.apache.stanbol.ontologymanage
 import 
org.apache.stanbol.ontologymanager.ontonet.api.collector.MissingOntologyException;
 import 
org.apache.stanbol.ontologymanager.ontonet.api.collector.OntologyCollectorListener;
 import org.apache.stanbol.ontologymanager.ontonet.api.io.StoredOntologySource;
+import 
org.apache.stanbol.ontologymanager.ontonet.api.ontology.OWLExportable.ConnectivityPolicy;
 import 
org.apache.stanbol.ontologymanager.ontonet.api.ontology.OntologyNetworkMultiplexer;
 import 
org.apache.stanbol.ontologymanager.ontonet.api.ontology.OntologyProvider;
 import org.apache.stanbol.ontologymanager.ontonet.api.scope.OntologyScope;
@@ -73,6 +75,7 @@ public class SessionManagerImpl implemen
 
     public static final String _ID_DEFAULT = "session";
     public static final int _MAX_ACTIVE_SESSIONS_DEFAULT = -1;
+    public static final String _CONNECTIVITY_POLICY_DEFAULT = "TIGHT";
     public static final String _ONTOLOGY_NETWORK_NS_DEFAULT = 
"http://localhost:8080/ontonet/";;
 
     /**
@@ -84,6 +87,15 @@ public class SessionManagerImpl implemen
     @Property(name = SessionManager.ID, value = _ID_DEFAULT)
     protected String id;
 
+    @Property(name = SessionManager.CONNECTIVITY_POLICY, options = {
+                                                                    
@PropertyOption(value = '%'
+                                                                               
             + SessionManager.CONNECTIVITY_POLICY
+                                                                               
             + ".option.tight", name = "TIGHT"),
+                                                                    
@PropertyOption(value = '%'
+                                                                               
             + SessionManager.CONNECTIVITY_POLICY
+                                                                               
             + ".option.loose", name = "LOOSE")}, value = 
_CONNECTIVITY_POLICY_DEFAULT)
+    private String connectivityPolicyString;
+
     protected SessionIDGenerator idgen;
 
     protected Set<SessionListener> listeners;
@@ -204,6 +216,13 @@ public class SessionManagerImpl implemen
 
         idgen = new TimestampedSessionIDGenerator();
 
+        Object connectivityPolicy = 
configuration.get(SessionManager.CONNECTIVITY_POLICY);
+        if (connectivityPolicy == null) {
+            this.connectivityPolicyString = _CONNECTIVITY_POLICY_DEFAULT;
+        } else {
+            this.connectivityPolicyString = connectivityPolicy.toString();
+        }
+
         // Add listeners
         if (ontologyProvider instanceof SessionListener) this
                 .addSessionListener((SessionListener) ontologyProvider);
@@ -274,6 +293,17 @@ public class SessionManagerImpl implemen
         session.addOntologyCollectorListener(multiplexer);
         session.addSessionListener(multiplexer);
 
+        ConnectivityPolicy policy;
+        try {
+            policy = ConnectivityPolicy.valueOf(connectivityPolicyString);
+        } catch (IllegalArgumentException e) {
+            log.warn("The value {}", connectivityPolicyString);
+            log.warn(" -- configured as default ConnectivityPolicy does not 
match any value of the Enumeration!");
+            log.warn(" -- Setting the default policy as defined by the {}.", 
ConnectivityPolicy.class);
+            policy = ConnectivityPolicy.valueOf(_CONNECTIVITY_POLICY_DEFAULT);
+        }
+        session.setConnectivityPolicy(policy);
+
         addSession(session);
         fireSessionCreated(session);
         return session;

Modified: 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/resources/OSGI-INF/metatype/metatype.properties
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/ontologymanager/ontonet/src/main/resources/OSGI-INF/metatype/metatype.properties?rev=1372490&r1=1372489&r2=1372490&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/resources/OSGI-INF/metatype/metatype.properties
 (original)
+++ 
incubator/stanbol/trunk/ontologymanager/ontonet/src/main/resources/OSGI-INF/metatype/metatype.properties
 Mon Aug 13 16:11:16 2012
@@ -65,6 +65,11 @@ org.apache.stanbol.ontologymanager.onton
 
org.apache.stanbol.ontologymanager.ontonet.impl.clerezza.ClerezzaOntologyProvider.name
 = Apache Stanbol OntoNet ontology provider (Clerezza implementation)
 
org.apache.stanbol.ontologymanager.ontonet.impl.clerezza.ClerezzaOntologyProvider.description
 = Provides loading and low-level access to ontologies, regardless of their 
management within network components such as Scopes or Sessions.
 
+org.apache.stanbol.ontologymanager.ontonet.graphPrefix.name = Graph name prefix
+org.apache.stanbol.ontologymanager.ontonet.graphPrefix.description = The 
string that serves as a prefix every graph stored by this ontology provider.
+
+org.apache.stanbol.ontologymanager.ontonet.metaGraphId.name     = Meta graph 
name
+org.apache.stanbol.ontologymanager.ontonet.metaGraphId.description = Name of 
the graph used to store meta-level information for the Stanbol Ontology Manager.
 
 
#===============================================================================
 #Properties defined by the Session Manager
@@ -72,6 +77,11 @@ org.apache.stanbol.ontologymanager.onton
 
org.apache.stanbol.ontologymanager.ontonet.impl.session.SessionManagerImpl.name 
= Apache Stanbol OntoNet Session Manager
 
org.apache.stanbol.ontologymanager.ontonet.impl.session.SessionManagerImpl.description
 = Creates and manages ontology network sessions where semantic data can be 
loaded for performing multiple reasonign tasks.
 
+org.apache.stanbol.ontologymanager.ontonet.session_connectivity.name = 
Appended scope connectivity policy
+org.apache.stanbol.ontologymanager.ontonet.session_connectivity.description = 
Determines the amount of import statements that will connect managed ontologies 
with appended scopes when they are exported to OWL.
+org.apache.stanbol.ontologymanager.ontonet.session_connectivity.option.loose = 
Loose (only the session itself imports appended scopes)
+org.apache.stanbol.ontologymanager.ontonet.session_connectivity.option.tight = 
Tight (every ontology managed by the session imports appended scopes)
+
 org.apache.stanbol.ontologymanager.ontonet.session_mgr_id.name = Session 
manager ID
 org.apache.stanbol.ontologymanager.ontonet.session_mgr_id.description = The 
identifier of this session manager. Concatenated with the default namespace, it 
identifies the root RESTful endpoint for OntoNet sessions.
 


Reply via email to