Package net.sf.saxon.jaxp
Class TransformerHandlerImpl
- java.lang.Object
- 
- net.sf.saxon.event.ReceivingContentHandler
- 
- net.sf.saxon.jaxp.TransformerHandlerImpl
 
 
- 
- All Implemented Interfaces:
- javax.xml.transform.sax.TransformerHandler,- org.xml.sax.ContentHandler,- org.xml.sax.DTDHandler,- org.xml.sax.ext.LexicalHandler
 
 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.The TransformerHandleris written on the assumption that it is receiving events from a parser configured withhttp://xml.org/sax/features/namespacesset to true andhttp://xml.org/sax/features/namespace-prefixesset to false. TheTransformerHandlerhas no control over the feature settings of the sender of the events (which is not even necessarily anXMLReader), and if the events do not follow this pattern then the class may fail in unpredictable ways.
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class net.sf.saxon.event.ReceivingContentHandlerReceivingContentHandler.LocalLocator
 
- 
 - 
Constructor SummaryConstructors Modifier Constructor Description protectedTransformerHandlerImpl(TransformerImpl transformer)Create a TransformerHandlerImpl and initialise variables.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidendDocument()Override the behaviour of endDocument() in ReceivingContentHandler, so that it fires off the transformation of the constructed documentjavax.xml.transform.ResultgetResult()Get the output destination of the transformationjava.lang.StringgetSystemId()Get the systemId of the document.javax.xml.transform.TransformergetTransformer()Get the Transformer used for this transformationvoidsetResult(javax.xml.transform.Result result)Set theResultassociated with thisTransformerHandlerto be used for the transformation.voidsetSystemId(java.lang.String url)Set the SystemId of the document.voidstartDocument()Start of a new document.- 
Methods inherited from class net.sf.saxon.event.ReceivingContentHandlercharacters, comment, endCDATA, endDTD, endElement, endEntity, endPrefixMapping, getConfiguration, getPipelineConfiguration, getReceiver, ignorableWhitespace, isIgnoringIgnorableWhitespace, notationDecl, processingInstruction, reset, setDocumentLocator, setIgnoreIgnorableWhitespace, setPipelineConfiguration, setReceiver, skippedEntity, startCDATA, startDTD, startElement, startEntity, startPrefixMapping, unparsedEntityDecl
 - 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
- 
 
- 
- 
- 
Constructor Detail- 
TransformerHandlerImplprotected TransformerHandlerImpl(TransformerImpl transformer) Create a TransformerHandlerImpl and initialise variables. The constructor is protected, because the Filter should be created using newTransformerHandler() in the SAXTransformerFactory class- Parameters:
- transformer- the Controller to be used
 
 
- 
 - 
Method Detail- 
startDocumentpublic void startDocument() throws org.xml.sax.SAXExceptionStart of a new document. The TransformerHandler is not serially reusable, so this method must only be called once.- Specified by:
- startDocumentin interface- org.xml.sax.ContentHandler
- Overrides:
- startDocumentin 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.
 
 - 
getTransformerpublic javax.xml.transform.Transformer getTransformer() Get the Transformer used for this transformation- Specified by:
- getTransformerin interface- javax.xml.transform.sax.TransformerHandler
 
 - 
setSystemIdpublic void setSystemId(java.lang.String url) Set the SystemId of the document. Note that in reporting location information, Saxon gives priority to the system Id reported by the SAX Parser in the Locator passed to theReceivingContentHandler.setDocumentLocator(org.xml.sax.Locator)method. The SystemId passed to this method is used as the base URI for resolving relative references.- Specified by:
- setSystemIdin interface- javax.xml.transform.sax.TransformerHandler
- Parameters:
- url- the systemId of the source document
 
 - 
getSystemIdpublic java.lang.String getSystemId() Get the systemId of the document. This will be the systemId obtained from the Locator passed to theReceivingContentHandler.setDocumentLocator(org.xml.sax.Locator)method if available, otherwise the SystemId passed to thesetSystemId(String)method.- Specified by:
- getSystemIdin interface- javax.xml.transform.sax.TransformerHandler
 
 - 
setResultpublic void setResult(javax.xml.transform.Result result) Set theResultassociated with thisTransformerHandlerto be used for the transformation.- Specified by:
- setResultin interface- javax.xml.transform.sax.TransformerHandler
- Parameters:
- result- A- Resultinstance, should not be- null.
- Throws:
- java.lang.IllegalArgumentException- if result is invalid for some reason.
 
 - 
getResultpublic javax.xml.transform.Result getResult() Get the output destination of the transformation- Returns:
- the output destination
 
 - 
endDocumentpublic void endDocument() throws org.xml.sax.SAXExceptionOverride the behaviour of endDocument() in ReceivingContentHandler, so that it fires off the transformation of the constructed document- Specified by:
- endDocumentin interface- org.xml.sax.ContentHandler
- Overrides:
- endDocumentin class- ReceivingContentHandler
- Throws:
- org.xml.sax.SAXException
 
 
- 
 
-