Package io.jmix.ui.component.data.table
Class ContainerGroupTableItems<E>
java.lang.Object
io.jmix.ui.component.data.table.ContainerTableItems<E>
io.jmix.ui.component.data.table.ContainerGroupTableItems<E>
- All Implemented Interfaces:
DataUnit,GroupTableItems<E>,ContainerDataUnit<E>,EntityDataUnit,EntityTableItems<E>,TableItems<E>,TableItems.Ordered<E>,TableItems.Sortable<E>
public class ContainerGroupTableItems<E>
extends ContainerTableItems<E>
implements GroupTableItems<E>
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.jmix.ui.component.data.DataUnit
DataUnit.StateChangeEventNested classes/interfaces inherited from interface io.jmix.ui.component.data.TableItems
TableItems.ItemSetChangeEvent<T>, TableItems.Ordered<T>, TableItems.SelectedItemChangeEvent<T>, TableItems.Sortable<T>, TableItems.ValueChangeEvent<T> -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Object[]protected booleanprotected boolean[]protected Object[]Fields inherited from class io.jmix.ui.component.data.table.ContainerTableItems
aggregatableDelegate, container, events, suppressSorting -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancontainsGroup(GroupInfo groupId) Indicates that a group is contained in the groups treeprotected voiddoGroup()getChildItems(GroupInfo groupId) getChildren(GroupInfo groupId) getChildrenInternal(GroupInfo groupId) getGroupItemIds(GroupInfo groupId) intgetGroupItemsCount(GroupInfo groupId) getGroupPath(E item) Collection<?>getGroupProperty(GroupInfo groupId) getGroupPropertyValue(GroupInfo groupId) getOwnChildItems(GroupInfo groupId) getParentGroup(E item) protected ObjectgetValueByProperty(E item, MetaPropertyPath property) voidPerform grouping by the list of propertiesprotected GroupInfo<MetaPropertyPath>groupItems(int propertyIndex, GroupInfo parent, Collection<GroupInfo> children, E item, org.apache.commons.collections4.map.LinkedMap<MetaPropertyPath, Object> groupValues) booleanhasChildren(GroupInfo groupId) Indicates that group has nested groupsbooleanIndicated that a datasource has groupsvoidSorts data.Methods inherited from class io.jmix.ui.component.data.table.ContainerTableItems
addItemSetChangeListener, addSelectedItemChangeListener, addStateChangeListener, addValueChangeListener, containerCollectionChanged, containerItemChanged, containerItemPropertyChanged, containsId, createSort, enableSorting, firstItemId, getContainer, getEntityMetaClass, getItem, getItemIds, getItemNN, getItems, getItemValue, getSelectedItem, getState, getType, isFirstId, isLastId, lastItemId, nextItemId, prevItemId, resetSortOrder, setSelectedItem, size, supportsProperty, suppressSorting, updateItemMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.jmix.ui.component.data.DataUnit
addStateChangeListener, getStateMethods inherited from interface io.jmix.ui.component.data.TableItems
addItemSetChangeListener, addSelectedItemChangeListener, addValueChangeListener, containsId, getItem, getItemIds, getItemNN, getItems, getItemValue, getType, size, supportsProperty, updateItemMethods inherited from interface io.jmix.ui.component.data.TableItems.Ordered
firstItemId, isFirstId, isLastId, lastItemId, nextItemId, prevItemIdMethods inherited from interface io.jmix.ui.component.data.TableItems.Sortable
enableSorting, resetSortOrder, suppressSorting
-
Field Details
-
groupProperties
-
parents
-
children
-
roots
-
groupItems
-
itemGroups
-
isGrouping
protected boolean isGrouping -
sortProperties
-
sortAscending
protected boolean[] sortAscending
-
-
Constructor Details
-
ContainerGroupTableItems
-
-
Method Details
-
sort
Description copied from interface:TableItems.SortableSorts data.- Specified by:
sortin interfaceTableItems.Sortable<E>- Overrides:
sortin classContainerTableItems<E>- Parameters:
propertyId- id of propertyascending- asc / desc flags
-
groupBy
Description copied from interface:GroupTableItemsPerform grouping by the list of properties- Specified by:
groupByin interfaceGroupTableItems<E>
-
doGroup
protected void doGroup() -
groupItems
@Nullable protected GroupInfo<MetaPropertyPath> groupItems(int propertyIndex, @Nullable GroupInfo parent, Collection<GroupInfo> children, E item, org.apache.commons.collections4.map.LinkedMap<MetaPropertyPath, Object> groupValues) -
getValueByProperty
-
rootGroups
- Specified by:
rootGroupsin interfaceGroupTableItems<E>- Returns:
- the list of root groups
-
hasChildren
Description copied from interface:GroupTableItemsIndicates that group has nested groups- Specified by:
hasChildrenin interfaceGroupTableItems<E>
-
getChildren
- Specified by:
getChildrenin interfaceGroupTableItems<E>- Returns:
- the list of nested groups
-
getOwnChildItems
- Specified by:
getOwnChildItemsin interfaceGroupTableItems<E>- Returns:
- the list of nested items
-
getChildItems
- Specified by:
getChildItemsin interfaceGroupTableItems<E>- Returns:
- the list of items from all nested group levels
-
getChildrenInternal
-
getParentGroup
- Specified by:
getParentGroupin interfaceGroupTableItems<E>- Returns:
- the parent group of passed item
-
getGroupPath
- Specified by:
getGroupPathin interfaceGroupTableItems<E>- Returns:
- the path through all parent groups
-
getGroupProperty
- Specified by:
getGroupPropertyin interfaceGroupTableItems<E>- Returns:
- a group property
-
getGroupPropertyValue
- Specified by:
getGroupPropertyValuein interfaceGroupTableItems<E>- Returns:
- a group property value
-
getGroupItemIds
- Specified by:
getGroupItemIdsin interfaceGroupTableItems<E>- Returns:
- item ids that are contained in the selected group
-
getGroupItemsCount
- Specified by:
getGroupItemsCountin interfaceGroupTableItems<E>- Returns:
- a count of items that are contained in the selected group
-
hasGroups
public boolean hasGroups()Description copied from interface:GroupTableItemsIndicated that a datasource has groups- Specified by:
hasGroupsin interfaceGroupTableItems<E>
-
getGroupProperties
- Specified by:
getGroupPropertiesin interfaceGroupTableItems<E>- Returns:
- group properties
-
containsGroup
Description copied from interface:GroupTableItemsIndicates that a group is contained in the groups tree- Specified by:
containsGroupin interfaceGroupTableItems<E>
-