1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
From: Markus Koschany <apo@debian.org>
Date: Mon, 9 Jan 2023 23:31:33 +0100
Subject: RDFReader
Forwarded: not-needed
Compatibility patch for librdfa-java in Debian.
---
.../apache/jena/rdf/model/impl/RDFReaderFImpl.java | 28 ++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/jena-core/src/main/java/org/apache/jena/rdf/model/impl/RDFReaderFImpl.java b/jena-core/src/main/java/org/apache/jena/rdf/model/impl/RDFReaderFImpl.java
index 9f76c34..d5def91 100644
--- a/jena-core/src/main/java/org/apache/jena/rdf/model/impl/RDFReaderFImpl.java
+++ b/jena-core/src/main/java/org/apache/jena/rdf/model/impl/RDFReaderFImpl.java
@@ -25,6 +25,7 @@ import org.apache.jena.atlas.logging.Log ;
import org.apache.jena.rdf.model.RDFReaderI;
import org.apache.jena.rdf.model.RDFReaderF;
import org.apache.jena.shared.JenaException;
+import org.apache.jena.shared.ConfigException;
import org.apache.jena.shared.NoReaderForLangException;
public class RDFReaderFImpl extends Object implements RDFReaderF {
@@ -72,6 +73,33 @@ public class RDFReaderFImpl extends Object implements RDFReaderF {
reset();
}
+ /**
+ * Use RIOT to add custom RDF parsers. See
+ * {@code RDFParserRegistry.registerLang}
+ *
+ * @deprecated Register with RIOT.
+ */
+ @Deprecated
+ public static String setBaseReaderClassName(String lang, String className) {
+ if ( rewiredAlternative != null )
+ Log.error(RDFReaderFImpl.class, "Rewired RDFReaderFImpl - configuration changes have no effect on reading");
+
+ String oldClassName = currentEntry(lang);
+ try {
+ @SuppressWarnings("unchecked")
+ Class<? extends RDFReaderI> newClass = (Class<? extends RDFReaderI>)Class.forName(className, false,
+ Thread.currentThread().getContextClassLoader());
+ custom.put(lang, newClass);
+ return oldClassName;
+ }
+ catch (ClassNotFoundException e) {
+ throw new ConfigException("Reader not found on classpath", e);
+ }
+ catch (Exception e) {
+ throw new JenaException(e);
+ }
+ }
+
private static void reset() {
Class<? extends RDFReaderI> rdfxmlReader = org.apache.jena.rdfxml.xmlinput.JenaReader.class;
Class<? extends RDFReaderI> ntReader = org.apache.jena.rdf.model.impl.NTripleReader.class;
|