mbenson     2005/02/10 14:32:21

  Modified:    .        WHATSNEW
               docs/manual/CoreTypes redirector.html
               src/main/org/apache/tools/ant/taskdefs Redirector.java
               src/main/org/apache/tools/ant/types RedirectorElement.java
               src/testcases/org/apache/tools/ant/types
                        RedirectorElementTest.java
               src/etc/testcases/types redirector.xml
  Log:
  Added loginputstring attribute to redirector.
  
  Revision  Changes    Path
  1.744     +2 -0      ant/WHATSNEW
  
  Index: WHATSNEW
  ===================================================================
  RCS file: /home/cvs/ant/WHATSNEW,v
  retrieving revision 1.743
  retrieving revision 1.744
  diff -u -r1.743 -r1.744
  --- WHATSNEW  10 Feb 2005 21:10:10 -0000      1.743
  +++ WHATSNEW  10 Feb 2005 22:32:20 -0000      1.744
  @@ -108,6 +108,8 @@
   * zip/jar/war/ear supports level attribute for deflate compression level.
     Bugzilla report 25513.
   
  +* Added loginputstring attribute to the redirector type.
  +
   Changes from Ant 1.6.2 to current Ant 1.6 CVS version
   =====================================================
   
  
  
  
  1.5       +11 -4     ant/docs/manual/CoreTypes/redirector.html
  
  Index: redirector.html
  ===================================================================
  RCS file: /home/cvs/ant/docs/manual/CoreTypes/redirector.html,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- redirector.html   19 Nov 2004 09:07:10 -0000      1.4
  +++ redirector.html   10 Feb 2005 22:32:20 -0000      1.5
  @@ -107,10 +107,17 @@
     <tr>
       <td valign="top">alwayslog</td>
       <td valign="top">Always send to the log in addition to
  -        any other destination. Default <code>false</code>.
  -        <i>Since Ant 1.6.3</i>.
  +        any other destination. <i>Since Ant 1.6.3</i>.
       </td>
  -    <td align="center" valign="top">No</td>
  +    <td align="center" valign="top">No, default is <code>false</code></td>
  +  </tr>
  +  <tr>
  +    <td valign="top">loginputstring</td>
  +    <td valign="top">Controls the display of <i>inputstring</i>'s value in
  +        log messages. Set to <code>false</code> when sending sensitive data
  +        (e.g. passwords) to external processes. <i>Since Ant 1.6.3</i>.
  +    </td>
  +    <td align="center" valign="top">No, default is <code>true</code></td>
     </tr>
   </table>
   <h3>Parameters specified as nested elements</h3>
  @@ -153,7 +160,7 @@
   dependent on the supporting task.  Any possible points of confusion
   should be noted at the task level.</p>
   <hr />
  -<p align="center">Copyright &copy; 2004 The Apache Software Foundation. All 
rights
  +<p align="center">Copyright &copy; 2004-2005 The Apache Software Foundation. 
All rights
   Reserved.</p>
   
   </body>
  
  
  
  1.26      +20 -2     
ant/src/main/org/apache/tools/ant/taskdefs/Redirector.java
  
  Index: Redirector.java
  ===================================================================
  RCS file: 
