org.eclipse.rdf4j.rio.helpers

## Class AbstractRDFWriter

- java.lang.Object
- - org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter

- All Implemented Interfaces:
    RDFHandler, RDFWriter
  Direct Known Subclasses:
    ArrangedWriter, BinaryRDFWriter, ConsoleRDFWriter, JSONLDWriter, NTriplesWriter, RDFJSONWriter, RDFWriterBase, RDFXMLWriter, TriXWriter, TurtleWriter

      public abstract class AbstractRDFWriter
      extends Object
      implements RDFWriter

  Base class for `RDFWriter`s offering common functionality for RDF writers.
  Author:
    Peter Ansell

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Map<String,String>` | `namespaceTable` Mapping from namespace prefixes to namespace names.
    `protected java.util.function.Consumer<Statement>` | `statementConsumer`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AbstractRDFWriter()` Default constructor.
    `protected` | `AbstractRDFWriter(OutputStream out)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `checkWritingStarted()` Verify that writing has started.
    `protected void` | `consumeStatement(Statement st)` Consume a statement.
    `Optional<OutputStream>` | `getOutputStream()` Gets the `OutputStream` this writer writes to, if it uses one.
    `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.RDFWriter

      `getRDFFormat`

    - ### Methods inherited from interface org.eclipse.rdf4j.rio.RDFHandler

      `endRDF, handleComment`

- - ### Field Detail

    - #### namespaceTable

          protected Map<String,String> namespaceTable

      Mapping from namespace prefixes to namespace names.

    - #### statementConsumer

          protected java.util.function.Consumer<Statement> statementConsumer

  - ### Constructor Detail

    - #### AbstractRDFWriter

          protected AbstractRDFWriter()

      Default constructor.

    - #### AbstractRDFWriter

          protected AbstractRDFWriter(OutputStream out)

  - ### Method Detail

    - #### getOutputStream

          public Optional<OutputStream> getOutputStream()

      Description copied from interface: `RDFWriter`
      Gets the `OutputStream` this writer writes to, if it uses one.
      Specified by:
        `getOutputStream` in interface `RDFWriter`
      Returns:
        an optional OutputStream

    - #### 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 interface `RDFHandler`
      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 interface `RDFWriter`
      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 interface `RDFWriter`
      Returns:
        a writer configuration object representing the current configuration of the writer.

    - #### getSupportedSettings

          public Collection<RioSetting<?>> getSupportedSettings()

      Specified by:
        `getSupportedSettings` in interface `RDFWriter`
      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.
      Specified by:
        `set` in interface `RDFWriter`
      Parameters:
        `setting` - The setting to change.
        `value` - The value to change.
      Returns:
        Either a copy of this writer, if it is immutable, or this object, to allow chaining of method calls.

    - #### 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 interface `RDFHandler`
      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 interface `RDFHandler`
      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* 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.

Copyright © 2015-2020 Eclipse Foundation. All Rights Reserved.