Package org.apache.fop.cli
Class InputHandler
- java.lang.Object
-
- org.apache.fop.cli.InputHandler
-
- All Implemented Interfaces:
javax.xml.transform.ErrorListener,Renderable
- Direct Known Subclasses:
AreaTreeInputHandler,IFInputHandler,ImageInputHandler
public class InputHandler extends java.lang.Object implements javax.xml.transform.ErrorListener, Renderable
Class for handling files input from command line either with XML and XSLT files (and optionally xsl parameters) or FO File input alone.
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.commons.logging.Loglogthe loggerprotected java.io.Filesourcefileoriginal source file
-
Constructor Summary
Constructors Constructor Description InputHandler(java.io.File fofile)Constructor for FO inputInputHandler(java.io.File xmlfile, java.io.File xsltfile, java.util.Vector params)Constructor for XML->XSLT->FO input
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcreateCatalogResolver(FOUserAgent userAgent)Creates a catalog resolver and uses it for XML parsing and XSLT URI resolution.protected javax.xml.transform.SourcecreateMainSource()Creates a Source for the main input file.protected javax.xml.transform.SourcecreateXSLTSource()Creates a Source for the selected stylesheet.voiderror(javax.xml.transform.TransformerException exc)voidfatalError(javax.xml.transform.TransformerException exc)voidrenderTo(FOUserAgent userAgent, java.lang.String outputFormat)Renders the pre-setup document.voidrenderTo(FOUserAgent userAgent, java.lang.String outputFormat, java.io.OutputStream out)Generate a document, given an initialized Fop objectvoidtransformTo(java.io.OutputStream out)In contrast to render(Fop) this method only performs the XSLT stage and saves the intermediate XSL-FO file to the output file.protected voidtransformTo(javax.xml.transform.Result result)Transforms the input document to the input format expected by FOP using XSLT.voidwarning(javax.xml.transform.TransformerException exc)
-
-
-
Constructor Detail
-
InputHandler
public InputHandler(java.io.File xmlfile, java.io.File xsltfile, java.util.Vector params)Constructor for XML->XSLT->FO input- Parameters:
xmlfile- XML filexsltfile- XSLT fileparams- Vector of command-line parameters (name, value, name, value, ...) for XSL stylesheet, null if none
-
InputHandler
public InputHandler(java.io.File fofile)
Constructor for FO input- Parameters:
fofile- the file to read the FO document.
-
-
Method Detail
-
renderTo
public void renderTo(FOUserAgent userAgent, java.lang.String outputFormat, java.io.OutputStream out) throws FOPException
Generate a document, given an initialized Fop object- Parameters:
userAgent- the user agentoutputFormat- the output format to generate (MIME type, see MimeConstants)out- the output stream to write the generated output to (may be null if not applicable)- Throws:
FOPException- in case of an error during processing
-
renderTo
public void renderTo(FOUserAgent userAgent, java.lang.String outputFormat) throws FOPException
Renders the pre-setup document.- Specified by:
renderToin interfaceRenderable- Parameters:
userAgent- the user agentoutputFormat- the output format to generate (MIME type, see MimeConstants)- Throws:
FOPException- if the FO processing fails
-
transformTo
public void transformTo(java.io.OutputStream out) throws FOPExceptionIn contrast to render(Fop) this method only performs the XSLT stage and saves the intermediate XSL-FO file to the output file.- Parameters:
out- OutputStream to write the transformation result to.- Throws:
FOPException- in case of an error during processing
-
createMainSource
protected javax.xml.transform.Source createMainSource()
Creates a Source for the main input file. Processes XInclude if available in the XML parser.- Returns:
- the Source for the main input file
-
createCatalogResolver
public void createCatalogResolver(FOUserAgent userAgent)
Creates a catalog resolver and uses it for XML parsing and XSLT URI resolution. Tries the Apache Commons Resolver, and if unsuccessful, tries the same built into Java 6.- Parameters:
userAgent- the user agent instance
-
createXSLTSource
protected javax.xml.transform.Source createXSLTSource()
Creates a Source for the selected stylesheet.- Returns:
- the Source for the selected stylesheet or null if there's no stylesheet
-
transformTo
protected void transformTo(javax.xml.transform.Result result) throws FOPExceptionTransforms the input document to the input format expected by FOP using XSLT.- Parameters:
result- the Result object where the result of the XSL transformation is sent to- Throws:
FOPException- in case of an error during processing
-
warning
public void warning(javax.xml.transform.TransformerException exc)
- Specified by:
warningin interfacejavax.xml.transform.ErrorListener
-
error
public void error(javax.xml.transform.TransformerException exc)
- Specified by:
errorin interfacejavax.xml.transform.ErrorListener
-
fatalError
public void fatalError(javax.xml.transform.TransformerException exc) throws javax.xml.transform.TransformerException- Specified by:
fatalErrorin interfacejavax.xml.transform.ErrorListener- Throws:
javax.xml.transform.TransformerException
-
-