consciouscode.seedling
Interface GrowingBranch
- All Superinterfaces:
- BranchNode, LocatableNode, ServiceNode
- All Known Subinterfaces:
- BranchingBranch
- All Known Implementing Classes:
- GenericBranch, ScopeManager, ScopeRoot, StandardBranch, StandardRoot
public interface GrowingBranch
- extends BranchNode
A BranchNode
that allows manual installation and uninstallation of
nodes.
installChild
void installChild(String nodeName,
Object node)
throws ChildExistsException,
ServiceException
- Installs an object as a child of this branch.
After installation, the appropriate successor lifecycle APIs will be
invoked. In particular, if the node implements
ServiceNode
then
ServiceNode.startService()
will be called.
- Parameters:
nodeName
- must not be null or empty.
It must not match the name of an existing child node.node
- must not be null.
- Throws:
ChildExistsException
- if a node is already installed at the given
nodeName
. (The node will not have
been installed in this case.)
ServiceException
- if node
implements
ServiceNode
and could not be started. (The node will not have
been installed in this case.)
uninstallChild
Object uninstallChild(String name)
- Removes a child node from this branch.
- Parameters:
name
- must not be null, but it does not need to match an
actual child of this branch.
- Returns:
- the removed child node, or null if no such child is installed.
Copyright © 2001–2012
Todd V. Jonker. All Rights Reserved.