/home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/Redirector.java,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- Redirector.java   2 Feb 2005 12:52:47 -0000       1.25
  +++ Redirector.java   10 Feb 2005 22:32:20 -0000      1.26
  @@ -167,6 +167,9 @@
       /** The thread group used for starting <code>StreamPumper</code> threads 
*/
       private ThreadGroup threadGroup = new ThreadGroup("redirector");
   
  +    /** whether to log the inputstring */
  +    private boolean logInputString = true;
  +
       /**
        * Create a redirector instance for the given task
        *
  @@ -215,6 +218,16 @@
       }
   
       /**
  +     * Set whether to include the value of the input string in log messages.
  +     * Defaults to true.
  +     * @param logInputString true or false.
  +     * @since Ant 1.7
  +     */
  +    public void setLogInputString(boolean logInputString) {
  +        this.logInputString = logInputString;
  +    }
  +
  +    /**
        * Set a stream to use as input.
        *
        * @param inputStream the stream from which input will be read
  @@ -577,8 +590,13 @@
               }
               ((ConcatFileInputStream) 
inputStream).setManagingComponent(managingTask);
           } else if (inputString != null) {
  -            managingTask.log("Using input \"" + inputString + "\"",
  -                Project.MSG_VERBOSE);
  +            StringBuffer buf = new StringBuffer("Using input ");
  +            if (logInputString) {
  +                buf.append('"').append(inputString).append('"');
  +            } else {
  +                buf.append("string");
  +            }
  +            managingTask.log(buf.toString(), Project.MSG_VERBOSE);
               inputStream = new ByteArrayInputStream(inputString.getBytes());
           }
   
  
  
  
  1.5       +19 -1     
ant/src/main/org/apache/tools/ant/types/RedirectorElement.java
  
  Index: RedirectorElement.java
  ===================================================================
  RCS file: 
/home/cvs/ant/src/main/org/apache/tools/ant/types/RedirectorElement.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- RedirectorElement.java    22 Nov 2004 09:23:36 -0000      1.4
  +++ RedirectorElement.java    10 Feb 2005 22:32:20 -0000      1.5
  @@ -1,5 +1,5 @@
   /*
  - * Copyright 2004 The Apache Software Foundation.
  + * Copyright 2004-2005 The Apache Software Foundation.
    *
    *  Licensed under the Apache License, Version 2.0 (the "License");
    *  you may not use this file except in compliance with the License.
  @@ -98,6 +98,9 @@
       /** The input encoding */
       private String inputEncoding;
   
  +    /** whether to log the inputstring */
  +    private Boolean logInputString;
  +
       /**
        * Add the input file mapper.
        * @param inputMapper   <CODE>Mapper</CODE>.
  @@ -210,6 +213,18 @@
           this.inputString = inputString;
       }
   
  +    /**
  +     * Set whether to include the value of the input string in log messages.
  +     * Defaults to true.
  +     * @param logInputString true or false.
  +     * @since Ant 1.7
  +     */
  +    public void setLogInputString(boolean logInputString) {
  +        if (isReference()) {
  +            throw tooManyAttributes();
  +        }
  +        this.logInputString = logInputString ? Boolean.TRUE : Boolean.FALSE;
  +    }
   
       /**
        * File the output of the process is redirected to. If error is not
  @@ -439,6 +454,9 @@
           if (inputString != null) {
               redirector.setInputString(inputString);
           }
  +        if (logInputString != null) {
  +            redirector.setLogInputString(logInputString.booleanValue());
  +        }
           if (inputMapper != null) {
               String[] inputTargets = null;
               try {
  
  
  
  1.2       +7 -2      
ant/src/testcases/org/apache/tools/ant/types/RedirectorElementTest.java
  
  Index: RedirectorElementTest.java
  ===================================================================
  RCS file: 
/home/cvs/ant/src/testcases/org/apache/tools/ant/types/RedirectorElementTest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- RedirectorElementTest.java        27 Mar 2004 21:33:49 -0000      1.1
  +++ RedirectorElementTest.java        10 Feb 2005 22:32:20 -0000      1.2
  @@ -1,5 +1,5 @@
   /*
  - * Copyright 2004 The Apache Software Foundation.
  + * Copyright 2004-2005 The Apache Software Foundation.
    *
    *  Licensed under the Apache License, Version 2.0 (the "License");
    *  you may not use this file except in compliance with the License.
  @@ -16,6 +16,7 @@
    */
   package org.apache.tools.ant.types;
   
  +import org.apache.tools.ant.Project;
   import org.apache.tools.ant.BuildFileTest;
   
   public class RedirectorElementTest extends BuildFileTest {
  @@ -25,7 +26,7 @@
       }
   
       public void setUp() {
  -        configureProject("src/etc/testcases/types/redirector.xml");
  +        configureProject("src/etc/testcases/types/redirector.xml", 
Project.MSG_VERBOSE);
       }
   
       public void test1() {
  @@ -48,4 +49,8 @@
           executeTarget("test4");
       }
   
  +    public void testLogInputString() {
  +        executeTarget("testLogInputString");
  +        assertDebuglogContaining("Using input string");
  +    }
   }
  
  
  
  1.3       +17 -0     ant/src/etc/testcases/types/redirector.xml
  
  Index: redirector.xml
  ===================================================================
  RCS file: /home/cvs/ant/src/etc/testcases/types/redirector.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- redirector.xml    10 Feb 2005 20:34:06 -0000      1.2
  +++ redirector.xml    10 Feb 2005 22:32:21 -0000      1.3
  @@ -21,4 +21,21 @@
       </redirector>
     </target>
   
  +  <target name="testLogInputString" depends="cat-check" if="can-cat">
  +    <exec executable="cat">
  +      <redirector inputstring="foo" loginputstring="false" />
  +    </exec>
  +  </target>
  +
  +  <target name="cat-check">
  +    <property environment="env" />
  +    <condition property="can-cat">
  +      <or>
  +        <available file="cat" filepath="${env.PATH}" property="can-cat" />
  +        <available file="cat.exe" filepath="${env.PATH}" property="can-cat" 
/>
  +        <available file="cat.exe" filepath="${env.Path}" property="can-cat" 
/>
  +      </or>
  +    </condition>
  +  </target>
  +
   </project>
  
  
  

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

Reply via email to