Interface EntityTableConditionModel<C extends is.codion.framework.domain.entity.attribute.Attribute<?>>

All Superinterfaces:
is.codion.common.model.table.TableConditionModel<C>

public interface EntityTableConditionModel<C extends is.codion.framework.domain.entity.attribute.Attribute<?>> extends is.codion.common.model.table.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 EntityTableConditionModel instances via entityTableConditionModel(EntityType, EntityConnectionProvider, ColumnConditionModel.Factory)
  • Method Summary

    Modifier and Type
    Method
    Description
    is.codion.common.value.Value<Supplier<is.codion.framework.domain.entity.condition.Condition>>
    Controls the additional having condition.
    is.codion.common.value.Value<Supplier<is.codion.framework.domain.entity.condition.Condition>>
    Controls the additional where condition.
    <A extends is.codion.framework.domain.entity.attribute.Attribute<T>, T>
    is.codion.common.model.table.ColumnConditionModel<A,T>
    attributeModel(A attribute)
    Returns the ColumnConditionModel associated with the given attribute.
    static EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>>
    entityTableConditionModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider)
    static EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>>
    entityTableConditionModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.common.model.table.ColumnConditionModel.Factory<is.codion.framework.domain.entity.attribute.Attribute<?>> conditionModelFactory)
    is.codion.framework.domain.entity.EntityType
     
    is.codion.framework.domain.entity.condition.Condition
    having(is.codion.common.Conjunction conjunction)
    Returns a HAVING condition based on enabled condition models which are based on aggregate function columns.
    <T> boolean
    setEqualConditionValues(is.codion.framework.domain.entity.attribute.Attribute<T> attribute, Collection<T> values)
    Sets the search condition values of the condition model associated with attribute.
    is.codion.framework.domain.entity.condition.Condition
    where(is.codion.common.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

    addChangeListener, clear, conditionModel, conditionModels, enabled, enabled, removeChangeListener
  • Method Details

    • entityType

      is.codion.framework.domain.entity.EntityType entityType()
      Returns:
      the type of the entity this table condition model is based on
    • setEqualConditionValues

      <T> boolean setEqualConditionValues(is.codion.framework.domain.entity.attribute.Attribute<T> attribute, Collection<T> values)
      Sets the search condition values of the condition model associated with attribute. Enables the condition model in case values is non-empty or disables it if values is empty.
      Type Parameters:
      T - the value type
      Parameters:
      attribute - the attribute
      values - 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

      is.codion.framework.domain.entity.condition.Condition where(is.codion.common.Conjunction conjunction)
      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

      is.codion.framework.domain.entity.condition.Condition having(is.codion.common.Conjunction conjunction)
      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

      is.codion.common.value.Value<Supplier<is.codion.framework.domain.entity.condition.Condition>> 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

      is.codion.common.value.Value<Supplier<is.codion.framework.domain.entity.condition.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

      <A extends is.codion.framework.domain.entity.attribute.Attribute<T>, T> is.codion.common.model.table.ColumnConditionModel<A,T> attributeModel(A attribute)
      Returns the ColumnConditionModel associated with the given attribute.
      Type Parameters:
      A - the attribute type
      T - the column value type
      Parameters:
      attribute - the attribute for which to retrieve the ColumnConditionModel
      Returns:
      the ColumnConditionModel associated with attribute
      Throws:
      IllegalArgumentException - in case no condition model exists for the given attribute
    • entityTableConditionModel

      static EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>> entityTableConditionModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider)
      Parameters:
      entityType - the underlying entity type
      connectionProvider - a EntityConnectionProvider instance
      Returns:
      a new EntityTableConditionModel instance
    • entityTableConditionModel

      static EntityTableConditionModel<is.codion.framework.domain.entity.attribute.Attribute<?>> entityTableConditionModel(is.codion.framework.domain.entity.EntityType entityType, is.codion.framework.db.EntityConnectionProvider connectionProvider, is.codion.common.model.table.ColumnConditionModel.Factory<is.codion.framework.domain.entity.attribute.Attribute<?>> conditionModelFactory)
      Parameters:
      entityType - the underlying entity type
      connectionProvider - a EntityConnectionProvider instance
      conditionModelFactory - provides the column condition models for this table condition model
      Returns:
      a new EntityTableConditionModel instance