|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.itmill.toolkit.data.util.IndexedContainer
com.itmill.toolkit.data.util.HierarchicalContainer
public class HierarchicalContainer
A specialized Container whose contents can be accessed like it was a tree-like structure.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class com.itmill.toolkit.data.util.IndexedContainer |
---|
IndexedContainer.ItemSetChangeEvent |
Nested classes/interfaces inherited from interface com.itmill.toolkit.data.Container |
---|
Container.Editor, Container.Filterable, Container.Hierarchical, Container.Indexed, Container.ItemSetChangeEvent, Container.ItemSetChangeListener, Container.ItemSetChangeNotifier, Container.Ordered, Container.PropertySetChangeEvent, Container.PropertySetChangeListener, Container.PropertySetChangeNotifier, Container.Sortable, Container.Viewer |
Constructor Summary | |
---|---|
HierarchicalContainer()
|
Method Summary | |
---|---|
Object |
addItem()
Creates a new Item into the Container, and assign it an automatic ID. |
Item |
addItem(Object itemId)
Creates a new Item with the given ID into the Container. |
boolean |
areChildrenAllowed(Object itemId)
Tests if the Item with given ID can have children. |
Collection |
getChildren(Object itemId)
Gets the IDs of all Items that are children of the specified Item. |
Object |
getParent(Object itemId)
Gets the ID of the parent Item of the specified Item. |
boolean |
hasChildren(Object itemId)
Tests if the Item specified with itemId has child Items
or if it is a leaf. |
boolean |
isRoot(Object itemId)
Tests if the Item specified with itemId is a root Item. |
boolean |
removeAllItems()
Removes all Items from the Container. |
boolean |
removeItem(Object itemId)
Removes the Item identified by ItemId from the Container. |
Collection |
rootItemIds()
Gets the IDs of all Items in the container that don't have a parent. |
boolean |
setChildrenAllowed(Object itemId,
boolean childrenAllowed)
Sets the given Item's capability to have children. |
boolean |
setParent(Object itemId,
Object newParentId)
Sets the parent of an Item. |
Methods inherited from class com.itmill.toolkit.data.util.IndexedContainer |
---|
addContainerFilter, addContainerProperty, addItemAfter, addItemAfter, addItemAt, addItemAt, addListener, addListener, addListener, clone, compare, containsId, equals, firstItemId, getContainerProperty, getContainerPropertyIds, getIdByIndex, getItem, getItemIds, getSortableContainerPropertyIds, getType, indexOfId, isFirstId, isLastId, lastItemId, nextItemId, prevItemId, removeAllContainerFilters, removeContainerFilters, removeContainerProperty, removeListener, removeListener, removeListener, size, sort |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.itmill.toolkit.data.Container |
---|
addContainerProperty, containsId, getContainerProperty, getContainerPropertyIds, getItem, getItemIds, getType, removeContainerProperty, size |
Constructor Detail |
---|
public HierarchicalContainer()
Method Detail |
---|
public boolean areChildrenAllowed(Object itemId)
Container.Hierarchical
areChildrenAllowed
in interface Container.Hierarchical
itemId
- ID of the Item in the container whose child capability is
to be tested
true
if the specified Item exists in the
Container and it can have children, false
if
it's not found from the container or it can't have children.public Collection getChildren(Object itemId)
Container.Hierarchical
getChildren
in interface Container.Hierarchical
itemId
- ID of the Item whose children the caller is interested in
collection
containing the IDs of all other Items that are children in
the container hierarchypublic Object getParent(Object itemId)
Container.Hierarchical
getParent
in interface Container.Hierarchical
itemId
- ID of the Item whose parent the caller wishes to find out.
null
if the
specified Item is a root element.public boolean hasChildren(Object itemId)
Container.Hierarchical
Tests if the Item specified with itemId
has child Items
or if it is a leaf. The Container.Hierarchical.getChildren(Object itemId)
method
always returns null
for leaf Items.
Note that being a leaf does not imply whether or not an Item is allowed to have children.
.
hasChildren
in interface Container.Hierarchical
itemId
- ID of the Item to be tested
true
if the specified Item has children,
false
if not (is a leaf)public boolean isRoot(Object itemId)
Container.Hierarchical
itemId
is a root Item.
The hierarchical container can have more than one root and must have
at least one unless it is empty. The Container.Hierarchical.getParent(Object itemId)
method always returns null
for root Items.
isRoot
in interface Container.Hierarchical
itemId
- ID of the Item whose root status is to be tested
true
if the specified Item is a root,
false
if notpublic Collection rootItemIds()
Container.Hierarchical
root
Items. The returned
collection is unmodifiable.
rootItemIds
in interface Container.Hierarchical
collection
containing IDs of all root elements of the containerpublic boolean setChildrenAllowed(Object itemId, boolean childrenAllowed)
Sets the given Item's capability to have children. If the Item identified
with the itemId already has children and the areChildrenAllowed is false
this method fails and false
is returned; the children must
be first explicitly removed with
setParent(Object itemId, Object newParentId)
or
Container.removeItem(Object itemId)
.
setChildrenAllowed
in interface Container.Hierarchical
itemId
- the ID of the Item in the container whose child capability is
to be set.childrenAllowed
- the boolean value specifying if the Item can have children or
not.
true
if the operation succeeded, false
if notpublic boolean setParent(Object itemId, Object newParentId)
Sets the parent of an Item. The new parent item must exist and be able to
have children. (canHaveChildren(newParentId) == true
). It is
also possible to detach a node from the hierarchy (and thus make it root)
by setting the parent null
.
setParent
in interface Container.Hierarchical
itemId
- the ID of the item to be set as the child of the Item
identified with newParentId.newParentId
- the ID of the Item that's to be the new parent of the Item
identified with itemId.
true
if the operation succeeded, false
if notpublic Object addItem()
Container
The new ID is returned, or null
if the operation fails.
After a successful call you can use the
method to fetch the Item.
getItem
This functionality is optional.
addItem
in interface Container
addItem
in class IndexedContainer
null
in case of a
failurepublic Item addItem(Object itemId)
Container
Item is returned, and it is ready to have its Properties modified.
Returns null
if the operation fails or the Container already
contains a Item with the given ID.
This functionality is optional.
addItem
in interface Container
addItem
in class IndexedContainer
itemId
- ID of the Item to be created
null
in case of a failurepublic boolean removeAllItems()
Container
Note that Property ID and type information is preserved. This functionality is optional.
removeAllItems
in interface Container
removeAllItems
in class IndexedContainer
true
if the operation succeeded, false
if notpublic boolean removeItem(Object itemId)
Container
ItemId
from the Container.
This functionality is optional.
removeItem
in interface Container
removeItem
in class IndexedContainer
itemId
- ID of the Item to remove
true
if the operation succeeded, false
if not
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |