Class InputHandler

java.lang.Object
org.apache.fop.cli.InputHandler
All Implemented Interfaces:
ErrorListener, Renderable
Direct Known Subclasses:
AreaTreeInputHandler, IFInputHandler, ImageInputHandler

public class InputHandler extends Object implements 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 Details

    • sourcefile

      protected File sourcefile
      original source file
    • log

      protected org.apache.commons.logging.Log log
      the logger
  • Constructor Details

    • InputHandler

      public InputHandler(File xmlfile, File xsltfile, Vector params)
      Constructor for XML->XSLT->FO input
      Parameters:
      xmlfile - XML file
      xsltfile - XSLT file
      params - Vector of command-line parameters (name, value, name, value, ...) for XSL stylesheet, null if none
    • InputHandler

      public InputHandler(File fofile)
      Constructor for FO input
      Parameters:
      fofile - the file to read the FO document.
  • Method Details

    • renderTo

      public void renderTo(FOUserAgent userAgent, String outputFormat, OutputStream out) throws FOPException
      Generate a document, given an initialized Fop object
      Parameters:
      userAgent - the user agent
      outputFormat - 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, String outputFormat) throws FOPException
      Renders the pre-setup document.
      Specified by:
      renderTo in interface Renderable
      Parameters:
      userAgent - the user agent
      outputFormat - the output format to generate (MIME type, see MimeConstants)
      Throws:
      FOPException - if the FO processing fails
    • transformTo

      public void transformTo(OutputStream out) throws FOPException
      In 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 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 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(Result result) throws FOPException
      Transforms 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(TransformerException exc)
      Specified by:
      warning in interface ErrorListener
    • error

      public void error(TransformerException exc)
      Specified by:
      error in interface ErrorListener
    • fatalError

      public void fatalError(TransformerException exc) throws TransformerException
      Specified by:
      fatalError in interface ErrorListener
      Throws:
      TransformerException