## org.jibx.runtime.impl
Class GenericXMLWriter

    java.lang.Object
      org.jibx.runtime.impl.XMLWriterNamespaceBase
          org.jibx.runtime.impl.XMLWriterBase
              org.jibx.runtime.impl.GenericXMLWriter

All Implemented Interfaces:
  IXMLWriter

    public class GenericXMLWriter

extends XMLWriterBase

Generic handler for marshalling text document to a writer. This is the most general output handler since it can be used with any character encoding and and output writer.

Version:
  1.0
Author:
  Dennis M. Sosnoski

Constructor Summary
`GenericXMLWriter(GenericXMLWriter base, java.lang.String[] uris)` Copy constructor.
`GenericXMLWriter(java.lang.String[] uris)` Constructor.

Method Summary
`void` `close()` Close document output.
`IXMLWriter` `createChildWriter(java.lang.String[] uris)` Create a child writer instance to be used for a separate binding.
`void` `flush()` Flush document output.
`void` `indent()` Request output indent.
`void` `indent(int bias)` Request output indent.
`void` `setIndentSpaces(int count, java.lang.String newline, char indent)` Set nesting indentation.
`void` `setOutput(java.io.Writer outw, ICharacterEscaper escaper)` Set output writer and escaper.
`void` `writeCData(java.lang.String text)` Write CDATA text to document.
`void` `writeTextContent(java.lang.String text)` Write ordinary character data text content to document.

Methods inherited from class org.jibx.runtime.impl.XMLWriterBase
`addAttribute, closeEmptyTag, closeStartTag, endTag, 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, popExtensionNamespaces, pushExtensionNamespaces`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### GenericXMLWriter

    public GenericXMLWriter(java.lang.String[] uris)

  Constructor.

  Parameters:
    `uris` - ordered array of URIs for namespaces used in document (must be constant; the value in position 0 must always be the empty string "", and the value in position 1 must always be the XML namespace "http://www.w3.org/XML/1998/namespace")

### GenericXMLWriter

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

  Copy constructor. This takes the writer 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 `GenericXMLWriter(String[])`)

Method Detail

### setOutput

    public void setOutput(java.io.Writer outw,
                          ICharacterEscaper escaper)

  Set output writer and escaper. If an output writer is currently open when this is called the existing writer is flushed and closed, with any errors ignored.

  Parameters:
    `outw` - writer for document data output
    `escaper` - character escaper for chosen encoding

### 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

### writeTextContent

    public void writeTextContent(java.lang.String text)
                          throws java.io.IOException

  Write ordinary character data text content to document. This needs to write the text with any appropriate escaping.

  Parameters:
    `text` - content value text
  Throws:
    `java.io.IOException` - on error writing to document

### writeCData

    public void writeCData(java.lang.String text)
                    throws java.io.IOException

  Write CDATA text to document. This needs to write the text with any appropriate escaping.

  Parameters:
    `text` - content value text
  Throws:
    `java.io.IOException` - on error writing to document

### 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

### createChildWriter

    public IXMLWriter createChildWriter(java.lang.String[] uris)

  Create a child writer instance to be used for a separate binding. The child writer inherits the stream and encoding from this writer, while using the supplied namespace URIs.

  Specified by:
    `createChildWriter` in class `XMLWriterBase`
  Parameters:
    `uris` - ordered array of URIs for namespaces used in document (see `GenericXMLWriter(String[])`)
  Returns:
    child writer

Project Web Site |