ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "broken connection" <brokenconnect...@gmail.com>
Subject Re: For loop question
Date Fri, 29 Jun 2007 16:42:12 GMT
Ben,
No doubt that was a brilliant suggestion...but since the "argvalue" passed
is dynamic, I cannot use that.Instead is there anyway I can use the argument
passed instead i.e "pass1.property"..that would serve the purpose..

I want the outputproperty to go into a static variable, as I need to use
that value later on....

Thanks

On 6/29/07, Scot P. Floess <floess@mindspring.com> wrote:
>
> Ah good point...  I was just throwing something out there...  But your
> point here is certainly well taken...  I like it :)
>
> Burgess, Benjamin wrote:
> > The common solution to this problem is to reference your @{argvalue} in
> > the outputproperty name.  So something like:
> >
> > <redirector outputproperty="@{argvalue}.result.property" />
> >
> > Ben
> >
> > -----Original Message-----
> > From: broken connection [mailto:brokenconnection@gmail.com]
> > Sent: Friday, June 29, 2007 11:57 AM
> > To: Ant Users List; floess@mindspring.com
> > Subject: Re: For loop question
> >
> > Wow..now thats too much code for me!!!!!
> > I don't want something that complex,is this the only way to accomplish
> > this
> > or some simpler way is also there, I was thinking of something like
> > this:
> >
> > <for list="${pass1.property},${pass2.property},${pass3.property}"
> > param="argvalue">
> >         <sequential>
> >
> >         <exec  executable="${ext}" >
> >             <arg value="/c"/>
> >             <arg value="execute.bat @{argvalue}"/>
> >             <redirector outputproperty="result.property" />
> >          </exec>
> >
> >         </sequential>
> >         </for>
> >
> >         <if>
> >         <equals arg1="${pass1.property}" />
> >         <then>
> >             <echo>"Do your stuff here for property1" />
> >         </then>
> >         </if>
> >         .....
> >         .....
> >         .....
> >
> > If not,I would try to understand your code,modify it and use for my
> > needs.
> > Thanks Again.....
> >
> > On 6/29/07, Scot P. Floess <floess@mindspring.com> wrote:
> >
> >> Interesting question...  I actually had a need to iterate over a list
> >> (using for loop construct) but needed the previous, current and next
> >> elements in the list - certainly similar functionality.  Here is my
> >> macro def:
> >>
> >>     <macrodef
> >>         name = "process-list"
> >>         description = "Allows one to iterate over a list/files and for
> >> each element in the list know the previous, current and next values."
> >>         uri         = "http://jplate.sourceforge.net/utility">
> >>
> >>         <attribute name = "list"      default = ""   description =
> >>
> > "The
> >
> >> list to process."/>
> >>         <attribute name = "delimiter" default = ","  description =
> >>
> > "The
> >
> >> delimiter for @{list}."/>
> >>         <attribute name = "previous"  default =
> >> "jplate-utility.PREVIOUS"  description = "Name of property to hold
> >> previous value in list."/>
> >>         <attribute name = "current"   default =
> >> "jplate-utility.CURRENT"   description = "Name of property to hold
> >> current value in list."/>
> >>         <attribute name = "next"      default =
> >> "jplate-utility.NEXT"      description = "Name of property to hold
> >>
> > next
> >
> >> value in list."/>
> >>
> >>         <element name = "path"     optional = "true"  description =
> >> "Files to process."/>
> >>         <element name = "process"  description = "When iterating over
> >> @{list}/@{path}, process the contents contained here."/>
> >>
> >>         <sequential>
> >>             <!--
> >>
> >>                 Initial settings...
> >>
> >>             -->
> >>             <ant-contrib:var  name = "@{previous}"  value = ""/>
> >>             <ant-contrib:var  name = "@{current}"   value = ""/>
> >>             <ant-contrib:var  name = "@{next}"      value = ""/>
> >>
> >>             <!--
> >>
> >>                 Iterate over files and/or the list, calling process
> >>                 for each item.  First iteration we skip as we want
> >>                 to ensure we always have a previous, current and next.
> >>
> >>             -->
> >>             <ant-contrib:for  list = "@{list}"  delimiter =
> >> "@{delimiter}"  param = "processlist">
> >>                 <ant-contrib:path>
> >>                     <path/>
> >>                 </ant-contrib:path>
> >>
> >>                 <ant-contrib:sequential>
> >>                     <ant-contrib:switch  value = "${@{current}}">
> >>                         <ant-contrib:case  value = "">
> >>                             <ant-contrib:var  name = "@{current}"
> >>
> > value
> >
> >> = "@{processlist}"/>
> >>                         </ant-contrib:case>
> >>
> >>                         <ant-contrib:default>
> >>                             <ant-contrib:var  name = "@{next}"  value
> >>
> > =
> >
> >> "@{processlist}"/>
> >>
> >>                             <process/>
> >>
> >>                             <ant-contrib:var  name = "@{previous}"
> >> value = "${@{current}}"/>
> >>                             <ant-contrib:var  name = "@{current}"
> >> value = "@{processlist}"/>
> >>                         </ant-contrib:default>
> >>                     </ant-contrib:switch>
> >>
> >>                 </ant-contrib:sequential>
> >>             </ant-contrib:for>
> >>
> >>             <!--
> >>
> >>                 Need to call process with an empty next - meaning end
> >>
> > of
> >
> >> list.
> >>
> >>             -->
> >>             <ant-contrib:var  name = "@{next}"  value = ""/>
> >>
> >>             <process/>
> >>         </sequential>
> >>    </macrodef>
> >>
> >>
> >>
> >>
> >> broken connection wrote:
> >>
> >>> Hi Friends,
> >>> I have a simple "for" task question. I use this for task from
> >>> ant-contrib:
> >>>
> >>>        <for
> >>>
> > list="${pass1.property},${pass2.property},${pass3.property}"
> >
> >>> param="argvalue">
> >>>        <sequential>
> >>>
> >>>        <exec  executable="${ext}" >
> >>>            <arg value="/c"/>
> >>>            <arg value="execute.bat @{argvalue}"/>
> >>>            <redirector outputproperty="result.property" />
> >>>         </exec>
> >>>
> >>>        </sequential>
> >>>        </for>
> >>>
> >>> I want to pass in 3 values and store the output in 3 different
> >>> properties .
> >>> Is there anyway to do this??
> >>>
> >>> Rite now, the output of all the 3 parameters gets overritten in "
> >>> result.property"
> >>>
> >>> Your help would be greatly appreciated.
> >>> Thanks
> >>>
> >>>
> >> --
> >> Scot P. Floess
> >> 27 Lake Royale
> >> Louisburg, NC  27549
> >>
> >> 252-478-8087 (Home)
> >> 919-392-6730 (Work)
> >>
> >> Chief Architect JPlate  http://sourceforge.net/projects/jplate
> >> Chief Architect JavaPIM http://sourceforge.net/projects/javapim
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> >> For additional commands, e-mail: user-help@ant.apache.org
> >>
> >>
> >>
> >
> >
> ********************************************************************************************
> > This message, including any attachments, contains confidential
> information intended
> > for a specific individual and purpose, and is protected by law. If you
> are not the intended
> > recipient, please contact the sender immediately by reply e-mail and
> destroy all copies.
> > You are hereby notified that any disclosure, copying, or distribution of
> this message, or
> > the taking of any action based on it, is strictly prohibited.
> >
> > TIAA-CREF
> >
> ********************************************************************************************
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> > For additional commands, e-mail: user-help@ant.apache.org
> >
> >
> >
>
> --
> Scot P. Floess
> 27 Lake Royale
> Louisburg, NC  27549
>
> 252-478-8087 (Home)
> 919-392-6730 (Work)
>
> Chief Architect JPlate  http://sourceforge.net/projects/jplate
> Chief Architect JavaPIM http://sourceforge.net/projects/javapim
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message