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 forRDFWriters offering common functionality for RDF writers.- Author:
- Peter Ansell
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,String>namespaceTableMapping 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 voidcheckWritingStarted()Verify that writing has started.protected voidconsumeStatement(Statement st)Consume a statement.FileFormatgetFileFormat()Get theFileFormatthis sink uses.Collection<RioSetting<?>>getSupportedSettings()WriterConfiggetWriterConfig()Retrieves the current writer configuration as a single object.voidhandleNamespace(String prefix, String uri)Handles a namespace declaration/definition.voidhandleStatement(Statement st)Handles a statement.protected booleanisWritingStarted()See if writing has started<T> RDFWriterset(RioSetting<T> setting, T value)Set a setting on the writer, and return this writer object to allow chaining.RDFWritersetWriterConfig(WriterConfig config)Sets all supplied writer configuration options.voidstartRDF()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:RDFHandlerHandles 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:
handleNamespacein 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:RDFWriterSets all supplied writer configuration options.- Specified by:
setWriterConfigin 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:RDFWriterRetrieves the current writer configuration as a single object.- Specified by:
getWriterConfigin interfaceRDFWriter- Returns:
- a writer configuration object representing the current configuration of the writer.
-
getFileFormat
public FileFormat getFileFormat()
Description copied from interface:SinkGet theFileFormatthis sink uses.- Specified by:
getFileFormatin interfaceSink- Returns:
- a
FileFormat. May not benull.
-
getSupportedSettings
public Collection<RioSetting<?>> getSupportedSettings()
- Specified by:
getSupportedSettingsin interfaceRDFWriter- Returns:
- A collection of
RioSettings that are supported by this RDFWriter.
-
set
public <T> RDFWriter set(RioSetting<T> setting, T value)
Description copied from interface:RDFWriterSet a setting on the writer, and return this writer object to allow chaining.
-
startRDF
public void startRDF() throws RDFHandlerExceptionDescription copied from interface:RDFHandlerSignals the start of the RDF data. This method is called before any data is reported.- Specified by:
startRDFin interfaceRDFHandler- Throws:
RDFHandlerException- If the RDF handler has encountered an unrecoverable error.
-
handleStatement
public void handleStatement(Statement st) throws RDFHandlerException
Description copied from interface:RDFHandlerHandles a statement.- Specified by:
handleStatementin 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 overridinghandleStatement(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:
trueif writing has started,falseotherwise
-
checkWritingStarted
protected void checkWritingStarted()
Verify that writing has started.- Throws:
RDFHandlerException- if writing has not yet started.
-
-