com.vaadin.data.
Interface Container.Filter
All Superinterfaces:
All Known Implementing Classes:
AbstractJunctionFilter, And, Between, Compare, Compare.Equal, Compare.Greater, Compare.GreaterOrEqual, Compare.Less, Compare.LessOrEqual, IsNull, Like, Not, Or, SimpleStringFilter
Enclosing interface:
- extends Serializable
public static interface Container.Filter
Filter interface for container filtering.
If a filter does not support in-memory filtering,
#passesFilter(Item)
should throw
UnsupportedOperationException
.
Lazy containers must be able to map filters to their internal
representation (e.g. SQL or JPA 2.0 Criteria).
An UnsupportedFilterException
can be thrown by the container if a
particular filter is not supported by the container.
An Container.Filter
should implement #equals(Object)
and
#hashCode()
correctly to avoid duplicate filter registrations
etc.
Since:
6.6
See Also:
Method Summary | |
---|---|
boolean |
appliesToProperty(Object propertyId)
Check if a change in the value of a property can affect the filtering result. |
boolean |
passesFilter(Object itemId,
Item item)
Check if an item passes the filter (in-memory filtering). |
Method Detail |
---|
passesFilter
boolean passesFilter(Object itemId,
Item item)
throws UnsupportedOperationException
- Parameters:
itemId
- identifier of the item being filtered; may be null when the item is being added to the containeritem
- the item being filtered- Returns:
- true if the item is accepted by this filter
- Throws:
UnsupportedOperationException
- if the filter cannot be used for in-memory filtering
Check if an item passes the filter (in-memory filtering).
appliesToProperty
boolean appliesToProperty(Object propertyId)
- Parameters:
propertyId
-- Returns:
- true if the filtering result may/does change based on changes to the property identified by propertyId
Check if a change in the value of a property can affect the filtering result. May always return true, at the cost of performance. If the filter cannot determine whether it may depend on the property or not, should return true.