:-) Ok, I will add an example with that to <antcall>
Jan >-----Ursprüngliche Nachricht----- >Von: Rhino [mailto:[EMAIL PROTECTED] >Gesendet: Mittwoch, 21. Dezember 2005 14:42 >An: Ant Users List >Betreff: Re: Testing multiple values? > >Oh, right, it's all coming back to me! You taught me that >trick a couple of years back on this list. I hadn't thought of >that as a solution to my current problem but you're right, it >would work for that, too. > >Excellent! These 'tricks' make Ant conditional processing much >more palateable than having to set a property so that you can >set another property so that you can invoke or bypass another >target just to display a message. Why aren't these tricks >documented in the manual? There should really be a section for >techniques like this.... > >Rhino > >----- Original Message ----- >From: <[EMAIL PROTECTED]> >To: <user@ant.apache.org> >Sent: Wednesday, December 21, 2005 1:05 AM >Subject: AW: Testing multiple values? > > >Another trick is using > <antcall target="handle${script1.result}"> >and provide a couple of targets. > > >Jan > >>-----Ursprüngliche Nachricht----- >>Von: Rhino [mailto:[EMAIL PROTECTED] >>Gesendet: Mittwoch, 21. Dezember 2005 00:07 >>An: Ant Users List >>Betreff: Re: Testing multiple values? >> >>Wow, that's remarkably easy and straightforward, which is not >>what I expect from Ant when it comes to conditions :-) >> >>I'll give this a try and post back if it doesn't work properly. >> >>Thank you!! >> >>Rhino >> >>----- Original Message ----- >>From: "Ondrej Svetlik" <[EMAIL PROTECTED]> >>To: "Ant Users List" <user@ant.apache.org> >>Sent: Tuesday, December 20, 2005 4:52 PM >>Subject: Re: Testing multiple values? >> >> >>> Well, how about >>> >>> <exec /> >>> <fail message="Script1 failed. See Script1.out."> >>> <condition> >>> <equals arg1="${script1.result}" arg2="1" /> >>> </condition> >>> </fail> >>> >>> <fail message="WinSCP3 environment not initialized. Please >>click on the >>> keyfile and supply the passphrase."> >>> <condition> >>> <equals arg1="${script1.result}" arg2="-1073741819" /> >>> </condition> >>> </fail> >>> >>> Best regards, >>> >>> Ondrej Svetlik >>> >>> Rhino wrote: >>>> How do I handle three different possible values from an >>'exec' task when >>>> I want one value to be ignored and each of the other two >>values to invoke >>>> different targets? >>>> >>>> I have an exec task that has the parameter >>>> resultproperty="script1.result". The value of >>script1.result can be: 0 >>>> (indicates that the script worked fine without errors); 1 >>(indicates that >>>> the script ran but had errors); or -1073741819 (indicates that the >>>> WinSCP3 environment was not initialized properly; basically, the >>>> passphrase hadn't yet been entered so that WinSCP3 could verify the >>>> login). >>>> >>>> When script.result is 0, I want to move on to the next >>target within my >>>> build. When script.result is 1, I want to fail with the >>error message >>>> ("Script1 failed. See Script1.out."). When script1.result is >>>> -1073741819, I want to fail with the error message >>("WinSCP3 environment >>>> not initialized. Please click on the keyfile and supply the >>passphrase.") >>>> >>>> My script currently handles the 0 and 1 conditions just >>fine but I don't >>>> know how to change my code to handle the third value for >>script1.result. >>>> Here is what I have so far: >>>> >>>> <target name="upload-Tonge" description="Upload to the >>Tonge server."> >>>> >>>> <echo message="Uploading to Tonge...."/> >>>> >>>> <!--echoproperties prefix="server"/--> >>>> >>>> <exec executable="${WinSCP3.com}" os="Windows XP" >>output="${script1.out}" >>>> error="${script1.err}" >>>> >>>> resultproperty="script1.result" >>>> >>>> description="Run a trivial script that doesn't change >>anything, just to >>>> show that everything works."> >>>> >>>> <arg line="/console /script=${script1.in}"/> >>>> >>>> </exec> >>>> >>>> >>>> >>>> </target> >>>> >>>> <target name="check-Script1" depends="upload-Tonge" >>description="See if >>>> Script1 worked."> >>>> >>>> <echo message="Check script1 result"/> >>>> >>>> <condition property="script1.failed"> >>>> >>>> <equals arg1="${script1.result}" arg2="1"/> >>>> >>>> </condition> >>>> >>>> <echo message="script1.result=${script1.result}"/> >>>> >>>> <antcall target="upload-Tonge-Script1-errors"/> >>>> >>>> </target> >>>> >>>> <target name="upload-Tonge-Script1-errors" if="script1.failed"> >>>> >>>> <fail message="Oops, script ${script1.name} failed on Tonge >>server. See >>>> ${script1.out} and ${script1.err}."/> >>>> >>>> </target> >>>> >>>> >>>> >>>> <target name="upload-Tonge-Script2-errors" if="script2.failed"> >>>> >>>> <fail message="Oops, script ${script2.name} failed on Tonge >>server. See >>>> ${script2.out} and/or ${script2.err}."/> >>>> >>>> </target> >>>> >>>> >>>> Do I need a different condition task to handle the >>-1073741819 value for >>>> script1.result? If yes, don't I have to worry about the >>'upload-Bongo' >>>> task executing twice? Or can I modify the existing >>condition task to >>>> invoke two different targets based on the non-zero value of >>>> script.result, one target for script1.result = 1 and a >>different target >>>> for script1.result = -1073741819? >>>> >>>> Or do I need to change the script more radically and do >>things a whole >>>> different way? >>>> >>>> I'd prefer to stay with core tasks if at all possible. >>>> >>>> Rhino >>>> >>>> >>>> >>> >>> >--------------------------------------------------------------------- >>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> >>> -- >>> No virus found in this incoming message. >>> Checked by AVG Free Edition. >>> Version: 7.1.371 / Virus Database: 267.14.1/207 - Release >>Date: 19/12/2005 >>> >>> >> >> >> >>-- >>No virus found in this outgoing message. >>Checked by AVG Free Edition. >>Version: 7.1.371 / Virus Database: 267.14.1/207 - Release >>Date: 19/12/2005 >> >> >>--------------------------------------------------------------------- >>To unsubscribe, e-mail: [EMAIL PROTECTED] >>For additional commands, e-mail: [EMAIL PROTECTED] >> >> > >--------------------------------------------------------------------- >To unsubscribe, e-mail: [EMAIL PROTECTED] >For additional commands, e-mail: [EMAIL PROTECTED] > > >-- >No virus found in this incoming message. >Checked by AVG Free Edition. >Version: 7.1.371 / Virus Database: 267.14.1/207 - Release >Date: 19/12/2005 > > > > >-- >No virus found in this outgoing message. >Checked by AVG Free Edition. >Version: 7.1.371 / Virus Database: 267.14.2/208 - Release >Date: 20/12/2005 > > >--------------------------------------------------------------------- >To unsubscribe, e-mail: [EMAIL PROTECTED] >For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]