Hi guys, I start to like what I am doing which the AntDSL so I would like to modify a little bit the Ant API so I can avoid doing so work around.
In AntDSL, I have introduced an expression language so do some basic computing: some math, some logical computation and string manipulation for now. It is intended to replace the property expansion in strings. Actually, the logical computation is already implemented in Ant: the Conditions tasks. So I have used them for the if/unless attributes of the target. I would like to take it back into Ant: [1]. I don't intend to replace the existing if/unless, just offer new Java API to Target. I would also like to be able to have expressions in task attributes. But Ant assumes these are always Strings. As far as I can tell, there are two places where it is assumed and it would be changed: RuntimeConfigurable and IntrospectionHelper. I have been able to work around RuntimeConfigurable and provide my own implementation. But IntrospectionHelper is final. I have not a patch to suggest, but I think the change would probably be about introducing an interface Evaluable, change everywhere from String to Object, and when we try to get the value of the attribute, if Evaluable call eval(), otherwise call .toString(). The changes I suggest should obviously be backward compatible. I also don't think the new API on Target should imply a change in the XML ProjectHelper, an xml syntax of an if condition would probably be ugly. So is there any comment, objection regarding this API change ? Nicolas [1] http://svn.apache.org/repos/asf/ant/sandbox/antdsl/trunk/org.apache.ant.antdsl/src/org/apache/ant/antdsl/Target.java --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org For additional commands, e-mail: dev-h...@ant.apache.org