## net.sf.saxon.event
Class TransformerReceiver

    java.lang.Object
      net.sf.saxon.event.SequenceReceiver
          net.sf.saxon.event.ProxyReceiver
              net.sf.saxon.event.TransformerReceiver

All Implemented Interfaces:
  Result, Receiver

    public class TransformerReceiver

extends ProxyReceiver

TransformerReceiver is similar in concept to the JAXP TransformerHandler, except that it implements Saxon's Receiver interface rather than the standard SAX2 interface. This means that it allows nodes with type annotations to be passed down a pipeline from one transformation to another.

Field Summary

Fields inherited from interface javax.xml.transform.Result
`PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

Constructor Summary
`TransformerReceiver(Controller controller)` Create a TransformerHandlerImpl and initialise variables.

Method Summary
`void` `close()` Override the behaviour of endDocument() in ProxyReceiver, so that it fires off the transformation of the constructed document
`Result` `getResult()` Get the output destination of the transformation
`Transformer` `getTransformer()` Get the Transformer used for this transformation
`void` `open()` Start of event stream
`void` `setResult(Result result)` Set the output destination of the transformation
`void` `setSystemId(String systemId)` Set the SystemId of the document
`void` `startElement(int nameCode, int typeCode, int locationId, int properties)` Notify the start of an element

Methods inherited from class net.sf.saxon.event.ProxyReceiver
`append, attribute, characters, comment, endDocument, endElement, getConfiguration, getDocumentLocator, getNamePool, getUnderlyingReceiver, namespace, processingInstruction, setPipelineConfiguration, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument`

Methods inherited from class net.sf.saxon.event.SequenceReceiver
`getPipelineConfiguration, getSystemId`

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

Constructor Detail

### TransformerReceiver

    public TransformerReceiver(Controller controller)

  Create a TransformerHandlerImpl and initialise variables.

Method Detail

### open

    public void open()
              throws XPathException

  Start of event stream

  Specified by:
    `open` in interface `Receiver`
  Overrides:
    `open` in class `ProxyReceiver`
  Throws:
    `XPathException`

### getTransformer

    public Transformer getTransformer()

  Get the Transformer used for this transformation

### setSystemId

    public void setSystemId(String systemId)

  Set the SystemId of the document

  Specified by:
    `setSystemId` in interface `Result`
  Specified by:
    `setSystemId` in interface `Receiver`
  Overrides:
    `setSystemId` in class `ProxyReceiver`
  Parameters:
    `systemId` - the URI used to identify the tree being passed across this interface

### startElement

    public void startElement(int nameCode,
                             int typeCode,
                             int locationId,
                             int properties)
                      throws XPathException

  Notify the start of an element

  Specified by:
    `startElement` in interface `Receiver`
  Overrides:
    `startElement` in class `ProxyReceiver`
  Parameters:
    `nameCode` - integer code identifying the name of the element within the name pool.
    `typeCode` - integer code identifying the element's type within the name pool.
    `properties` - bit-significant properties of the element node.
    `locationId` - an integer which can be interpreted using a `LocationProvider` to return information such as line number and system ID. If no location information is available, the value zero is supplied.
  Throws:
    `XPathException`

### setResult

    public void setResult(Result result)

  Set the output destination of the transformation

### getResult

    public Result getResult()

  Get the output destination of the transformation

### close

    public void close()
               throws XPathException

  Override the behaviour of endDocument() in ProxyReceiver, so that it fires off the transformation of the constructed document

  Specified by:
    `close` in interface `Receiver`
  Overrides:
    `close` in class `ProxyReceiver`
  Throws:
    `XPathException`

Copyright (C) Michael H. Kay. All rights reserved.