Package org.eclipse.rdf4j.rio.helpers
Class AbstractRDFWriter
- java.lang.Object
-
- org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
-
- All Implemented Interfaces:
Sink
,RDFHandler
,RDFWriter
- Direct Known Subclasses:
ArrangedWriter
,BinaryRDFWriter
,ConsoleRDFWriter
,JSONLDWriter
,NDJSONLDWriter
,NTriplesWriter
,RDFJSONWriter
,RDFXMLWriter
,TriXWriter
,TurtleWriter
public abstract class AbstractRDFWriter extends Object implements RDFWriter, Sink
Base class forRDFWriter
s offering common functionality for RDF writers.- Author:
- Peter Ansell
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,String>
namespaceTable
Mapping from namespace prefixes to namespace names.protected Consumer<Statement>
statementConsumer
-
Constructor Summary
Constructors Constructor Description AbstractRDFWriter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkWritingStarted()
Verify that writing has started.protected void
consumeStatement(Statement st)
Consume a statement.FileFormat
getFileFormat()
Get theFileFormat
this sink uses.Collection<RioSetting<?>>
getSupportedSettings()
WriterConfig
getWriterConfig()
Retrieves the current writer configuration as a single object.void
handleNamespace(String prefix, String uri)
Handles a namespace declaration/definition.void
handleStatement(Statement st)
Handles a statement.protected boolean
isWritingStarted()
See if writing has started<T> RDFWriter
set(RioSetting<T> setting, T value)
Set a setting on the writer, and return this writer object to allow chaining.RDFWriter
setWriterConfig(WriterConfig config)
Sets all supplied writer configuration options.void
startRDF()
Signals the start of the RDF data.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.rio.RDFHandler
endRDF, handleComment
-
Methods inherited from interface org.eclipse.rdf4j.rio.RDFWriter
getRDFFormat
-
Methods inherited from interface org.eclipse.rdf4j.common.io.Sink
acceptsFileFormat
-
-
-
-
Method Detail
-
handleNamespace
public void handleNamespace(String prefix, String uri) throws RDFHandlerException
Description copied from interface:RDFHandler
Handles a namespace declaration/definition. A namespace declaration associates a (short) prefix string with the namespace's URI. The prefix for default namespaces, which do not have an associated prefix, are represented as empty strings.- Specified by:
handleNamespace
in interfaceRDFHandler
- Parameters:
prefix
- The prefix for the namespace, or an empty string in case of a default namespace.uri
- The URI that the prefix maps to.- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
setWriterConfig
public RDFWriter setWriterConfig(WriterConfig config)
Description copied from interface:RDFWriter
Sets all supplied writer configuration options.- Specified by:
setWriterConfig
in interfaceRDFWriter
- Parameters:
config
- a writer configuration object.- Returns:
- Either a copy of this writer, if it is immutable, or this object, to allow chaining of method calls.
-
getWriterConfig
public WriterConfig getWriterConfig()
Description copied from interface:RDFWriter
Retrieves the current writer configuration as a single object.- Specified by:
getWriterConfig
in interfaceRDFWriter
- Returns:
- a writer configuration object representing the current configuration of the writer.
-
getFileFormat
public FileFormat getFileFormat()
Description copied from interface:Sink
Get theFileFormat
this sink uses.- Specified by:
getFileFormat
in interfaceSink
- Returns:
- a
FileFormat
. May not benull
.
-
getSupportedSettings
public Collection<RioSetting<?>> getSupportedSettings()
- Specified by:
getSupportedSettings
in interfaceRDFWriter
- Returns:
- A collection of
RioSetting
s that are supported by this RDFWriter.
-
set
public <T> RDFWriter set(RioSetting<T> setting, T value)
Description copied from interface:RDFWriter
Set a setting on the writer, and return this writer object to allow chaining.
-
startRDF
public void startRDF() throws RDFHandlerException
Description copied from interface:RDFHandler
Signals the start of the RDF data. This method is called before any data is reported.- Specified by:
startRDF
in interfaceRDFHandler
- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
handleStatement
public void handleStatement(Statement st) throws RDFHandlerException
Description copied from interface:RDFHandler
Handles a statement.- Specified by:
handleStatement
in interfaceRDFHandler
- Parameters:
st
- The statement.- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
consumeStatement
protected void consumeStatement(Statement st)
Consume a statement.Extending classes must override this method instead of overriding
handleStatement(Statement)
in order to benefit from automatic handling of RDF-star conversion or encoding.- Parameters:
st
- the statement to consume.
-
isWritingStarted
protected boolean isWritingStarted()
See if writing has started- Returns:
true
if writing has started,false
otherwise
-
checkWritingStarted
protected void checkWritingStarted()
Verify that writing has started.- Throws:
RDFHandlerException
- if writing has not yet started.
-
-