You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by Berin Loritsch <bl...@apache.org> on 2002/08/27 17:57:17 UTC
Meta: Where to begin?
Where does Meta begin? There are the TypeBuilders the XMLTypeBuilder,
etc. However, how do we verify the component and set it up? How do
we know which implementations to load in? We declare dependencies
on interfaces not implementations (at least we should), so if we have
a config passed in to our container how do we interpret it?
Is there a default? If not, then I have to figure out how to do it
all myself--which begs the question of how I can get completely away
from the RoleManager (as a way of short-circuiting the role vs.
full interface name).
Anyway, pointing me in the right direction would help.
Also, what attributes are you using to determine the lifestyle of
a Merlin component with Meta? If at all possible I would like to
make it standard.
"They that give up essential liberty to obtain a little temporary safety
deserve neither liberty nor safety."
- Benjamin Franklin
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Re: Meta: Where to begin?
Posted by Stephen McConnell <mc...@apache.org>.
Berin Loritsch wrote:
>Where does Meta begin?
>
It begins with the class.
It excalates with an .xinfo (or a .xtype).
How does a container find this information?
* by following an avalon convention - i.e. agreement across the board
that some <cl;assname>.<extesnsion> is the standard meachism trhough
which we load this suff
Ok, so we have a .xinfo or whatever loaded .... how do we interprit this?
* a generic loader looks at the root element
* is it a <type> or is it <blockinfo>, or is it somethig else
* based on the root element, take care of it and build an internal
meta-info model
* requires that each implementation knows about the other models and
variations
This is what the excalibur/meta packge does.
Other solutions are not a generouse.
* given a object model of a type you can populate a type manager with
types
* given a type manger you can start managing type deployment profiles
>There are the TypeBuilders the XMLTypeBuilder,
>etc. However, how do we verify the component and set it up?
>
Verification at this stage is reasonably easy - your basically
validating that the meta-info model is consitent with the computation
interfaces exposed by the component implemetnation class.
>How do we know which implementations to load in?
>
Today - you track the Avalon list and you make you deliver an
implemetation that deals with the entire know word. In our case, the
entire known world is the Type DTD, the BlockInfo DTD and the
containerkit DTD. The excalibur/meta package deals with all of these in
order to use these as input to a single consistent meta-info model.
>We declare dependencies
>on interfaces not implementations (at least we should), so if we have
>a config passed in to our container how do we interpret it?
>
>
No we are moving into meta-data land.
The configuration passed to a container is going to container
information about the instantiation criteria to apply to a compoent
type. We have allready established a componet type - semi independelty
of the DTD we had to work with. So as this point we are no longer
concerned with DTDs or meta-info choices - because the meta-mata model
is structurally bound to one meta-info model.
>Is there a default? If not, then I have to figure out how to do it
>all myself--which begs the question of how I can get completely away
>from the RoleManager (as a way of short-circuiting the role vs.
>full interface name).
>
There is no default. Migration from RoleManager to a meta-data data API
involves assesment of the options available:
* use containerkit meta-info and meta-data
* use excalibur meta-info and build your own meta data
* leverage the Merlin meta data solution and we work on evolving this
if needed
Your choices are to some degree constrined by the fact that the
excalibur/meta package is the only meta solution that provides support
for the declaration of declaration of extension capability and
depedency. According to all of the info to-date - this status isn't
going to change anytime soon. Getting the role manager resoved is
something I'm interested in because this gives me an oppotuntiy to
explore some "distributed" publishing opportunities related to Cocoon..
>Anyway, pointing me in the right direction would help.
>
>Also, what attributes are you using to determine the lifestyle of
>a Merlin component with Meta? If at all possible I would like to
>make it standard.
>
>
http://jakata.apache.org/avalon/component/attributes.html
This contains the details of the meta-info attributes related to lifestyle.
Cheers, Steve.
--
Stephen J. McConnell
OSM SARL
digital products for a global economy
mailto:mcconnell@osm.net
http://www.osm.net
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>