mbenson     2004/06/16 09:41:38

  Modified:    .        WHATSNEW
               src/testcases/org/apache/tools/ant/taskdefs
                        ExecuteOnTest.java
               src/etc/testcases/taskdefs/exec apply.xml
               docs/manual/CoreTasks apply.html
               src/main/org/apache/tools/ant/taskdefs ExecuteOn.java
  Log:
  Add ignoremissing attribute to <apply>.
  PR:  29585
  
  Revision  Changes    Path
  1.624     +6 -0      ant/WHATSNEW
  
  Index: WHATSNEW
  ===================================================================
  RCS file: /home/cvs/ant/WHATSNEW,v
  retrieving revision 1.623
  retrieving revision 1.624
  diff -u -r1.623 -r1.624
  --- WHATSNEW  14 Jun 2004 12:23:49 -0000      1.623
  +++ WHATSNEW  16 Jun 2004 16:41:38 -0000      1.624
  @@ -33,6 +33,10 @@
   * A new base class DispatchTask has been added to facilitate elegant 
     creation of tasks with multiple actions.
   
  +* <apply> has a new ignoremissing attribute (default true for BC)
  +  which will allow nonexistent files specified via <filelist>s to
  +  be passed to the executable.  Bugzilla Report 29585.
  +
   Changes from Ant 1.6.1 to current Ant 1.6 CVS version
   =====================================================
   
  @@ -228,6 +232,8 @@
   * Add implicit nested element to <macrodef>. Bugzilla Report 25633.
   
   * Add deleteonexit attribute to <delete>.
  +
  +* Added Target.getIf/Unless().  Bugzilla Report 29320.
   
   Changes from Ant 1.6.0 to Ant 1.6.1
   =============================================
  
  
  
  1.6       +4 -0      
ant/src/testcases/org/apache/tools/ant/taskdefs/ExecuteOnTest.java
  
  Index: ExecuteOnTest.java
  ===================================================================
  RCS file: 
/home/cvs/ant/src/testcases/org/apache/tools/ant/taskdefs/ExecuteOnTest.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- ExecuteOnTest.java        27 Mar 2004 21:22:59 -0000      1.5
  +++ ExecuteOnTest.java        16 Jun 2004 16:41:38 -0000      1.6
  @@ -550,6 +550,10 @@
           assertNull("unexpected redirector.err content", 
getFileString("redirector.err"));
       }
   
  +    public void testIgnoreMissing() {
  +        executeTarget("ignoremissing");
  +    }
  +
       //borrowed from TokenFilterTest
       private String getFileString(String filename) throws IOException {
           String result = null;
  
  
  
  1.3       +41 -0     ant/src/etc/testcases/taskdefs/exec/apply.xml
  
  Index: apply.xml
  ===================================================================
  RCS file: /home/cvs/ant/src/etc/testcases/taskdefs/exec/apply.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- apply.xml 27 Mar 2004 21:22:58 -0000      1.2
  +++ apply.xml 16 Jun 2004 16:41:38 -0000      1.3
  @@ -303,6 +303,47 @@
           </apply>
       </target>
   
  +    <target name="ignoremissing">
  +        <filelist id="xylist" dir="${basedir}" files="x,y" />
  +        <filelist id="xyzlist" dir="${basedir}" files="x,y,z" />
  +
  +        <touch file="x" />
  +        <touch file="y" />
  +
  +        <pathconvert property="xy" pathsep="${line.separator}">
  +            <path>
  +                <filelist refid="xylist" />
  +            </path>
  +        </pathconvert>
  +
  +        <pathconvert property="xyz" pathsep="${line.separator}">
  +            <path>
  +                <filelist refid="xyzlist" />
  +            </path>
  +        </pathconvert>
  +
  +        <apply executable="echo" ignoremissing="true"
  +               outputproperty="ignoretrue" append="true">
  +            <filelist refid="xyzlist" />
  +        </apply>
  +
  +        <apply executable="echo" ignoremissing="false"
  +               outputproperty="ignorefalse" append="true">
  +            <filelist refid="xyzlist" />
  +        </apply>
  +
  +        <fail>
  +            <condition>
  +                <not>
  +                    <and>
  +                        <equals arg1="${xy}" arg2="${ignoretrue}" />
  +                        <equals arg1="${xyz}" arg2="${ignorefalse}" />
  +                    </and>
  +                </not>
  +            </condition>
  +        </fail>
  +    </target>
  +
       <target name="cleanup">
           <delete>
               <fileset refid="xyz" />
  
  
  
  1.30      +6 -0      ant/docs/manual/CoreTasks/apply.html
  
  Index: apply.html
  ===================================================================
  RCS file: /home/cvs/ant/docs/manual/CoreTasks/apply.html,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- apply.html        23 Apr 2004 14:44:43 -0000      1.29
  +++ apply.html        16 Jun 2004 16:41:38 -0000      1.30
  @@ -248,6 +248,12 @@
         Defaults to <code>false</code>.  <em>Since Ant 1.6.</em></td>
       <td align="center" valign="top">No</td>
     </tr>
  +  <tr>
  +    <td valign="top">ignoremissing</td>
  +    <td valign="top">Whether to ignore nonexistent files specified
  +      via filelists.  <em>Since Ant 1.7.</em></td>
  +    <td align="center" valign="top">No, default is <i>true</i></td>
  +  </tr>
   </table>
   <h3>Parameters specified as nested elements</h3>
   <h4>fileset</h4>
  
  
  
  1.54      +12 -2     ant/src/main/org/apache/tools/ant/taskdefs/ExecuteOn.java
  
  Index: ExecuteOn.java
  ===================================================================
  RCS file: 
/home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/ExecuteOn.java,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -u -r1.53 -r1.54
  --- ExecuteOn.java    23 Apr 2004 19:33:02 -0000      1.53
  +++ ExecuteOn.java    16 Jun 2004 16:41:38 -0000      1.54
  @@ -71,6 +71,7 @@
       private int maxParallel = -1;
       private boolean addSourceFile = true;
       private boolean verbose = false;
  +    private boolean ignoreMissing = true;
   
       /**
        * Has &lt;srcfile&gt; been specified before &lt;targetfile&gt;
  @@ -183,6 +184,15 @@
       }
   
       /**
  +     * Whether to ignore nonexistent files from filelists.
  +     *
  +     * @since Ant 1.7
  +     */
  +    public void setIgnoremissing(boolean b) {
  +        ignoreMissing = b;
  +    }
  +
  +    /**
        * Marker that indicates where the name of the source file should
        * be put on the command line.
        */
  @@ -354,10 +364,10 @@
   
                   for (int j = 0; j < names.length; j++) {
                       File f = new File(base, names[j]);
  -                    if ((f.isFile() && !"dir".equals(type))
  +                    if ((!ignoreMissing) || (f.isFile() && 
!"dir".equals(type))
                           || (f.isDirectory() && !"file".equals(type))) {
   
  -                        if (f.isFile()) {
  +                        if (ignoreMissing || f.isFile()) {
                               totalFiles++;
                           } else {
                               totalDirs++;
  
  
  

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

Reply via email to