stevel      2004/08/03 16:19:08

  Modified:    src/main/org/apache/tools/ant/taskdefs Echo.java
  Log:
  Echo cleanup. Too much duplicate logic.
  
  Revision  Changes    Path
  1.35      +29 -22    ant/src/main/org/apache/tools/ant/taskdefs/Echo.java
  
  Index: Echo.java
  ===================================================================
  RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/Echo.java,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- Echo.java 9 Mar 2004 16:48:04 -0000       1.34
  +++ Echo.java 3 Aug 2004 23:19:08 -0000       1.35
  @@ -20,9 +20,11 @@
   import java.io.File;
   import java.io.FileWriter;
   import java.io.IOException;
  +
   import org.apache.tools.ant.BuildException;
   import org.apache.tools.ant.Project;
   import org.apache.tools.ant.Task;
  +import org.apache.tools.ant.util.FileUtils;
   import org.apache.tools.ant.types.EnumeratedAttribute;
   /**
    * Writes a message to the Ant logging facilities.
  @@ -55,13 +57,7 @@
               } catch (IOException ioe) {
                   throw new BuildException(ioe, getLocation());
               } finally {
  -                if (out != null) {
  -                    try {
  -                        out.close();
  -                    } catch (IOException ioex) {
  -                        //ignore
  -                    }
  -                }
  +                FileUtils.close(out);
               }
           }
       }
  @@ -115,19 +111,7 @@
        * @param echoLevel the logging level
        */
       public void setLevel(EchoLevel echoLevel) {
  -        String option = echoLevel.getValue();
  -        if (option.equals("error")) {
  -            logLevel = Project.MSG_ERR;
  -        } else if (option.equals("warning")) {
  -            logLevel = Project.MSG_WARN;
  -        } else if (option.equals("info")) {
  -            logLevel = Project.MSG_INFO;
  -        } else if (option.equals("verbose")) {
  -            logLevel = Project.MSG_VERBOSE;
  -        } else {
  -            // must be "debug"
  -            logLevel = Project.MSG_DEBUG;
  -        }
  +        logLevel=echoLevel.getLevel();
       }
   
       /**
  @@ -139,8 +123,31 @@
            * @return the strings allowed for the level attribute
            */
           public String[] getValues() {
  -            return new String[] {"error", "warning", "info",
  -                                 "verbose", "debug"};
  +            return new String[] {
  +                "error",
  +                "warning",
  +                "info",
  +                "verbose",
  +                "debug"};
  +        }
  +
  +        /**
  +         * mapping of enumerated values to log levels
  +         */
  +        private static int levels[]={
  +            Project.MSG_ERR,
  +            Project.MSG_WARN,
  +            Project.MSG_INFO,
  +            Project.MSG_VERBOSE,
  +            Project.MSG_DEBUG
  +        };
  +
  +        /**
  +         * get the level of the echo of the current value
  +         * @return
  +         */
  +        public int getLevel() {
  +            return levels[getIndex()];
           }
       }
   }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to