Package is.codion.swing.framework.model
Class SwingEntityTableModel
java.lang.Object
is.codion.swing.framework.model.SwingEntityTableModel
- All Implemented Interfaces:
is.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>,is.codion.framework.model.EntityTableModel<SwingEntityEditModel>,is.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,,is.codion.framework.domain.entity.attribute.Attribute<?>> TableModel
public class SwingEntityTableModel
extends Object
implements is.codion.framework.model.EntityTableModel<SwingEntityEditModel>, is.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
A TableModel implementation for displaying and working with entities.
-
Nested Class Summary
Nested classes/interfaces inherited from interface is.codion.framework.model.EntityTableModel
is.codion.framework.model.EntityTableModel.ColumnPreferences, is.codion.framework.model.EntityTableModel.OnInsertNested classes/interfaces inherited from interface is.codion.common.model.FilteredModel
is.codion.common.model.FilteredModel.AbstractRefresher<T extends Object>, is.codion.common.model.FilteredModel.Refresher<T extends Object>Nested classes/interfaces inherited from interface is.codion.swing.common.model.component.table.FilteredTableModel
is.codion.swing.common.model.component.table.FilteredTableModel.Builder<R extends Object,C extends Object>, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<C extends Object>, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnValueProvider<R extends Object, C extends Object>, is.codion.swing.common.model.component.table.FilteredTableModel.RemovedRows -
Field Summary
Fields inherited from interface is.codion.framework.model.EntityTableModel
ON_INSERT, ORDER_QUERY_BY_SORT_ORDER, QUERY_HIDDEN_COLUMNSFields inherited from interface is.codion.common.model.FilteredModel
ASYNC_REFRESH -
Constructor Summary
ConstructorsConstructorDescriptionSwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(SwingEntityEditModel editModel) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(SwingEntityEditModel editModel, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(SwingEntityEditModel editModel, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory) Instantiates a new SwingEntityTableModel.SwingEntityTableModel(SwingEntityEditModel editModel, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel. -
Method Summary
Modifier and TypeMethodDescriptionfinal voidaddClearListener(Runnable listener) final voidaddDataChangedListener(Runnable listener) final voidaddItem(is.codion.framework.domain.entity.Entity item) final voidaddItemAt(int index, is.codion.framework.domain.entity.Entity item) final voidaddItems(Collection<is.codion.framework.domain.entity.Entity> items) final voidaddItemsAt(int index, Collection<is.codion.framework.domain.entity.Entity> items) final voidaddItemsAtSorted(int index, Collection<is.codion.framework.domain.entity.Entity> items) final voidaddItemSorted(is.codion.framework.domain.entity.Entity item) final voidaddItemsSorted(Collection<is.codion.framework.domain.entity.Entity> items) final voidaddRowsRemovedListener(Consumer<is.codion.swing.common.model.component.table.FilteredTableModel.RemovedRows> listener) final voidaddSelectionListener(Runnable listener) final voidaddTableModelListener(TableModelListener listener) final is.codion.common.value.ValueSet<is.codion.framework.domain.entity.attribute.Attribute<?>>backgroundColor(int row, is.codion.framework.domain.entity.attribute.Attribute<?> attribute) final voidclear()final is.codion.swing.common.model.component.table.FilteredTableColumnModel<is.codion.framework.domain.entity.attribute.Attribute<?>>final is.codion.common.state.StateObserverprotected booleanconditionEnabled(is.codion.framework.model.EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>> conditionModel) It can be necessary to prevent the user from selecting too much data, when working with a large dataset.final is.codion.framework.model.EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>>final is.codion.common.state.Statefinal is.codion.framework.db.EntityConnectionProviderfinal booleancontainsItem(is.codion.framework.domain.entity.Entity item) final voidfinal is.codion.common.state.Stateeditable()final is.codion.common.state.Statefinal <C extends SwingEntityEditModel>
Cfinal is.codion.framework.domain.entity.Entitiesentities()final is.codion.framework.domain.entity.EntityDefinitionfinal is.codion.framework.domain.entity.EntityTypefinal booleanfiltered(is.codion.framework.domain.entity.Entity item) final intfinal Collection<is.codion.framework.domain.entity.Entity>final voidfinal is.codion.common.model.table.TableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>>final Optional<is.codion.framework.domain.entity.Entity>find(is.codion.framework.domain.entity.Entity.Key primaryKey) final Collection<is.codion.framework.domain.entity.Entity>find(Collection<is.codion.framework.domain.entity.Entity.Key> keys) final voidvoidfireTableRowsUpdated(int fromIndex, int toIndex) foregroundColor(int row, is.codion.framework.domain.entity.attribute.Attribute<?> attribute) final Class<?>getColumnClass(int columnIndex) final Class<?>getColumnClass(is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) final intfinal StringgetColumnName(int columnIndex) final intfinal StringgetStringAt(int rowIndex, is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) final ObjectgetValueAt(int rowIndex, int columnIndex) final is.codion.common.value.Value<Predicate<is.codion.framework.domain.entity.Entity>>final intindexOf(is.codion.framework.domain.entity.Entity item) final intindexOf(is.codion.framework.domain.entity.Entity.Key primaryKey) booleanisCellEditable(int rowIndex, int modelColumnIndex) Returns true if the cell atrowIndexandmodelColumnIndexis editable.final is.codion.framework.domain.entity.EntityitemAt(int rowIndex) final Collection<is.codion.framework.domain.entity.Entity>items()final is.codion.common.value.Value<Integer>limit()final is.codion.common.state.Statefinal is.codion.common.value.Value<is.codion.framework.model.EntityTableModel.OnInsert>onInsert()protected is.codion.framework.domain.entity.OrderByorderBy()The order by clause to use when selecting the data for this model.final is.codion.common.state.Statefinal is.codion.common.state.Statefinal voidrefresh()final voidrefresh(Collection<is.codion.framework.domain.entity.Entity.Key> keys) final is.codion.common.model.FilteredModel.Refresher<is.codion.framework.domain.entity.Entity>protected Collection<is.codion.framework.domain.entity.Entity>Queries the data used to populate this EntityTableModel when it is refreshed.final voidrefreshThen(Consumer<Collection<is.codion.framework.domain.entity.Entity>> afterRefresh) final voidremoveClearListener(Runnable listener) final voidremoveDataChangedListener(Runnable listener) final is.codion.common.state.Statefinal voidremoveItem(is.codion.framework.domain.entity.Entity item) final is.codion.framework.domain.entity.EntityremoveItemAt(int index) final List<is.codion.framework.domain.entity.Entity>removeItems(int fromIndex, int toIndex) final voidremoveItems(Collection<is.codion.framework.domain.entity.Entity> items) final voidremoveRowsRemovedListener(Consumer<is.codion.swing.common.model.component.table.FilteredTableModel.RemovedRows> listener) final voidremoveTableModelListener(TableModelListener listener) final voidreplace(is.codion.framework.domain.entity.attribute.ForeignKey foreignKey, Collection<is.codion.framework.domain.entity.Entity> foreignKeyValues) final voidreplace(Collection<is.codion.framework.domain.entity.Entity> entities) final StringrowsAsDelimitedString(char delimiter) final voidfinal is.codion.swing.common.model.component.table.FilteredTableSearchModelfinal voidselect(Collection<is.codion.framework.domain.entity.Entity.Key> keys) final <T> Collection<T>selectedValues(is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) final is.codion.swing.common.model.component.table.FilteredTableSelectionModel<is.codion.framework.domain.entity.Entity>final voidsetItemAt(int index, is.codion.framework.domain.entity.Entity item) final voidsetValueAt(Object value, int rowIndex, int modelColumnIndex) Sets the value in the given cell and updates the underlying Entity.final voidsetVisibleColumns(is.codion.framework.domain.entity.attribute.Attribute<?>... attributes) final voidsetVisibleColumns(List<is.codion.framework.domain.entity.attribute.Attribute<?>> attributes) final voidfinal is.codion.swing.common.model.component.table.FilteredTableSortModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>> final is.codion.common.model.table.TableSummaryModel<is.codion.framework.domain.entity.attribute.Attribute<?>>static SwingEntityTableModeltableModel(Collection<is.codion.framework.domain.entity.Entity> entities, is.codion.framework.db.EntityConnectionProvider connectionProvider) protected ColorReturns aColorinstance from the given Object.final StringtoString()protected StringReturns the key used to identify user preferences for this table model, that is column positions, widths and such.final <T> Collection<T>values(is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) final booleanvisible(is.codion.framework.domain.entity.Entity item) final intfinal List<is.codion.framework.domain.entity.Entity>
-
Constructor Details
-
SwingEntityTableModel
public SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider) Instantiates a new SwingEntityTableModel.- Parameters:
entityType- the entityTypeconnectionProvider- the connection provider
-
SwingEntityTableModel
public SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory) Instantiates a new SwingEntityTableModel.- Parameters:
entityType- the entityTypeconnectionProvider- the connection providercolumnFactory- the table column factory
-
SwingEntityTableModel
public SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.- Parameters:
entityType- the entityTypeconnectionProvider- the connection providerconditionModelFactory- the table condition model factory
-
SwingEntityTableModel
public SwingEntityTableModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.- Parameters:
entityType- the entityTypeconnectionProvider- the connection providercolumnFactory- the table column factoryconditionModelFactory- the table condition model factory
-
SwingEntityTableModel
Instantiates a new SwingEntityTableModel.- Parameters:
editModel- the edit model
-
SwingEntityTableModel
public SwingEntityTableModel(SwingEntityEditModel editModel, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory) Instantiates a new SwingEntityTableModel.- Parameters:
editModel- the edit modelcolumnFactory- the table column factory
-
SwingEntityTableModel
public SwingEntityTableModel(SwingEntityEditModel editModel, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.- Parameters:
editModel- the edit modelconditionModelFactory- the table condition model factory
-
SwingEntityTableModel
public SwingEntityTableModel(SwingEntityEditModel editModel, is.codion.swing.common.model.component.table.FilteredTableModel.ColumnFactory<is.codion.framework.domain.entity.attribute.Attribute<?>> columnFactory, is.codion.framework.model.EntityConditionModelFactory conditionModelFactory) Instantiates a new SwingEntityTableModel.- Parameters:
editModel- the edit modelcolumnFactory- the table column factoryconditionModelFactory- the table condition model factory
-
-
Method Details
-
entities
public final is.codion.framework.domain.entity.Entities entities()- Specified by:
entitiesin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
entityDefinition
public final is.codion.framework.domain.entity.EntityDefinition entityDefinition()- Specified by:
entityDefinitionin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
toString
-
attributes
public final is.codion.common.value.ValueSet<is.codion.framework.domain.entity.attribute.Attribute<?>> attributes()- Specified by:
attributesin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
limit
- Specified by:
limitin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
queryHiddenColumns
public final is.codion.common.state.State queryHiddenColumns()- Specified by:
queryHiddenColumnsin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
orderQueryBySortOrder
public final is.codion.common.state.State orderQueryBySortOrder()- Specified by:
orderQueryBySortOrderin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
conditionRequired
public final is.codion.common.state.State conditionRequired()- Specified by:
conditionRequiredin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
onInsert
public final is.codion.common.value.Value<is.codion.framework.model.EntityTableModel.OnInsert> onInsert()- Specified by:
onInsertin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
removeDeleted
public final is.codion.common.state.State removeDeleted()- Specified by:
removeDeletedin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
editEvents
public final is.codion.common.state.State editEvents()- Specified by:
editEventsin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
entityType
public final is.codion.framework.domain.entity.EntityType entityType()- Specified by:
entityTypein interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
conditionModel
public final is.codion.framework.model.EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>> conditionModel()- Specified by:
conditionModelin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
editModel
- Specified by:
editModelin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
connectionProvider
public final is.codion.framework.db.EntityConnectionProvider connectionProvider()- Specified by:
connectionProviderin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
editable
public final is.codion.common.state.State editable()- Specified by:
editablein interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
isCellEditable
public boolean isCellEditable(int rowIndex, int modelColumnIndex) Returns true if the cell atrowIndexandmodelColumnIndexis editable.- Specified by:
isCellEditablein interfaceTableModel- Parameters:
rowIndex- the row to editmodelColumnIndex- the model index of the column to edit- Returns:
- true if the cell is editable
- See Also:
-
setValueAt
Sets the value in the given cell and updates the underlying Entity.- Specified by:
setValueAtin interfaceTableModel- Parameters:
value- the new valuerowIndex- the row whose value is to be changedmodelColumnIndex- the model index of the column to be changed
-
backgroundColor
public Color backgroundColor(int row, is.codion.framework.domain.entity.attribute.Attribute<?> attribute) - Specified by:
backgroundColorin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
foregroundColor
public Color foregroundColor(int row, is.codion.framework.domain.entity.attribute.Attribute<?> attribute) - Specified by:
foregroundColorin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
find
public final Optional<is.codion.framework.domain.entity.Entity> find(is.codion.framework.domain.entity.Entity.Key primaryKey) - Specified by:
findin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
indexOf
public final int indexOf(is.codion.framework.domain.entity.Entity.Key primaryKey) - Specified by:
indexOfin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
replace
- Specified by:
replacein interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
refresh
- Specified by:
refreshin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
replace
public final void replace(is.codion.framework.domain.entity.attribute.ForeignKey foreignKey, Collection<is.codion.framework.domain.entity.Entity> foreignKeyValues) - Specified by:
replacein interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
select
- Specified by:
selectin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
find
public final Collection<is.codion.framework.domain.entity.Entity> find(Collection<is.codion.framework.domain.entity.Entity.Key> keys) - Specified by:
findin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
deleteSelected
public final void deleteSelected() throws is.codion.common.db.exception.DatabaseException- Specified by:
deleteSelectedin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>- Throws:
is.codion.common.db.exception.DatabaseException
-
setVisibleColumns
public final void setVisibleColumns(is.codion.framework.domain.entity.attribute.Attribute<?>... attributes) - Specified by:
setVisibleColumnsin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
setVisibleColumns
public final void setVisibleColumns(List<is.codion.framework.domain.entity.attribute.Attribute<?>> attributes) - Specified by:
setVisibleColumnsin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
savePreferences
public final void savePreferences()- Specified by:
savePreferencesin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
conditionChanged
public final is.codion.common.state.StateObserver conditionChanged()- Specified by:
conditionChangedin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
addSelectionListener
- Specified by:
addSelectionListenerin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>
-
filterItems
public final void filterItems()- Specified by:
filterItemsin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
includeCondition
public final is.codion.common.value.Value<Predicate<is.codion.framework.domain.entity.Entity>> includeCondition()- Specified by:
includeConditionin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
items
- Specified by:
itemsin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
visibleItems
- Specified by:
visibleItemsin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
filteredItems
- Specified by:
filteredItemsin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
visibleCount
public final int visibleCount()- Specified by:
visibleCountin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
filteredCount
public final int filteredCount()- Specified by:
filteredCountin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
containsItem
public final boolean containsItem(is.codion.framework.domain.entity.Entity item) - Specified by:
containsItemin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
visible
public final boolean visible(is.codion.framework.domain.entity.Entity item) - Specified by:
visiblein interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
filtered
public final boolean filtered(is.codion.framework.domain.entity.Entity item) - Specified by:
filteredin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
refresher
public final is.codion.common.model.FilteredModel.Refresher<is.codion.framework.domain.entity.Entity> refresher()- Specified by:
refresherin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>
-
refresh
public final void refresh()- Specified by:
refreshin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>- Specified by:
refreshin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>- Specified by:
refreshin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
refreshThen
public final void refreshThen(Consumer<Collection<is.codion.framework.domain.entity.Entity>> afterRefresh) - Specified by:
refreshThenin interfaceis.codion.common.model.FilteredModel<is.codion.framework.domain.entity.Entity>- Specified by:
refreshThenin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
clear
public final void clear()- Specified by:
clearin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>- Specified by:
clearin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
getRowCount
public final int getRowCount()- Specified by:
getRowCountin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>- Specified by:
getRowCountin interfaceTableModel
-
indexOf
public final int indexOf(is.codion.framework.domain.entity.Entity item) - Specified by:
indexOfin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
itemAt
public final is.codion.framework.domain.entity.Entity itemAt(int rowIndex) - Specified by:
itemAtin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
getValueAt
- Specified by:
getValueAtin interfaceTableModel
-
getStringAt
public final String getStringAt(int rowIndex, is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) - Specified by:
getStringAtin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItems
- Specified by:
addItemsin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItemsSorted
- Specified by:
addItemsSortedin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItemsAt
- Specified by:
addItemsAtin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItemsAtSorted
public final void addItemsAtSorted(int index, Collection<is.codion.framework.domain.entity.Entity> items) - Specified by:
addItemsAtSortedin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItem
public final void addItem(is.codion.framework.domain.entity.Entity item) - Specified by:
addItemin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItemAt
public final void addItemAt(int index, is.codion.framework.domain.entity.Entity item) - Specified by:
addItemAtin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addItemSorted
public final void addItemSorted(is.codion.framework.domain.entity.Entity item) - Specified by:
addItemSortedin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
setItemAt
public final void setItemAt(int index, is.codion.framework.domain.entity.Entity item) - Specified by:
setItemAtin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeItems
- Specified by:
removeItemsin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeItem
public final void removeItem(is.codion.framework.domain.entity.Entity item) - Specified by:
removeItemin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeItemAt
public final is.codion.framework.domain.entity.Entity removeItemAt(int index) - Specified by:
removeItemAtin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeItems
- Specified by:
removeItemsin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
fireTableDataChanged
public final void fireTableDataChanged()- Specified by:
fireTableDataChangedin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
fireTableRowsUpdated
public void fireTableRowsUpdated(int fromIndex, int toIndex) - Specified by:
fireTableRowsUpdatedin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
columnModel
public final is.codion.swing.common.model.component.table.FilteredTableColumnModel<is.codion.framework.domain.entity.attribute.Attribute<?>> columnModel()- Specified by:
columnModelin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
values
public final <T> Collection<T> values(is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) - Specified by:
valuesin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
getColumnClass
public final Class<?> getColumnClass(is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) - Specified by:
getColumnClassin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
selectedValues
public final <T> Collection<T> selectedValues(is.codion.framework.domain.entity.attribute.Attribute<?> columnIdentifier) - Specified by:
selectedValuesin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
rowsAsDelimitedString
- Specified by:
rowsAsDelimitedStringin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
mergeOnRefresh
public final is.codion.common.state.State mergeOnRefresh()- Specified by:
mergeOnRefreshin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
sortItems
public final void sortItems()- Specified by:
sortItemsin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
selectionModel
public final is.codion.swing.common.model.component.table.FilteredTableSelectionModel<is.codion.framework.domain.entity.Entity> selectionModel()- Specified by:
selectionModelin interfaceis.codion.framework.model.EntityTableModel<SwingEntityEditModel>- Specified by:
selectionModelin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
sortModel
public final is.codion.swing.common.model.component.table.FilteredTableSortModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>> sortModel()- Specified by:
sortModelin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
searchModel
public final is.codion.swing.common.model.component.table.FilteredTableSearchModel searchModel()- Specified by:
searchModelin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
filterModel
public final is.codion.common.model.table.TableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>> filterModel()- Specified by:
filterModelin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
summaryModel
public final is.codion.common.model.table.TableSummaryModel<is.codion.framework.domain.entity.attribute.Attribute<?>> summaryModel()- Specified by:
summaryModelin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
getColumnCount
public final int getColumnCount()- Specified by:
getColumnCountin interfaceTableModel
-
getColumnName
- Specified by:
getColumnNamein interfaceTableModel
-
getColumnClass
- Specified by:
getColumnClassin interfaceTableModel
-
addDataChangedListener
- Specified by:
addDataChangedListenerin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeDataChangedListener
- Specified by:
removeDataChangedListenerin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addClearListener
- Specified by:
addClearListenerin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeClearListener
- Specified by:
removeClearListenerin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addRowsRemovedListener
public final void addRowsRemovedListener(Consumer<is.codion.swing.common.model.component.table.FilteredTableModel.RemovedRows> listener) - Specified by:
addRowsRemovedListenerin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
removeRowsRemovedListener
public final void removeRowsRemovedListener(Consumer<is.codion.swing.common.model.component.table.FilteredTableModel.RemovedRows> listener) - Specified by:
removeRowsRemovedListenerin interfaceis.codion.swing.common.model.component.table.FilteredTableModel<is.codion.framework.domain.entity.Entity,is.codion.framework.domain.entity.attribute.Attribute<?>>
-
addTableModelListener
- Specified by:
addTableModelListenerin interfaceTableModel
-
removeTableModelListener
- Specified by:
removeTableModelListenerin interfaceTableModel
-
tableModel
public static SwingEntityTableModel tableModel(Collection<is.codion.framework.domain.entity.Entity> entities, is.codion.framework.db.EntityConnectionProvider connectionProvider) - Parameters:
entities- the entities to displayconnectionProvider- the connection provider- Returns:
- a static
SwingEntityTableModelinstance containing the given entities - Throws:
IllegalArgumentException- in caseentitiesis empty
-
refreshItems
Queries the data used to populate this EntityTableModel when it is refreshed. This method should take into account the where and having conditions (EntityTableConditionModel.where(Conjunction),EntityTableConditionModel.having(Conjunction)), order by clause (orderBy()), the limit (limit()) and select attributes (attributes()) when querying.- Returns:
- entities selected from the database according to the query condition.
- See Also:
-
conditionRequired()conditionEnabled(EntityTableConditionModel)EntityTableConditionModel.where(Conjunction)EntityTableConditionModel.having(Conjunction)
-
conditionEnabled
protected boolean conditionEnabled(is.codion.framework.model.EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>> conditionModel) It can be necessary to prevent the user from selecting too much data, when working with a large dataset. This can be done by enabling theconditionRequired(), which prevents a refresh as long as this method returnsfalse. This default implementation simply returnsTableConditionModel.enabled(). Override for a more fine grained control, such as requiring a specific column condition to be enabled.- Parameters:
conditionModel- the table condition model- Returns:
- true if enough conditions are enabled for a safe refresh
- See Also:
-
toColor
Returns aColorinstance from the given Object.Colorinstances are returned as-is, but instances ofStringare assumed to be in HEX format (f.ex: #ffff00" or #00ff00) and are parsed withColor.decode(String). Colors parsed from Strings are cached. Override to support other representations.- Parameters:
color- the object representing the color.- Returns:
- a
Colorinstance based on the given Object - Throws:
IllegalArgumentException- in case the representation is not supportedNullPointerException- in case color is null
-
orderBy
protected is.codion.framework.domain.entity.OrderBy orderBy()The order by clause to use when selecting the data for this model. If ordering by sort order is enabled aOrderByclause is constructed according to the sort order of column based attributes, otherwise the order by clause defined for the underlying entity is returned.- Returns:
- the order by clause
- See Also:
-
orderQueryBySortOrder()EntityDefinition.orderBy()
-
userPreferencesKey
Returns the key used to identify user preferences for this table model, that is column positions, widths and such. The default implementation is:
Override in case this key is not unique.return getClass().getSimpleName() + "-" + entityType();- Returns:
- the key used to identify user preferences for this table model
-