ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Costin Manolache <>
Subject Re: PropertyHelper (was: Re: beating the dead Ant 1.6 horse)
Date Thu, 14 Aug 2003 14:25:29 GMT
Knut Wannheden wrote:

> Sounds great!
> In anticipation of this feature I have used a few namespaced properties
> for
> my custom tasks.  And since Ant 1.5 doesn't have any value for these, I've
> just made the tasks resolve them explicitly.
> This raises a question: Are properties whose values are resolved by custom
> PropertyHelpers always converted to Strings?  I see that the return type
> of PropertyHelper#getPropertyHook(String, String, boolean) has Object as
> the
> return type.  But if that's always converted to a String then my custom
> PropertyHelper will need to make sure that this is done correctly, i.e.
> that the Object yields a meaningful String representation.
> But for tasks which have a setXXX(Object) method it would maybe make sense
> to preserve the property value as an Object instance, if that's what's
> actually in the buildfile.  E.g.
>     <foo xxx="${my:bar}"/>
> would not convert the ${my:bar} property to a String.

If you read the comments on top of PropertyHelper - that was one of the
goals, but I don't think it is implemented yet. The return value for the
property interceptors is already an object, but the code that does property
replacement doesn't know how to deal with "${prop}".


> Cheers,
> --
> knut
> "Nicola Ken Barozzi" <> wrote in message
> news:bhfat4$1df$
>> Dominique Devienne wrote, On 12/08/2003 15.37:
>> > I'm also interested PropertyHelper, and in particular Costin's
>> > experimental XPath based one. I'd like to be able to define
>> > functions (defined as part of an AntLib) to operate directly on
>> > property values, kind of like XPath functions, and it sounds like
>> > property helper is the way to get this!?!? --DD
>> Yes. PropertyHelper is a property interceptor, and it simply rocks.
>> In essence, you register a helper with Ant. Then, at each request for a
>> property, each registered helper is asked for the property value in
>> turn; the first one that has it, returns it.
>> A typical one is the xpath one, as you say, that resolves the request as
>> an xpath in the Ant Project, if the property starts with "xpath:".
>> Centipede has been using it for a long time, basically to read an xml
>> file as a property in a more powerful way than simply using xmlproperty.
>> Now we are doing our own helper that reads the Gump descriptor, the
>> Maven one, etc and makes them all accessible as a single virtual
>> descriptor. In this way Ant users can have any descriptor they want and
>> use that to gather properties and infos for the project.
>> Just an example of the usage of PropertyHelper.
>> --
>> Nicola Ken Barozzi         
>>              - verba volant, scripta manent -
>>     (discussions get forgotten, just code remains)
>> ---------------------------------------------------------------------

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

View raw message