Bumped into some jargon gibberish? The following glossary of terms should help clear up any fuzzy definitions.

See also: the WhatIs section


Appliance

  An appliance a component plus its meta-data.  Used in Merlin.
 

Block

  One or more services (appliances) which create a single usable application.  Phoenix can co-host several blocks.  Merlin defines a root block with an internal hierarchal structure (sub-blocks).
 

Component

  The atomic unit of Component Oriented Programming.  It made up of an interface which defines the service it provides (the API) and one or more implementations of that interface.  The implementations can also provide lifecycle methods (configuration, start, stop, etc.)
 

Container

  a special component which can host sub-components and is responsible for all the resources and lifecycle stages of its hosts services.
 

 *Extension \[meta-tag\]*

  An extension tag in the meta-API declares component which can provide an extension handler (i.e.- the {{SecurityManager}} of a security extension)
 

Inversion of Control

  The design pattern which states that a component NEVER controls its own lifecycle methods and that all dependencies are provided by a hosting object (a container or some caller object).  Control of a component is completely given to the calling object.
 

Kernel

  generally refers to a container "bootstrapper" which provides external resources (jars, classloaders, etc.) to the container in order for it to startup.
 

Lifecycle

  Refers to the general stages that a component progresses through during execution.  The Avalon framework defines a standard set of lifecycle stages and a defined order.  Fortress and Merlin containers allow for custom lifecycle stages to be defined.
 

Lifestyle

  Refers to the initialization style or type.  Examples include: factory, transient, pooled, threadsafe, etc.
 

Meta-Data

  Configuration information defining a component instance or implementation
 

Meta-Info

  Configuration information telling a container how to deploy a component
 

Repository

  an ordered collection of resources.  Usually refers to a collection of JAR files either on the local filesystem or on a remote server.
 

Runtime Repository

  the set of resources (class files, jars, meta-data, etc.) available to components during runtime.
 

Seperation of Concerns

  Design pattern which states that a component should focus on only one task.
 

Service

  another name for a component.  Service is sometimes used to refer to the interface (or role) of a component rather than the implementation.
 

Service Manager

  a lookup manager for services.  Allows services/components to access (lookup) other services on which they are dependent.
 

 *Stage \[meta-tag\]*

  A stage tag in the meta API declares that the component implements an extended lifecycle stage (i.e.- the component implements "Securable")
 

System Repository

  A set of resources (classes, jars, meta-data, etc.) available only to the kernel or the container.  Includes a privileged classloader.