public class ContainerTreeItems<E extends Entity> extends java.lang.Object implements EntityTreeItems<E>, ContainerDataUnit<E>
TreeItems.ItemSetChangeEvent<T>, TreeItems.SelectedItemChangeEvent<T>, TreeItems.ValueChangeEvent<T>
DataUnit.StateChangeEvent
Modifier and Type | Field and Description |
---|---|
protected CollectionContainer<E> |
container |
protected com.haulmont.bali.events.EventHub |
events |
protected java.lang.String |
hierarchyProperty |
Constructor and Description |
---|
ContainerTreeItems(CollectionContainer<E> container,
java.lang.String hierarchyProperty) |
Modifier and Type | Method and Description |
---|---|
com.haulmont.bali.events.Subscription |
addItemSetChangeListener(java.util.function.Consumer<TreeItems.ItemSetChangeEvent<E>> listener)
Registers a new item set change listener.
|
com.haulmont.bali.events.Subscription |
addSelectedItemChangeListener(java.util.function.Consumer<TreeItems.SelectedItemChangeEvent<E>> listener)
Registers a new selected item change listener.
|
com.haulmont.bali.events.Subscription |
addStateChangeListener(java.util.function.Consumer<DataUnit.StateChangeEvent> listener)
Registers a new state change listener.
|
com.haulmont.bali.events.Subscription |
addValueChangeListener(java.util.function.Consumer<TreeItems.ValueChangeEvent<E>> listener)
Registers a new value change listener.
|
protected void |
containerCollectionChanged(CollectionContainer.CollectionChangeEvent<E> e) |
protected void |
containerItemChanged(InstanceContainer.ItemChangeEvent<E> event) |
protected void |
containerItemPropertyChanged(InstanceContainer.ItemPropertyChangeEvent<E> e) |
boolean |
containsItem(E item) |
int |
getChildCount(E parent) |
java.util.stream.Stream<E> |
getChildren(E item) |
CollectionContainer<E> |
getContainer() |
com.haulmont.chile.core.model.MetaClass |
getEntityMetaClass() |
java.lang.String |
getHierarchyPropertyName() |
E |
getItem(java.lang.Object itemId) |
java.lang.Object |
getItemId(E item) |
java.util.stream.Stream<E> |
getItems() |
E |
getParent(E item) |
E |
getSelectedItem() |
BindingState |
getState() |
boolean |
hasChildren(E item) |
void |
setSelectedItem(E item)
Set current item in the source.
|
int |
size() |
protected final CollectionContainer<E extends Entity> container
protected final java.lang.String hierarchyProperty
protected com.haulmont.bali.events.EventHub events
public ContainerTreeItems(CollectionContainer<E> container, java.lang.String hierarchyProperty)
protected void containerItemChanged(InstanceContainer.ItemChangeEvent<E> event)
protected void containerCollectionChanged(CollectionContainer.CollectionChangeEvent<E> e)
protected void containerItemPropertyChanged(InstanceContainer.ItemPropertyChangeEvent<E> e)
public com.haulmont.chile.core.model.MetaClass getEntityMetaClass()
getEntityMetaClass
in interface EntityDataUnit
MetaClass
of an entity contained in the source@Nullable public E getSelectedItem()
getSelectedItem
in interface EntityTreeItems<E extends Entity>
public void setSelectedItem(@Nullable E item)
EntityTreeItems
setSelectedItem
in interface EntityTreeItems<E extends Entity>
item
- the item to setpublic BindingState getState()
public java.lang.Object getItemId(E item)
public E getItem(@Nullable java.lang.Object itemId)
public java.util.stream.Stream<E> getItems()
public boolean containsItem(E item)
containsItem
in interface TreeItems<E extends Entity>
item
- an item to checktrue
if the underlying collection contains an item, false
otherwisepublic int size()
public int getChildCount(E parent)
getChildCount
in interface TreeItems<E extends Entity>
parent
- the parent itempublic java.util.stream.Stream<E> getChildren(E item)
getChildren
in interface TreeItems<E extends Entity>
item
- the item to obtain children or null
to get root itemspublic boolean hasChildren(E item)
hasChildren
in interface TreeItems<E extends Entity>
item
- the item to checktrue
if the item has children, false
otherwisepublic java.lang.String getHierarchyPropertyName()
getHierarchyPropertyName
in interface TreeItems<E extends Entity>
public com.haulmont.bali.events.Subscription addStateChangeListener(java.util.function.Consumer<DataUnit.StateChangeEvent> listener)
DataUnit
addStateChangeListener
in interface DataUnit
listener
- the listener to be addedpublic com.haulmont.bali.events.Subscription addValueChangeListener(java.util.function.Consumer<TreeItems.ValueChangeEvent<E>> listener)
TreeItems
addValueChangeListener
in interface TreeItems<E extends Entity>
listener
- the listener to be addedpublic com.haulmont.bali.events.Subscription addItemSetChangeListener(java.util.function.Consumer<TreeItems.ItemSetChangeEvent<E>> listener)
TreeItems
addItemSetChangeListener
in interface TreeItems<E extends Entity>
listener
- the listener to be addedpublic com.haulmont.bali.events.Subscription addSelectedItemChangeListener(java.util.function.Consumer<TreeItems.SelectedItemChangeEvent<E>> listener)
TreeItems
addSelectedItemChangeListener
in interface TreeItems<E extends Entity>
listener
- the listener to be addedpublic CollectionContainer<E> getContainer()
getContainer
in interface ContainerDataUnit<E extends Entity>