ant elder wrote:
On 3/25/07, Jean-Sebastien Delfino <[EMAIL PROTECTED]> wrote:

[snip]
Jean-Sebastien Delfino wrote:
>
>> For example, the "variant implementation of the assembly model" has a
>> number of changes that coupled with what you describe above will
>> basically require a re-write of kernel.
>
> I have not committed yet this variant implementation of the assembly
> model as I just started to experiment with it yesterday. What I have
> in the sandbox at the moment is a set of interfaces defining an
> assembly model API, and a default implementation of these interfaces.
> The variant implementation that I'm talking about is a prototype of a
> different implementation of (a subset of) the same model interfaces,
> backed by Spring bean definitions. This will help illustrate how clean
> interfaces allow for alternate implementations of one or more modules,
> and facilitate the integration with a particular runtime environment
> (Spring in this case). I've just spent a few hours on this prototype
> so it's not really baked yet, but I'll commit what I have soon so that
> people can take a look if they are interested.
>

I just committed a few classes in sca/modules/bean and bean-test under
revision r522186 to show what I meant by a variant implementation of the
assembly model.


It looks to me like this code you've been doing in the sandbox now has
enough to illustrate a lot of the concepts that have been suggested for a
more modular kernel. How about we now talk about what you've done and about how further development of these ideas could happen in trunk? It sounds like
everyone now agrees we need a more modular kernel, is everyone willing to
start doing this in trunk instead of this sandbox?

  ...ant


Ant,

Yes, what I have been doing in the sandbox probably has enough to illustrate modularization of how we handle metadata (models etc.) in our runtime.

Like I said in [1] I think some of this work should be done in trunk. I also think that we need a working trunk and as discussed in [2] I'm not advocating for a complete re-write of the kernel, so we may need to find a way to do this modularization work incrementally. Here are some initial ideas to help do this:

- Move some of these modules to trunk and evolve them in trunk, then port pieces of the runtime that want to use them incrementally over time, when people feel ready for it. For example we could start using the model I have been proposing in the WSDL2Java tool, that does not mean that kernel/core has to change right away.

- Move some of these modules in trunk, and adjust some of the model SPI in trunk (made of classes) to implement the model interfaces that I have been proposing, allowing kernel/core to continue to work with these classes until somebody wishes to do the work to port it to the interfaces. I'm not sure how practical it's going to be, but as usual actually writing the code and trying it will help understand the implications of this approach.


What's not in my sandbox yet (and which I would like to see prototyped quickly to help have a concrete discussion on it) is a modularization of the execution part of the kernel. For this to happen I think we need to start looking at ways to assemble our SCA runtime kernel without using SCA itself, as this is causing a sort of a chicken and egg problem at the moment, and preventing modularization of the support for Java components in particular since the kernel/core relies on it to assemble itself.

I'm not sure about how to approach this second part of the modularization work. I had indicated in [2] my intention to try first in the sandbox (try to make the support for Java components a separate module), but I'd very happy to work on it in the trunk if our community feels that it's an acceptable approach.

[1] http://www.mail-archive.com/[email protected]/msg15725.html
[2] http://www.mail-archive.com/[email protected]/msg15978.html

Thoughts?

--
Jean-Sebastien


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

Reply via email to