12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- package org.apache.fop.apps;
-
- // SAX
- import org.xml.sax.XMLReader;
- import org.xml.sax.InputSource;
- import org.xml.sax.SAXException;
- import org.xml.sax.SAXParseException;
-
- // Java
- import java.io.*;
- import java.net.URL;
-
-
- // FOP
- import org.apache.fop.messaging.MessageHandler;
- import org.apache.fop.configuration.Configuration;
-
- /**
- * super class for all classes which start Fop from the commandline
- */
-
- public class CommandLineStarter extends Starter {
-
- CommandLineOptions commandLineOptions;
- boolean errorDump;
-
- public CommandLineStarter (CommandLineOptions commandLineOptions)
- throws FOPException
- {
- this.commandLineOptions = commandLineOptions;
- options.setCommandLineOptions(commandLineOptions);
- errorDump = Configuration.getBooleanValue("debugMode").booleanValue();
- super.setInputHandler(commandLineOptions.getInputHandler());
- }
-
- /**
- * Run the format.
- * @exception FOPException if there is an error during processing
- */
- public void run()
- throws FOPException
- {
- String version = Version.getVersion();
- MessageHandler.logln(version);
-
- XMLReader parser = inputHandler.getParser();
- setParserFeatures(parser);
-
- Driver driver = new Driver();
- if (errorDump) {
- driver.setErrorDump(true);
- }
-
- try {
- driver.setRenderer(commandLineOptions.getRenderer());
-
- driver.buildFOTree(parser, inputHandler.getInputSource());
- driver.format();
- driver.setOutputStream(new FileOutputStream(commandLineOptions.getOutputFile()));
- driver.render();
- } catch (Exception e) {
- if (e instanceof FOPException) {
- throw (FOPException) e;
- }
- throw new FOPException(e);
- }
- }
-
- }
|