Package org.hippoecm.frontend.model.tree
Class ObservableTreeModel
- java.lang.Object
-
- javax.swing.tree.DefaultTreeModel
-
- org.hippoecm.frontend.model.tree.ObservableTreeModel
-
- All Implemented Interfaces:
Serializable
,TreeModel
,org.apache.wicket.model.IDetachable
,org.apache.wicket.util.io.IClusterable
,IObservable
,IJcrTreeModel
public class ObservableTreeModel extends DefaultTreeModel implements IJcrTreeModel, IObservable, org.apache.wicket.model.IDetachable
A JCR tree model implementation that can be shared by multiple tree instances. It is observable and can therefore not be used to register listeners. Use theJcrTreeModel
instead to registerTreeModelListener
s. Each instance of this class should be registered separately. Hence this class does not overrideObject.equals(java.lang.Object)
norObject.hashCode()
.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
ObservableTreeModel.ObservableTreeModelEvent
class
ObservableTreeModel.TranslationEvent
-
Field Summary
Fields Modifier and Type Field Description protected IJcrTreeNode
root
-
Fields inherited from class javax.swing.tree.DefaultTreeModel
asksAllowsChildren, listenerList
-
-
Constructor Summary
Constructors Constructor Description ObservableTreeModel(IJcrTreeNode rootModel)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addTreeModelListener(TreeModelListener l)
void
detach()
TreePath
lookup(JcrNodeModel nodeModel)
void
removeTreeModelListener(TreeModelListener l)
void
setObservationContext(IObservationContext<? extends IObservable> context)
Before observation is started on the observable, an observation context is injected by the observer registry.void
setTreeState(org.apache.wicket.extensions.markup.html.tree.DefaultTreeState state)
void
startObservation()
When the firstIObserver
of this observable is registered with the observer registry, observation is started.void
stopObservation()
When the lastIObserver
unregisters, observation is stopped.-
Methods inherited from class javax.swing.tree.DefaultTreeModel
asksAllowsChildren, fireTreeNodesChanged, fireTreeNodesInserted, fireTreeNodesRemoved, fireTreeStructureChanged, getChild, getChildCount, getIndexOfChild, getListeners, getPathToRoot, getPathToRoot, getRoot, getTreeModelListeners, insertNodeInto, isLeaf, nodeChanged, nodesChanged, nodeStructureChanged, nodesWereInserted, nodesWereRemoved, reload, reload, removeNodeFromParent, setAsksAllowsChildren, setRoot, valueForPathChanged
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hippoecm.frontend.model.event.IObservable
equals, hashCode
-
Methods inherited from interface javax.swing.tree.TreeModel
getChild, getChildCount, getIndexOfChild, getRoot, isLeaf, valueForPathChanged
-
-
-
-
Field Detail
-
root
protected final IJcrTreeNode root
-
-
Constructor Detail
-
ObservableTreeModel
public ObservableTreeModel(IJcrTreeNode rootModel)
-
-
Method Detail
-
setTreeState
public void setTreeState(org.apache.wicket.extensions.markup.html.tree.DefaultTreeState state)
-
lookup
public TreePath lookup(JcrNodeModel nodeModel)
- Specified by:
lookup
in interfaceIJcrTreeModel
-
detach
public void detach()
- Specified by:
detach
in interfaceorg.apache.wicket.model.IDetachable
-
setObservationContext
public void setObservationContext(IObservationContext<? extends IObservable> context)
Description copied from interface:IObservable
Before observation is started on the observable, an observation context is injected by the observer registry. This context can be used to notify listeners.- Specified by:
setObservationContext
in interfaceIObservable
-
startObservation
public void startObservation()
Description copied from interface:IObservable
When the firstIObserver
of this observable is registered with the observer registry, observation is started. Implementations must notify observers until observation is stopped.An implementation should register listeners with external data sources, when appropriate. It is possible for an observable to register as an observer for another observable.
- Specified by:
startObservation
in interfaceIObservable
-
stopObservation
public void stopObservation()
Description copied from interface:IObservable
When the lastIObserver
unregisters, observation is stopped. Any listeners or observers registered by the observable must be unregistered by the implementation.- Specified by:
stopObservation
in interfaceIObservable
-
addTreeModelListener
public void addTreeModelListener(TreeModelListener l)
- Specified by:
addTreeModelListener
in interfaceTreeModel
- Overrides:
addTreeModelListener
in classDefaultTreeModel
-
removeTreeModelListener
public void removeTreeModelListener(TreeModelListener l)
- Specified by:
removeTreeModelListener
in interfaceTreeModel
- Overrides:
removeTreeModelListener
in classDefaultTreeModel
-
-