/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later.
 * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
 */
package org.hibernate;
import java.util.Collection;

import org.hibernate.engine.spi.FilterDefinition;

Type definition of Filter. Filter defines the user's view into enabled dynamic filters, allowing them to set filter parameter values.
Author:Steve Ebersole
/** * Type definition of Filter. Filter defines the user's view into enabled dynamic filters, * allowing them to set filter parameter values. * * @author Steve Ebersole */
public interface Filter {
Get the name of this filter.
Returns:This filter's name.
/** * Get the name of this filter. * * @return This filter's name. */
public String getName();
Get the filter definition containing additional information about the filter (such as default-condition and expected parameter names/types).
Returns:The filter definition
/** * Get the filter definition containing additional information about the * filter (such as default-condition and expected parameter names/types). * * @return The filter definition */
public FilterDefinition getFilterDefinition();
Set the named parameter's value for this filter.
Params:
  • name – The parameter's name.
  • value – The value to be applied.
Returns:This FilterImpl instance (for method chaining).
/** * Set the named parameter's value for this filter. * * @param name The parameter's name. * @param value The value to be applied. * @return This FilterImpl instance (for method chaining). */
public Filter setParameter(String name, Object value);
Set the named parameter's value list for this filter. Used in conjunction with IN-style filter criteria.
Params:
  • name – The parameter's name.
  • values – The values to be expanded into an SQL IN list.
Returns:This FilterImpl instance (for method chaining).
/** * Set the named parameter's value list for this filter. Used * in conjunction with IN-style filter criteria. * * @param name The parameter's name. * @param values The values to be expanded into an SQL IN list. * @return This FilterImpl instance (for method chaining). */
public Filter setParameterList(String name, Collection values);
Set the named parameter's value list for this filter. Used in conjunction with IN-style filter criteria.
Params:
  • name – The parameter's name.
  • values – The values to be expanded into an SQL IN list.
Returns:This FilterImpl instance (for method chaining).
/** * Set the named parameter's value list for this filter. Used * in conjunction with IN-style filter criteria. * * @param name The parameter's name. * @param values The values to be expanded into an SQL IN list. * @return This FilterImpl instance (for method chaining). */
public Filter setParameterList(String name, Object[] values);
Perform validation of the filter state. This is used to verify the state of the filter after its enablement and before its use.
Throws:
  • HibernateException – If the state is not currently valid.
/** * Perform validation of the filter state. This is used to verify the * state of the filter after its enablement and before its use. * * @throws HibernateException If the state is not currently valid. */
public void validate() throws HibernateException; }