Olaf Bergner wrote:
Understanding the source code is easier if you think of the following stack:
|-------------------------------------------------------| | merlin | | | | # setup of internal *facilities* (application repo, | | # logging, root classloader, root block, etc.) | | # Main abstraction is the Kernel which is created | | # the avalon-repository factory loader using the | | # factory declared under the merlin.implemention | | # property. | |-------------------------------------------------------| | avalon-activation | | | | # *runtime* deployment and decommissioning, | | # auto-assembly, lifecycle management, lifestyle | | # management etc. Main abstractions include | | # Block and Appliance | |-------------------------------------------------------| | avalon composition | | | | # immutable *metadata* that describes component | | # deployment scenarios, classloader, containers | | # and a meta-model which combines metadata, meta | | # info, and runtime context - e.g. | | # DeploymentDirective, ContainmentDirective, ... | |-------------------------------------------------------| | avalon-meta | | | | # immutable *metainfo* describing component types | | # e.g. Type, DependencyDescriptor, | | # ServiceDescriptor, ...) | |-------------------------------------------------------|
Currently the logging system is inside the composition package but this something that should be refactored. Instead I would like to see the logging aspects seperated out into an independent facility that we load using avalon-repository.
That surely helps., thanks. Now there's the natural question: what's the semantic difference between metadata and metainfo? It struck me that while metainfo describes a given component's immutable context-independent "structure" (I know it's not the best of terminology) metadata describes one out of possibly many deployment solutions. I know this is possibly not the whole picture, but is it somehow close?
Sounds spot on to me!
A convention I've tried to apply is to use the Descriptor suffix for metainfo and Directive suffix for metadata. I.e. metainfo "describes" the criteria, and metadata "directs" a solution.
Stephen.
--
Stephen J. McConnell mailto:[EMAIL PROTECTED]
|------------------------------------------------| | Magic by Merlin | | Production by Avalon | | | | http://avalon.apache.org/merlin | | http://dpml.net/ | |------------------------------------------------|
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
