Package org.eclipse.rdf4j.rio.rdfjson
Class RDFJSONWriter
java.lang.Object
org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
org.eclipse.rdf4j.rio.rdfjson.RDFJSONWriter
- All Implemented Interfaces:
CharSink,Sink,RDFHandler,RDFWriter
RDFWriter implementation for the RDF/JSON format- Author:
- Peter Ansell p_ansell@yahoo.com
-
Field Summary
Fields inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
namespaceTable, statementConsumer -
Constructor Summary
ConstructorsConstructorDescriptionRDFJSONWriter(OutputStream out, RDFFormat actualFormat) RDFJSONWriter(Writer writer, RDFFormat actualFormat) -
Method Summary
Modifier and TypeMethodDescriptionvoidconsumeStatement(Statement statement) Consume a statement.voidendRDF()Signals the end of the RDF data.Gets the RDF format that this RDFWriter uses.Collection<RioSetting<?>>voidhandleComment(String comment) Handles a comment.voidhandleNamespace(String prefix, String uri) Handles a namespace declaration/definition.static voidmodelToRdfJsonInternal(Model graph, WriterConfig writerConfig, com.fasterxml.jackson.core.JsonGenerator jg) static StringresourceToString(Resource uriOrBnode) Returns the correct syntax for a Resource, depending on whether it is a URI or a Blank Node (ie, BNode)voidstartRDF()Signals the start of the RDF data.static voidwriteObject(Value object, Set<Resource> contexts, com.fasterxml.jackson.core.JsonGenerator jg) Helper method to reduce complexity of the JSON serialisation algorithm Any null contexts will only be serialised to JSON if there are also non-null contexts in the contexts arrayMethods inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
checkWritingStarted, getFileFormat, getWriterConfig, handleStatement, isWritingStarted, set, setWriterConfigMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.rdf4j.common.io.Sink
acceptsFileFormat, getFileFormat
-
Constructor Details
-
RDFJSONWriter
-
RDFJSONWriter
-
-
Method Details
-
getWriter
Description copied from interface:CharSink -
startRDF
Description copied from interface:RDFHandlerSignals the start of the RDF data. This method is called before any data is reported.- Specified by:
startRDFin interfaceRDFHandler- Overrides:
startRDFin classAbstractRDFWriter- Throws:
RDFHandlerException- If the RDF handler has encountered an unrecoverable error.
-
endRDF
Description copied from interface:RDFHandlerSignals the end of the RDF data. This method is called when all data has been reported.- Specified by:
endRDFin interfaceRDFHandler- Throws:
RDFHandlerException- If the RDF handler has encountered an unrecoverable error.
-
getRDFFormat
Description copied from interface:RDFWriterGets the RDF format that this RDFWriter uses.- Specified by:
getRDFFormatin interfaceRDFWriter
-
getSupportedSettings
- Specified by:
getSupportedSettingsin interfaceRDFWriter- Overrides:
getSupportedSettingsin classAbstractRDFWriter- Returns:
- A collection of
RioSettings that are supported by this RDFWriter.
-
handleComment
Description copied from interface:RDFHandlerHandles a comment.- Specified by:
handleCommentin interfaceRDFHandler- Parameters:
comment- The comment.- Throws:
RDFHandlerException- If the RDF handler has encountered an unrecoverable error.
-
handleNamespace
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- Overrides:
handleNamespacein classAbstractRDFWriter- 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.
-
consumeStatement
Description copied from class:AbstractRDFWriterConsume a statement.Extending classes must override this method instead of overriding
AbstractRDFWriter.handleStatement(Statement)in order to benefit from automatic handling of RDF-star conversion or encoding.- Overrides:
consumeStatementin classAbstractRDFWriter- Parameters:
statement- the statement to consume.- Throws:
RDFHandlerException
-
writeObject
public static void writeObject(Value object, Set<Resource> contexts, com.fasterxml.jackson.core.JsonGenerator jg) throws com.fasterxml.jackson.core.JsonGenerationException, IOException Helper method to reduce complexity of the JSON serialisation algorithm Any null contexts will only be serialised to JSON if there are also non-null contexts in the contexts array- Parameters:
object- The RDF value to serialisecontexts- The set of contexts that are relevant to this object, including null contexts as they are found.jg- theJsonGeneratorto write to.- Throws:
IOExceptioncom.fasterxml.jackson.core.JsonGenerationException
-
resourceToString
Returns the correct syntax for a Resource, depending on whether it is a URI or a Blank Node (ie, BNode)- Parameters:
uriOrBnode- The resource to serialise to a string- Returns:
- The string value of the RDF4J resource
-
modelToRdfJsonInternal
public static void modelToRdfJsonInternal(Model graph, WriterConfig writerConfig, com.fasterxml.jackson.core.JsonGenerator jg) throws IOException - Throws:
IOException
-