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 2018/02/27 23:10:41 UTC

[21/24] jena git commit: Revise safe accessing of properties.

Revise safe accessing of properties.

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

Branch: refs/heads/master
Commit: c88316f9410e2656efb97a5d72e362a8b504b9ba
Parents: 27771c3
Author: Andy Seaborne <an...@apache.org>
Authored: Mon Feb 26 16:14:20 2018 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Mon Feb 26 16:14:20 2018 +0000

----------------------------------------------------------------------
 .../apache/jena/riot/adapters/AdapterRDFWriter.java | 10 ++++++----
 .../org/apache/jena/riot/lang/ReaderRIOTRDFXML.java | 16 ++++++++++------
 2 files changed, 16 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/c88316f9/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterRDFWriter.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterRDFWriter.java b/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterRDFWriter.java
index 76b87a2..89a5031 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterRDFWriter.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterRDFWriter.java
@@ -64,17 +64,19 @@ public abstract class AdapterRDFWriter extends WriterGraphRIOTBase
         w.write(ModelFactory.createModelForGraph(graph), out, baseURI) ;
     }
     
-    private static void setProperties(RDFWriter w, Context context) {
+    private void setProperties(RDFWriter w, Context context) {
         if ( context == null )
             return;
+        Map<String, Object> properties = null;
         try { 
             @SuppressWarnings("unchecked")
             Map<String, Object> p = (Map<String, Object>)(context.get(SysRIOT.sysRdfWriterProperties)) ;
-            if ( p != null )
-                p.forEach((k,v) -> w.setProperty(k, v)) ;
+            properties = p;
         } catch (Throwable ex) {
-            Log.warn(AdapterRDFWriter.class, "Problem setting properties", ex);
+            Log.warn(this, "Problem accessing the RDF/XML writer properties: properties ignored", ex);
         }
+        if ( properties != null )
+            properties.forEach((k,v) -> w.setProperty(k, v)) ;
     }
 }
 

http://git-wip-us.apache.org/repos/asf/jena/blob/c88316f9/jena-arq/src/main/java/org/apache/jena/riot/lang/ReaderRIOTRDFXML.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/lang/ReaderRIOTRDFXML.java b/jena-arq/src/main/java/org/apache/jena/riot/lang/ReaderRIOTRDFXML.java
index 3c18978..2bc7593 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/lang/ReaderRIOTRDFXML.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/lang/ReaderRIOTRDFXML.java
@@ -36,9 +36,11 @@ import org.apache.jena.rdf.model.RDFErrorHandler ;
 import org.apache.jena.rdfxml.xmlinput.* ;
 import org.apache.jena.rdfxml.xmlinput.impl.ARPSaxErrorHandler ;
 import org.apache.jena.riot.*;
-import org.apache.jena.riot.adapters.AdapterRDFWriter;
 import org.apache.jena.riot.checker.CheckerLiterals ;
-import org.apache.jena.riot.system.*;
+import org.apache.jena.riot.system.ErrorHandler;
+import org.apache.jena.riot.system.IRIResolver;
+import org.apache.jena.riot.system.ParserProfile;
+import org.apache.jena.riot.system.StreamRDF;
 import org.apache.jena.sparql.util.Context;
 import org.xml.sax.SAXException ;
 import org.xml.sax.SAXParseException ;
@@ -166,14 +168,16 @@ public class ReaderRIOTRDFXML implements ReaderRIOT
             arp.getOptions().setIRIFactory(IRIResolver.iriFactory());
 
         if ( context != null ) {
+            Map<String, Object> properties = null;
             try { 
                 @SuppressWarnings("unchecked")
                 Map<String, Object> p = (Map<String, Object>)(context.get(SysRIOT.sysRdfReaderProperties)) ;
-                if ( p != null )
-                    p.forEach((k,v) -> oneProperty(arpOptions, k, v)) ;
-            } catch (Throwable ex) {
-                Log.warn(AdapterRDFWriter.class, "Problem setting properties", ex);
+                properties = p;
+            } catch(Throwable ex) {
+                Log.warn(this, "Problem accessing the RDF/XML reader properties: properties ignored", ex);
             }
+            if ( properties != null )
+                properties.forEach((k,v) -> oneProperty(arpOptions, k, v)) ;
         }
         arp.setOptionsWith(arpOptions) ;