Package org.springframework.expression

# Interface MethodResolver

All Known Implementing Classes:
  `DataBindingMethodResolver`, `ReflectiveMethodResolver`

Functional Interface:
  This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface MethodResolver
A method resolver attempts to locate a method and returns a `MethodExecutor` that can be used to invoke that method.

The `MethodExecutor` will be cached, but if it becomes stale the resolvers will be called again.

Since:
  3.0
Author:
  Andy Clement, Sam Brannen
See Also:
  - `MethodExecutor`
  - `ConstructorResolver`

## Method Summary

Modifier and Type
Method
Description
`MethodExecutor`
`resolve(EvaluationContext context, Object targetObject, String name, List<org.springframework.core.convert.TypeDescriptor> argumentTypes)`
Within the supplied context, resolve a suitable method on the supplied object that can handle the specified arguments.

## Method Details

### resolve

@Nullable MethodExecutor resolve(EvaluationContext context, Object targetObject, String name, List<org.springframework.core.convert.TypeDescriptor> argumentTypes) throws AccessException
Within the supplied context, resolve a suitable method on the supplied object that can handle the specified arguments.

Returns a `MethodExecutor` that can be used to invoke that method, or `null` if no method could be found.

Parameters:
  `context` - the current evaluation context
  `targetObject` - the object upon which the method is being called
  `name` - the name of the method
  `argumentTypes` - the types of arguments that the method must be able to handle
Returns:
  a `MethodExecutor` that can invoke the method, or `null` if the method cannot be found
Throws:
  `AccessException`