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.


Method Summary
 void addDependencies(AbstractName child, Set 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 getChildren(AbstractName parent)
          Gets all of the MBeans that have a dependency on the specified startParent.
 Set 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 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 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 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-2007 Apache Software Foundation. All Rights Reserved.