All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.softicar.platform.common.container.data.table.IDataTableFilterList Maven / Gradle / Ivy

Go to download

The SoftiCAR Platform is a lightweight, Java-based library to create interactive business web applications.

There is a newer version: 50.0.0
Show newest version
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);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy