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 2013/05/03 15:40:37 UTC
svn commit: r1478787 - in /jena/trunk:
jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/
jena-arq/src/main/java/org/apache/jena/atlas/io/
jena-arq/src/main/java/org/apache/jena/atlas/lib/
jena-arq/src/main/java/org/apache/jena/riot/ jena-ar...
Author: andy
Date: Fri May 3 13:40:37 2013
New Revision: 1478787
URL: http://svn.apache.org/r1478787
Log:
JENA-448
1/ Move IRILib to o.a.j.riot.system from o.a.j.atlas.lib
2/ Use AdapterFileManager when RIOT initializes
3/ Don't escape file:/// URIs at all - assume that when written /// they are correct.
Added:
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRILib.java
- copied, changed from r1478584, jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java
Modified:
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/XSDFuncOp.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/io/IO.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/IO_Jena.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/SysRIOT.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/RDFReaderRIOT_ARP.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorFile.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRIResolver.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java
jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java
jena/trunk/jena-arq/src/test/java/org/apache/jena/atlas/lib/TestFilenameProcessing.java
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestIRI.java
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/XSDFuncOp.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/XSDFuncOp.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/XSDFuncOp.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/XSDFuncOp.java Fri May 3 13:40:37 2013
@@ -44,9 +44,9 @@ import javax.xml.datatype.DatatypeConsta
import javax.xml.datatype.Duration ;
import javax.xml.datatype.XMLGregorianCalendar ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.lib.StrUtils ;
import org.apache.jena.atlas.logging.Log ;
+import org.apache.jena.riot.system.IRILib ;
import com.hp.hpl.jena.datatypes.RDFDatatype ;
import com.hp.hpl.jena.datatypes.xsd.XSDDatatype ;
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/io/IO.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/io/IO.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/io/IO.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/io/IO.java Fri May 3 13:40:37 2013
@@ -23,8 +23,8 @@ import java.nio.charset.Charset ;
import java.util.zip.GZIPInputStream ;
import org.apache.jena.atlas.AtlasException ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.logging.Log ;
+import org.apache.jena.riot.system.IRILib ;
import com.hp.hpl.jena.util.FileUtils ;
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java Fri May 3 13:40:37 2013
@@ -1,6 +1,6 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
+ * or more contributor license agreements. See the NOTICE filoved to riot.syae
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
@@ -19,244 +19,93 @@
package org.apache.jena.atlas.lib;
import java.io.File ;
-import java.io.IOException ;
-import org.apache.jena.atlas.AtlasException ;
-
-/** Operations related to IRIs */
+/** @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib} */
+@Deprecated
public class IRILib
{
/** Encode using the rules for a component (e.g. ':' and '/' get encoded)
* Does not encode non-ASCII characters
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
*/
- public static String encodeUriComponent(String string)
- {
- String encStr = StrUtils.encodeHex(string,'%', charsComponent) ;
- return encStr ;
+ @Deprecated
+ public static String encodeUriComponent(String string) {
+ return org.apache.jena.riot.system.IRILib.encodeUriComponent(string) ;
}
/** Encode using the rules for a file: URL. Same as encodeUriPath except
* add "~" to the encoded set.
* Does not encode non-ASCII characters
- *
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
*/
+ @Deprecated
public static String encodeFileURL(String string)
{
- String encStr = StrUtils.encodeHex(string,'%', charsFilename) ;
- return encStr ;
+ return org.apache.jena.riot.system.IRILib.encodeFileURL(string) ;
}
- /** Encode using the rules for a path (e.g. ':' and '/' do not get encoded) */
+ /** Encode using the rules for a path (e.g. ':' and '/' do not get encoded)
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
+ */
+ @Deprecated
public static String encodeUriPath(String uri)
{
- // Not perfect.
- // Encode path.
- // %-encode chars.
- uri = StrUtils.encodeHex(uri, '%', charsPath) ;
- return uri ;
+ return org.apache.jena.riot.system.IRILib.encodeUriPath(uri) ;
}
+ /** @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib} */
+ @Deprecated
public static String decode(String string)
{
- return StrUtils.decodeHex(string, '%') ;
+ return org.apache.jena.riot.system.IRILib.decode(string) ;
}
-
- private static final boolean isWindows = (File.pathSeparatorChar == ';' ) ;
- // Does not help - we use file.getCanonicalPath
- // /*package*/ public static void setIsWindowsForTesting(boolean val) { isWindows = val ; }
-
- // http://www.w3.org/TR/xpath-functions/#func-encode-for-uri
- // Encodes delimiters.
-
- /* RFC 3986
- *
- * unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
- * gen-delims = ":" / "/" / "?" / "#" / "[" / "]" / "@"
- * sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
- / "*" / "+" / "," / ";" / "="
+ /** Return a string that is an IRI for the filename.
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
*/
-
- private static char uri_reserved[] =
- {
- '!', '*', '"', '\'', '(', ')', ';', ':', '@', '&',
- '=', '+', '$', ',', '/', '?', '%', '#', '[', ']'} ;
-
- // No allowed in URIs
- private static char uri_non_chars[] = { '<', '>', '{', '}', '|', '\\', '`', '^', ' ', '\n', '\r', '\t' } ;
-
- // RFC 2396
- //private static char uri_unwise[] = { '{' , '}', '|', '\\', '^', '[', ']', '`' } ;
-
-
- private static char[] charsComponent =
- // reserved, + non-chars + nasties.
- { '!', '*', '"', '\'', '(', ')', ';', ':', '@', '&',
- '=', '+', '$', ',', '/', '?', '%', '#', '[', ']',
- '{', '}', '|', '\\', '`', '^',
- ' ', '<', '>', '\n', '\r', '\t' } ;
-
- private static char[] charsFilename =
- // reserved, + non-chars + nasties.
- { '!', '*', '"', '\'', '(', ')', ';', ':', '@', '&',
- '=', '+', '$', ',', /*'/',*/ '?', '%', '#', '[', ']',
- '{', '}', '|', '\\', '`', '^',
- ' ', '<', '>', '\n', '\r', '\t',
- '~'} ;
-
- private static char[] charsPath =
- {
- // Reserved except leave the separators alone.
- // Leave the path separator alone.
- // Leave the drive separator alone.
- '!', '*', '"', '\'', '(', ')', ';', /*':',*/ '@', '&',
- '=', '+', '$', ',', /*'/',*/ '?', '%', '#', '[', ']',
- '{', '}', '|', '\\', '`', '^',
- // Other junk
- ' ', '<', '>', '\n', '\r', '\t' } ;
-
- // The initializers must have run.
- static final String cwd ;
- static final String cwdURL ;
-
- // Current directory, with trailing "/"
- // This matters for resolution.
- static {
- String x = new File(".").getAbsolutePath() ;
- x = x.substring(0, x.length()-1) ;
- cwd = x ;
- cwdURL = plainFilenameToURL(cwd) ;
- }
-
- // See also IRIResolver
- /** Return a string that is an IRI for the filename.*/
+ @Deprecated
public static String fileToIRI(File f)
{
- return filenameToIRI(f.getAbsolutePath()) ;
+ return org.apache.jena.riot.system.IRILib.fileToIRI(f) ;
}
/** Create a string that is a IRI for the filename.
* The file name may already have file:.
* The file name may be relative.
* Encode using the rules for a path (e.g. ':' and'/' do not get encoded)
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
*/
+ @Deprecated
public static String filenameToIRI(String fn)
{
- if ( fn == null ) return cwdURL ;
-
- if ( fn.length() == 0 ) return cwdURL ;
-
- if ( fn.startsWith("file:") )
- return normalizeFilenameURI(fn) ;
- return plainFilenameToURL(fn) ;
+ return org.apache.jena.riot.system.IRILib.filenameToIRI(fn) ;
+
}
- /** Convert an IRI to a filename */
+ /** Convert an IRI to a filename
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
+ */
+ @Deprecated
public static String IRIToFilename(String iri)
{
- if ( ! iri.startsWith("file:") )
- throw new AtlasException("Not a file: URI: "+iri) ;
-
- String fn ;
- if ( iri.startsWith("file:///") )
- fn = iri.substring("file://".length()) ;
- else
- fn = iri.substring("file:".length()) ;
- return decode(fn) ;
- }
-
- /** Convert a plain file name (no file:) to a file: URL */
- private static String plainFilenameToURL(String fn)
- {
- // No "file:"
- // Make Absolute filename.
- boolean trailingSlash = fn.endsWith("/") ;
- File file = new File(fn) ;
-
- try { fn = file.getCanonicalPath() ; }
- catch (IOException e) { fn = file.getAbsolutePath() ; }
-
- if ( trailingSlash && ! fn.endsWith("/") )
- fn = fn + "/" ;
-
- if ( isWindows )
- {
- // C:\ => file:///C:/...
- if ( fn.length() >= 2 && fn.charAt(1) == ':' )
- // Windows drive letter - already absolute path.
- // Make "URI" absolute path
- fn = "/"+fn ;
- // Convert \ to /
- // Maybe should do this on all platforms? i.e consistency.
- fn = fn.replace('\\', '/' ) ;
- }
-
- fn = encodeFileURL(fn) ;
- return "file://"+fn ;
+ return org.apache.jena.riot.system.IRILib.IRIToFilename(iri) ;
}
-
- /** Sanitize a "file:" URL. Must start "file:" */
- private static String normalizeFilenameURI(String fn)
- {
- if ( ! fn.startsWith("file:/") )
- {
- // Relative path.
- String fn2 = fn.substring("file:".length()) ;
- return plainFilenameToURL(fn2) ;
- }
-
- // Starts file:///
- if ( fn.startsWith("file:///") )
- // Good.
- return encodeFileURL(fn) ;
-
- if ( fn.startsWith("file://") )
- {
- String fn2 = fn.substring("file:/".length()) ; // Leave one "/"
- return plainFilenameToURL(fn2) ;
- }
-
- // Must be file:/
- String fn2 = fn.substring("file:".length()) ;
- return plainFilenameToURL(fn2) ;
- }
-
+ /**
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
+ */
+ @Deprecated
public static String encodeNonASCII(String string)
{
- if ( ! containsNonASCII(string) )
- return string ;
-
- byte[] bytes = StrUtils.asUTF8bytes(string) ;
- StringBuilder sw = new StringBuilder() ;
- for ( int i = 0 ; i < bytes.length ; i++ )
- {
- byte b = bytes[i] ;
- // Signed bytes ...
- if ( b > 0 )
- {
- sw.append((char)b) ;
- continue ;
- }
-
- int hi = (b & 0xF0) >> 4 ;
- int lo = b & 0xF ;
- sw.append('%') ;
- sw.append(Chars.hexDigitsUC[hi]) ;
- sw.append(Chars.hexDigitsUC[lo]) ;
- }
- return sw.toString() ;
+ return org.apache.jena.riot.system.IRILib.encodeNonASCII(string) ;
}
+ /**
+ * @deprecated Moved to {@linkplain org.apache.jena.riot.system.IRILib}
+ */
+ @Deprecated
public static boolean containsNonASCII(String string)
{
- boolean clean = true ;
- for ( int i = 0 ; i < string.length() ; i++ )
- {
- char ch = string.charAt(i) ;
- if ( ch >= 127 )
- return true;
- }
- return false ;
+ return org.apache.jena.riot.system.IRILib.containsNonASCII(string) ;
}
}
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/IO_Jena.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/IO_Jena.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/IO_Jena.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/IO_Jena.java Fri May 3 13:40:37 2013
@@ -34,12 +34,9 @@ public class IO_Jena
public static void wireIntoJena()
{
- if ( false )
- {
- if ( coreFileManager == null )
- coreFileManager = FileManager.get() ;
- FileManager.setGlobalFileManager(AdapterFileManager.get()) ;
- }
+ if ( coreFileManager == null )
+ coreFileManager = FileManager.get() ;
+ FileManager.setGlobalFileManager(AdapterFileManager.get()) ;
IO_JenaReaders.wireIntoJena() ;
IO_JenaWriters.wireIntoJena() ;
}
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/SysRIOT.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/SysRIOT.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/SysRIOT.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/SysRIOT.java Fri May 3 13:40:37 2013
@@ -18,7 +18,7 @@
package org.apache.jena.riot;
-import org.apache.jena.atlas.lib.IRILib ;
+import org.apache.jena.riot.system.IRILib ;
import org.apache.jena.riot.system.IRIResolver ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java Fri May 3 13:40:37 2013
@@ -22,9 +22,9 @@ import java.io.IOException ;
import java.io.InputStream ;
import java.util.Iterator ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.riot.stream.* ;
+import org.apache.jena.riot.system.IRILib ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -232,7 +232,7 @@ public class AdapterFileManager extends
/** return whether caching is on of off */
@Override
- public boolean getCachingModels() { return modelCache.getCachingModels() ; }
+ public boolean isCachingModels() { return modelCache.isCachingModels() ; }
/** Read out of the cache - return null if not in the cache */
@Override
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java Fri May 3 13:40:37 2013
@@ -48,32 +48,32 @@ class FileManagerModelCache {
}
/** return whether caching is on of off */
- public boolean getCachingModels() { return cacheModelLoads ; }
+ public boolean isCachingModels() { return cacheModelLoads ; }
/** Read out of the cache - return null if not in the cache */
public Model getFromCache(String filenameOrURI)
{
- if ( ! getCachingModels() )
+ if ( ! isCachingModels() )
return null;
return modelCache.get(filenameOrURI) ;
}
public boolean hasCachedModel(String filenameOrURI)
{
- if ( ! getCachingModels() )
+ if ( ! isCachingModels() )
return false ;
return modelCache.containsKey(filenameOrURI) ;
}
public void addCacheModel(String uri, Model m)
{
- if ( getCachingModels() )
+ if ( isCachingModels() )
modelCache.put(uri, m) ;
}
public void removeCacheModel(String uri)
{
- if ( getCachingModels() )
+ if ( isCachingModels() )
modelCache.remove(uri) ;
}
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/RDFReaderRIOT_ARP.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/RDFReaderRIOT_ARP.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/RDFReaderRIOT_ARP.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/adapters/RDFReaderRIOT_ARP.java Fri May 3 13:40:37 2013
@@ -22,7 +22,7 @@ import java.io.File ;
import java.io.InputStream ;
import java.io.Reader ;
-import org.apache.jena.atlas.lib.IRILib ;
+import org.apache.jena.riot.system.IRILib ;
import com.hp.hpl.jena.rdf.arp.JenaReader ;
import com.hp.hpl.jena.rdf.model.Model ;
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorFile.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorFile.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorFile.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorFile.java Fri May 3 13:40:37 2013
@@ -24,10 +24,10 @@ import java.io.InputStream ;
import java.security.AccessControlException ;
import org.apache.jena.atlas.io.IO ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.web.ContentType ;
import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.riot.RDFLanguages ;
+import org.apache.jena.riot.system.IRILib ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
Copied: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRILib.java (from r1478584, jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java)
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRILib.java?p2=jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRILib.java&p1=jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java&r1=1478584&r2=1478787&rev=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/atlas/lib/IRILib.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRILib.java Fri May 3 13:40:37 2013
@@ -16,12 +16,14 @@
* limitations under the License.
*/
-package org.apache.jena.atlas.lib;
+package org.apache.jena.riot.system;
import java.io.File ;
import java.io.IOException ;
import org.apache.jena.atlas.AtlasException ;
+import org.apache.jena.atlas.lib.Chars ;
+import org.apache.jena.atlas.lib.StrUtils ;
/** Operations related to IRIs */
public class IRILib
@@ -208,15 +210,15 @@ public class IRILib
// Starts file:///
if ( fn.startsWith("file:///") )
- // Good.
- return encodeFileURL(fn) ;
+ // Assume it's good as return as-is.
+ return fn ;
if ( fn.startsWith("file://") )
{
String fn2 = fn.substring("file:/".length()) ; // Leave one "/"
return plainFilenameToURL(fn2) ;
}
-
+
// Must be file:/
String fn2 = fn.substring("file:".length()) ;
return plainFilenameToURL(fn2) ;
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRIResolver.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRIResolver.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRIResolver.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/system/IRIResolver.java Fri May 3 13:40:37 2013
@@ -20,7 +20,6 @@ package org.apache.jena.riot.system;
import org.apache.jena.atlas.lib.Cache ;
import org.apache.jena.atlas.lib.CacheFactory ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.iri.IRI ;
import org.apache.jena.iri.IRIException ;
import org.apache.jena.iri.IRIFactory ;
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java Fri May 3 13:40:37 2013
@@ -35,13 +35,13 @@ import org.apache.http.params.BasicHttpP
import org.apache.http.params.HttpConnectionParams ;
import org.apache.http.params.HttpParams ;
import org.apache.http.params.HttpProtocolParams ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.logging.Log ;
import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.riot.Lang ;
import org.apache.jena.riot.RDFDataMgr ;
import org.apache.jena.riot.RiotException ;
import org.apache.jena.riot.WebContent ;
+import org.apache.jena.riot.system.IRILib ;
import org.apache.jena.riot.web.HttpNames ;
import com.hp.hpl.jena.Jena ;
Modified: jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java Fri May 3 13:40:37 2013
@@ -27,7 +27,6 @@ import java.util.Iterator ;
import org.apache.jena.atlas.io.PeekReader ;
import org.apache.jena.atlas.iterator.IteratorResourceClosing ;
import org.apache.jena.atlas.json.io.parser.TokenizerJSON ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.lib.Sink ;
import org.apache.jena.riot.Lang ;
import org.apache.jena.riot.RDFDataMgr ;
@@ -42,11 +41,7 @@ import org.apache.jena.riot.lang.LangTur
import org.apache.jena.riot.lang.PipedQuadsStream ;
import org.apache.jena.riot.lang.PipedRDFIterator ;
import org.apache.jena.riot.lang.PipedTriplesStream ;
-import org.apache.jena.riot.system.ErrorHandlerFactory ;
-import org.apache.jena.riot.system.IRIResolver ;
-import org.apache.jena.riot.system.RiotLib ;
-import org.apache.jena.riot.system.StreamRDF ;
-import org.apache.jena.riot.system.StreamRDFLib ;
+import org.apache.jena.riot.system.* ;
import org.apache.jena.riot.tokens.Tokenizer ;
import org.apache.jena.riot.tokens.TokenizerFactory ;
Modified: jena/trunk/jena-arq/src/test/java/org/apache/jena/atlas/lib/TestFilenameProcessing.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/atlas/lib/TestFilenameProcessing.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/test/java/org/apache/jena/atlas/lib/TestFilenameProcessing.java (original)
+++ jena/trunk/jena-arq/src/test/java/org/apache/jena/atlas/lib/TestFilenameProcessing.java Fri May 3 13:40:37 2013
@@ -21,7 +21,7 @@ package org.apache.jena.atlas.lib;
import java.io.File ;
import org.apache.jena.atlas.junit.BaseTest ;
-import org.apache.jena.atlas.lib.IRILib ;
+import org.apache.jena.riot.system.IRILib ;
import org.junit.Test ;
public class TestFilenameProcessing extends BaseTest
Modified: jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java (original)
+++ jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/adapters/TestFileManager.java Fri May 3 13:40:37 2013
@@ -183,6 +183,8 @@ public class TestFileManager extends Tes
public void testCache2()
{
+ FileManager.setGlobalFileManager(AdapterFileManager.get()) ;
+
FileManager fileManager = FileManager.get() ;
fileManager.addLocatorFile(testingDir) ;
fileManager.setModelCaching(true) ;
Modified: jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestIRI.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestIRI.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestIRI.java (original)
+++ jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestIRI.java Fri May 3 13:40:37 2013
@@ -28,6 +28,7 @@ import org.apache.jena.riot.ErrorHandler
import org.apache.jena.riot.checker.CheckerIRI ;
import org.apache.jena.riot.system.Checker ;
import org.apache.jena.riot.system.ErrorHandler ;
+import org.apache.jena.riot.system.IRILib ;
import org.apache.jena.riot.system.RiotLib ;
import org.junit.Test ;
@@ -38,23 +39,23 @@ public class TestIRI extends BaseTest
static IRIFactory factory = IRIFactory.iriImplementation() ;
- @Test public void iri1() { test("http://example/") ; }
+ @Test public void iri1() { testIRI("http://example/") ; }
@Test(expected=ErrorHandlerTestLib.ExError.class)
// No relative IRIs
- public void iri2() { test("example") ; }
+ public void iri2() { testIRI("example") ; }
@Test(expected=ExWarning.class)
public void iriErr1()
- { test("http:") ; }
+ { testIRI("http:") ; }
@Test(expected=ExWarning.class)
- public void iriErr2() { test("http:///::") ; }
+ public void iriErr2() { testIRI("http:///::") ; }
@Test(expected=ExWarning.class)
- public void iriErr3() { test("http://example/.") ; }
+ public void iriErr3() { testIRI("http://example/.") ; }
- private void test(String uriStr)
+ private void testIRI(String uriStr)
{
IRI iri = factory.create(uriStr) ;
CheckerIRI.iriViolations(iri, handler) ;
@@ -74,4 +75,37 @@ public class TestIRI extends BaseTest
assertEquals("abc", n.getURI()) ;
}
+ @Test public void fileIRI_1()
+ {
+ String uri = testFileIRI("D.ttl"); ;
+ assertTrue(uri.endsWith("D.ttl")) ;
+ }
+
+ @Test public void fileIRI_2()
+ {
+ String uri = testFileIRI("file:/D.ttl") ;
+ assertTrue(uri.endsWith("D.ttl")) ;
+ }
+
+ @Test public void fileIRI_3()
+ {
+ String uri = testFileIRI("file://D.ttl") ;
+ assertTrue(uri.endsWith("D.ttl")) ;
+ }
+
+ @Test public void fileIRI_4()
+ {
+ String iri = testFileIRI("file:///D.ttl") ;
+ // Even on windows, this is used as-is so no drive letter.
+ assertEquals("file:///D.ttl", iri) ;
+ }
+
+ private static String testFileIRI(String fn)
+ {
+ String uri1 = IRILib.filenameToIRI(fn) ;
+ assertTrue(uri1.startsWith("file:///")) ;
+ String uri2 = IRILib.filenameToIRI(uri1) ;
+ assertEquals(uri1, uri2) ;
+ return uri1 ;
+ }
}
Modified: jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java?rev=1478787&r1=1478786&r2=1478787&view=diff
==============================================================================
--- jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java (original)
+++ jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java Fri May 3 13:40:37 2013
@@ -35,13 +35,13 @@ import org.apache.http.params.BasicHttpP
import org.apache.http.params.HttpConnectionParams ;
import org.apache.http.params.HttpParams ;
import org.apache.http.params.HttpProtocolParams ;
-import org.apache.jena.atlas.lib.IRILib ;
import org.apache.jena.atlas.logging.Log ;
import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.fuseki.* ;
import org.apache.jena.riot.Lang ;
import org.apache.jena.riot.RDFDataMgr ;
import org.apache.jena.riot.WebContent ;
+import org.apache.jena.riot.system.IRILib ;
import com.hp.hpl.jena.graph.Graph ;
import com.hp.hpl.jena.graph.Node ;