avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen McConnell" <mcconn...@apache.org>
Subject RE: Parametarizable incompatible with Configurable?
Date Sun, 10 Feb 2002 13:20:36 GMT

Mark Woon wrote:
> Is [Parameterizable] incompatible with the Configurable interface.

Lets start of with some very abstract stuff - "notions".  In the 
Avalon component world you have the following fundamental notions 
that a developer can grant  (kind of like human rights) towards 
an object by virtue of the Avalon framework interfaces.

   1. an object may be given the ability to record its
      existence and actions it takes

      --> provided by a logging framework interfaces
   2. an object may be given the ability to be provided with the 
      constants in life (makes for more mature objects)

      --> provided by Parameterizable, or Configurable interfaces
   3. an object may be given the ability to be supplied with service 
      that it may need to fulfil its objectives (makes for happy 

      --> provided by Composable interface

   4. an object may be given the ability to receive trivia from it 
      surrounding (makes for more sociable objects)

      --> provided by the Contextualizable interface

   5. an object may be given the ability to die with dignity

      --> provided by Disposable interface

In the case of Parameterizable and Configurable, both interfaces 
are basically providing solutions to the same "notion".  To have an object
that implemented both would be inconsistent - it would be like saying that 
to understand something, you need to deliver that information in two 
different and distinct forms.  This would conflict with the pipeline notion
in Avalon - where the fulfilment of a particular phase raises the objects
level of awareness, and readiness for higher things (... its almost a
religious experience). Applying both Parameterizable and Configurable on 
the same object would be conceptually irrational, informational 
inconsistent, and a touch frustrating for the object in question :-)

Instead, what you have is the ability to describe (through implementation 
of a particular interface) the way in which the object prefers to receive 
the information it needs.  The Parameterizable interface is appropriate 
when the type of information is a flat structure.  The Composable interface
deals with the supply of typically hierarchical information.  Each has its 
own advantages and disadvantages - you select the interface that is most 
appropriate to the type information structures that the component will 

Easy isn't it!

Cheers, Steve.

Stephen J. McConnell, OSM sarl
digital products for a global economy

> -----Original Message-----
> From: woon@SMI.Stanford.EDU [mailto:woon@SMI.Stanford.EDU]On Behalf Of
> Mark Woon
> Sent: Sunday, 10 February, 2002 12:53
> To: Avalon Developers List
> Subject: Parametarizable incompatible with Configurable?
> >From the JavaDoc for Parameterizable:
>   It is incompatible with the Configurable interface.
> Huh?  Why?  Is this true?
> -Mark
> --
> To unsubscribe, e-mail:   
> <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail: 
> <mailto:avalon-dev-help@jakarta.apache.org>

To unsubscribe, e-mail:   <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-dev-help@jakarta.apache.org>

View raw message