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 2011/10/02 11:45:40 UTC

svn commit: r1178165 - in /incubator/jena/Jena2/ARQ/trunk/src: main/java/com/hp/hpl/jena/sparql/util/FmtUtils.java test/java/com/hp/hpl/jena/sparql/ARQTestSuite.java

Author: andy
Date: Sun Oct  2 09:45:40 2011
New Revision: 1178165

URL: http://svn.apache.org/viewvc?rev=1178165&view=rev
Log:
Fix for printing queries with URIs with non-ASCII characters.

Modified:
    incubator/jena/Jena2/ARQ/trunk/src/main/java/com/hp/hpl/jena/sparql/util/FmtUtils.java
    incubator/jena/Jena2/ARQ/trunk/src/test/java/com/hp/hpl/jena/sparql/ARQTestSuite.java

Modified: incubator/jena/Jena2/ARQ/trunk/src/main/java/com/hp/hpl/jena/sparql/util/FmtUtils.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src/main/java/com/hp/hpl/jena/sparql/util/FmtUtils.java?rev=1178165&r1=1178164&r2=1178165&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src/main/java/com/hp/hpl/jena/sparql/util/FmtUtils.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src/main/java/com/hp/hpl/jena/sparql/util/FmtUtils.java Sun Oct  2 09:45:40 2011
@@ -18,28 +18,28 @@
 
 package com.hp.hpl.jena.sparql.util;
 
-import java.net.MalformedURLException ;
-
-import org.openjena.atlas.io.IndentedWriter ;
-import org.openjena.atlas.logging.Log ;
-
-import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.graph.Node_Literal ;
-import com.hp.hpl.jena.graph.Triple ;
-import com.hp.hpl.jena.iri.IRI ;
-import com.hp.hpl.jena.iri.IRIFactory ;
-import com.hp.hpl.jena.iri.IRIRelativize ;
-import com.hp.hpl.jena.rdf.model.Model ;
-import com.hp.hpl.jena.rdf.model.RDFNode ;
-import com.hp.hpl.jena.rdf.model.Resource ;
-import com.hp.hpl.jena.shared.PrefixMapping ;
-import com.hp.hpl.jena.sparql.ARQConstants ;
-import com.hp.hpl.jena.sparql.ARQInternalErrorException ;
-import com.hp.hpl.jena.sparql.core.BasicPattern ;
-import com.hp.hpl.jena.sparql.core.Prologue ;
-import com.hp.hpl.jena.sparql.core.Quad ;
-import com.hp.hpl.jena.sparql.serializer.SerializationContext ;
-import com.hp.hpl.jena.vocabulary.XSD ;
+import java.util.regex.Pattern ;
+
+import org.openjena.atlas.io.IndentedWriter ;
+import org.openjena.atlas.logging.Log ;
+
+import com.hp.hpl.jena.graph.Node ;
+import com.hp.hpl.jena.graph.Node_Literal ;
+import com.hp.hpl.jena.graph.Triple ;
+import com.hp.hpl.jena.iri.IRI ;
+import com.hp.hpl.jena.iri.IRIFactory ;
+import com.hp.hpl.jena.iri.IRIRelativize ;
+import com.hp.hpl.jena.rdf.model.Model ;
+import com.hp.hpl.jena.rdf.model.RDFNode ;
+import com.hp.hpl.jena.rdf.model.Resource ;
+import com.hp.hpl.jena.shared.PrefixMapping ;
+import com.hp.hpl.jena.sparql.ARQConstants ;
+import com.hp.hpl.jena.sparql.ARQInternalErrorException ;
+import com.hp.hpl.jena.sparql.core.BasicPattern ;
+import com.hp.hpl.jena.sparql.core.Prologue ;
+import com.hp.hpl.jena.sparql.core.Quad ;
+import com.hp.hpl.jena.sparql.serializer.SerializationContext ;
+import com.hp.hpl.jena.vocabulary.XSD ;
 
 /** Presentation forms of various kinds of objects.
  *  Beware that bNodes are abbreviated to _:b0 etc.
@@ -406,13 +406,19 @@ public class FmtUtils
     static private int relFlags = IRIRelativize.SAMEDOCUMENT | IRIRelativize.CHILD ;
     
     static public String abbrevByBase(String uri, String base)
-    {
+    {
+        if ( hasScheme(uri) )
+            return uri ;
         IRI baseIRI = IRIFactory.jenaImplementation().construct(base) ;
         IRI rel = baseIRI.relativize(uri, relFlags) ;
-        String r = null ;
-        try { r = rel.toASCIIString() ; }
-        catch (MalformedURLException  ex) { r = rel.toString() ; }
+        String r = rel.toString() ;
         return r ;
+    }
+    
+    static private Pattern schemePattern = Pattern.compile("[A-Za-z]+:") ;
+    static private boolean hasScheme(String uriStr)
+    {
+        return schemePattern.matcher(uriStr).matches() ;
     }
     
     private static String prefixFor(String uri, PrefixMapping mapping)

Modified: incubator/jena/Jena2/ARQ/trunk/src/test/java/com/hp/hpl/jena/sparql/ARQTestSuite.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src/test/java/com/hp/hpl/jena/sparql/ARQTestSuite.java?rev=1178165&r1=1178164&r2=1178165&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src/test/java/com/hp/hpl/jena/sparql/ARQTestSuite.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src/test/java/com/hp/hpl/jena/sparql/ARQTestSuite.java Sun Oct  2 09:45:40 2011
@@ -62,7 +62,6 @@ public class ARQTestSuite extends TestSu
         
         // No warnings (e.g. bad lexical forms).
         ErrorHandlerFactory.setTestLogging(false) ;
-
         
         // ARQ dependencies
         ts.addTest(new JUnit4TestAdapter(TC_Atlas.class)) ;