So this kind of idea has been in my head for a while. Basically, the idea is for an interactive assembler implementation which people could call to add/remove containers, resources, and beans at runtime. We'd also use it to support other services which could now also do the same.

The classic assembler is a one-shot builder, it constructs everything and it's job is done. What I'm imagining the Dynamic Assembler to be is more of an API for people who want to make calls to build up and add to the container system at runtime. It'd leverage the InfoObject tree we have now to allow people to do things like:

addContainer(ContainerInfo info)
addEjbJar(EjbJarInfo info)
addResource(ResourceInfo info)

There would be equivalent methods for removing any of the above. We might even have equivalent overloaded versions that might look like this:

addContainer(String id, Class impl, String type, Properties containerProps)
addEjbJar(org.apache.openejb.EjbJar ejbJar)
addEjbJar(URL jarLocation)
addResource(URL jdbcUrl)

Not a completely flushed out idea, just kind of brain storming and looking for feedback.

-David

Reply via email to