Thanks,
this is good summing up.

On 9/13/06, Dominique Devienne <[EMAIL PROTECTED]> wrote:

> Sorry I did not read all the svn commit emails. Which classes implement
these role definitions ?

None, at least none that "define" a role.

Peter has extended IH and co. to lookup nested-element in tasks/types
that have add(X)-type methods, in a new mapping he called restricted
types (because they cannot use by themselve, only as nested element of
declared tasks/types).

Suppose I write FooTask in my bar AntLib. If FooTask as a
add(Condition) method, as of now, I can only use as nested elements
conditions which have been explicitly typedef'd.

Currently, there are none in Ant.


Except for  isfileselected and scriptcondition.


There is an antlib.xml for conditions, but I'm forced to explicitly
load it to be able to use them in my FooTask, and doing so I bring
them all into the "global" tasks/types mapping, so they can be used at
the top-level in <project> or <target>.

Peter's "restricted" types form a new mapping (I would normally say a
new namespace, but it becomes confusing because of XML namespaces...),
which is used exclusively to resolve add(X)-type methods.

This new mapping doesn't define any roles. The role that one of this
mapping will play in a task will depend on (1) the add(X) method of
that task, and (2) the types this one mapping is compatible with (in
the sense of instanceof or Class.isAssigneableFrom).

So there's no real notion of a role, IMHO. Which is why I'm not fond
of using <roledef> to declare this "restricted" types. I believe Peter
now added a 'restrict' attribute to <typedef>, which I'm also not fond
of, but it may turn out to be the less controversial choice...

No code to look at yet, since I don't think Peter posted his diffs to
BugZilla yet. --DD


I will soon...
Peter


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to