--- Peter Reilly <[EMAIL PROTECTED]> wrote: > Hi Matt, > this is pretty neat.
Thanks for the compliment, and for checking it out! :) > > Just a couple of points: > 1) the svn does not have the common external pointer > defined Oops--I figured out how to do it but forgot that I had to commit properties changes, should be ok now. > 2) how do the property helpers work with <*ant*> ? I am currently working from the perspective that the availability of a given PropertyHelper delegate is crucial enough to warrant forcing explicit or imported invocation. I am willing to entertain differing opinions, however. :) -Matt > > Peter > > > On 6/26/07, Matt Benson <[EMAIL PROTECTED]> > wrote: > > Hi all-- > > Just wanted to be sure everyone who cares about > this > > thread noticed > > > http://issues.apache.org/bugzilla/show_bug.cgi?id=42736 > > and the companion antlib at > > > http://svn.apache.org/repos/asf/ant/sandbox/antlibs/props > > . > > > > br, > > Matt > > > > --- Matt Benson <[EMAIL PROTECTED]> wrote: > > > > > > > > --- Dominique Devienne <[EMAIL PROTECTED]> > wrote: > > > > > > > On 6/22/07, Matt Benson <[EMAIL PROTECTED]> > > > > wrote: > > > > > Let me divert the topic for a moment--the > other > > > of > > > > the > > > > > two most important property handling > extension > > > > points > > > > > can be expressed with a PropertyEvaluator > > > > interface. > > > > > A perfect example is Ant's built-in > > > toString:refid > > > > > property "syntax". Basically that's an > example > > > of > > > > a > > > > > custom PropertyEvaluator that interprets a > > > string > > > > > beginning with "toString:". Now imagine a > > > > > complementary custom property evaluator that > > > > evaluates > > > > > "refid:refid" to the Object reference. > Overload > > > > > IH.setAttribute to allow Object values. > Change > > > > > property replacement such that a string > whose > > > > entire > > > > > contents are a property that evaluates to an > > > > Object, > > > > > returns the Object. With the postulated > > > > refid:refid > > > > > PropertyEvaluator, "${refid:myclasspath}" > would > > > > return > > > > > the Path at refid myclasspath. If > > > > RuntimeConfigurable > > > > > calls the PH method that is capable of > returning > > > > an > > > > > Object, then passes that Object (or String) > to > > > the > > > > > overloaded IH.setAttribute(), we have just > > > > rendered > > > > > all classpathref attributes obsolete; > rather, > > > any > > > > task > > > > > can support ref'd types in attributes > without > > > > having > > > > > to support the foo|fooref paradigm. If the > > > > attribute > > > > > isn't settable as the returned Object, > convert > > > the > > > > > Object to a String and pass it to the > original > > > > > IH.setAttribute() implementation. > > > > > > > > This use case I do care about. But I always > felt > > > > refid handling should > > > > be transparent to the tasks, and handled > directly > > > by > > > > the framework. > > > > hard to retrofit on the current infrastructure > > > > though I think. But > > > > where I'm getting at is that this particular > > > example > > > > of yours, yes, I > > > > agree it's a valid use case, but I don't think > > > that > > > > the way to enable > > > > it ;-) > > > > > > I don't know; this is really seeming like a > > > best-of-both-worlds scenario to me. Custom > > > pluggable > > > extensions with the possibility of one that > allows > > > nearly-automatic refid handling among other, > some > > > unforeseeable, specializations. > > > > > > > > > > > I'm not overly fond of "special" handling in > IH > > > when > > > > the attribute > > > > value is "entirely" a property deref, but I > could > > > > live with that is > > > > others accept it. --DD > > > > > > > > > > My plan is to finish the changes I'm working on, > > > along > > > with a companion antlib for testing, then attach > the > > > core changes to a BZ issue so others can apply > the > > > patch and test if they like; then we'll have > > > something > > > more tangible to discuss. Of course I hope for > as > > > much discourse as possible to take place in the > > > interim. > > > > > > -Matt > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: > > > > [EMAIL PROTECTED] > > > > For additional commands, e-mail: > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > ____________________________________________________________________________________ > > > Building a website is a piece of cake. Yahoo! > Small > > > Business gives you all the tools to get online. > > > http://smallbusiness.yahoo.com/webhosting > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: > > > [EMAIL PROTECTED] > > > For additional commands, e-mail: > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > ____________________________________________________________________________________ > > Park yourself in front of a world of choices in > alternative vehicles. Visit the Yahoo! Auto Green > Center. > > http://autos.yahoo.com/green_center/ > > > > > --------------------------------------------------------------------- > > 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] > > ____________________________________________________________________________________ Luggage? GPS? Comic books? Check out fitting gifts for grads at Yahoo! Search http://search.yahoo.com/search?fr=oni_on_mail&p=graduation+gifts&cs=bz --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]