Module is.codion.framework.model
Package is.codion.framework.model
Interface EntityTableConditionModel<C extends Attribute<?>>
- All Superinterfaces:
TableConditionModel<C>
This interface defines filtering functionality, which refers to showing/hiding entities already available
in a table model and searching functionality, which refers to configuring the underlying query,
which then needs to be re-run.
Factory for
Factory for
EntityTableConditionModel
instances via
entityTableConditionModel(EntityType, EntityConnectionProvider, ColumnConditionModel.Factory)
-
Method Summary
Modifier and TypeMethodDescriptionControls the additional having condition.Controls the additional where condition.<A extends Attribute<T>,
T>
ColumnConditionModel<A,T> attributeModel
(A attribute) Returns theColumnConditionModel
associated with the given attribute.static EntityTableConditionModel<Attribute<?>>
entityTableConditionModel
(EntityType entityType, EntityConnectionProvider connectionProvider) Creates a newEntityTableConditionModel
static EntityTableConditionModel<Attribute<?>>
entityTableConditionModel
(EntityType entityType, EntityConnectionProvider connectionProvider, ColumnConditionModel.Factory<Attribute<?>> conditionModelFactory) Creates a newEntityTableConditionModel
having
(Conjunction conjunction) Returns a HAVING condition based on enabled condition models which are based on aggregate function columns.<T> boolean
setEqualConditionValues
(Attribute<T> attribute, Collection<T> values) Sets the search condition values of the condition model associated withattribute
.where
(Conjunction conjunction) Returns a WHERE condition based on enabled condition models which are based on non-aggregate function columns.Methods inherited from interface is.codion.common.model.table.TableConditionModel
clear, conditionChangedEvent, conditionModel, conditionModels, enabled, enabled
-
Method Details
-
entityType
EntityType entityType()- Returns:
- the type of the entity this table condition model is based on
-
setEqualConditionValues
Sets the search condition values of the condition model associated withattribute
. Enables the condition model in casevalues
is non-empty or disables it ifvalues is empty
.- Type Parameters:
T
- the value type- Parameters:
attribute
- the attributevalues
- the search condition values, an empty Collection for none- Returns:
- true if the search state changed as a result of this method call, false otherwise
-
where
Returns a WHERE condition based on enabled condition models which are based on non-aggregate function columns.- Parameters:
conjunction
- the conjunction to use in case of multiple enabled conditions- Returns:
- the current where condition based on the state of the underlying condition models
-
having
Returns a HAVING condition based on enabled condition models which are based on aggregate function columns.- Parameters:
conjunction
- the conjunction to use in case of multiple enabled conditions- Returns:
- the current having condition based on the state of the underlying condition models
-
additionalWhere
Controls the additional where condition. The condition supplier may return null in case of no condition.- Returns:
- the value controlling the additional where condition
-
additionalHaving
Controls the additional having condition. The condition supplier may return null in case of no condition.- Returns:
- the value controlling the additional having condition
-
attributeModel
Returns theColumnConditionModel
associated with the given attribute.- Type Parameters:
A
- the attribute typeT
- the column value type- Parameters:
attribute
- the attribute for which to retrieve theColumnConditionModel
- Returns:
- the
ColumnConditionModel
associated withattribute
- Throws:
IllegalArgumentException
- in case no condition model exists for the given attribute
-
entityTableConditionModel
static EntityTableConditionModel<Attribute<?>> entityTableConditionModel(EntityType entityType, EntityConnectionProvider connectionProvider) Creates a newEntityTableConditionModel
- Parameters:
entityType
- the underlying entity typeconnectionProvider
- a EntityConnectionProvider instance- Returns:
- a new
EntityTableConditionModel
instance
-
entityTableConditionModel
static EntityTableConditionModel<Attribute<?>> entityTableConditionModel(EntityType entityType, EntityConnectionProvider connectionProvider, ColumnConditionModel.Factory<Attribute<?>> conditionModelFactory) Creates a newEntityTableConditionModel
- Parameters:
entityType
- the underlying entity typeconnectionProvider
- a EntityConnectionProvider instanceconditionModelFactory
- provides the column condition models for this table condition model- Returns:
- a new
EntityTableConditionModel
instance
-