Class XMLStreamWriterDestination

  • All Implemented Interfaces:
    Destination

    public class XMLStreamWriterDestination
    extends AbstractDestination
    XMLStreamWriterDestination is a s9api Destination that writes output to a supplied XMLStreamWriter
    • 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 - Serialization parameters known to the caller of the method.
        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