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/01/08 19:43:57 UTC
svn commit: r1430439 [3/4] - in /jena/branches/streaming-update/jena-arq: ./
Grammar/ Vocabularies/ bin/ bin2/ src-examples/arq/examples/riot/
src-examples/arq/examples/update/ src/main/java/arq/
src/main/java/arq/cmdline/ src/main/java/com/hp/hpl/jena...
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java Tue Jan 8 18:43:53 2013
@@ -18,35 +18,39 @@
package org.apache.jena.riot;
-import static org.openjena.riot.WebContent.contentTypeNQuads ;
-import static org.openjena.riot.WebContent.contentTypeNQuadsAlt1 ;
-import static org.openjena.riot.WebContent.contentTypeNQuadsAlt2 ;
-import static org.openjena.riot.WebContent.contentTypeNTriples ;
-import static org.openjena.riot.WebContent.contentTypeNTriplesAlt ;
-import static org.openjena.riot.WebContent.contentTypeRDFJSON ;
-import static org.openjena.riot.WebContent.contentTypeRDFXML ;
-import static org.openjena.riot.WebContent.contentTypeTriG ;
-import static org.openjena.riot.WebContent.contentTypeTriGAlt1 ;
-import static org.openjena.riot.WebContent.contentTypeTriGAlt2 ;
-import static org.openjena.riot.WebContent.contentTypeTurtle ;
-import static org.openjena.riot.WebContent.contentTypeTurtleAlt1 ;
-import static org.openjena.riot.WebContent.contentTypeTurtleAlt2 ;
+import static org.apache.jena.riot.WebContent.contentTypeN3 ;
+import static org.apache.jena.riot.WebContent.contentTypeN3Alt1 ;
+import static org.apache.jena.riot.WebContent.contentTypeN3Alt2 ;
+import static org.apache.jena.riot.WebContent.contentTypeNQuads ;
+import static org.apache.jena.riot.WebContent.contentTypeNQuadsAlt1 ;
+import static org.apache.jena.riot.WebContent.contentTypeNQuadsAlt2 ;
+import static org.apache.jena.riot.WebContent.contentTypeNTriples ;
+import static org.apache.jena.riot.WebContent.contentTypeNTriplesAlt ;
+import static org.apache.jena.riot.WebContent.contentTypeRDFJSON ;
+import static org.apache.jena.riot.WebContent.contentTypeRDFXML ;
+import static org.apache.jena.riot.WebContent.contentTypeTriG ;
+import static org.apache.jena.riot.WebContent.contentTypeTriGAlt1 ;
+import static org.apache.jena.riot.WebContent.contentTypeTriGAlt2 ;
+import static org.apache.jena.riot.WebContent.contentTypeTurtle ;
+import static org.apache.jena.riot.WebContent.contentTypeTurtleAlt1 ;
+import static org.apache.jena.riot.WebContent.contentTypeTurtleAlt2 ;
+import java.util.Collection ;
+import java.util.Collections ;
import java.util.Locale ;
import java.util.Map ;
import org.apache.jena.atlas.lib.DS ;
import org.apache.jena.atlas.web.ContentType ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.RiotException ;
import com.hp.hpl.jena.util.FileUtils ;
/** Central registry of RDF langauges and syntaxes.
- * @see ParserRegistry
+ * @see RDFParserRegistry
*/
public class RDFLanguages
{
+ // Display names
public static final String strLangRDFXML = "RDF/XML" ;
public static final String strLangTurtle = "Turtle" ;
public static final String strLangNTriples = "N-Triples" ;
@@ -56,41 +60,46 @@ public class RDFLanguages
public static final String strLangTriG = "TriG" ;
/** RDF/XML */
- public static final Lang2 langRDFXML = LangBuilder.create(strLangRDFXML, contentTypeRDFXML)
+ public static final Lang RDFXML = LangBuilder.create(strLangRDFXML, contentTypeRDFXML)
.addAltNames("RDFXML", "RDF/XML-ABBREV", "RDFXML-ABBREV")
.addFileExtensions("rdf","owl","xml")
.build() ;
/** Turtle */
- public static final Lang2 langTurtle = LangBuilder.create(strLangTurtle, contentTypeTurtle)
+ public static final Lang TURTLE = LangBuilder.create(strLangTurtle, contentTypeTurtle)
.addAltNames("TTL")
.addAltContentTypes(contentTypeTurtleAlt1, contentTypeTurtleAlt2)
.addFileExtensions("ttl")
//.addFileExtensions("n3")
.build() ;
+ /** N3 (treat as Turtle) */
+ public static final Lang N3 = LangBuilder.create(strLangN3, contentTypeN3)
+ .addAltContentTypes(contentTypeN3, contentTypeN3Alt1, contentTypeN3Alt2)
+ .addFileExtensions("n3")
+ .build() ;
/** N-Triples */
- public static final Lang2 langNTriples = LangBuilder.create(strLangNTriples, contentTypeNTriples)
- .addAltNames("NT", "NTriples", "NTriple", "N-Triple")
+ public static final Lang NTRIPLES = LangBuilder.create(strLangNTriples, contentTypeNTriples)
+ .addAltNames("NT", "NTriples", "NTriple", "N-Triple", "N-Triples")
.addAltContentTypes(contentTypeNTriplesAlt)
.addFileExtensions("nt")
.build() ;
/** RDF/JSON (this is not JSON-LD) */
- public static final Lang2 langRDFJSON = LangBuilder.create(strLangRDFJSON, contentTypeRDFJSON)
+ public static final Lang RDFJSON = LangBuilder.create(strLangRDFJSON, contentTypeRDFJSON)
.addAltNames("RDFJSON")
.addFileExtensions("rj", "json")
.build() ;
/** TriG */
- public static final Lang2 langTriG = LangBuilder.create(strLangTriG, contentTypeTriG)
+ public static final Lang TRIG = LangBuilder.create(strLangTriG, contentTypeTriG)
.addAltContentTypes(contentTypeTriGAlt1, contentTypeTriGAlt2)
.addFileExtensions("trig")
.build() ;
/** N-Quads */
- public static final Lang2 langNQuads = LangBuilder.create(strLangNQuads, contentTypeNQuads)
- .addAltNames("NQ", "NQuads", "NQuad", "N-Quad")
+ public static final Lang NQUADS = LangBuilder.create(strLangNQuads, contentTypeNQuads)
+ .addAltNames("NQ", "NQuads", "NQuad", "N-Quad", "N-Quads")
.addAltContentTypes(contentTypeNQuadsAlt1, contentTypeNQuadsAlt2)
.addFileExtensions("nq")
.build() ;
@@ -98,45 +107,56 @@ public class RDFLanguages
// ---- Central registry
/** Mapping of colloquial name to language */
- private static Map<String, Lang2> mapLabelToLang = DS.map() ;
+ private static Map<String, Lang> mapLabelToLang = DS.map() ;
+
+ // For testing mainly.
+ public static Collection<Lang> getRegisteredLanguages() { return Collections.unmodifiableCollection(mapLabelToLang.values()); }
/** Mapping of content type (main and alternatives) to language */
- private static Map<String, Lang2> mapContentTypeToLang = DS.map() ;
+ private static Map<String, Lang> mapContentTypeToLang = DS.map() ;
/** Mapping of file extension to language */
- private static Map<String, Lang2> mapFileExtToLang = DS.map() ;
+ private static Map<String, Lang> mapFileExtToLang = DS.map() ;
// ----------------------
+ static { init() ; }
private static boolean initialized = false ;
public static synchronized void init ()
{
if ( initialized ) return ;
initialized = true ;
initStandard() ;
+ Lang.RDFXML = RDFLanguages.RDFXML ;
+ Lang.NTRIPLES = RDFLanguages.NTRIPLES ;
+ Lang.N3 = RDFLanguages.N3 ;
+ Lang.TURTLE = RDFLanguages.TURTLE ;
+ Lang.RDFJSON = RDFLanguages.RDFJSON ;
+ Lang.NQUADS = RDFLanguages.NQUADS ;
+ Lang.TRIG = RDFLanguages.TRIG ;
}
// ----------------------
/** Standard built-in languages */
private static void initStandard()
{
- register(langRDFXML) ;
- register(langTurtle) ;
- register(langNTriples) ;
- register(langRDFJSON) ;
- register(langTriG) ;
- register(langNQuads) ;
+ register(RDFXML) ;
+ register(TURTLE) ;
+ register(N3) ;
+ register(NTRIPLES) ;
+ register(RDFJSON) ;
+ register(TRIG) ;
+ register(NQUADS) ;
}
/** Register a language.
- * To create a {@link Lang2} object use {@link LangBuilder}.
+ * To create a {@link Lang} object use {@link LangBuilder}.
* See also
- * {@link ParserRegistry#registerLangTriples} and
- * {@link ParserRegistry#registerLangQuads}
+ * {@link RDFParserRegistry#registerLang}
* for registering a language and it's RDF parser fatory.
*
- * @see ParserRegistry
+ * @see RDFParserRegistry
*/
- public static void register(Lang2 lang)
+ public static void register(Lang lang)
{
if ( lang == null )
throw new IllegalArgumentException("null for language") ;
@@ -158,12 +178,12 @@ public class RDFLanguages
}
}
- private static void checkRegistration(Lang2 lang)
+ private static void checkRegistration(Lang lang)
{
if ( lang == null )
return ;
String label = canonicalKey(lang.getLabel()) ;
- Lang2 lang2 = mapLabelToLang.get(label) ;
+ Lang lang2 = mapLabelToLang.get(label) ;
if ( lang2 == null )
return ;
if ( lang.equals(lang2) )
@@ -190,7 +210,7 @@ public class RDFLanguages
* of content types and file extensions.
*/
- public static void unregister(Lang2 lang)
+ public static void unregister(Lang lang)
{
if ( lang == null )
throw new IllegalArgumentException("null for language") ;
@@ -204,48 +224,47 @@ public class RDFLanguages
mapFileExtToLang.remove(canonicalKey(ext)) ;
}
- public static boolean isRegistered(Lang2 lang)
+ public static boolean isRegistered(Lang lang)
{
if ( lang == null )
throw new IllegalArgumentException("null for language") ;
String label = canonicalKey(lang.getLabel()) ;
- Lang2 lang2 = mapLabelToLang.get(label) ;
+ Lang lang2 = mapLabelToLang.get(label) ;
if ( lang2 == null )
return false ;
checkRegistration(lang) ;
return true ;
}
-
- /** return true if the language is registered with the triples parser factories */
- public static boolean isTriples(Lang2 lang) { return ParserRegistry.isTriples(lang) ; }
- /** return true if the language is registered with the quads parser factories */
- public static boolean isQuads(Lang2 lang) { return ParserRegistry.isQuads(lang) ; }
+ /** return true if the language is registered as a triples language */
+ public static boolean isTriples(Lang lang) { return RDFParserRegistry.isTriples(lang) ; }
- /** Map a content type (without charset) to a {@link Lang2} */
- public static Lang2 contentTypeToLang(String contentType)
+ /** return true if the language is registered as a quads language */
+ public static boolean isQuads(Lang lang) { return RDFParserRegistry.isQuads(lang) ; }
+
+ /** Map a content type (without charset) to a {@link Lang} */
+ public static Lang contentTypeToLang(String contentType)
{
String key = canonicalKey(contentType) ;
return mapContentTypeToLang.get(key) ;
}
- /** Map a content type (without charset) to a {@link Lang2} */
- public static Lang2 contentTypeToLang(ContentType ct)
+ /** Map a content type (without charset) to a {@link Lang} */
+ public static Lang contentTypeToLang(ContentType ct)
{
String key = canonicalKey(ct.getContentType()) ;
return mapContentTypeToLang.get(key) ;
}
-
- /** Map a colloquial name (e.g. "Turtle") to a {@link Lang2} */
- public static Lang2 shortnameToLang(String label)
+ /** Map a colloquial name (e.g. "Turtle") to a {@link Lang} */
+ public static Lang shortnameToLang(String label)
{
String key = canonicalKey(label) ;
return mapLabelToLang.get(key) ;
}
- /** Try to map a file extension to a {@link Lang2}; return null on no registered mapping */
- public static Lang2 fileExtToLang(String ext)
+ /** Try to map a file extension to a {@link Lang}; return null on no registered mapping */
+ public static Lang fileExtToLang(String ext)
{
if ( ext == null ) return null ;
if ( ext.startsWith(".") )
@@ -254,21 +273,32 @@ public class RDFLanguages
return mapFileExtToLang.get(ext) ;
}
- /** Try to map a file name to a {@link Lang2}; return null on no registered mapping */
- public static Lang2 filenameToLang(String filename)
+ /** Try to map a file name to a {@link Lang}; return null on no registered mapping */
+ public static Lang filenameToLang(String filename)
{
+ if ( filename == null ) return null ;
+ if ( filename.endsWith(".gz") )
+ filename = filename.substring(0, filename.length()-3) ;
return fileExtToLang(FileUtils.getFilenameExt(filename)) ;
}
- /** Turn a name for a language into a {@link Lang2} object.
+ /** Try to map a file name to a {@link Lang}; return null on no registered mapping */
+ public static Lang filenameToLang(String filename, Lang dftLang)
+ {
+ Lang lang = filenameToLang(filename) ;
+ return (lang == null) ? dftLang : lang ;
+ }
+
+
+ /** Turn a name for a language into a {@link Lang} object.
* The name can be a label, or a content type.
*/
- public static Lang2 nameToLang(String langName)
+ public static Lang nameToLang(String langName)
{
if ( langName == null )
return null ;
- Lang2 lang = shortnameToLang(langName) ;
+ Lang lang = shortnameToLang(langName) ;
if ( lang != null )
return lang ;
lang = contentTypeToLang(langName) ;
@@ -277,23 +307,11 @@ public class RDFLanguages
static String canonicalKey(String x) { return x.toLowerCase(Locale.US) ; }
- // TEMPORARY
- public static Lang convert(Lang2 lang2)
- {
- if ( lang2 == langRDFXML ) return Lang.RDFXML ;
- if ( lang2 == langTurtle ) return Lang.TURTLE ;
- if ( lang2 == langNTriples ) return Lang.NTRIPLES ;
- if ( lang2 == langRDFJSON ) return Lang.RDFJSON ;
- if ( lang2 == langTriG ) return Lang.TRIG ;
- if ( lang2 == langNQuads ) return Lang.NQUADS ;
- throw new RiotException("No such language to convert: "+lang2) ;
- }
-
public static ContentType guessContentType(String resourceName)
{
if ( resourceName == null )
return null ;
- Lang2 lang = filenameToLang(resourceName) ;
+ Lang lang = filenameToLang(resourceName) ;
if ( lang == null )
return null ;
return lang.getContentType() ;
@@ -303,5 +321,12 @@ public class RDFLanguages
{
throw new RiotException(message) ;
}
+
+ public static boolean sameLang(Lang lang1, Lang lang2)
+ {
+ if ( lang1 == null || lang2 == null ) return false ;
+ if ( lang1 == lang2 ) return true ;
+ return lang1.getLabel() == lang2.getLabel() ;
+ }
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOT.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOT.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOT.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOT.java Tue Jan 8 18:43:53 2013
@@ -20,17 +20,17 @@ package org.apache.jena.riot;
import java.io.InputStream ;
-import org.apache.jena.atlas.lib.Sink ;
import org.apache.jena.atlas.web.ContentType ;
+import org.apache.jena.riot.system.StreamRDF ;
import com.hp.hpl.jena.sparql.util.Context ;
-/** Interface to parsing processes that takes an input stream and emit T items.
- * The "read" operation may be called repeatedly for a single Reader, with different
- * arguments but calsl are not overlapping.
+/** Interface to parsing processes that takes an input stream and emit items.
+ * The "read" operation may be called repeatedly for a single ReaderRIOT, with different
+ * arguments but calls are not overlapping.
*/
-public interface ReaderRIOT<T>
+public interface ReaderRIOT
{
- public void read(InputStream in, String baseURI, ContentType ct, Sink<T> sink, Context context) ;
+ public void read(InputStream in, String baseURI, ContentType ct, StreamRDF output, Context context) ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTBase.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTBase.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTBase.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTBase.java Tue Jan 8 18:43:53 2013
@@ -20,20 +20,20 @@ package org.apache.jena.riot;
import java.io.InputStream ;
-import org.apache.jena.atlas.lib.Sink ;
import org.apache.jena.atlas.web.ContentType ;
+import org.apache.jena.riot.system.StreamRDF ;
import com.hp.hpl.jena.sparql.util.Context ;
-public abstract class ReaderRIOTBase<T> implements ReaderRIOT<T>
+public abstract class ReaderRIOTBase implements ReaderRIOT
{
@Override
- public void read(InputStream in, String baseURI, ContentType ct, Sink<T> sink, Context context)
+ public void read(InputStream in, String baseURI, ContentType ct, StreamRDF output, Context context)
{
- Lang2 lang = RDFLanguages.contentTypeToLang(ct) ;
- read(in, baseURI,lang, sink, context) ;
+ Lang lang = RDFLanguages.contentTypeToLang(ct) ;
+ read(in, baseURI,lang, output, context) ;
}
- public abstract void read(InputStream in, String baseURI, Lang2 lang, Sink<T> sink, Context context) ;
+ public abstract void read(InputStream in, String baseURI, Lang lang, StreamRDF output, Context context) ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTFactory.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTFactory.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTFactory.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/ReaderRIOTFactory.java Tue Jan 8 18:43:53 2013
@@ -18,7 +18,7 @@
package org.apache.jena.riot;
-public interface ReaderRIOTFactory<T>
+public interface ReaderRIOTFactory
{
- public ReaderRIOT<T> create(Lang2 language) ;
+ public ReaderRIOT create(Lang language) ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterFileManager.java Tue Jan 8 18:43:53 2013
@@ -23,7 +23,7 @@ import java.io.InputStream ;
import java.util.Iterator ;
import org.apache.jena.atlas.lib.IRILib ;
-import org.apache.jena.riot.TypedInputStream2 ;
+import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.riot.stream.* ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -31,7 +31,6 @@ import org.slf4j.LoggerFactory ;
import com.hp.hpl.jena.rdf.model.Model ;
import com.hp.hpl.jena.shared.NotFoundException ;
import com.hp.hpl.jena.util.FileUtils ;
-import com.hp.hpl.jena.util.LocationMapper ;
import com.hp.hpl.jena.util.TypedStream ;
/** FileManager
@@ -44,8 +43,8 @@ import com.hp.hpl.jena.util.TypedStream
* resources: applications may also create specialised FileManagers.
*
* A FileManager contains a list of location functions to try: the global
- * FileManger has one {@link LocatorFile2}, one {@link LocatorClassLoader} and
- * one {@link LocatorURL2}
+ * FileManger has one {@link LocatorFile}, one {@link LocatorClassLoader} and
+ * one {@link LocatorURL}
*
* Main operations:
* <ul>
@@ -65,7 +64,7 @@ import com.hp.hpl.jena.util.TypedStream
* copy of a common RDF dataset may be used whenever the usual URL is used by
* the application.
*
- * The {@link LocatorFile2} also supports the idea of "current directory".
+ * The {@link LocatorFile} also supports the idea of "current directory".
*
* @see StreamManager
* @see LocationMapper
@@ -134,17 +133,17 @@ public class AdapterFileManager extends
while ( iter.hasNext() )
streamManager.addLocator(AdapterLib.convert(iter.next())) ;
- LocationMapper locmap = filemanager.getLocationMapper() ;
+ com.hp.hpl.jena.util.LocationMapper locmap = filemanager.getLocationMapper() ;
streamManager.setLocationMapper(AdapterLib.copyConvert(locmap)) ;
}
public AdapterFileManager(StreamManager streamManager)
{
- this(streamManager, (LocationMapper2)null) ;
+ this(streamManager, (LocationMapper)null) ;
}
/** Create a FileManger using a RIOT StreamManager and RIOT LocationMapper */
- public AdapterFileManager(StreamManager streamManager, LocationMapper2 mapper)
+ public AdapterFileManager(StreamManager streamManager, LocationMapper mapper)
{
if ( streamManager == null )
streamManager = new StreamManager() ;
@@ -155,7 +154,7 @@ public class AdapterFileManager extends
/** Create a "standard" FileManager. */
public static AdapterFileManager makeGlobal()
{
- AdapterFileManager fMgr = new AdapterFileManager(StreamManager.get(), (LocationMapper2)null) ;
+ AdapterFileManager fMgr = new AdapterFileManager(StreamManager.get(), (LocationMapper)null) ;
return fMgr ;
}
@@ -164,11 +163,11 @@ public class AdapterFileManager extends
/** Set the location mapping */
@Override
- public void setLocationMapper(LocationMapper mapper) { streamManager.setLocationMapper(AdapterLib.copyConvert(mapper)) ; }
+ public void setLocationMapper(com.hp.hpl.jena.util.LocationMapper mapper) { streamManager.setLocationMapper(AdapterLib.copyConvert(mapper)) ; }
/** Get the location mapping */
@Override
- public LocationMapper getLocationMapper() { return new AdapterLocationMapper(streamManager.getLocationMapper()) ; }
+ public com.hp.hpl.jena.util.LocationMapper getLocationMapper() { return new AdapterLocationMapper(streamManager.getLocationMapper()) ; }
/** Return an iterator over all the handlers */
@Override
@@ -194,7 +193,7 @@ public class AdapterFileManager extends
@Override
public void addLocatorFile(String dir)
{
- LocatorFile2 fLoc = new LocatorFile2(dir) ;
+ LocatorFile fLoc = new LocatorFile(dir) ;
streamManager.addLocator(fLoc) ;
}
@@ -210,7 +209,7 @@ public class AdapterFileManager extends
@Override
public void addLocatorURL()
{
- Locator loc = new LocatorURL2() ;
+ Locator loc = new LocatorURL() ;
streamManager.addLocator(loc) ;
}
@@ -278,7 +277,7 @@ public class AdapterFileManager extends
if ( baseURI == null )
baseURI = chooseBaseURI(filenameOrURI) ;
- TypedInputStream2 in = streamManager.openNoMapOrNull(mappedURI) ;
+ TypedInputStream in = streamManager.openNoMapOrNull(mappedURI) ;
if ( in == null )
{
if ( log.isDebugEnabled() )
@@ -290,8 +289,8 @@ public class AdapterFileManager extends
// XXX
//syntax
}
- model.read(in.getInput(), baseURI, syntax) ;
- try { in.getInput().close(); } catch (IOException ex) {}
+ model.read(in, baseURI, syntax) ;
+ try { in.close(); } catch (IOException ex) {}
return model ;
}
@@ -312,7 +311,7 @@ public class AdapterFileManager extends
@Override
public InputStream open(String filenameOrURI)
{
- return streamManager.open(filenameOrURI).getInput() ;
+ return streamManager.open(filenameOrURI) ;
}
/** Apply the mapping of a filename or URI */
@@ -322,7 +321,7 @@ public class AdapterFileManager extends
/** Open a file using the locators of this FileManager
* but without location mapping. Throws RiotNotFoundException if not found.*/
@Override
- public InputStream openNoMap(String filenameOrURI) { return streamManager.openNoMap(filenameOrURI).getInput() ; }
+ public InputStream openNoMap(String filenameOrURI) { return streamManager.openNoMap(filenameOrURI) ; }
/** Open a file using the locators of this FileManager
* without location mapping. Return null if not found
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLib.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLib.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLib.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLib.java Tue Jan 8 18:43:53 2013
@@ -20,24 +20,24 @@ package org.apache.jena.riot.adapters;
import java.util.Iterator ;
-import com.hp.hpl.jena.sparql.util.Utils ;
-
-import org.apache.jena.riot.TypedInputStream2 ;
+import org.apache.jena.atlas.web.TypedInputStream ;
+import org.apache.jena.riot.RiotException ;
import org.apache.jena.riot.stream.* ;
-import org.openjena.riot.RiotException ;
+
+import com.hp.hpl.jena.sparql.util.Utils ;
class AdapterLib
{
- public static com.hp.hpl.jena.util.TypedStream convert(TypedInputStream2 in)
+ public static com.hp.hpl.jena.util.TypedStream convert(TypedInputStream in)
{
- return new com.hp.hpl.jena.util.TypedStream(in.getInput(), in.getContentType(), in.getCharset()) ;
+ return new com.hp.hpl.jena.util.TypedStream(in, in.getContentType(), in.getCharset()) ;
}
- public static LocationMapper2 copyConvert(com.hp.hpl.jena.util.LocationMapper locMap)
+ public static LocationMapper copyConvert(com.hp.hpl.jena.util.LocationMapper locMap)
{
- LocationMapper2 lmap2 = new LocationMapper2() ;
+ LocationMapper lmap2 = new LocationMapper() ;
if ( locMap == null )
return null ;
@@ -63,7 +63,7 @@ class AdapterLib
if ( oldloc instanceof com.hp.hpl.jena.util.LocatorFile )
{
com.hp.hpl.jena.util.LocatorFile lFile = (com.hp.hpl.jena.util.LocatorFile)oldloc ;
- return new LocatorFile2(lFile.getDir()) ;
+ return new LocatorFile(lFile.getDir()) ;
}
if ( oldloc instanceof com.hp.hpl.jena.util.LocatorClassLoader )
{
@@ -71,7 +71,7 @@ class AdapterLib
return new LocatorClassLoader(classLoc.getClassLoader()) ;
}
if ( oldloc instanceof com.hp.hpl.jena.util.LocatorURL )
- return new LocatorURL2() ;
+ return new LocatorURL() ;
if ( oldloc instanceof com.hp.hpl.jena.util.LocatorZip )
{
com.hp.hpl.jena.util.LocatorZip zipLoc = (com.hp.hpl.jena.util.LocatorZip)oldloc ;
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocationMapper.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocationMapper.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocationMapper.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocationMapper.java Tue Jan 8 18:43:53 2013
@@ -20,16 +20,16 @@ package org.apache.jena.riot.adapters;
import java.util.Iterator ;
-import org.apache.jena.riot.stream.LocationMapper2 ;
+import org.apache.jena.riot.stream.LocationMapper ;
import com.hp.hpl.jena.rdf.model.Model ;
/** Adapter from Jena2 LocationMapper to RIOT LocationMapper */
public class AdapterLocationMapper extends com.hp.hpl.jena.util.LocationMapper
{
- private final LocationMapper2 mapper ;
+ private final LocationMapper mapper ;
- public AdapterLocationMapper(LocationMapper2 mapper) { this.mapper = mapper ; }
+ public AdapterLocationMapper(LocationMapper mapper) { this.mapper = mapper ; }
@Override
public String altMapping(String uri, String otherwise) { return mapper.altMapping(uri, otherwise) ; }
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocator.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocator.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocator.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/AdapterLocator.java Tue Jan 8 18:43:53 2013
@@ -18,7 +18,7 @@
package org.apache.jena.riot.adapters;
-import org.apache.jena.riot.TypedInputStream2 ;
+import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.riot.stream.Locator ;
public class AdapterLocator implements com.hp.hpl.jena.util.Locator
@@ -30,7 +30,7 @@ public class AdapterLocator implements c
@Override
public com.hp.hpl.jena.util.TypedStream open(String filenameOrURI)
{
- TypedInputStream2 in = locator.open(filenameOrURI) ;
+ TypedInputStream in = locator.open(filenameOrURI) ;
return AdapterLib.convert(in) ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/adapters/FileManagerModelCache.java Tue Jan 8 18:43:53 2013
@@ -25,6 +25,9 @@ import com.hp.hpl.jena.rdf.model.Model ;
// Legacy support.
class FileManagerModelCache {
+
+ public FileManagerModelCache() {}
+
boolean cacheModelLoads = false ;
Map<String, Model> modelCache = null ;
// -------- Cache operations
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/JenaIOEnvironment.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/JenaIOEnvironment.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/JenaIOEnvironment.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/JenaIOEnvironment.java Tue Jan 8 18:43:53 2013
@@ -20,7 +20,7 @@ package org.apache.jena.riot.stream;
import java.util.StringTokenizer ;
-import org.apache.jena.riot.TypedInputStream2 ;
+import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.riot.adapters.AdapterFileManager ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -36,13 +36,13 @@ import com.hp.hpl.jena.vocabulary.Locati
*/
class JenaIOEnvironment
{
- static LocationMapper2 theMapper = null ;
+ static LocationMapper theMapper = null ;
/** Get the global LocationMapper */
- public static LocationMapper2 getLocationMapper()
+ public static LocationMapper getLocationMapper()
{
if ( theMapper == null )
{
- theMapper = new LocationMapper2() ;
+ theMapper = new LocationMapper() ;
if ( getGlobalConfigPath() != null )
JenaIOEnvironment.createLocationMapper(getGlobalConfigPath()) ;
}
@@ -76,27 +76,27 @@ class JenaIOEnvironment
* If called before any call to get(), then the usual default global location mapper is not created
* @param globalLocationMapper
*/
- public static void setGlobalLocationMapper(LocationMapper2 globalLocationMapper)
+ public static void setGlobalLocationMapper(LocationMapper globalLocationMapper)
{
theMapper = globalLocationMapper ;
}
/** Make a location mapper from the path settings */
- static public LocationMapper2 makeGlobal()
+ static public LocationMapper makeGlobal()
{
- LocationMapper2 lMap = new LocationMapper2() ;
+ LocationMapper lMap = new LocationMapper() ;
if ( getGlobalConfigPath() != null )
{
- LocationMapper2 lMap2 = JenaIOEnvironment.createLocationMapper(getGlobalConfigPath()) ;
+ LocationMapper lMap2 = JenaIOEnvironment.createLocationMapper(getGlobalConfigPath()) ;
lMap.copyFrom(lMap2) ;
}
return lMap ;
}
/** Create a LocationMapper based on Model */
- public static LocationMapper2 processConfig(Model m)
+ public static LocationMapper processConfig(Model m)
{
- LocationMapper2 locMap = new LocationMapper2() ;
+ LocationMapper locMap = new LocationMapper() ;
StmtIterator mappings =
m.listStatements(null, LocationMappingVocab.mapping, (RDFNode)null) ;
@@ -146,11 +146,11 @@ class JenaIOEnvironment
* to find a description of a LocationMapper, then create and return a
* LocationMapper based on the description.
*/
- public static LocationMapper2 createLocationMapper(String configPath)
+ public static LocationMapper createLocationMapper(String configPath)
{
// Old code : maintenance: use Webreader to open the model.
- LocationMapper2 locMap = new LocationMapper2() ;
+ LocationMapper locMap = new LocationMapper() ;
if ( configPath == null || configPath.length() == 0 )
{
log.warn("Null configuration") ;
@@ -159,12 +159,12 @@ class JenaIOEnvironment
// Make a file manager to look for the location mapping file
StreamManager smgr = new StreamManager() ;
- smgr.addLocator(new LocatorFile2()) ;
+ smgr.addLocator(new LocatorFile()) ;
smgr.addLocator(new LocatorClassLoader(smgr.getClass().getClassLoader())) ;
try {
String uriConfig = null ;
- TypedInputStream2 in = null ;
+ TypedInputStream in = null ;
StringTokenizer pathElems = new StringTokenizer( configPath, AdapterFileManager.PATH_DELIMITER );
while (pathElems.hasMoreTokens()) {
@@ -187,11 +187,11 @@ class JenaIOEnvironment
}
String syntax = FileUtils.guessLang(uriConfig) ;
Model model = ModelFactory.createDefaultModel() ;
- model.read(in.getInput(), uriConfig, syntax) ;
+ model.read(in, uriConfig, syntax) ;
processConfig(model) ;
} catch (JenaException ex)
{
- LoggerFactory.getLogger(LocationMapper2.class).warn("Error in configuration file: "+ex.getMessage()) ;
+ LoggerFactory.getLogger(LocationMapper.class).warn("Error in configuration file: "+ex.getMessage()) ;
}
return locMap ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/Locator.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/Locator.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/Locator.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/Locator.java Tue Jan 8 18:43:53 2013
@@ -18,7 +18,7 @@
package org.apache.jena.riot.stream;
-import org.apache.jena.riot.TypedInputStream2 ;
+import org.apache.jena.atlas.web.TypedInputStream ;
/**
* Interface to things that open TypedStreams from a place
@@ -27,6 +27,6 @@ import org.apache.jena.riot.TypedInputSt
public interface Locator
{
// Open a stream given a name of some kind (not necessarily an IRI).
- public TypedInputStream2 open(String uri) ;
+ public TypedInputStream open(String uri) ;
public String getName() ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorClassLoader.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorClassLoader.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorClassLoader.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorClassLoader.java Tue Jan 8 18:43:53 2013
@@ -21,8 +21,8 @@ package org.apache.jena.riot.stream;
import java.io.InputStream ;
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.TypedInputStream2 ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -49,7 +49,7 @@ public class LocatorClassLoader impleme
{ return classLoader.hashCode(); }
@Override
- public TypedInputStream2 open(String resourceName)
+ public TypedInputStream open(String resourceName)
{
if ( classLoader == null )
return null ;
@@ -67,7 +67,7 @@ public class LocatorClassLoader impleme
ContentType ct = RDFLanguages.guessContentType(resourceName) ;
// No sensible base URI.
- return new TypedInputStream2(in, ct, null) ;
+ return new TypedInputStream(in, ct, null) ;
}
public ClassLoader getClassLoader()
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorZip.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorZip.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorZip.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/LocatorZip.java Tue Jan 8 18:43:53 2013
@@ -24,8 +24,8 @@ import java.util.zip.ZipEntry ;
import java.util.zip.ZipFile ;
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.TypedInputStream2 ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -52,7 +52,7 @@ public class LocatorZip implements Locat
}
@Override
- public TypedInputStream2 open(String filenameOrURI)
+ public TypedInputStream open(String filenameOrURI)
{
ZipEntry entry = zipFile.getEntry(filenameOrURI) ;
if ( entry == null )
@@ -77,7 +77,7 @@ public class LocatorZip implements Locat
log.trace("Found: "+filenameOrURI) ;
ContentType ct = RDFLanguages.guessContentType(filenameOrURI) ;
- return new TypedInputStream2(in, ct, filenameOrURI) ;
+ return new TypedInputStream(in, ct, filenameOrURI) ;
}
catch (IOException ex)
{
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/StreamManager.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/StreamManager.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/StreamManager.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/apache/jena/riot/stream/StreamManager.java Tue Jan 8 18:43:53 2013
@@ -22,8 +22,8 @@ import java.util.ArrayList ;
import java.util.Collections ;
import java.util.List ;
-import org.apache.jena.riot.TypedInputStream2 ;
-import org.openjena.riot.RiotNotFoundException ;
+import org.apache.jena.atlas.web.TypedInputStream ;
+import org.apache.jena.riot.RiotNotFoundException ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
@@ -41,20 +41,20 @@ public class StreamManager
public static boolean logAllLookups = true ;
private List<Locator> handlers = new ArrayList<Locator>() ;
- private LocationMapper2 mapper = null ;
+ private LocationMapper mapper = null ;
private static StreamManager globalStreamManager ;
/** Return a default configuration StreamManager
- * with a {@link LocatorFile2},
- * {@link LocatorURL2},
+ * with a {@link LocatorFile},
+ * {@link LocatorURL},
* and {@link LocatorClassLoader}
*/
public static StreamManager makeDefaultStreamManager()
{
StreamManager streamManager = new StreamManager() ;
- streamManager.addLocator(new LocatorFile2(null)) ;
- streamManager.addLocator(new LocatorURL2()) ;
+ streamManager.addLocator(new LocatorFile(null)) ;
+ streamManager.addLocator(new LocatorURL()) ;
streamManager.addLocator(new LocatorClassLoader(streamManager.getClass().getClassLoader())) ;
return streamManager ;
}
@@ -66,7 +66,7 @@ public class StreamManager
/** Open a file using the locators of this FileManager.
* Returns null if not found.
*/
- public TypedInputStream2 open(String filenameOrURI)
+ public TypedInputStream open(String filenameOrURI)
{
if ( log.isDebugEnabled())
log.debug("open("+filenameOrURI+")") ;
@@ -103,9 +103,9 @@ public class StreamManager
/** Open a file using the locators of this FileManager
* but without location mapping. Throws RiotNotFoundException if not found.*/
- public TypedInputStream2 openNoMap(String filenameOrURI)
+ public TypedInputStream openNoMap(String filenameOrURI)
{
- TypedInputStream2 in = openNoMapOrNull(filenameOrURI) ;
+ TypedInputStream in = openNoMapOrNull(filenameOrURI) ;
if ( in == null )
throw new RiotNotFoundException(filenameOrURI) ;
return in ;
@@ -115,11 +115,11 @@ public class StreamManager
* without location mapping. Return null if not found
*/
- public TypedInputStream2 openNoMapOrNull(String filenameOrURI)
+ public TypedInputStream openNoMapOrNull(String filenameOrURI)
{
for (Locator loc : handlers)
{
- TypedInputStream2 in = loc.open(filenameOrURI) ;
+ TypedInputStream in = loc.open(filenameOrURI) ;
if ( in != null )
{
if ( log.isDebugEnabled() )
@@ -132,10 +132,10 @@ public class StreamManager
/** Set the location mapping */
- public void setLocationMapper(LocationMapper2 _mapper) { mapper = _mapper ; }
+ public void setLocationMapper(LocationMapper _mapper) { mapper = _mapper ; }
/** Get the location mapping */
- public LocationMapper2 getLocationMapper() { return mapper ; }
+ public LocationMapper getLocationMapper() { return mapper ; }
/** Return an immutable list of all the handlers */
public List<Locator> locators() { return Collections.unmodifiableList(handlers) ; }
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/Lang.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/Lang.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/Lang.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/Lang.java Tue Jan 8 18:43:53 2013
@@ -18,164 +18,24 @@
package org.openjena.riot;
-import static org.openjena.riot.WebContent.langNQuads ;
-import static org.openjena.riot.WebContent.langNTriple ;
-import static org.openjena.riot.WebContent.langNTriples ;
-import static org.openjena.riot.WebContent.langRDFXML ;
-import static org.openjena.riot.WebContent.langRDFXMLAbbrev ;
-import static org.openjena.riot.WebContent.langTTL ;
+import org.apache.jena.riot.RDFLanguages ;
-import com.hp.hpl.jena.util.FileUtils ;
-
-public enum Lang
+/** @deprecated Use {@link RDFLanguages} or {@link org.apache.jena.riot.Lang} */
+@Deprecated
+public class Lang
{
- RDFXML ( "RDF/XML", true,
- new String[]{ "rdf", "owl", "xml" },
- langRDFXML, langRDFXMLAbbrev) ,
-
- NTRIPLES ( "N-Triples", true,
- new String[]{ "nt" },
- langNTriples, langNTriple) ,
-
- N3 ( "N3", true,
- new String[]{ "n3" }) ,
-
- TURTLE ( "Turtle", true,
- new String[]{ "ttl" },
- langTTL) ,
-
- RDFJSON ( "RDF/JSON", true,
- new String[]{ "rj", "json" }) ,
-
- NQUADS ( "N-Quads", false,
- new String[]{ "nq" },
- langNQuads) ,
-
- TRIG ( "TriG", false,
- new String[]{ "trig" }) ,
-
- //TUPLE("rdf-tuples", true, langNTuple)
- ;
-
- private final String name ;
- private final boolean isTriples ;
- private final String[] altNames ;
- private final String[] fileExtensions;
-
-// public static final String langXML = langXML ;
-// public static final String langNTriple = langNTriple ; // FileUtils is wrong.
-// public static final String langN3 = FileUtils.langN3 ;
-// public static final String langTurtle = FileUtils.langTurtle ;
-//
-// public static final String langNQuads = "N-QUADS" ;
-// public static final String langTrig = "TRIG" ;
-
-//
- private Lang(String name, boolean isTriples, String[] fileExtensions, String...altNames )
- {
- this.name = name ;
- this.isTriples = isTriples ;
- this.altNames = altNames ;
- this.fileExtensions = fileExtensions;
- }
-
- public String getName() { return name ; }
-
- /** get the list of potential file extensions. */
- public String[] getFileExtensions()
- {
- return fileExtensions;
- }
-
- /** Get the default file extension. */
- public String getDefaultFileExtension() {
- if ( getFileExtensions() == null )
- return null ;
- return getFileExtensions()[0];
- }
-
- public boolean isTriples() { return isTriples ; }
- public boolean isQuads() { return ! isTriples ; }
-
- public String getContentType() { return WebContent.mapLangToContentType(this) ; }
-
- @Override
- public String toString() { return "lang:"+name ; }
-
- /** Translate a name into a Lang
- * Throws RiotException if the name is not recognized.
- */
- public static Lang get(String name)
- {
- Lang lang = get(name, null) ;
- if ( lang == null )
- throw new RiotException("No such language: "+name) ;
- return lang ;
- }
-
- /** Translate a name into a Lang, rturn the default if no match found.
- */
- public static Lang get(String name, Lang dftLang)
- {
- for (Lang l : Lang.values())
- if ( matchesLangName(name, l) )
- return l ;
- return dftLang ;
- }
-
-
- private static boolean matchesLangName(String name, Lang lang)
- {
- if ( name.equalsIgnoreCase(lang.name) ) return true ;
- if ( lang.altNames != null )
- for ( String x : lang.altNames )
- {
- if ( x.equalsIgnoreCase(name))
- return true ;
- }
- return false ;
- }
-
- /** Guess the language, based on filename, or URL, extenstion.
- * Returns null if there isn't a guess available
- */
- public static Lang guess(String resourceIRI, Lang dftLang)
- {
- Lang lang = guess(resourceIRI) ;
- if ( lang != null )
- return lang ;
- return dftLang ;
- }
-
- /** Guess the language, based on filename, or URL, extenstion.
- * Returns null if there isn't a guess available
- */
- public static Lang guess(String resourceIRI)
- {
- if ( resourceIRI == null )
- return null ;
- String ext = FileUtils.getFilenameExt(resourceIRI).toLowerCase() ;
- if ( ext != null && ext.equals("gz") )
- {
- resourceIRI = resourceIRI.substring(0, resourceIRI.length()-".gz".length()) ;
- ext = FileUtils.getFilenameExt(resourceIRI).toLowerCase() ;
- }
- for (Lang lang : Lang.values())
- {
- if (isOneOf( ext, lang.fileExtensions))
- return lang;
- }
- return null;
- }
-
- private static boolean isOneOf(String ext, String[] names)
- {
- for ( String x : names )
- {
- if ( ext.equals(x) )
- return true ;
- }
- return false ;
- }
-
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang RDFXML = RDFLanguages.RDFXML ;
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang NTRIPLES = RDFLanguages.NTRIPLES ;
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang N3 = RDFLanguages.N3 ;
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang TURTLE = RDFLanguages.TURTLE ;
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang RDFJSON = RDFLanguages.RDFJSON ;
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang NQUADS = RDFLanguages.NQUADS ;
+ /** @deprecated Use constant from {@link RDFLanguages} */
+ @Deprecated public static final org.apache.jena.riot.Lang TRIG = RDFLanguages.TRIG ;
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RIOT.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RIOT.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RIOT.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RIOT.java Tue Jan 8 18:43:53 2013
@@ -1,4 +1,4 @@
-/*
+/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -18,60 +18,13 @@
package org.openjena.riot;
-import org.apache.jena.riot.ParserRegistry ;
-import org.apache.jena.riot.RDFLanguages ;
-import org.apache.jena.riot.WebReader2 ;
-
-import com.hp.hpl.jena.query.ARQ ;
-import com.hp.hpl.jena.sparql.SystemARQ ;
-import com.hp.hpl.jena.sparql.mgt.ARQMgt ;
-import com.hp.hpl.jena.sparql.mgt.SystemInfo ;
+/** @deprecated Use org.apache.jena.riot.RIOT */
+@Deprecated
public class RIOT
{
- /** IRI for ARQ */
- public static final String riotIRI = "http://openjena.org/#riot" ;
-
- /** The product name */
- public static final String NAME = "RIOT";
-
- /** The root package name for RIOT */
- public static final String PATH = "org.openjena.riot";
-
- public static final String VERSION = "ARQ/"+ARQ.VERSION ;
- public static final String BUILD_DATE = ARQ.BUILD_DATE ;
-
-// static private String metadataLocation = "com/hp/hpl/jena/sparql/arq-properties.xml" ;
-//
-// static private Metadata metadata = new Metadata(metadataLocation) ;
-//
-// /** The full name of the current version */
-// public static final String VERSION = metadata.get(PATH+".version", "unset") ;
-//
-// /** The date and time at which this release was built */
-// public static final String BUILD_DATE = metadata.get(PATH+".build.datetime", "unset") ;
-
- public static void setStrictMode(boolean state)
- {
- SysRIOT.strictMode = state ;
- SysRIOT.StrictXSDLexicialForms = state ;
- }
-
- static boolean initialized = false ;
- public static synchronized void init()
- {
- if ( initialized ) return ;
- initialized = true ;
-
- String NS = RIOT.PATH ;
- SystemInfo sysInfo2 = new SystemInfo(RIOT.riotIRI, RIOT.VERSION, RIOT.BUILD_DATE) ;
- ARQMgt.register(NS+".system:type=SystemInfo", sysInfo2) ;
- SystemARQ.registerSubSystem(sysInfo2) ;
-
- RDFLanguages.init() ;
- ParserRegistry.init() ;
-
- SysRIOT.wireIntoJena() ;
- WebReader2.wireIntoJena() ;
- }
+ /** @deprecated Use org.apache.jena.riot.RIOT#init() */
+ @Deprecated
+ public static void init() { org.apache.jena.riot.RIOT.init() ; }
}
+
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotException.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotException.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotException.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotException.java Tue Jan 8 18:43:53 2013
@@ -18,7 +18,11 @@
package org.openjena.riot;
-public class RiotException extends RuntimeException
+import com.hp.hpl.jena.shared.JenaException ;
+
+/** @deprecated use org.pache.jena.riot.RiotExpection */
+@Deprecated
+public class RiotException extends JenaException
{
public RiotException() { super() ; }
public RiotException(String msg) { super(msg) ; }
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotNotFoundException.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotNotFoundException.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotNotFoundException.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotNotFoundException.java Tue Jan 8 18:43:53 2013
@@ -18,7 +18,9 @@
package org.openjena.riot;
-public class RiotNotFoundException extends RiotException
+/** @deprecated use org.apache.jena.riot.RiotNotFoundException */
+@Deprecated
+public class RiotNotFoundException extends org.apache.jena.riot.RiotException
{
public RiotNotFoundException() { super() ; }
public RiotNotFoundException(String msg) { super(msg) ; }
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParseException.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParseException.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParseException.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParseException.java Tue Jan 8 18:43:53 2013
@@ -18,7 +18,12 @@
package org.openjena.riot;
-public class RiotParseException extends RiotException
+import org.apache.jena.riot.SysRIOT ;
+
+
+/** @deprecated use org.apache.jena.riot.RiotParseException */
+@Deprecated
+public class RiotParseException extends org.apache.jena.riot.RiotException
{
final private long line ;
final private long column ;
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParsePuller.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParsePuller.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParsePuller.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotParsePuller.java Tue Jan 8 18:43:53 2013
@@ -31,8 +31,9 @@ import org.apache.jena.atlas.AtlasExcept
import org.apache.jena.atlas.lib.Closeable ;
import org.apache.jena.atlas.lib.Sink ;
import org.apache.jena.atlas.lib.SinkToQueue ;
-import org.openjena.riot.lang.LangRIOT ;
-import org.openjena.riot.system.ParserProfile ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.system.ParserProfile ;
/**
* A wrapper that converts the RIOT parsing API from push to pull. It does this by starting up a
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotQuadParsePuller.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotQuadParsePuller.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotQuadParsePuller.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotQuadParsePuller.java Tue Jan 8 18:43:53 2013
@@ -21,7 +21,11 @@ package org.openjena.riot;
import java.io.InputStream ;
import org.apache.jena.atlas.lib.Sink ;
-import org.openjena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RiotReader ;
+import org.apache.jena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.system.StreamRDF ;
+import org.apache.jena.riot.system.StreamRDFLib ;
import com.hp.hpl.jena.sparql.core.Quad ;
@@ -40,7 +44,8 @@ public class RiotQuadParsePuller extends
@Override
protected LangRIOT createParser(Sink<Quad> sink)
{
- return RiotReader.createParserQuads(in, lang, baseIRI, sink) ;
+ StreamRDF dest = StreamRDFLib.sinkQuads(sink) ;
+ return RiotReader.createParser(in, lang, baseIRI, dest) ;
}
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotReader.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotReader.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotReader.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotReader.java Tue Jan 8 18:43:53 2013
@@ -18,39 +18,43 @@
package org.openjena.riot;
-import static org.openjena.riot.Lang.NQUADS ;
-import static org.openjena.riot.Lang.NTRIPLES ;
-import static org.openjena.riot.Lang.RDFJSON ;
-import static org.openjena.riot.Lang.RDFXML ;
+import static org.apache.jena.riot.RDFLanguages.NQUADS ;
+import static org.apache.jena.riot.RDFLanguages.TRIG ;
import java.io.InputStream ;
-import java.util.Iterator;
+import java.util.Iterator ;
-import org.apache.jena.atlas.io.IO ;
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.openjena.riot.lang.* ;
-import org.openjena.riot.system.IRIResolver ;
-import org.openjena.riot.system.RiotLib ;
-import org.openjena.riot.system.SinkExtendTriplesToQuads ;
-import org.openjena.riot.tokens.Tokenizer ;
-import org.openjena.riot.tokens.TokenizerFactory ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RDFDataMgr ;
+import org.apache.jena.riot.RDFLanguages ;
+import org.apache.jena.riot.lang.* ;
+import org.apache.jena.riot.system.* ;
+import org.apache.jena.riot.tokens.Tokenizer ;
+import org.apache.jena.riot.tokens.TokenizerFactory ;
import com.hp.hpl.jena.graph.Triple ;
import com.hp.hpl.jena.sparql.core.Quad ;
/** Operations to access RIOT parsers and send the output to
- * a Sink (triples or quads as appropriate)
+ * a ParserOutput (triples or quads as appropriate).
+ * Operations to send to a sink (special case of a ParserOutput).
+ * @see RDFDataMgr for reading from a location, including web access and content negotation.
+ * @deprecated Use {@link org.apache.jena.riot.RiotReader}
*/
+
+@Deprecated
public class RiotReader
{
/** Parse a file, sending triples to a sink.
* Must be in a triples syntax.
* @param filename
* @param sink Where to send the triples from the parser.
+ * @see RDFDataMgr#read
*/
public static void parseTriples(String filename, Sink<Triple> sink)
{ parseTriples(filename, null, null, sink) ; }
@@ -61,27 +65,12 @@ public class RiotReader
* @param lang Language, or null for "guess from URL" (e.g. file extension)
* @param baseIRI Base IRI, or null for based on input filename
* @param sink Where to send the triples from the parser.
- */
+ * @see RDFDataMgr#read
+ */
public static void parseTriples(String filename, Lang lang, String baseIRI, Sink<Triple> sink)
{
- checkTriplesLanguage(filename, lang) ;
-
- InputStream in = IO.openFile(filename) ;
- String base = chooseBaseIRI(baseIRI, filename) ;
-
- if ( lang == null )
- lang = Lang.guess(filename, NTRIPLES) ; // ** N-Triples
-
- if ( lang == RDFXML )
- {
- // Fudge to make the bulk loader process RDF/XML files.
- LangRDFXML.create(in, base, filename, ErrorHandlerFactory.getDefaultErrorHandler(), sink).parse() ;
- IO.close(in) ;
- return ;
- }
-
- parseTriples(in, lang, base, sink) ;
- IO.close(in) ;
+ StreamRDF dest = StreamRDFLib.sinkTriples(sink) ;
+ parseTriples(filename, lang, baseIRI, dest) ;
}
/** Parse an InputStream, sending triples to a sink.
@@ -89,12 +78,12 @@ public class RiotReader
* @param lang Language.
* @param baseIRI Base IRI.
* @param sink Where to send the triples from the parser.
- */
-
+ * @see RDFDataMgr#read
+ */
public static void parseTriples(InputStream in, Lang lang, String baseIRI, Sink<Triple> sink)
{
- LangRIOT parser = RiotReader.createParserTriples(in, lang, baseIRI, sink) ;
- parser.parse() ;
+ StreamRDF dest = StreamRDFLib.sinkTriples(sink) ;
+ parseTriples(in, lang, baseIRI, dest) ;
}
// -------- Quads
@@ -102,6 +91,7 @@ public class RiotReader
/** Parse a file, sending quads to a sink.
* @param filename
* @param sink Where to send the quads from the parser.
+ * @see RDFDataMgr#read
*/
public static void parseQuads(String filename, Sink<Quad> sink)
{ parseQuads(filename, null, null, sink) ; }
@@ -111,73 +101,108 @@ public class RiotReader
* @param lang Language, or null for "guess from filename" (e.g. extension)
* @param baseIRI Base IRI, or null for base on input filename
* @param sink Where to send the quads from the parser.
+ * @see RDFDataMgr#read
*/
public static void parseQuads(String filename, Lang lang, String baseIRI, Sink<Quad> sink)
{
- InputStream in = IO.openFile(filename) ;
- String base = chooseBaseIRI(baseIRI, filename) ;
- if ( lang == null )
- lang = Lang.guess(filename, NQUADS) ; // ** N-Quads
- parseQuads(in, lang, base, sink) ;
- IO.close(in) ;
+ StreamRDF dest = StreamRDFLib.sinkQuads(sink) ;
+ parseQuads(filename, lang, baseIRI, dest) ;
}
/** Parse an InputStream, sending quads to a sink.
* @param in Source for bytes to parse.
- * @param lang Language.
+ * @param lang Language.org.apache.jena.riot.RiotReader
* @param baseIRI Base IRI.
* @param sink Where to send the quads from the parser.
+ * @see RDFDataMgr#read
*/
public static void parseQuads(InputStream in, Lang lang, String baseIRI, Sink<Quad> sink)
{
- LangRIOT parser = RiotReader.createParserQuads(in, lang, baseIRI, sink) ;
- parser.parse() ;
+ StreamRDF dest = StreamRDFLib.sinkQuads(sink) ;
+ parseQuads(in, lang, baseIRI, dest) ;
+ }
+
+ /** Parse a file, sending triples to a sink.
+ * Must be in a triples syntax.
+ * @param filename
+ * @param dest Where to send the triples from the parser.
+ */
+ public static void parseTriples(String filename, StreamRDF dest)
+ { parseTriples(filename, null, null, dest) ; }
+
+ /** Parse a file, sending triples to a sink.
+ * Must be in a triples syntax.
+ * @param filename
+ * @param lang Language, or null for "guess from URL" (e.g. file extension)
+ * @param baseIRI Base IRI, or null for based on input filename
+ * @param dest Where to send the triples from the parser.
+ */
+ public static void parseTriples(String filename, Lang lang, String baseIRI, StreamRDF dest)
+ {
+ org.apache.jena.riot.RiotReader.parse(filename, lang, baseIRI, dest) ;
+ }
+
+ /** Parse an InputStream, sending triples to a sink.
+ * @param in Source for bytes to parse.
+ * @param lang Language.
+ * @param baseIRI Base IRI.
+ * @param dest Where to send the triples from the parser.
+ */
+ public static void parseTriples(InputStream in, Lang lang, String baseIRI, StreamRDF dest)
+ {
+ org.apache.jena.riot.RiotReader.parse(in, lang, baseIRI, dest) ;
+ }
+
+ // -------- Quads
+
+ /** Parse a file, sending quads to a sink.
+ * @param filename
+ * @param dest Where to send the quads from the parser.
+ */
+ public static void parseQuads(String filename, StreamRDF dest)
+ { parseQuads(filename, null, null, dest) ; }
+
+ /** Parse a file, sending quads to a sink.
+ * @param filename
+ * @param lang Language, or null for "guess from filename" (e.g. extension)
+ * @param baseIRI Base IRI, or null for base on input filename
+ * @param dest Where to send the quads from the parser.
+ */
+ public static void parseQuads(String filename, Lang lang, String baseIRI, StreamRDF dest)
+ {
+ org.apache.jena.riot.RiotReader.parse(filename, lang, baseIRI, dest) ;
+ }
+
+ /** Parse an InputStream, sending quads to a sink.
+ * @param in Source for bytes to parse.
+ * @param lang Language.
+ * @param baseIRI Base IRI.
+ * @param dest Where to send the quads from the parser.
+ */
+ public static void parseQuads(InputStream in, Lang lang, String baseIRI, StreamRDF dest)
+ {
+ org.apache.jena.riot.RiotReader.parse(in, lang, baseIRI, dest) ;
}
// -------- Parsers
/** Create a parser for a triples language */
- public static LangRIOT createParserTriples(InputStream input, Lang lang, String baseIRI, Sink<Triple> sink)
+ public static LangRIOT createParserTriples(InputStream input, Lang lang, String baseIRI, StreamRDF dest)
{
- if ( lang == RDFXML )
- {
- if ( baseIRI != null )
- baseIRI = IRIResolver.resolveString(baseIRI) ;
- return LangRDFXML.create(input, baseIRI, baseIRI, ErrorHandlerFactory.getDefaultErrorHandler(), sink) ;
- }
- Tokenizer tokenizer = ( lang == RDFJSON ) ?
- new TokenizerJSON(PeekReader.makeUTF8(input)) :
- TokenizerFactory.makeTokenizerUTF8(input) ;
- return createParserTriples(tokenizer, lang, baseIRI ,sink) ;
+ return org.apache.jena.riot.RiotReader.createParser(input, lang, baseIRI, dest) ;
}
/** Create a parser for a triples language */
- public static LangRIOT createParserTriples(Tokenizer tokenizer, Lang lang, String baseIRI, Sink<Triple> sink)
+ public static LangRIOT createParserTriples(Tokenizer tokenizer, Lang lang, String baseIRI, StreamRDF dest)
{
- switch (lang)
- {
- case N3 :
- case TURTLE :
- return createParserTurtle(tokenizer, baseIRI, sink) ;
- case NTRIPLES :
- return createParserNTriples(tokenizer, sink) ;
- case RDFJSON :
- // But it must be a JSON tokenizer ...
- return createParserRdfJson(tokenizer, sink) ;
- case RDFXML :
- throw new RiotException("Not possible - can't parse RDF/XML from a RIOT token stream") ;
- case NQUADS :
- case TRIG :
- throw new RiotException("Not a triples language: "+lang) ;
- }
- return null ;
+ return org.apache.jena.riot.RiotReader.createParser(tokenizer, lang, baseIRI, dest) ;
}
// TODO create a Tokenizer version of this method
public static Iterator<Triple> createIteratorTriples(InputStream input, Lang lang, String baseIRI)
{
// Special case N-Triples, because the RIOT reader has a pull interface
- if (lang == Lang.NTRIPLES)
+ if ( RDFLanguages.sameLang(RDFLanguages.NTRIPLES, lang) )
{
return new IteratorResourceClosing<Triple>(createParserNTriples(input, null), input);
}
@@ -191,43 +216,30 @@ public class RiotReader
}
/** Create a parser for a quads (or triples) language */
- public static LangRIOT createParserQuads(InputStream input, Lang lang, String baseIRI, Sink<Quad> sink)
+ public static LangRIOT createParserQuads(InputStream input, Lang lang, String baseIRI, StreamRDF dest)
{
- if ( lang.isTriples() )
- {
- SinkExtendTriplesToQuads converter = new SinkExtendTriplesToQuads(sink) ;
- return createParserTriples(input, lang, baseIRI, converter) ;
- }
Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
- return createParserQuads(tokenizer, lang, baseIRI, sink) ;
+ return createParserQuads(tokenizer, lang, baseIRI, dest) ;
}
/** Create a parser for a quads language */
- public static LangRIOT createParserQuads(Tokenizer tokenizer, Lang lang, String baseIRI, Sink<Quad> sink)
+ public static LangRIOT createParserQuads(Tokenizer tokenizer, Lang lang, String baseIRI, StreamRDF dest)
{
- switch (lang)
- {
- case NTRIPLES : // Or move N-Triples just go through N-Quads.
- case N3 :
- case TURTLE :
- case RDFXML :
- case RDFJSON :
- // Add a triples to quads wrapper.
- SinkExtendTriplesToQuads converter = new SinkExtendTriplesToQuads(sink) ;
- return createParserTriples(tokenizer, lang, baseIRI, converter) ;
- case NQUADS :
- return createParserNQuads(tokenizer, sink) ;
- case TRIG :
- return createParserTriG(tokenizer, baseIRI, sink) ;
- }
- return null ;
+ if ( RDFLanguages.sameLang(NQUADS, lang) )
+ return createParserNQuads(tokenizer, dest) ;
+ if ( RDFLanguages.sameLang(TRIG, lang) )
+ return createParserTriG(tokenizer, baseIRI, dest) ;
+
+ // try to do via triples to quads extension.
+ dest = StreamRDFLib.extendTriplesToQuads(dest) ;
+ return createParserTriples(tokenizer, lang, baseIRI, dest) ;
}
// TODO create a Tokenizer version of this method
public static Iterator<Quad> createIteratorQuads(InputStream input, Lang lang, String baseIRI)
{
// Special case N-Quads, because the RIOT reader has a pull interface
- if (lang == Lang.NTRIPLES)
+ if ( RDFLanguages.sameLang(RDFLanguages.NTRIPLES, lang) )
{
return new IteratorResourceClosing<Quad>(createParserNQuads(input, null), input);
}
@@ -241,82 +253,82 @@ public class RiotReader
}
/** Create a parser for Turtle, with default behaviour */
- public static LangTurtle createParserTurtle(InputStream input, String baseIRI, Sink<Triple> sink)
+ public static LangTurtle createParserTurtle(InputStream input, String baseIRI, StreamRDF dest)
{
Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
- return createParserTurtle(tokenizer, baseIRI, sink) ;
+ return createParserTurtle(tokenizer, baseIRI, dest) ;
}
/** Create a parser for Turtle, with default behaviour */
- public static LangTurtle createParserTurtle(Tokenizer tokenizer, String baseIRI, Sink<Triple> sink)
+ public static LangTurtle createParserTurtle(Tokenizer tokenizer, String baseIRI, StreamRDF dest)
{
- LangTurtle parser = new LangTurtle(tokenizer, RiotLib.profile(Lang.TURTLE, baseIRI), sink) ;
+ LangTurtle parser = new LangTurtle(tokenizer, RiotLib.profile(RDFLanguages.TURTLE, baseIRI), dest) ;
return parser ;
}
/** Create a parser for RDF/XML */
- public static LangRDFXML createParserRDFXML(InputStream input, String baseIRI, Sink<Triple> sink)
+ public static LangRDFXML createParserRDFXML(InputStream input, String baseIRI, StreamRDF dest)
{
if ( baseIRI == null )
baseIRI = chooseBaseIRI() ;
- LangRDFXML parser = LangRDFXML.create(input, baseIRI, baseIRI, ErrorHandlerFactory.getDefaultErrorHandler(), sink) ;
+ LangRDFXML parser = LangRDFXML.create(input, baseIRI, baseIRI, ErrorHandlerFactory.getDefaultErrorHandler(), dest) ;
return parser ;
}
/** Create parsers for RDF/JSON */
- public static LangRDFJSON createParserRdfJson(Tokenizer tokenizer, Sink<Triple> sink)
+ public static LangRDFJSON createParserRdfJson(Tokenizer tokenizer, StreamRDF dest)
{
- LangRDFJSON parser = new LangRDFJSON(tokenizer, RiotLib.profile(Lang.RDFJSON, null), sink) ;
+ LangRDFJSON parser = new LangRDFJSON(tokenizer, RiotLib.profile(RDFLanguages.RDFJSON, null), dest) ;
return parser;
}
- public static LangRDFJSON createParserRdfJson(InputStream input, Sink<Triple> sink)
+ public static LangRDFJSON createParserRdfJson(InputStream input, StreamRDF dest)
{
TokenizerJSON tokenizer = new TokenizerJSON(PeekReader.makeUTF8(input)) ;
- return createParserRdfJson(tokenizer, sink) ;
+ return createParserRdfJson(tokenizer, dest) ;
}
/** Create a parser for TriG, with default behaviour */
- public static LangTriG createParserTriG(InputStream input, String baseIRI, Sink<Quad> sink)
+ public static LangTriG createParserTriG(InputStream input, String baseIRI, StreamRDF dest)
{
Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
- return createParserTriG(tokenizer, baseIRI, sink) ;
+ return createParserTriG(tokenizer, baseIRI, dest) ;
}
/** Create a parser for TriG, with default behaviour */
- public static LangTriG createParserTriG(Tokenizer tokenizer, String baseIRI, Sink<Quad> sink)
+ public static LangTriG createParserTriG(Tokenizer tokenizer, String baseIRI, StreamRDF dest)
{
if ( baseIRI == null )
baseIRI = chooseBaseIRI() ;
- LangTriG parser = new LangTriG(tokenizer, RiotLib.profile(Lang.TRIG, baseIRI), sink) ;
+ LangTriG parser = new LangTriG(tokenizer, RiotLib.profile(RDFLanguages.TRIG, baseIRI), dest) ;
return parser ;
}
/** Create a parser for N-Triples, with default behaviour */
- public static LangNTriples createParserNTriples(InputStream input, Sink<Triple> sink)
+ public static LangNTriples createParserNTriples(InputStream input, StreamRDF dest)
{
Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(input) ;
- return createParserNTriples(tokenizer, sink) ;
+ return createParserNTriples(tokenizer, dest) ;
}
/** Create a parser for N-Triples, with default behaviour */
- public static LangNTriples createParserNTriples(Tokenizer tokenizer, Sink<Triple> sink)
+ public static LangNTriples createParserNTriples(Tokenizer tokenizer, StreamRDF dest)
{
- LangNTriples parser = new LangNTriples(tokenizer, RiotLib.profile(Lang.NTRIPLES, null), sink) ;
+ LangNTriples parser = new LangNTriples(tokenizer, RiotLib.profile(RDFLanguages.NTRIPLES, null), dest) ;
return parser ;
}
/** Create a parser for NQuads, with default behaviour */
- public static LangNQuads createParserNQuads(InputStream input, Sink<Quad> sink)
+ public static LangNQuads createParserNQuads(InputStream input, StreamRDF dest)
{
Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(input) ;
- return createParserNQuads(tokenizer, sink) ;
+ return createParserNQuads(tokenizer, dest) ;
}
/** Create a parser for NQuads, with default behaviour */
- public static LangNQuads createParserNQuads(Tokenizer tokenizer, Sink<Quad> sink)
+ public static LangNQuads createParserNQuads(Tokenizer tokenizer, StreamRDF dest)
{
- LangNQuads parser = new LangNQuads(tokenizer, RiotLib.profile(Lang.NQUADS, null), sink) ;
+ LangNQuads parser = new LangNQuads(tokenizer, RiotLib.profile(RDFLanguages.NQUADS, null), dest) ;
return parser ;
}
@@ -327,6 +339,21 @@ public class RiotReader
public static String chooseBaseIRI(String baseIRI, String filename)
{
+// private static void checkTriplesLanguage(String filename, Lang2 lang)
+// {
+//
+//
+// if ( lang != null )
+// {
+// if ( ! lang.isTriples() )
+// throw new RiotException("Can only parse triples languages to a triples sink: "+lang.getName()) ;
+// return ;
+// }
+ //
+// lang = filenameToLang(filename) ;
+// if ( lang != null && ! lang.isTriples() )
+// }
+
if ( baseIRI != null )
return baseIRI ;
if ( filename == null || filename.equals("-") )
@@ -341,20 +368,5 @@ public class RiotReader
return "stdin" ;
return filename ;
}
-
- private static void checkTriplesLanguage(String filename, Lang lang)
- {
- if ( lang != null )
- {
- if ( ! lang.isTriples() )
- throw new RiotException("Can only parse triples languages to a triples sink: "+lang.getName()) ;
- return ;
- }
-
- lang = Lang.guess(filename) ;
- if ( lang != null && ! lang.isTriples() )
- throw new RiotException("Can only parse triples languages to a triples sink: "+lang.getName()) ;
- }
-
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotTripleParsePuller.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotTripleParsePuller.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotTripleParsePuller.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotTripleParsePuller.java Tue Jan 8 18:43:53 2013
@@ -21,7 +21,11 @@ package org.openjena.riot;
import java.io.InputStream ;
import org.apache.jena.atlas.lib.Sink ;
-import org.openjena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RiotReader ;
+import org.apache.jena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.system.StreamRDF ;
+import org.apache.jena.riot.system.StreamRDFLib ;
import com.hp.hpl.jena.graph.Triple ;
@@ -40,7 +44,8 @@ public class RiotTripleParsePuller exten
@Override
protected LangRIOT createParser(Sink<Triple> sink)
{
- return RiotReader.createParserTriples(in, lang, baseIRI, sink) ;
+ StreamRDF dest = StreamRDFLib.sinkTriples(sink) ;
+ return RiotReader.createParser(in, lang, baseIRI, dest) ;
}
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotWriter.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotWriter.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotWriter.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/RiotWriter.java Tue Jan 8 18:43:53 2013
@@ -21,44 +21,48 @@ package org.openjena.riot;
import java.io.OutputStream ;
import java.util.Iterator ;
-import org.openjena.riot.out.NQuadsWriter ;
-import org.openjena.riot.out.NTriplesWriter ;
-import org.openjena.riot.out.RDFJSONWriter ;
-
import com.hp.hpl.jena.graph.Graph ;
import com.hp.hpl.jena.graph.Triple ;
import com.hp.hpl.jena.sparql.core.DatasetGraph ;
import com.hp.hpl.jena.sparql.core.Quad ;
-/** Output RDF in various formats (unfinished) */
+/** Output RDF in various formats (unfinished)
+ * @deprecated Use {@link org.apache.jena.riot.RiotWriter}
+ */
+@Deprecated
public class RiotWriter
{
// Work in progress
// A class of all the ways to write things - just jumps to right place in code.
+ /** @deprecated Use {@link org.apache.jena.riot.RiotWriter} */
+ @Deprecated
public static void writeNQuads(OutputStream out, DatasetGraph dsg)
{
- NQuadsWriter.write(out, dsg) ;
+ org.apache.jena.riot.RiotWriter.writeNQuads(out, dsg) ;
}
-
+ /** @deprecated Use {@link org.apache.jena.riot.RiotWriter} */
+ @Deprecated
public static void writeNQuads(OutputStream out, Iterator<Quad> it)
{
- NQuadsWriter.write(out, it) ;
+ org.apache.jena.riot.RiotWriter.writeNQuads(out, it) ;
}
-
+ /** @deprecated Use {@link org.apache.jena.riot.RiotWriter} */
+ @Deprecated
public static void writeTriples(OutputStream out, Graph graph)
{
- NTriplesWriter.write(out, graph) ;
+ org.apache.jena.riot.RiotWriter.writeTriples(out, graph) ;
}
-
+ /** @deprecated Use {@link org.apache.jena.riot.RiotWriter} */
+ @Deprecated
public static void writeTriples(OutputStream out, Iterator<Triple> it)
{
- NTriplesWriter.write(out, it) ;
+ org.apache.jena.riot.RiotWriter.writeTriples(out, it) ;
}
-
+ /** @deprecated Use {@link org.apache.jena.riot.RiotWriter} */
+ @Deprecated
public static void writeRDFJSON(OutputStream out, Graph graph)
{
- RDFJSONWriter.write(out, graph) ;
+ org.apache.jena.riot.RiotWriter.writeRDFJSON(out, graph) ;
}
-
}
Modified: jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/SerializationFactoryFinder.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/SerializationFactoryFinder.java?rev=1430439&r1=1430438&r2=1430439&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/SerializationFactoryFinder.java (original)
+++ jena/branches/streaming-update/jena-arq/src/main/java/org/openjena/riot/SerializationFactoryFinder.java Tue Jan 8 18:43:53 2013
@@ -24,17 +24,17 @@ import java.util.Iterator ;
import org.apache.jena.atlas.data.SerializationFactory ;
import org.apache.jena.atlas.lib.Sink ;
-import org.openjena.riot.lang.LabelToNode ;
-import org.openjena.riot.lang.LangNQuads ;
-import org.openjena.riot.lang.LangNTriples ;
-import org.openjena.riot.out.NodeToLabel ;
-import org.openjena.riot.out.SinkQuadOutput ;
-import org.openjena.riot.out.SinkTripleOutput ;
-import org.openjena.riot.system.IRIResolver ;
-import org.openjena.riot.system.ParserProfileBase ;
-import org.openjena.riot.system.Prologue ;
-import org.openjena.riot.tokens.Tokenizer ;
-import org.openjena.riot.tokens.TokenizerFactory ;
+import org.apache.jena.riot.lang.LabelToNode ;
+import org.apache.jena.riot.lang.LangNQuads ;
+import org.apache.jena.riot.lang.LangNTriples ;
+import org.apache.jena.riot.out.NodeToLabel ;
+import org.apache.jena.riot.out.SinkQuadOutput ;
+import org.apache.jena.riot.out.SinkTripleOutput ;
+import org.apache.jena.riot.system.IRIResolver ;
+import org.apache.jena.riot.system.ParserProfileBase ;
+import org.apache.jena.riot.system.Prologue ;
+import org.apache.jena.riot.tokens.Tokenizer ;
+import org.apache.jena.riot.tokens.TokenizerFactory ;
import com.hp.hpl.jena.graph.Triple ;
import com.hp.hpl.jena.sparql.core.Quad ;