org.apache.geronimo.kernel
Interface DependencyManager

All Known Implementing Classes:
BasicDependencyManager

public interface DependencyManager

DependencyManager is the record keeper of the dependencies in Geronimo. The DependencyManager does not enforce any dependencies, it is simply a place where components can register their intent to be dependent on another component.

The DependencyManager uses the nomenclature of parent-child where a child is dependent on a parent. The names parent and child have no other meaning are just a convience to make the code readable.

Version:
$Rev: 1308406 $ $Date: 2012-04-02 23:58:25 +0800 (Mon, 02 Apr 2012) $

Method Summary
 void addDependencies(AbstractName child, Set<AbstractName> parents)
          Adds dependencies from the child to every parent in the parents set
 void addDependency(AbstractName child, AbstractName parent)
          Declares a dependency from a child to a parent.
 void close()
          Closes the dependency manager releasing all resources
 Set<AbstractName> getChildren(AbstractName parent)
          Gets all of the MBeans that have a dependency on the specified startParent.
 Set<AbstractName> getParents(AbstractName child)
          Gets the set of parents that the child is depending on
 void removeAllDependencies(AbstractName child)
          Removes all dependencies for a child
 void removeDependency(AbstractName child, AbstractName parent)
          Removes a dependency from a child to a parent
 

Method Detail

close

void close()
Closes the dependency manager releasing all resources


addDependency

void addDependency(AbstractName child,
                   AbstractName parent)
Declares a dependency from a child to a parent.

Parameters:
child - the dependent component
parent - the component the child is depending on

removeDependency

void removeDependency(AbstractName child,
                      AbstractName parent)
Removes a dependency from a child to a parent

Parameters:
child - the dependnet component
parent - the component that the child wil no longer depend on

removeAllDependencies

void removeAllDependencies(AbstractName child)
Removes all dependencies for a child

Parameters:
child - the component that will no longer depend on anything

addDependencies

void addDependencies(AbstractName child,
                     Set<AbstractName> parents)
Adds dependencies from the child to every parent in the parents set

Parameters:
child - the dependent component
parents - the set of components the child is depending on

getParents

Set<AbstractName> getParents(AbstractName child)
Gets the set of parents that the child is depending on

Parameters:
child - the dependent component
Returns:
a collection containing all of the components the child depends on; will never be null

getChildren

Set<AbstractName> getChildren(AbstractName parent)
Gets all of the MBeans that have a dependency on the specified startParent.

Parameters:
parent - the component the returned childen set depend on
Returns:
a collection containing all of the components that depend on the parent; will never be null


Copyright © 2003-2013 The Apache Geronimo development community. All Rights Reserved.