I think I found a good solution for dealing with 'non-ant' tasks
and types ( the adapters ), with the minimum amount of change.

The story is simple: 

- ProjectComponentHelper is the hook that creates all components.
Based on the component name, expected role ( which is a very extensible
concept, right now it'll be DataType, Task - but we can refine this 
to deal with inner components, etc ) and ns the helper will create
a Task, DataType, etc.

- For 'normal' ant tasks/types things are simple, the real object is 
returned.

- For 'external' objects ( Filter, regular beans ) an adapter must be
returned. The current TaskAdapter is extremely limited and works only
for tasks - but hopefully there is a simple and extremely powerfull
solution - use RuntimeConfigurable.

This solution resolves a lot of problems - it allows total freedom
in how the components are 'adapted'. It requires few small changes
in RuntimeConfigurable - to allow the returned adapter ( i.e. a Task/
DataType that wraps the external object ) to access the data in
RuntimeConfigurable and get a chance to implement a custom
behavior instead of the one hardcoded in RuntimeConfigurable.

Comments ? One extra addition would be to refine a bit RuntimeConfigurable
and make it less xml-specific, but that can be a separate proposal.
 

Costin 



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

Reply via email to