org.apache.avalon.composition.data
Class ContainmentProfile

java.lang.Object
  extended byorg.apache.avalon.composition.data.Profile
      extended byorg.apache.avalon.composition.data.ContainmentProfile
All Implemented Interfaces:
Serializable

public class ContainmentProfile
extends Profile

A containment profile describes a containment context including a classloader and the set of profiles explicitly included within the a container.

Version:
$Revision: 1.1.1.1 $ $Date: 2003/08/31 14:26:48 $
Author:
Avalon Development Team
See Also:
Serialized Form

Field Summary
static String DELIMITER
          Container path delimiter.
 
Constructor Summary
ContainmentProfile()
          Creation of a new empty containment profile.
ContainmentProfile(String name, ClassLoaderDirective classloader, ServiceDirective[] exports, CategoriesDirective categories, Profile[] profiles)
          Creation of a new containment profile.
 
Method Summary
 CategoriesDirective getCategories()
          Return the logging categories for the profile.
 ClassLoaderDirective getClassLoaderDirective()
          Return the classloader directive that describes the creation arguments for the classloader required by this container.
 ServiceDirective getExportDirective(Class clazz)
          Retrieve a service directive matching a supplied class.
 ServiceDirective[] getExportDirectives()
          Return the set of service directives that describe the mapping between services exposrted by the container and its implementation model.
 Profile[] getProfiles()
          Return the set of nested profiles wihin this containment profile.
 Profile[] getProfiles(Mode mode)
          Return the set of nested profiles contained within this profile matching the supplied mode.
 
Methods inherited from class org.apache.avalon.composition.data.Profile
getActivationPolicy, getMode, getName, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DELIMITER

public static final String DELIMITER
Container path delimiter.

See Also:
Constant Field Values
Constructor Detail

ContainmentProfile

public ContainmentProfile()
Creation of a new empty containment profile.


ContainmentProfile

public ContainmentProfile(String name,
                          ClassLoaderDirective classloader,
                          ServiceDirective[] exports,
                          CategoriesDirective categories,
                          Profile[] profiles)
Creation of a new containment profile.

Parameters:
name - the profile name
classloader - the description of the classloader to be created for this containment profile
exports - the set of servides that this component is dependent on for normal execution
profiles - the set of profiles contained within this containment profile
Method Detail

getCategories

public CategoriesDirective getCategories()
Return the logging categories for the profile.

Returns:
the categories

getClassLoaderDirective

public ClassLoaderDirective getClassLoaderDirective()
Return the classloader directive that describes the creation arguments for the classloader required by this container.

Returns:
the classloader directive

getExportDirectives

public ServiceDirective[] getExportDirectives()
Return the set of service directives that describe the mapping between services exposrted by the container and its implementation model.

Returns:
the array of service directives

getExportDirective

public ServiceDirective getExportDirective(Class clazz)
Retrieve a service directive matching a supplied class.

Parameters:
clazz - the class to match
Returns:
the service directive or null if it does not exist

getProfiles

public Profile[] getProfiles()
Return the set of nested profiles wihin this containment profile.

Returns:
the profiles nested in this containment profile

getProfiles

public Profile[] getProfiles(Mode mode)
Return the set of nested profiles contained within this profile matching the supplied mode.

Parameters:
mode - one of enumerated value Mode.IMPLICIT, Mode.PACKAGED, or Mode.EXPLICIT
Returns:
the profiles matching the supplied creation mode


Copyright © Apache Software Foundation. All Rights Reserved.