I have a bit of a problem reusing the microcontainer because it's quite hard to understand the MC itself and i suspect that it doesn't cover my needs. this discussion is an initiative to find out about what parts of the MC i will be able to leverage and to explain as much as possible my needs and vision for the MC.
i've scanned through the "Repository prototype discussion" http://www.jboss.com/index.html?module=bb&op=viewtopic&t=73653
and saw a lot of concepts that are related to what i need. yet still i don't understand all of the discussion.
i have worked on a prototype to learn about and to show the jbpm needs. as far as i can understand, following points state the biggest differences with the microcontainer:
1) i would like to be able to use the metadata and object creation separate from all the other functionality from the microcontainer.
2) the metadata seems to be tightly coupled to the registry. i also want to put things in the registry that are not created by metadata.
3) i want a hierarchical structure in the registry. i didn't see any sign of tree structure in the prototype discussion.
4) i don't need any classloading stuff
5) i don't need extensive dependency and lifecycle (but i guess that is not a problem)
I'll try to explain the prototype i worked out. You can find it in jboss cvs: /cvsroot/jbpm module 'lightning'
The environment is very similar to a thread local JNDI. Aspects and container software publish things in the environment and a component fetches things from the environment (or gets them injected by specifying the location in the environment)
The prototype also shows one solution of how different levels can be combined. Basically each level is a node in the tree. One scope/metadata+objectscache is a node in the environment tree. In my prototype, i let the beans refer to other beans by searching them in the complete environment, rather then locally.
The lightning prototype contains a powerpoint in the docs and a test case that shows a little bit the direction i want to go. I can further explain/discuss this in a webex if anyone is interested.
any ideas and pointers on how i can find which parts of the MC i need are appreciated.