Using Ant, is it possible to use AND, OR condition in tag IF?
Asked Answered
H

1

17

contrib It's possible to check more condition in tag IF?
I need to do something like this :

<if>
<equals arg1="${var}" arg2="one"/>
<or>
    <equals arg1="${var}" arg2="two"/>
</or>
<or>
    <equals arg1="${var}" arg2="three"/>
</or>
<or>
    <equals arg1="${var}" arg2="four"/>
</or>
<then>
    <echo message="basic dir: ${var}"/>
    <copy todir="../direct" verbose="yes" failonerror="no" overwrite="yes">
        <fileset dir="${var}">
            <include name="**"/>
        </fileset>
    </copy>
</then></if>

How to do many conditions in one IF?

UPDATE: solve:

<if>
<or>
    <equals arg1="${var}" arg2="one"/>    
    <equals arg1="${var}" arg2="two"/>
    <equals arg1="${var}" arg2="three"/>
    <equals arg1="${var}" arg2="four"/>
</or>
<then>
    <echo message="basic dir: ${var}"/>
    <copy todir="../direct" verbose="yes" failonerror="no" overwrite="yes">
        <fileset dir="${var}">
            <include name="**"/>
        </fileset>
    </copy>
</then></if>
Handgun answered 3/12, 2010 at 11:12 Comment(2)
Is possible to delete my question?Handgun
Krzysio - you shouldn't delete it, other users may have a similiar problem and may find your question and the answers useful. I'd remove the solution from the question and add it as an "own answer". That's the preferred way here on SO. The question is good enough to stay!Chromoprotein
C
20

<If> is based on <condition> and supports (that's my understanding) the same nested elements (conditions).

Give this a try:

<if>
   <or>
    <equals arg1="${var}" arg2="one"/>
    <equals arg1="${var}" arg2="two"/>
    <equals arg1="${var}" arg2="three"/>
    <equals arg1="${var}" arg2="four"/>
   </or>
   <then>
    <echo message="basic dir: ${var}"/>
    <copy todir="../direct" verbose="yes" failonerror="no" overwrite="yes">
        <fileset dir="${var}">
            <include name="**"/>
        </fileset>
    </copy>
   </then>
</if>
Chromoprotein answered 3/12, 2010 at 11:27 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.