public class GroupPropertyDatasourceImpl<T extends io.jmix.core.Entity,K> extends CollectionPropertyDatasourceImpl<T,K> implements GroupDatasource<T,K>, GroupDatasource.SupportsGroupSortDelegate
AbstractDatasource.ItemListener
GroupDatasource.GroupSortDelegate, GroupDatasource.SupportsGroupSortDelegate
CollectionDatasource.Aggregatable<T extends io.jmix.core.Entity,K>, CollectionDatasource.CollectionChangeEvent<T extends io.jmix.core.Entity,K>, CollectionDatasource.CollectionChangeListener<T extends io.jmix.core.Entity,K>, CollectionDatasource.Indexed<T extends io.jmix.core.Entity,K>, CollectionDatasource.Lazy<T extends io.jmix.core.Entity,K>, CollectionDatasource.Operation, CollectionDatasource.Ordered<T extends io.jmix.core.Entity,K>, CollectionDatasource.RefreshMode, CollectionDatasource.Sortable<T extends io.jmix.core.Entity,K>, CollectionDatasource.SortDelegate<T extends io.jmix.core.Entity,K>, CollectionDatasource.SupportsApplyToSelected<T extends io.jmix.core.Entity,K>, CollectionDatasource.SupportsPaging<T extends io.jmix.core.Entity,K>, CollectionDatasource.SupportsRefreshMode<T extends io.jmix.core.Entity,K>, CollectionDatasource.SupportsSortDelegate<T extends io.jmix.core.Entity,K>, CollectionDatasource.Suspendable<T extends io.jmix.core.Entity,K>, CollectionDatasource.UnmuteEventsMode
Datasource.CommitMode, Datasource.ItemChangeEvent<T extends io.jmix.core.Entity>, Datasource.ItemChangeListener<T extends io.jmix.core.Entity>, Datasource.ItemPropertyChangeEvent<T extends io.jmix.core.Entity>, Datasource.ItemPropertyChangeListener<T extends io.jmix.core.Entity>, Datasource.State, Datasource.StateChangeEvent<T extends io.jmix.core.Entity>, Datasource.StateChangeListener<T extends io.jmix.core.Entity>
CollectionDatasource.Sortable.Order, CollectionDatasource.Sortable.SortInfo<P>
Modifier and Type | Field and Description |
---|---|
protected GroupDelegate<T,K> |
groupDelegate |
protected GroupDatasource.GroupSortDelegate |
groupSortDelegate |
aggregatableDelegate, cascadeProperty, collectionChangeListeners, doNotModify, item, listenersSuspended, sortDelegate, sortInfos, suspendedEvents
masterDs, metaClass, metaProperty, view
allowCommit, backgroundWorker, commitMode, id, itemsToCreate, itemsToDelete, itemsToUpdate, listener, listenersEnabled, loadDynamicAttributes, metadata, modified, parentDs
Constructor and Description |
---|
GroupPropertyDatasourceImpl() |
Modifier and Type | Method and Description |
---|---|
boolean |
containsGroup(io.jmix.ui.component.data.GroupInfo groupId)
Indicates that a group is contained in the groups tree
|
protected void |
doSort() |
java.util.List<T> |
getChildItems(io.jmix.ui.component.data.GroupInfo groupId) |
java.util.List<io.jmix.ui.component.data.GroupInfo> |
getChildren(io.jmix.ui.component.data.GroupInfo groupId) |
java.util.Collection<K> |
getGroupItemIds(io.jmix.ui.component.data.GroupInfo groupId) |
int |
getGroupItemsCount(io.jmix.ui.component.data.GroupInfo groupId) |
java.util.List<io.jmix.ui.component.data.GroupInfo> |
getGroupPath(T entity) |
java.util.Collection<?> |
getGroupProperties() |
java.lang.Object |
getGroupProperty(io.jmix.ui.component.data.GroupInfo groupId) |
java.lang.Object |
getGroupPropertyValue(io.jmix.ui.component.data.GroupInfo groupId) |
java.util.List<T> |
getOwnChildItems(io.jmix.ui.component.data.GroupInfo groupId) |
io.jmix.ui.component.data.GroupInfo |
getParentGroup(T entity) |
void |
groupBy(java.lang.Object[] properties)
Perform grouping by the list of properties
|
boolean |
hasChildren(io.jmix.ui.component.data.GroupInfo groupId)
Indicates that group has nested groups
|
boolean |
hasGroups()
Indicated that a datasource has groups
|
java.util.List<io.jmix.ui.component.data.GroupInfo> |
rootGroups() |
void |
setGroupSortDelegate(GroupDatasource.GroupSortDelegate sortDelegate) |
addCollectionChangeListener, addItem, addItemFirst, addToCollectionFirst, aggregate, aggregateValues, checkPermission, checkState, clear, committed, containsItem, containsObjectInstance, createEntityComparator, excludeItem, fireCollectionChanged, firstItemId, getCollection, getCompiledLoadContext, getIdByIndex, getItem, getItem, getItemIds, getItemIds, getItemNN, getItems, getItemValue, getLastRefreshParameters, getMaxResults, getQuery, getQueryFilter, getRefreshOnComponentValueChange, includeItem, includeItemFirst, indexOfId, initAggregatableDelegate, initCollection, initParentDsListeners, internalAddItem, internalIncludeItem, isCacheable, isFirstId, isLastId, isSoftDeletion, lastItemId, modified, modifyItem, mute, nextItemId, prevItemId, reattachListeners, refresh, refresh, removeCollectionChangeListener, removeItem, replaceItem, resetSortOrder, resumeListeners, revert, setCacheable, setItem, setMaxResults, setQuery, setQuery, setQueryFilter, setRefreshOnComponentValueChange, setSoftDeletion, setSortDelegate, setup, size, sort, suspendListeners, unmute, updateItem
commit, getDataSupplier, getDsContext, getItem, getItemIfValid, getMaster, getMetaClass, getProperty, getState, getView, initialized, invalidate, reattachListeners, valid
addItemChangeListener, addItemPropertyChangeListener, addParentsToNested, addStateChangeListener, attachListener, clearCommitLists, deleted, detachListener, enableListeners, fireItemChanged, fireStateChanged, getCommitMode, getEventRouter, getId, getItemsToCreate, getItemsToDelete, getItemsToUpdate, getLoadDynamicAttributes, getParent, isAllowCommit, isModified, removeItemChangeListener, removeItemPropertyChangeListener, removeStateChangeListener, setAllowCommit, setCommitMode, setLoadDynamicAttributes, setModified, setParent, setup, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addCollectionChangeListener, addItem, clear, containsItem, excludeItem, getCompiledLoadContext, getItem, getItemIds, getItemNN, getItems, getLastRefreshParameters, getMaxResults, getQuery, getQueryFilter, getRefreshOnComponentValueChange, includeItem, isCacheable, isSoftDeletion, modifyItem, mute, refresh, removeCollectionChangeListener, removeItem, resumeListeners, revert, setCacheable, setMaxResults, setQuery, setQuery, setQueryFilter, setRefreshOnComponentValueChange, setSoftDeletion, size, suspendListeners, unmute, updateItem
addItemChangeListener, addItemPropertyChangeListener, addStateChangeListener, commit, getCommitMode, getDataSupplier, getDsContext, getId, getItem, getItemIfValid, getLoadDynamicAttributes, getMetaClass, getState, getView, invalidate, isAllowCommit, isModified, refresh, removeItemChangeListener, removeItemPropertyChangeListener, removeStateChangeListener, setAllowCommit, setItem, setLoadDynamicAttributes, setup
clearCommitLists, deleted, enableListeners, getItemsToCreate, getItemsToDelete, getItemsToUpdate, getParent, setCommitMode, setModified, setParent
protected GroupDatasource.GroupSortDelegate groupSortDelegate
protected GroupDelegate<T extends io.jmix.core.Entity,K> groupDelegate
public void groupBy(java.lang.Object[] properties)
GroupDatasource
groupBy
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public void setGroupSortDelegate(GroupDatasource.GroupSortDelegate sortDelegate)
setGroupSortDelegate
in interface GroupDatasource.SupportsGroupSortDelegate
protected void doSort()
doSort
in class CollectionPropertyDatasourceImpl<T extends io.jmix.core.Entity,K>
public java.util.List<io.jmix.ui.component.data.GroupInfo> rootGroups()
rootGroups
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public boolean hasChildren(io.jmix.ui.component.data.GroupInfo groupId)
GroupDatasource
hasChildren
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.util.List<io.jmix.ui.component.data.GroupInfo> getChildren(io.jmix.ui.component.data.GroupInfo groupId)
getChildren
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.lang.Object getGroupProperty(io.jmix.ui.component.data.GroupInfo groupId)
getGroupProperty
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.lang.Object getGroupPropertyValue(io.jmix.ui.component.data.GroupInfo groupId)
getGroupPropertyValue
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.util.Collection<K> getGroupItemIds(io.jmix.ui.component.data.GroupInfo groupId)
getGroupItemIds
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public int getGroupItemsCount(io.jmix.ui.component.data.GroupInfo groupId)
getGroupItemsCount
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public boolean hasGroups()
GroupDatasource
hasGroups
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.util.Collection<?> getGroupProperties()
getGroupProperties
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public boolean containsGroup(io.jmix.ui.component.data.GroupInfo groupId)
GroupDatasource
containsGroup
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.util.List<T> getOwnChildItems(io.jmix.ui.component.data.GroupInfo groupId)
getOwnChildItems
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.util.List<T> getChildItems(io.jmix.ui.component.data.GroupInfo groupId)
getChildItems
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public io.jmix.ui.component.data.GroupInfo getParentGroup(T entity)
getParentGroup
in interface GroupDatasource<T extends io.jmix.core.Entity,K>
public java.util.List<io.jmix.ui.component.data.GroupInfo> getGroupPath(T entity)
getGroupPath
in interface GroupDatasource<T extends io.jmix.core.Entity,K>