org.nuxeo.common.collections
Class DependencyTree<K,T>
java.lang.Object
org.nuxeo.common.collections.DependencyTree<K,T>
- All Implemented Interfaces:
- java.lang.Iterable<DependencyTree.Entry<K,T>>
- Direct Known Subclasses:
- FragmentRegistry
public class DependencyTree<K,T>
- extends java.lang.Object
- implements java.lang.Iterable<DependencyTree.Entry<K,T>>
- Author:
- Bogdan Stefanescu
Method Summary |
void |
add(K key,
T object)
|
void |
add(K key,
T object,
java.util.Collection<K> requires)
|
void |
add(K key,
T object,
K... requires)
|
void |
clear()
|
T |
get(K key)
|
java.util.Collection<DependencyTree.Entry<K,T>> |
getEntries()
|
DependencyTree.Entry<K,T> |
getEntry(K key)
|
java.util.List<DependencyTree.Entry<K,T>> |
getMissingRequirements()
|
java.util.List<DependencyTree.Entry<K,T>> |
getPendingEntries()
|
java.util.List<T> |
getPendingObjects()
|
java.util.List<DependencyTree.Entry<K,T>> |
getResolvedEntries()
Entries are sorted so an entry never depends on entries on its right. |
java.util.List<T> |
getResolvedObjects()
|
boolean |
isRegistered(K key)
|
boolean |
isResolved(K key)
|
java.util.Iterator<DependencyTree.Entry<K,T>> |
iterator()
|
void |
remove(K key)
|
void |
resolve(DependencyTree.Entry<K,T> entry)
|
void |
setEventHandler(org.nuxeo.common.collections.DependencyTree.EventHandler<T> eventHandler)
|
void |
unregister(DependencyTree.Entry<K,T> entry)
|
void |
unresolve(DependencyTree.Entry<K,T> entry)
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DependencyTree
public DependencyTree()
iterator
public java.util.Iterator<DependencyTree.Entry<K,T>> iterator()
- Specified by:
iterator
in interface java.lang.Iterable<DependencyTree.Entry<K,T>>
add
public void add(K key,
T object,
K... requires)
add
public void add(K key,
T object,
java.util.Collection<K> requires)
add
public void add(K key,
T object)
remove
public void remove(K key)
unregister
public void unregister(DependencyTree.Entry<K,T> entry)
getEntry
public DependencyTree.Entry<K,T> getEntry(K key)
get
public T get(K key)
resolve
public void resolve(DependencyTree.Entry<K,T> entry)
unresolve
public void unresolve(DependencyTree.Entry<K,T> entry)
isRegistered
public boolean isRegistered(K key)
isResolved
public boolean isResolved(K key)
setEventHandler
public void setEventHandler(org.nuxeo.common.collections.DependencyTree.EventHandler<T> eventHandler)
getEntries
public java.util.Collection<DependencyTree.Entry<K,T>> getEntries()
getPendingEntries
public java.util.List<DependencyTree.Entry<K,T>> getPendingEntries()
getPendingObjects
public java.util.List<T> getPendingObjects()
getMissingRequirements
public java.util.List<DependencyTree.Entry<K,T>> getMissingRequirements()
getResolvedEntries
public java.util.List<DependencyTree.Entry<K,T>> getResolvedEntries()
- Entries are sorted so an entry never depends on entries on its right.
getResolvedObjects
public java.util.List<T> getResolvedObjects()
clear
public void clear()
Copyright © 2010 Nuxeo SAS. All Rights Reserved.