com.vaadin.data.util.filter
Class AbstractJunctionFilter

java.lang.Object
  extended by com.vaadin.data.util.filter.AbstractJunctionFilter
All Implemented Interfaces:
Container.Filter, java.io.Serializable
Direct Known Subclasses:
And, Or

public abstract class AbstractJunctionFilter
extends java.lang.Object
implements Container.Filter

Abstract base class for filters that are composed of multiple sub-filters. The method appliesToProperty(Object) is provided to help implementing Container.Filter for in-memory filters.

Since:
6.6
See Also:
Serialized Form

Field Summary
protected  java.util.Collection<Container.Filter> filters
           
 
Constructor Summary
AbstractJunctionFilter(Container.Filter... filters)
           
 
Method Summary
 boolean appliesToProperty(java.lang.Object propertyId)
          Returns true if a change in the named property may affect the filtering result.
 boolean equals(java.lang.Object obj)
           
 java.util.Collection<Container.Filter> getFilters()
          Returns an unmodifiable collection of the sub-filters of this composite filter.
 int hashCode()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.vaadin.data.Container.Filter
passesFilter
 

Field Detail

filters

protected final java.util.Collection<Container.Filter> filters
Constructor Detail

AbstractJunctionFilter

public AbstractJunctionFilter(Container.Filter... filters)
Method Detail

getFilters

public java.util.Collection<Container.Filter> getFilters()
Returns an unmodifiable collection of the sub-filters of this composite filter.

Returns:

appliesToProperty

public boolean appliesToProperty(java.lang.Object propertyId)
Returns true if a change in the named property may affect the filtering result. If some of the sub-filters are not in-memory filters, true is returned. By default, all sub-filters are iterated to check if any of them applies. If there are no sub-filters, false is returned - override in subclasses to change this behavior.

Specified by:
appliesToProperty in interface Container.Filter
Returns:
true if the filtering result may/does change based on changes to the property identified by propertyId

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object


Copyright © 2000-2014 Vaadin Ltd. All Rights Reserved.