ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Reilly" <>
Subject Re: Local Properties
Date Mon, 27 Aug 2007 20:47:13 GMT
On 8/27/07, Stefan Bodewig <> wrote:
> On Wed, 22 Aug 2007, Peter Reilly <> wrote:
> > Hi all,
> > I have updated the local properties patch to
> > make use of the new PropertyHelper delegate infrastructure.
> > (see:
> Still haven't found the time to actually look at the implementation,
> sorry.
> > The idea behind local properties is to provide
> > isolation of properties within element blocks - like
> > macrodefs and sequential. The main use case of
> > course is for macrodefs.
> And they are a good idea for this.
> How does nesting of locals work?  If a macro calls another macro, are
> the properties set in the outer macro available to the inner?  What
> about <ant> subbuilds invoked from inside a macro?

Nesting works for calling other macros (otherwise ant-contrib for would
not work too good!).
But not for calling ant subbuilds invoked from inside a macro. The
reasoning here is that 1) the code is awful (and thus hard to maintain)
and 2) it is not necessary
as one can use nested <property> tags on the <ant> task and 3)
it may be confusing (where do these fit with nested property, user and
non-user properties).

> > The <local> patch uses the following elements for block scopeing -
> > <target> and <sequential>.
> >
> > (I think that this could be restricted to just <sequential>).
> I think there are two options: restricting it to sequential
This is my current
> or
> allowing it for any TaskContainer.

This is hard as the TaskContainer user implementation controls when
the sequence of UEs are to be invoked (or reinvoked) and there is no
hook back to
ant core as to when this happens.

>Anything else will make us add
> more tasks to the list of allowed containers.
It would be up the the custom taskcontainers to demark the
localproperty context.


> Stefan
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message