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 2016/07/25 08:36:39 UTC

[7/9] jena git commit: JENA-1210: Call model.read in AdapterFileManager.

JENA-1210: Call model.read in AdapterFileManager.

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

Branch: refs/heads/master
Commit: 9e976b64b88f237ca9d82fe69b8b3de6ef31d434
Parents: 66f1126
Author: Andy Seaborne <an...@apache.org>
Authored: Sun Jul 24 20:08:31 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun Jul 24 20:08:31 2016 +0100

----------------------------------------------------------------------
 .../jena/riot/adapters/AdapterFileManager.java  | 21 +++++++++-----------
 .../jena/riot/adapters/TestFileManager.java     | 19 ++++++++++++++++++
 jena-arq/testing/RIOT/FileManager/data.ttl      |  7 +++++++
 jena-arq/testing/RIOT/FileManager/data1.ttl     |  6 ++++++
 4 files changed, 41 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/9e976b64/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java b/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
index b92e5f5..bdc3d44 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
@@ -24,7 +24,6 @@ import java.util.Iterator ;
 import org.apache.jena.atlas.web.TypedInputStream ;
 import org.apache.jena.rdf.model.Model ;
 import org.apache.jena.riot.Lang ;
-import org.apache.jena.riot.RDFDataMgr ;
 import org.apache.jena.riot.RDFLanguages ;
 import org.apache.jena.riot.SysRIOT ;
 import org.apache.jena.riot.system.stream.* ;
@@ -277,19 +276,17 @@ public class AdapterFileManager extends org.apache.jena.util.FileManager
             log.debug("Map: " + filenameOrURI + " => " + mappedURI) ;
 
         Lang lang = 
-            (syntax != null)
+            (syntax != null) 
             ? RDFLanguages.nameToLang(syntax)
             : RDFLanguages.resourceNameToLang(mappedURI, Lang.RDFXML) ;
-    
-        if ( false ) {
-            RDFDataMgr.read(model, mappedURI, baseURI, lang);
-        } else {
-            if ( baseURI == null )
-                baseURI = SysRIOT.chooseBaseIRI(filenameOrURI) ;
-            try(TypedInputStream in = streamManager.openNoMapOrNull(mappedURI)) {
-                // May be overridden by model implementation.
-                model.read(in, baseURI, lang.getName()) ;
-            }
+
+        // Not : RDFDataMgr.read(model, mappedURI, baseURI, lang);
+        // Allow model.read to be overridden e.g. by OntModel which does import processing.   
+        if ( baseURI == null )
+            baseURI = SysRIOT.chooseBaseIRI(filenameOrURI) ;
+        try(TypedInputStream in = streamManager.openNoMapOrNull(mappedURI)) {
+            // May be overridden by model implementation.
+            model.read(in, baseURI, lang.getName()) ;
         }
         return model ;
     }

http://git-wip-us.apache.org/repos/asf/jena/blob/9e976b64/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java b/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java
index 9a4255c..a91431d 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java
@@ -21,7 +21,11 @@ package org.apache.jena.riot.adapters;
 import java.io.InputStream ;
 
 import org.apache.jena.atlas.junit.BaseTest ;
+import org.apache.jena.ontology.Individual ;
+import org.apache.jena.ontology.OntModel ;
+import org.apache.jena.ontology.OntModelSpec ;
 import org.apache.jena.rdf.model.Model ;
+import org.apache.jena.rdf.model.ModelFactory ;
 import org.apache.jena.riot.stream.TestLocationMapper ;
 import org.apache.jena.shared.NotFoundException ;
 import org.apache.jena.util.FileManager ;
@@ -130,6 +134,21 @@ public class TestFileManager extends BaseTest
         } catch (NotFoundException ex) {}
     }
     
+    @Test public void testFileManagerReadOntModel() {
+        OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM) ;
+        FileManager.get().readModel(model, testingDir+"/data.ttl") ;
+        // Check
+        Individual ind = model.getIndividual("http://example.com/individual") ;
+        String t = ind.getOntClass().getURI() ;
+        assertEquals("http://example.com/T", t) ;
+        long c1 = model.size() ;
+        
+        model.loadImports();
+
+        long c2 = model.size() ;
+        assertEquals(c1,c2) ;
+    }
+
     
     @Test public void testLocationMappingURLtoFileOpen() {
         LocationMapper locMap = new LocationMapper(TestLocationMapper.mapping) ;

http://git-wip-us.apache.org/repos/asf/jena/blob/9e976b64/jena-arq/testing/RIOT/FileManager/data.ttl
----------------------------------------------------------------------
diff --git a/jena-arq/testing/RIOT/FileManager/data.ttl b/jena-arq/testing/RIOT/FileManager/data.ttl
new file mode 100644
index 0000000..c5604c7
--- /dev/null
+++ b/jena-arq/testing/RIOT/FileManager/data.ttl
@@ -0,0 +1,7 @@
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX :     <http://example.com/>
+PREFIX owl:  <http://www.w3.org/2002/07/owl#>
+
+<#> a owl:Ontology ;
+    owl:imports <data1.ttl>
+    .

http://git-wip-us.apache.org/repos/asf/jena/blob/9e976b64/jena-arq/testing/RIOT/FileManager/data1.ttl
----------------------------------------------------------------------
diff --git a/jena-arq/testing/RIOT/FileManager/data1.ttl b/jena-arq/testing/RIOT/FileManager/data1.ttl
new file mode 100644
index 0000000..f63ae02
--- /dev/null
+++ b/jena-arq/testing/RIOT/FileManager/data1.ttl
@@ -0,0 +1,6 @@
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX :     <http://example.com/>
+PREFIX owl:  <http://www.w3.org/2002/07/owl#>
+
+:T a owl:Class .
+:individual a :T .