com.softicar.platform.common.container.data.table.IDataTableFilterList Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of platform-common Show documentation
Show all versions of platform-common Show documentation
The SoftiCAR Platform is a lightweight, Java-based library to create interactive business web applications.
package com.softicar.platform.common.container.data.table;
import java.util.Collection;
/**
* A list of filters for {@link IDataTable}.
*
* @author Alexander Schmidt
* @author Oliver Richers
*/
public interface IDataTableFilterList extends IDataTableFilter {
/**
* Returns a collection of all sub-filters in this filter list.
*
* @return unmodifiable collection of sub-filters (never null)
*/
Collection getFilters();
/**
* Returns the boolean filter list operator.
*
* @return the filter list operator (never null)
*/
DataTableFilterListOperator getFilterOperator();
/**
* Removes all sub-filters from this filter list.
*/
void clear();
/**
* Returns whether this filter list is empty or not.
*
* @return true if no sub-filters exist
*/
boolean isEmpty();
/**
* Adds a new filter sub-list to this filter list.
*
* @param operator
* the filter list operator
*/
IDataTableFilterList addFilterList(DataTableFilterListOperator operator);
/**
* Adds a new value filter to this filter list.
*
* @param column
* the filter column
* @param operator
* the filter operator
* @param value
* the filter value (never null)
*/
void addValueFilter(IDataTableColumn column, DataTableValueFilterOperator operator, V value);
/**
* Adds a new collection filter to this filter list.
*
* @param column
* the filter column
* @param operator
* the filter operator
* @param values
* the filter value collection (never null)
*/
void addCollectionFilter(IDataTableColumn column, DataTableCollectionFilterOperator operator, Collection values);
/**
* Adds a new string filter to this filter list.
*
* @param column
* the filter column
* @param operator
* the filter operator
* @param value
* the filter string (never null)
*/
void addStringFilter(IDataTableColumn column, DataTableStringFilterOperator operator, String value);
}