org.springframework.data.repository.query

## Class ExtensionAwareQueryMethodEvaluationContextProvider

- java.lang.Object
- - org.springframework.data.repository.query.ExtensionAwareQueryMethodEvaluationContextProvider

All Implemented Interfaces:
  QueryMethodEvaluationContextProvider

    public class ExtensionAwareQueryMethodEvaluationContextProvider
    extends Object
    implements QueryMethodEvaluationContextProvider

An `QueryMethodEvaluationContextProvider` that assembles an `EvaluationContext` from a list of `EvaluationContextExtension` instances.

Since:
  1.9
Author:
  Thomas Darimont, Oliver Gierke, Christoph Strobl, Jens Schauder

### Field Summary

### Fields inherited from interface org.springframework.data.repository.query.QueryMethodEvaluationContextProvider

`DEFAULT`

### Constructor Summary

Constructors
Constructor and Description
`ExtensionAwareQueryMethodEvaluationContextProvider(List<? extends EvaluationContextExtension> extensions)` Creates a new `ExtensionAwareQueryMethodEvaluationContextProvider` using the given `EvaluationContextExtension`s.
`ExtensionAwareQueryMethodEvaluationContextProvider(ListableBeanFactory beanFactory)` Creates a new `ExtensionAwareQueryMethodEvaluationContextProvider`.

### Method Summary

All Methods Instance Methods Concrete Methods
`<T extends Parameters<?,?>> EvaluationContext` `getEvaluationContext(T parameters, Object[] parameterValues)` Returns an `EvaluationContext` built using the given `Parameters` and parameter values.
`<T extends Parameters<?,?>> EvaluationContext` `getEvaluationContext(T parameters, Object[] parameterValues, ExpressionDependencies dependencies)` Returns an `EvaluationContext` built using the given `Parameters` and parameter values.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ExtensionAwareQueryMethodEvaluationContextProvider

    public ExtensionAwareQueryMethodEvaluationContextProvider(ListableBeanFactory beanFactory)

Creates a new `ExtensionAwareQueryMethodEvaluationContextProvider`.

Parameters:
  `beanFactory` - the `ListableBeanFactory` to lookup the `EvaluationContextExtension`s from, must not be null.

#### ExtensionAwareQueryMethodEvaluationContextProvider

    public ExtensionAwareQueryMethodEvaluationContextProvider(List<? extends EvaluationContextExtension> extensions)

Creates a new `ExtensionAwareQueryMethodEvaluationContextProvider` using the given `EvaluationContextExtension`s.

Parameters:
  `extensions` - must not be null.

### Method Detail

#### getEvaluationContext

    public <T extends Parameters<?,?>> EvaluationContext getEvaluationContext(T parameters,
                                                                              Object[] parameterValues)

Description copied from interface: `QueryMethodEvaluationContextProvider`
Returns an `EvaluationContext` built using the given `Parameters` and parameter values.

Specified by:
  `getEvaluationContext` in interface `QueryMethodEvaluationContextProvider`
Parameters:
  `parameters` - the `Parameters` instance obtained from the query method the context is built for.
  `parameterValues` - the values for the parameters.
Returns:

#### getEvaluationContext

    public <T extends Parameters<?,?>> EvaluationContext getEvaluationContext(T parameters,
                                                                              Object[] parameterValues,
                                                                              ExpressionDependencies dependencies)

Description copied from interface: `QueryMethodEvaluationContextProvider`
Returns an `EvaluationContext` built using the given `Parameters` and parameter values.

Specified by:
  `getEvaluationContext` in interface `QueryMethodEvaluationContextProvider`
Parameters:
  `parameters` - the `Parameters` instance obtained from the query method the context is built for.
  `parameterValues` - the values for the parameters.
Returns: