You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by St...@gmx.de on 2003/01/28 16:00:19 UTC

patch for Fop-Ant-Task (maintainance branch)

Hi all.

The fop Ant task (org.apache.fop.tools.anttasks.Fop) has a bug that causes
that the log level is always "info". The following patch corrects it. Maybe
one of the commiters can apply the patch.

--Stefan

*** fop/xml-fop/src/org/apache/fop/tools/anttasks/Fop.java	Mon Nov 18
15:37:46 2002
--- projekte/infotakt/vdp/fop/src/org/apache/fop/tools/anttasks/Fop.java	Tue
Jan 28 15:22:51 2003
***************
*** 140,149 ****
--- 140,153 ----
              messageType = Project.MSG_INFO;
          } else if (messageLevel.equalsIgnoreCase("verbose")) {
              messageType = Project.MSG_VERBOSE;
          } else if (messageLevel.equalsIgnoreCase("debug")) {
              messageType = Project.MSG_DEBUG;
+         } else if (messageLevel.equalsIgnoreCase("err") ||
messageLevel.equalsIgnoreCase("error")) {
+             messageType = Project.MSG_ERR;
+         } else if (messageLevel.equalsIgnoreCase("warn")) {
+             messageType = Project.MSG_WARN;
          } else {
              log("messagelevel set to unknown value \"" + messageLevel +
                  "\"", Project.MSG_ERR);
              throw new BuildException("unknown messagelevel");
          }
***************
*** 174,185 ****
  
      /**
       * Starts execution of this task
       */
      public void execute() throws BuildException {
          try {
!             Starter starter = new FOPTaskStarter(this);
              starter.run();
          } catch (FOPException ex) {
              throw new BuildException(ex);
          }
  
--- 178,199 ----
  
      /**
       * Starts execution of this task
       */
      public void execute() throws BuildException {
+         int logLevel = ConsoleLogger.LEVEL_INFO;
+         switch (getMessageType()) {
+           case Project.MSG_DEBUG  : logLevel = ConsoleLogger.LEVEL_DEBUG;
break;
+           case Project.MSG_INFO   : logLevel = ConsoleLogger.LEVEL_INFO;
break;
+           case Project.MSG_WARN   : logLevel = ConsoleLogger.LEVEL_WARN;
break;
+           case Project.MSG_ERR    : logLevel = ConsoleLogger.LEVEL_ERROR;
break;
+           case Project.MSG_VERBOSE: logLevel = ConsoleLogger.LEVEL_DEBUG;
break;
+         }
+         Logger log = new ConsoleLogger(logLevel);
+         MessageHandler.setScreenLogger(log);
          try {
!             Starter starter = new FOPTaskStarter(this, log);
              starter.run();
          } catch (FOPException ex) {
              throw new BuildException(ex);
          }
  
***************
*** 189,203 ****
  
  class FOPTaskStarter extends Starter {
      Fop task;
      Logger log;
  
!     FOPTaskStarter(Fop task) throws FOPException {
          this.task = task;
! 
!     log = new ConsoleLogger(ConsoleLogger.LEVEL_INFO);
!     MessageHandler.setScreenLogger(log);
      }
  
      private int determineRenderer(String format) {
          if ((format == null) ||
                  format.equalsIgnoreCase("application/pdf") ||
--- 203,215 ----
  
  class FOPTaskStarter extends Starter {
      Fop task;
      Logger log;
  
!     FOPTaskStarter(Fop task, Logger aLogger) throws FOPException {
          this.task = task;
!         log = aLogger;
      }
  
      private int determineRenderer(String format) {
          if ((format == null) ||
                  format.equalsIgnoreCase("application/pdf") ||
***************
*** 219,229 ****
              format.equalsIgnoreCase("at") ||
              format.equalsIgnoreCase("xml")) {
              return Driver.RENDER_XML;
          } else {
              String err = "Couldn't determine renderer to use: "+format;
-             log.error(err);
              throw new BuildException(err);
          }
      }
  
      private String determineExtension(int renderer) {
--- 231,240 ----
***************
*** 240,250 ****
                  return ".txt";
              case Driver.RENDER_XML:
                  return ".xml";
              default:
                  String err = "Unknown renderer: "+renderer;
-                 log.error(err);
                  throw new BuildException(err);
          }
      }
  
      private File replaceExtension(File file, String expectedExt,
--- 251,260 ----
***************
*** 275,285 ****
                  }
              }
              task.log("Using base directory: " +
                       Configuration.getValue("baseDir"),
Project.MSG_DEBUG);
          } catch (Exception e) {
!             log.error("Error setting base directory",e);
          }
  
          int rint = determineRenderer(task.getFormat());
          String newExtension = determineExtension(rint);
  
--- 285,296 ----
                  }
              }
              task.log("Using base directory: " +
                       Configuration.getValue("baseDir"),
Project.MSG_DEBUG);
          } catch (Exception e) {
!           
!             task.log("Error setting base directory: " + e,
Project.MSG_ERR);
          }
  
          int rint = determineRenderer(task.getFormat());
          String newExtension = determineExtension(rint);
  
***************
*** 323,333 ****
                                            toExternalForm());
                      }
                      task.log("Using base directory: " +
                               Configuration.getValue("baseDir"),
Project.MSG_DEBUG);
                  } catch (Exception e) {
!                     log.error("Error setting base directory", e);
                  }
  
                  render(f, outf, rint);
                  actioncount++;
              }
--- 334,344 ----
                                            toExternalForm());
                      }
                      task.log("Using base directory: " +
                               Configuration.getValue("baseDir"),
Project.MSG_DEBUG);
                  } catch (Exception e) {
!                     task.log("Error setting base directory: " + e,
Project.MSG_ERR);
                  }
  
                  render(f, outf, rint);
                  actioncount++;
              }
***************
*** 347,357 ****
  
          FileOutputStream out = null;
          try {
              out = new FileOutputStream(outFile);
          } catch (Exception ex) {
-             log.error("Failed to open " + outFile);
              throw new BuildException(ex);
          }
  
          task.log(foFile + " -> " + outFile, Project.MSG_INFO);
  
--- 358,367 ----
***************
*** 366,376 ****
              }
              driver.setXMLReader(parser);
              driver.run();
              out.close();
          } catch (Exception ex) {
-             log.error("Couldn't render file: " + ex.getMessage());
              throw new BuildException(ex);
          }
      }
  
  }
--- 376,385 ----


---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: patch for Fop-Ant-Task (maintainance branch)

Posted by Jeremias Maerki <de...@greenmail.ch>.
Would you please resubmit that patch as a unified diff (cvs diff -u) and
attach it as a file, not as inline text? Thanks.

On 28.01.2003 16:00:19 Stefan.Wachter wrote:
> The fop Ant task (org.apache.fop.tools.anttasks.Fop) has a bug that causes
> that the log level is always "info". The following patch corrects it. Maybe
> one of the commiters can apply the patch.


Jeremias Maerki


---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org