Class TransformerReceiver

  • All Implemented Interfaces:
    javax.xml.transform.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 Detail

      • result

        javax.xml.transform.Result result
    • Constructor Detail

      • TransformerReceiver

        public TransformerReceiver​(Controller controller)
        Create a TransformerReceiver and initialise variables.
        Parameters:
        controller - the Controller (Saxon's implementation of the JAXP Transformer)
    • Method Detail

      • getTransformer

        public javax.xml.transform.Transformer getTransformer()
        Get the Transformer used for this transformation
        Returns:
        the transformer (which will always be an instance of Controller)
      • setSystemId

        public void setSystemId​(java.lang.String systemId)
        Set the SystemId of the document
        Specified by:
        setSystemId in interface Receiver
        Specified by:
        setSystemId in interface javax.xml.transform.Result
        Overrides:
        setSystemId in class ProxyReceiver
        Parameters:
        systemId - the URI used to identify the tree being passed across this interface
      • setResult

        public void setResult​(javax.xml.transform.Result result)
        Set the output destination of the transformation. This method must be called before the transformation can proceed.
        Parameters:
        result - the destination to which the transformation output will be written
      • getResult

        public javax.xml.transform.Result getResult()
        Get the output destination of the transformation
        Returns:
        the output destination. May be null if no destination has been set.
      • close

        public void close()
                   throws XPathException
        Override the behaviour of close() 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 - if an error occurs