Berin:




Berin Loritsch wrote:

I have not looked in depth, this is just my first step towards
understanding the Merlin project.

Ok, in Merlin's CVS there are several "sub-sub" projects:

assembly
assembly-spi
merlin-cli
merlin-core
merlin-extensions
merlin-plugin
merlin-smp
merlin-spi
meta
meta-spi
meta-tools

That's alot of things to try to figure out what they mean.  I assume all
the "-spi" directories refer to "Service Provider Interface", and the
"-cli" directory refers to "Command Line Interface".  That seems self
explanatory.

So we have Assembly, Merlin, and Meta as the main categories of
"Merlin" projects.  When I see these categories this is what I think:

Assembly: matching service implementations with the lookup names for
client services.


Matching of names for services is a very small part of the assembly package. Assembly is much more about the the process of assembly of a complete computational component system based on classes, meta-info and deployment profiles. I.e. the assembly package is about automated system composition.



Merlin: The "Merlin brand" container.


Yep.

The Merlin package main aspects concern the seperation of a component assembly as an implementation solution from service that are published as part of an assembled unit (referred to as a block).


Meta: The information about services.


It includes info about services but the majority of the code is about component types.

Please stop me if I'm wrong.


Your on the right track!



Assembly has the basic package and the SPI package.  I assume this means
the SPI only has interfaces and the basic package has the
implementations.


SPI contains interfaces, exceptions, meta-data for things like classpath directives and so on.


Meta has the basic package, the SPI package, and the tools package. I assume this follows the same pattern for Assembly, with the tools package being used for ANT tasks and Maven integration.


The tools package only deals with Ant. Maven related resources are in the merlin-plugin package.

Merlin has CLI, Core, Extensions, Plugin, SMP, and SPI. I can assume
that SPI is like assembly's and that Core is where the kernel live.


Yes.


CLI is for the command line invokation of Merlin--not necessary for
servlet based systems. The difference between extensions and plugins
is a bit fuzzy for me. The names suggest synonyms. Are extensions
referring to Lifecycle Extensions and plugin referring to kernel
plugins?


The merlin-plugin package is the Maven plugin solution. During the installation of Merlin the plugin is installed into the Maven plugins which enables a bunch of nice things concerning meta generation, simulated deployment, real deployment and updating of the Merlin repository.

The extensions package contains a number of subprojects that "extend" Merlin functionality. For example there is a JNDI extension (not part of the core system, but a service supporting the mapping of Merlin into the JNDI space). There is also work in progress on a JMX solution that will go into the extensions package.

The only thing in this list that is a complete mystery to
me is the SMP directory.  To me SMP means Symmetric Multi-Processing,
which is something that Merlin should be designed to work within from
the ground up.  I believe it is referring to something else, so I have
to ask what.


SMP - Service Management Platform.
This subproject brings everything together and is used to create the Merlin installation. You will find all the resources like command line scripts, NT service utilities, documetation, tutorials, etc.


Description of the merlin CVS structure is detailed in:.
http://cvs.apache.org/viewcvs/avalon-sandbox/merlin/README.TXT

You should also take look at the general documetation:
http://avalon.apache.org/sandbox/merlin/

Cheers, Steve.

--

Stephen J. McConnell
mailto:[EMAIL PROTECTED]
http://www.osm.net

Sent via James running under Merlin as an NT service.
http://avalon.apache.org/sandbox/merlin




--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to