T - the item data typepublic interface HasHierarchicalDataProvider<T> extends Serializable
| Modifier and Type | Method and Description |
|---|---|
HierarchicalDataProvider<T,SerializablePredicate<T>> |
getDataProvider() |
default TreeData<T> |
getTreeData()
Gets the backing
TreeData instance of the data provider, if the
data provider is a TreeDataProvider. |
void |
setDataProvider(DataProvider<T,?> dataProvider)
Deprecated.
Use
setDataProvider(HierarchicalDataProvider)
instead as the data should be hierarchical |
void |
setDataProvider(HierarchicalDataProvider<T,?> hierarchicalDataProvider)
Sets the hierarchical data provider for this listing.
|
default void |
setItems(Collection<T> rootItems,
ValueProvider<T,Collection<T>> childItemProvider)
Sets the root data items of this component provided as a collection and
recursively populates them with child items with the given value
provider.
|
default void |
setItems(Stream<T> rootItems,
ValueProvider<T,Stream<T>> childItemProvider)
Sets the root data items of this component provided as a stream and
recursively populates them with child items with the given value
provider.
|
default void |
setTreeData(TreeData<T> treeData)
Sets a new
TreeDataProvider wrapping the given TreeData. |
HierarchicalDataProvider<T,SerializablePredicate<T>> getDataProvider()
default void setTreeData(TreeData<T> treeData)
TreeDataProvider wrapping the given TreeData.treeData - the tree data to setdefault TreeData<T> getTreeData()
TreeData instance of the data provider, if the
data provider is a TreeDataProvider.IllegalStateException - if the type of the data provider is not
TreeDataProviderdefault void setItems(Collection<T> rootItems, ValueProvider<T,Collection<T>> childItemProvider)
The provided items are wrapped into a TreeDataProvider backed by
a flat TreeData structure. The data provider instance is used as
a parameter for the setDataProvider(DataProvider) method. It
means that the items collection can be accessed later on via
getTreeData():
Collection<Person> grandParents = getGrandParents();
HasHierarchicalDataProvider<Person> treeGrid = new TreeGrid<>();
treeGrid.setItems(grandParents, Person::getChildren);
...
TreeData<Person> data = treeGrid.getTreeData();
The returned TreeData instance may be used as-is to add, remove
or modify items in the hierarchy. These modifications to the object are
not automatically reflected back to the TreeGrid. Items modified should
be refreshed with DataProvider.refreshItem(Object)
and when adding or removing items
DataProvider.refreshAll() should be called.
rootItems - the root items to display, not nullchildItemProvider - the value provider used to recursively populate the given root
items with child items, not nulldefault void setItems(Stream<T> rootItems, ValueProvider<T,Stream<T>> childItemProvider)
The provided items are wrapped into a TreeDataProvider backed by
a flat TreeData structure. The data provider instance is used as
a parameter for the setDataProvider(DataProvider) method. It
means that the items collection can be accessed later on via
getTreeData():
Stream<Person> grandParents = getGrandParents();
HasHierarchicalDataProvider<Person> treeGrid = new TreeGrid<>();
treeGrid.setItems(grandParents, Person::getChildren);
...
TreeData<Person> data = treeGrid.getTreeData();
The returned TreeData instance may be used as-is to add, remove
or modify items in the hierarchy. These modifications to the object are
not automatically reflected back to the TreeGrid. Items modified should
be refreshed with DataProvider.refreshItem(Object)
and when adding or removing items
DataProvider.refreshAll() should be called.
rootItems - the root items to display, not nullchildItemProvider - the value provider used to recursively populate the given root
items with child items, not null@Deprecated void setDataProvider(DataProvider<T,?> dataProvider)
setDataProvider(HierarchicalDataProvider)
instead as the data should be hierarchical
NOTE: This method is here for backwards compatibility, but the
implementation for it will most likely throw if the data provider is not
a HierarchicalDataProvider.
dataProvider - the data provider, not nullvoid setDataProvider(HierarchicalDataProvider<T,?> hierarchicalDataProvider)
hierarchicalDataProvider - the hierarchical data provider to use, not nullCopyright © 2021. All rights reserved.