StreamWriterBase (JiBX Java data binding to XML - Version 1.2.6)
Date: 2014-12-30

org.jibx.runtime.impl

## Class StreamWriterBase

- java.lang.Object
- - org.jibx.runtime.impl.XMLWriterNamespaceBase
  - - org.jibx.runtime.impl.XMLWriterBase
    - - org.jibx.runtime.impl.StreamWriterBase

- All Implemented Interfaces:
    IExtensibleWriter, IXMLWriter
  Direct Known Subclasses:
    ISO88591StreamWriter, UTF8StreamWriter

      public abstract class StreamWriterBase
      extends XMLWriterBase

  Base handler for marshalling text document to an output stream. This needs to be subclassed with implementation methods specific to the encoding used.
  Author:
    Dennis M. Sosnoski

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `StreamWriterBase(StreamWriterBase base, java.lang.String[] uris)` Copy constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Close document output.
    `void` | `flush()` Flush document output.
    `java.lang.String` | `getEncodingName()` Get the name of the character encoding used by this writer.
    `void` | `indent()` Request output indent.
    `void` | `indent(int bias)` Request output indent.
    `void` | `popExtensionNamespaces()` Remove extension namespace URIs.
    `void` | `pushExtensionNamespaces(java.lang.String[] uris)` Append extension namespace URIs to those in mapping.
    `void` | `setBuffer(IOutByteBuffer buff)` Set the byte buffer.
    `void` | `setIndentSpaces(int count, java.lang.String newline, char indent)` Set nesting indentation.
    `void` | `setNamespaceUris(java.lang.String[] uris)` Set namespace URIs.

    - ### Methods inherited from class org.jibx.runtime.impl.XMLWriterBase

      `addAttribute, closeEmptyTag, closeStartTag, endTag, init, reset, startTagClosed, startTagNamespaces, startTagOpen, writeComment, writeDocType, writeEntityRef, writePI, writeXMLDecl`

    - ### Methods inherited from class org.jibx.runtime.impl.XMLWriterNamespaceBase

      `getExtensionNamespaces, getNamespaceCount, getNamespacePrefix, getNamespaces, getNamespaceUri, getNestingDepth, getPrefixIndex, openNamespaces, popTranslationTable, pushTranslationTable, translateNamespace`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.jibx.runtime.IExtensibleWriter

      `createChildWriter`

    - ### Methods inherited from interface org.jibx.runtime.IXMLWriter

      `getExtensionNamespaces, getNamespaceCount, getNamespacePrefix, getNamespaces, getNamespaceUri, getNestingDepth, getPrefixIndex, openNamespaces, popTranslationTable, pushTranslationTable, writeCData, writeTextContent`

- - ### Constructor Detail

    - #### StreamWriterBase

          public StreamWriterBase(StreamWriterBase base,
                          java.lang.String[] uris)

      Copy constructor. This takes the stream and encoding information from a supplied instance, while setting a new array of namespace URIs. It's intended for use when invoking one binding from within another binding.
      Parameters:
        `base` - instance to be used as base for writer
        `uris` - ordered array of URIs for namespaces used in document (see `StreamWriterBase(String, String[])`)

  - ### Method Detail

    - #### setBuffer

          public void setBuffer(IOutByteBuffer buff)

      Set the byte buffer.
      Parameters:
        `buff` -

    - #### getEncodingName

          public java.lang.String getEncodingName()

      Get the name of the character encoding used by this writer.
      Returns:
        encoding

    - #### setNamespaceUris

          public void setNamespaceUris(java.lang.String[] uris)
                                throws java.io.IOException

      Set namespace URIs. This forces a reset of the writer, clearing any buffered output. It is intended to be used only for reconfiguring an existing writer for reuse.
      Parameters:
        `uris` - ordered array of URIs for namespaces used in document
      Throws:
        `java.io.IOException`

    - #### setIndentSpaces

          public void setIndentSpaces(int count,
                             java.lang.String newline,
                             char indent)

      Set nesting indentation. This is advisory only, and implementations of this interface are free to ignore it. The intent is to indicate that the generated output should use indenting to illustrate element nesting.
      Parameters:
        `count` - number of character to indent per level, or disable indentation if negative (zero means new line only)
        `newline` - sequence of characters used for a line ending (`null` means use the single character '\n')
        `indent` - whitespace character used for indentation

    - #### pushExtensionNamespaces

          public void pushExtensionNamespaces(java.lang.String[] uris)

      Append extension namespace URIs to those in mapping.
      Specified by:
        `pushExtensionNamespaces` in interface `IXMLWriter`
      Overrides:
        `pushExtensionNamespaces` in class `XMLWriterNamespaceBase`
      Parameters:
        `uris` - namespace URIs to extend those in mapping

    - #### popExtensionNamespaces

          public void popExtensionNamespaces()

      Remove extension namespace URIs. This removes the last set of extension namespaces pushed using `pushExtensionNamespaces(java.lang.String[])`.
      Specified by:
        `popExtensionNamespaces` in interface `IXMLWriter`
      Overrides:
        `popExtensionNamespaces` in class `XMLWriterNamespaceBase`

    - #### indent

          public void indent(int bias)
                      throws java.io.IOException

      Request output indent. Output the line end sequence followed by the appropriate number of indent characters.
      Parameters:
        `bias` - indent depth difference (positive or negative) from current element nesting depth
      Throws:
        `java.io.IOException` - on error writing to document

    - #### indent

          public void indent()
                      throws java.io.IOException

      Request output indent. Output the line end sequence followed by the appropriate number of indent characters for the current nesting level.
      Throws:
        `java.io.IOException` - on error writing to document

    - #### flush

          public void flush()
                     throws java.io.IOException

      Flush document output. Forces out all output generated to this point.
      Specified by:
        `flush` in interface `IXMLWriter`
      Specified by:
        `flush` in class `XMLWriterBase`
      Throws:
        `java.io.IOException` - on error writing to document

    - #### close

          public void close()
                     throws java.io.IOException

      Close document output. Completes writing of document output, including closing the output medium.
      Specified by:
        `close` in interface `IXMLWriter`
      Specified by:
        `close` in class `XMLWriterBase`
      Throws:
        `java.io.IOException` - on error writing to document

Project Web Site |