## net.sf.saxon
Class TransformerHandlerImpl

    java.lang.Object
      net.sf.saxon.event.ReceivingContentHandler
          net.sf.saxon.TransformerHandlerImpl

All Implemented Interfaces:
  org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.ext.LexicalHandler, LocationProvider, org.xml.sax.Locator, SaxonLocator, javax.xml.transform.SourceLocator, javax.xml.transform.sax.TransformerHandler

public class TransformerHandlerImpl
extends ReceivingContentHandler
implements javax.xml.transform.sax.TransformerHandler

TransformerHandlerImpl implements the javax.xml.transform.sax.TransformerHandler interface. It acts as a ContentHandler and LexicalHandler which receives a stream of SAX events representing an input document, and performs a transformation treating this SAX stream as the source document of the transformation.

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

Method Summary
`void` `endDocument()` Override the behaviour of endDocument() in ReceivingContentHandler, so that it fires off the transformation of the constructed document
`javax.xml.transform.Result` `getResult()` Get the output destination of the transformation
`java.lang.String` `getSystemId()` Get the systemId of the document
`javax.xml.transform.Transformer` `getTransformer()` Get the Transformer used for this transformation
`void` `setResult(javax.xml.transform.Result result)` Set the output destination of the transformation
`void` `setSystemId(java.lang.String url)` Set the SystemId of the document
`void` `startDocument()` Start of a new document.

Methods inherited from class net.sf.saxon.event.ReceivingContentHandler

`characters, comment, endCDATA, endDTD, endElement, endEntity, endPrefixMapping, getColumnNumber, getConfiguration, getLineNumber, getLineNumber, getPipelineConfiguration, getPublicId, getSystemId, ignorableWhitespace, isIgnoringIgnorableWhitespace, notationDecl, processingInstruction, setDocumentLocator, setIgnoreIgnorableWhitespace, setPipelineConfiguration, setReceiver, skippedEntity, startCDATA, startDTD, startElement, startEntity, startPrefixMapping, unparsedEntityDecl`

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

Methods inherited from interface org.xml.sax.ContentHandler
`characters, endElement, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startElement, startPrefixMapping`

Methods inherited from interface org.xml.sax.ext.LexicalHandler
`comment, endCDATA, endDTD, endEntity, startCDATA, startDTD, startEntity`

Methods inherited from interface org.xml.sax.DTDHandler
`notationDecl, unparsedEntityDecl`

Constructor Detail

### TransformerHandlerImpl

    protected TransformerHandlerImpl(Controller controller)

  Create a TransformerHandlerImpl and initialise variables. The constructor is protected, because the Filter should be created using newTransformerHandler() in the SAXTransformerFactory class

Method Detail

### startDocument

    public void startDocument()
                       throws org.xml.sax.SAXException

  Start of a new document. The TransformerHandler is not serially reusable, so this method must only be called once.

  Specified by:
    `startDocument` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `startDocument` in class `ReceivingContentHandler`
  Throws:
    `org.xml.sax.SAXException` - only if an overriding subclass throws this exception
    `java.lang.UnsupportedOperationException` - if an attempt is made to reuse the TransformerHandler by calling startDocument() more than once.

### getTransformer

    public javax.xml.transform.Transformer getTransformer()

  Get the Transformer used for this transformation

  Specified by:
    `getTransformer` in interface `javax.xml.transform.sax.TransformerHandler`

### setSystemId

    public void setSystemId(java.lang.String url)

  Set the SystemId of the document

  Specified by:
    `setSystemId` in interface `javax.xml.transform.sax.TransformerHandler`

### getSystemId

    public java.lang.String getSystemId()

  Get the systemId of the document

  Specified by:
    `getSystemId` in interface `javax.xml.transform.sax.TransformerHandler`
  Overrides:
    `getSystemId` in class `ReceivingContentHandler`
  Returns:
    A string containing the system identifier, or null if none is available.

### setResult

    public void setResult(javax.xml.transform.Result result)

  Set the output destination of the transformation

  Specified by:
    `setResult` in interface `javax.xml.transform.sax.TransformerHandler`

### getResult

    public javax.xml.transform.Result getResult()

  Get the output destination of the transformation

### endDocument

    public void endDocument()
                     throws org.xml.sax.SAXException

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

  Specified by:
    `endDocument` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `endDocument` in class `ReceivingContentHandler`
  Throws:
    `org.xml.sax.SAXException`