Class FilterImpl

java.lang.Object
org.hibernate.internal.FilterImpl
All Implemented Interfaces:
Serializable, Filter

public class FilterImpl extends Object implements Filter, Serializable
Implementation of FilterImpl. FilterImpl implements the user's view into enabled dynamic filters, allowing them to set filter parameter values.
See Also:
  • Field Details

  • Constructor Details

    • FilterImpl

      public FilterImpl(FilterDefinition configuration)
      Constructs a new FilterImpl.
      Parameters:
      configuration - The filter's global configuration.
  • Method Details

    • getFilterDefinition

      public FilterDefinition getFilterDefinition()
      Description copied from interface: Filter
      Get the associated definition of this named filter.
      Specified by:
      getFilterDefinition in interface Filter
      Returns:
      The filter definition
    • getName

      public String getName()
      Get the name of this filter.
      Specified by:
      getName in interface Filter
      Returns:
      This filter's name.
    • isAutoEnabled

      public boolean isAutoEnabled()
      Get a flag that defines if the filter should be enabled by default.
      Specified by:
      isAutoEnabled in interface Filter
      Returns:
      The flag value.
    • isAppliedToLoadByKey

      public boolean isAppliedToLoadByKey()
      Get a flag that defines if the filter should be applied on direct fetches or not.
      Specified by:
      isAppliedToLoadByKey in interface Filter
      Returns:
      The flag value.
    • getParameters

      public Map<String,?> getParameters()
    • setParameter

      public Filter setParameter(String name, Object value) throws IllegalArgumentException
      Set the named parameter's value for this filter.
      Specified by:
      setParameter in interface Filter
      Parameters:
      name - The parameter's name.
      value - The value to be applied.
      Returns:
      This FilterImpl instance (for method chaining).
      Throws:
      IllegalArgumentException - Indicates that either the parameter was undefined or that the type of the passed value did not match the configured type.
    • setParameterList

      public Filter setParameterList(String name, Collection<?> values) throws HibernateException
      Set the named parameter's value list for this filter. Used in conjunction with IN-style filter criteria.
      Specified by:
      setParameterList in interface Filter
      Parameters:
      name - The parameter's name.
      values - The values to be expanded into an SQL IN list.
      Returns:
      This FilterImpl instance (for method chaining).
      Throws:
      HibernateException
    • setParameterList

      public Filter setParameterList(String name, Object[] values) throws IllegalArgumentException
      Set the named parameter's value list for this filter. Used in conjunction with IN-style filter criteria.
      Specified by:
      setParameterList in interface Filter
      Parameters:
      name - The parameter's name.
      values - The values to be expanded into an SQL IN list.
      Returns:
      This FilterImpl instance (for method chaining).
      Throws:
      IllegalArgumentException
    • getParameter

      public Object getParameter(String name)
      Get the value of the named parameter for the current filter.
      Parameters:
      name - The name of the parameter for which to return the value.
      Returns:
      The value of the named parameter.
    • getParameterResolver

      public Supplier<?> getParameterResolver(String name)
    • validate

      public void validate() throws HibernateException
      Perform validation of the filter state. This is used to verify the state of the filter after its enablement and before its use.
      Specified by:
      validate in interface Filter
      Throws:
      HibernateException - If the state is not currently valid.
    • getParameterValue

      public Object getParameterValue(String paramName)
      Description copied from interface: Filter
      Obtain the argument currently bound to the filter parameter with the given name.
      Specified by:
      getParameterValue in interface Filter
      Parameters:
      paramName - the name of the filter parameter
      Returns:
      the value currently set