avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen McConnell <mcconn...@apache.org>
Subject Re: Containers and Phoenix
Date Sun, 04 Aug 2002 17:12:35 GMT


Shekhar Jha wrote:

>I was browsing the site and came accross the containers Fortress and Merlin(??
>Not found any api docs). 
>

The very lastest Merlin API docs are available at:

  http://home.osm.net/doc/merlin/api/assembly

And the API for the meta-info model:

  http://home.osm.net/doc/merlin/api/meta

Higher level information is provided under the Merlin Home page:

  http://home.osm.net/doc/merlin

The same in formation is available over on hakarta.apche.org but is less 
up-to-date.

    http://jakarta.apache.org/avalon/merlin/


>Also I came across an old email stating
>BootStrap - Configures Embeddor
>Q. Boot strap here represents the combination of the Launcher and CliMain
>classes?
>

 From memory this sounds right.

>
>Embeddor - Configures Container
>Q. How can I replace the default container with fortress/merlin? Or Is this a
>valid question? May be i need a course on concept of container.
>Container - Runs Hosted Apps
>

Phoenix is more an application server than container.  The primary 
concept inside Phoenix is an application - defined as a packaged set of 
jar files, configuration information and assembly information, that 
Phoenix manages (refered to sometimes as sar files).  Phoenix provides 
support for the deployment of multiple applications under a single 
Phoinix instance.  

You can easily create a Merlin kernel embedded inside a Phoenix 
application.  The Merlin kernel basically manages a container hierachy 
and provides support for automated assembly of components. There are 
several examples of Merlin usage on the CVS under the excalibur/assembly 
project (check out the demo directory and doc for details).

Another approach is to extend Merlin's DefaultContainer class to handle 
the deployment of a Phoenix sar file.

>
>Q. Which component denotes a container in phoenix ( I have been looking at
>latest release and NOT nightly builds code). Is it the BlockResourceProvider
>which denotes how the block gets the services or the DefaultApplication which
>determines the life cycle.
>

I don't think you will easily identifiy a "container" as such inside 
Phoenix.  Concerptually, an application is mounted as a container of 
components.  If deployment of different containers in Phoenix were 
possible, it would be hinge on the point where "applications" are deployed.

>
>Kernel - Core Container Engine
>Q. What does this mean? From code it seems that if we consider the
>DefaultApplication as container then it controls and manage the application
>and so it is just Multiple Application Manager?
>  
>

That sounds correct (in Phoenix land).  In Merlin there is seperation of 
kernel and container is a little different.  A Merlin Kernel represents 
the root of a container hierachy - following initialization you can 
query a kernel to get the set of services it exports.  A container in 
Merlin is a collection of component deployment descriptions (called 
Profiles) together with a container manager that handles the type, 
profile and assembly functions.

Cheers, Steve.






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


Mime
View raw message