You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by Steve Harris <st...@kenamea.com> on 2003/11/10 23:57:41 UTC
[Merlin] Service vs. Component
I'm working on a document for a round table discussion we will be having
about Merlin. I will probably have a few questions as I work on it and
may even post it to get feedback if people don't mind. My first question
is pretty simple.
Is it true that Components are no more in the merlin world? Do we strickly speak of Services now?
Re: [Merlin] Service vs. Component
Posted by Leo Simons <le...@apache.org>.
Niclas Hedhman wrote:
> On Tuesday 11 November 2003 07:35, Stephen McConnell wrote:
>
>>meta-info (description of a component type)
>>meta-data (descriptions of deployment scenarios)
>
> Is it only me, or isn't these too definitions too confusing???
IIRC, just about everyone agrees on that. I've just given up even trying
to think which one is what and always gather the meaning from the context.
- LSD, forever on the loosing side of the terminology simplicification
battle
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org
Re: [Merlin] Service vs. Component
Posted by Stephen McConnell <mc...@apache.org>.
Niclas Hedhman wrote:
>On Tuesday 11 November 2003 07:35, Stephen McConnell wrote:
>
>
>
>>meta-info (description of a component type)
>>meta-data (descriptions of deployment scenarios)
>>
>>
>
>
>Is it only me, or isn't these too definitions too confusing??? I also think
>that it restricts future meta definitions to a large degree.
>
>May I suggest a term shift;
>
>meta-info -> Component Type Meta
>meta-data -> Deployment Scenario Meta
>
You can try!
>It will make it a lot easier for new people, and people like me (memory=640kB,
>frequent NMIs), to read descriptions.
>
I understand the "confusing" concern. I must confess that many years
ago I was dragged kicking and screaming into this arena and yes - when
you really get into scenarios ivolving multiple meta abstractions -
things do get interesting and belive it or not - the complexity adds
clarity. Today our meta-model does not have a meta-meta-model. If we
do have a meta-meta-model - the notions of meta versus instance would be
easier to understand. My guess is that we will end up in meta-meta here
in Avalon within the next couple of years. When we make the jump it
will be painful but once you make the jump it like riding a bike.
I.e. stock-up on Asprin!
;-)
In the meantime .... consider the following dimensions:
META-INFO META-DATA
-------------------------------------
class instance
type criteria (particular context requirements,
dependency types,...)
profile scenario (a particular context solution,
configuration, and assembly)
Now that wasn't so hard!
Cheers, Steve.
--
Stephen J. McConnell
mailto:mcconnell@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org
Re: [Merlin] Service vs. Component
Posted by Niclas Hedhman <ni...@hedhman.org>.
On Tuesday 11 November 2003 07:35, Stephen McConnell wrote:
> meta-info (description of a component type)
> meta-data (descriptions of deployment scenarios)
Is it only me, or isn't these too definitions too confusing??? I also think
that it restricts future meta definitions to a large degree.
May I suggest a term shift;
meta-info -> Component Type Meta
meta-data -> Deployment Scenario Meta
It will make it a lot easier for new people, and people like me (memory=640kB,
frequent NMIs), to read descriptions.
Niclas
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org
Re: [Merlin] Service vs. Component
Posted by Stephen McConnell <mc...@apache.org>.
Steve Harris wrote:
>I'm working on a document for a round table discussion we will be having
>about Merlin. I will probably have a few questions as I work on it and
>may even post it to get feedback if people don't mind. My first question
>is pretty simple.
>
>Is it true that Components are no more in the merlin world? Do we strickly speak of Services now?
>
The "Component" (with a capital C) is an interface that was used in
pre-history to mark a class as an Avalon component. The framework
included a number of interfaces, notably Composable and ComponentManager
that forced component implementation to implement the Component
interface. However, the Component interface does not expose any methods
- it was simply a marker.
During the middle-ages the notion of meta-info was developed primarily
under the Phoenix container. This lead to a number of initiative to
resolve a meta-info model that would be sufficient to fully express
information about a component. During this time the restriction imposed
by the Component interface were become more and more apparent when
dealing with components such as CORBA objects that by specification
cannot ans should not be implementing the Component interface.
An alternative to the org.apache.avalon.framework.component package was
developed - and named org.aapche.avalon.framework.service. That package
enables any object class to to be handled as a component - representing
a major step forward for Avalon. More recently the full potential is
shinning though with the combination of the service package (i.e. the
equivalent of the component package without the artificial restrictions)
with the avalon-meta package. The Avalon Meta package opens up much more
flexibility concerning the description of a components operation
criteria – information that a container needs to know in order to deploy
the component. This meta-info is described in files associated with a
component class and is referred to as a Type (component type descriptor).
http://avalon.apache.org/meta/meta/info/type/index.html
We still speak of components but is much lowercase these days. A
component type may provide 0..n services and may consume 0..n services
(and a bunch of other stuff). This notion has not changed - all we have
done is remove the capitalization, opened Avalon to a much broader
spectrum of application areas, and introduced a formal model for
description of criteria.
Now onto Merlin (which built above all of this good stuff). Merlin is
concerned with the deployment of component types in the context of
information containing configuration details, context, parameters, etc.
This infomation is referred to a meta-data. You will see lots of
examples of <component .../> in the Merlin tutorials. The actual
description of what <component/> can contain is defined here:
http://avalon.apache.org/merlin/meta/block/components/index.html
Merlin uses the combination of meta-info (description of a component
type) and meta-data (descriptions of deployment scenarios) to build
composite components automatically. This process of composition is
founded an the ability to wire together the "services" produced by a
"component" with "services" consumed by other components. I.e. service
and component are alive and well (just no longer capatalized).
Cheers, Steve.
>
>
>
>------------------------------------------------------------------------
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
>For additional commands, e-mail: dev-help@avalon.apache.org
>
--
Stephen J. McConnell
mailto:mcconnell@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org