At 11:42 PM 7/4/2002 +0200, you wrote:
>Suggested interfaces
>--------------------
>This builds upon the current avalon containerkit package. Please don't
>worry too much about namespace at this point.
>
>package org.apache.excalibur.meta;
>
>/**
>  * The assembly of object instances of a components
>  * declared dependencies on other components, as well as dependency on a
>  * Logger, Configuration, Parameters and Context.
>  */
>interface MetaData

Never going to use an interface again for this. If you remember back about 
1 1/2 years ago we separated out interface and implementations for the meta 
classes. It sucked hugely.

>{
>         DependencyMetaData[] getDependencyData();
>         Logger getLogger();

-1
This should go into component entry not metadata as it is tied to a 
particular instance, not a profile.

>         Configuration getConfiguration();
>         Parameters getParameters();
>         Context getContext();

-1

Same reason as above.

/**
>  * provides valuable information to assembler and end user about a
>  * component.
>  */
>interface ComponentDescriptor extends Descriptor
>{
>         String getName();
>         Version getVersion();
>         String getDescription();
>         String getDefaultRoleName();

-1 only makes sense in some containers. Thus it should be an attribute.

>/**
>  * Provide information about a component-to-component dependency
>  */
>interface DependencyDescriptor extends Descriptor
>{
>         String getRole();
>         Version getVersion();
>
>         boolean isOptional();
>         boolean isRequired();
>         /* maybe...
>         DependencyDescriptor getAlternative();
>         boolean isAlternative( DependencyDescriptor descriptor );
>         boolean betterAlternativeTo( DependencyDescriptor descriptor );
>         */

-1
Selection criterion are context sensitive and can be relegated to a 
particular container implementation.

Cheers,

Peter Donald
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"Faced with the choice between changing one's mind,
and proving that there is no need to do so - almost
everyone gets busy on the proof."
              - John Kenneth Galbraith
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


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

Reply via email to