On Friday 30 January 2004 22:41, Stephen McConnell wrote:
> Fernando Padilla wrote:
> > If we want to pull it out of -impl, we could go and add it to
> > framework-api, even though no one but containers should ever deal with
> > modifying configuration objects, so it should go into -spi.
>
> I would be OK with MutableConfiguration under -spi:
>
>   avalon-framework-api
>   avalon-framework-spi  <-- contains MutableConfiguration
>   avalon-framework-impl <-- depends on spi and api

LS,
Niclas wrote;

> > WHAT is needed?
> > WHY is that needed?
> > HOW can such need be satisfied?
> > What are the CONSEQUENCES of such change?
> > What are the SEMANTICS surrounding such change?

I am failing to see that "your making the case" is addressing these concerns
in particular, but trying to read between the lines and Stephen's
interpretation above I conclude;

What
"I am creating my own container and would benefit to use a defined interface
during the creation of the Configuration object to be passed to the
component."

Why
"By having a interface defined in the Framework, a container can choose to
provide an extension mechanism for collaborative construction of the
Configuration object, which would work identically on more than one
container."

HOW has been addresses a lot.

Consequences
By placing the interface in the SPI package, it will not be part of the
LifeCycle contract and more advanced containers can choose to prevent the
components from the ability to down cast to it.

Semantic (I don't know right now).


SO, If this is a summary of your intent, then I am Ok to continue the
discussion of HOW.
If not, please clarify....


HOW,
I would like to see that the interface MutableConfiguration DOES NOT extend
Configuration, but has the same method signatures so that the implementation
class can implement them both. That provides a better flexibility for the
container on how to go about the creation process.


Cheers
Niclas

-------------------------------------------------------


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

Reply via email to