avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Niclas Hedhman <nic...@hedhman.org>
Subject Re: Avalon Spec [Was: A Foolish Consistency]
Date Tue, 13 Apr 2004 13:53:35 GMT
On Tuesday 13 April 2004 20:27, hammett wrote:

>> 3. That Avalon today already contain a lot of these specs, but 
>> lumped together under the AF4 umbrella, making it 
>> an 'all-or-nothing' (just like EJB) spec.

> Why all or nothing?

Correction; All-or-nothing albeit small....

Well, I see it like this; Either a component is AF4 or it is not. A non-AF4 
container, which doesn't know the details of the AF4 specification, must 
assume that the component can not be run in its environment, provided it 
could figure out it is an AF4 component in the first place...
For a container that doesn't give a damn, it would instantiate it, and get 
'mixed results', for instance maybe such container would understand that 
there were start() method, and call it, and a 'weak component' would start in 
some inconsistent state, whereas a 'stronger component' would throw some for 
of IllegalStateException (other lifecycle methods has not been called).

But I think all of this is beside the point. 
My point is; Small Specifications that can be stacked together and form larger 
entities. Light-weight containers can implement an arbitrary set of 
specifications, and components likewise "require", "request" and "complyWith" 
any arbitrary set. Then do a simple matrix;

Spec              | Fortress | Merlin | Nano | Dojo | ContainerX |
------------------+----------+--------+------+------+------------+
ConstrInjection   |    -     |    c   |   c  |  c   |     c      |
SM-Injection      |    c     |    c   |   -  |  c   |     -      |
GenericStartable  |    c     |    c   |   -  |  c   |     c      |
AF4Startable      |    r     |    r   |   -  |  r   |     -      |

c=compliesWith
r=requires
-=not supported

And for each component developed, we do the same thing. And since these are 
machine-readable (my goal with all of this) those tables can be automatically 
generated, as well as a tool can figure out which components will work with 
which containers.

It can change the world, but perhaps Avalon is the wrong forum for 
'Specification' talks...


Finally; Hammet, I would like to urge you to be more positive in the future 
(last response was an improvement!) and not only come with negative criticism 
at all times. You spoke highly of 'we must learn more about community and 
respect', which I applaud, but you are one of us who have to learn as well 
:o). Don't focus on 'disagree', focus on 'agree' and 'agree, how about...' 
aspects of the debate. I am trying to do so now, and you won't hear anymore 
"negativism" from me.
I have the impression that you seek to maintain the current AF4 Status Quo, 
but OTOH you never say it outright either, so I am somewhat confused over 
what your true agenda is... Perhaps your positive views could be posted?


Cheers
Niclas
-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

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


Mime
View raw message