Package net.sf.saxon.stax

## Class XMLStreamWriterDestination

- java.lang.Object
- - net.sf.saxon.s9api.AbstractDestination
  - - net.sf.saxon.stax.XMLStreamWriterDestination

- All Implemented Interfaces:
    `Destination`

      public class XMLStreamWriterDestination
      extends AbstractDestination

  XMLStreamWriterDestination is a s9api `Destination` that writes output to a supplied XMLStreamWriter

- - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.s9api.AbstractDestination

      `helper`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `XMLStreamWriterDestination​(javax.xml.stream.XMLStreamWriter writer)` | Create an XMLStreamWriterDestination based on a supplied XMLStreamWriter

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Close the destination, allowing resources to be released.
    `Receiver` | `getReceiver​(PipelineConfiguration pipe, SerializationProperties params)` | Return a Receiver.
    `javax.xml.stream.XMLStreamWriter` | `getXMLStreamWriter()` | Get the XMLStreamWriter to which this XMLStreamWriterDestination is writing

    - ### Methods inherited from class net.sf.saxon.s9api.AbstractDestination

      `closeAndNotify, getDestinationBaseURI, onClose, setDestinationBaseURI`

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

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

- - ### Constructor Detail

    - #### XMLStreamWriterDestination

          public XMLStreamWriterDestination​(javax.xml.stream.XMLStreamWriter writer)

      Create an XMLStreamWriterDestination based on a supplied XMLStreamWriter
      Parameters:
        `writer` - the supplied XmlStreamWriter

  - ### Method Detail

    - #### getXMLStreamWriter

          public javax.xml.stream.XMLStreamWriter getXMLStreamWriter()

      Get the XMLStreamWriter to which this XMLStreamWriterDestination is writing
      Returns:
        the XMLStreamWriter that was provided as the destination of this XMLStreamWriterDestination

    - #### getReceiver

          public Receiver getReceiver​(PipelineConfiguration pipe,
                                      SerializationProperties params)
                               throws SaxonApiException

      Return a Receiver. Saxon calls this method to obtain a Receiver, to which it then sends a sequence of events representing the content of an XML document. The method is intended primarily for internal use, and may give poor diagnostics if used incorrectly.
      Parameters:
        `pipe` - The Saxon configuration. This is supplied so that the destination can use information from the configuration (for example, a reference to the name pool) to construct or configure the returned Receiver.
        `params` -
      Returns:
        the Receiver to which events are to be sent. It is the caller's responsibility to initialize this Receiver with a `PipelineConfiguration` before calling its `open()` method. The caller is also responsible for ensuring that the sequence of events sent to the Receiver represents a well-formed document: in particular the event stream must include namespace events corresponding exactly to the namespace declarations that are required. If the calling code cannot guarantee this, it should insert a `NamespaceReducer` into the pipeline in front of the returned Receiver.
      Throws:
        `SaxonApiException` - if the Receiver cannot be created

    - #### close

          public void close()
                     throws SaxonApiException

      Close the destination, allowing resources to be released. Saxon calls this method when it has finished writing to the destination.

      The close() method should not cause any adverse effects if it is called more than once. If any other method is called after the close() call, the results are undefined. This means that a Destination is not, in general, serially reusable.

      Throws:
        `SaxonApiException` - if any failure occurs