org.hibernate.Filter.java Source code

Java tutorial

Introduction

Here is the source code for org.hibernate.Filter.java

Source

/*
 * 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
 */
public interface Filter {

    /**
     * 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).
     *
     * @return The filter definition
     */
    public FilterDefinition getFilterDefinition();

    /**
     * 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.
     *
     * @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.
     *
     * @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.
     */
    public void validate() throws HibernateException;
}