Package org.springframework.batch.support

# Class AnnotationMethodResolver

java.lang.Object
org.springframework.batch.support.AnnotationMethodResolver

All Implemented Interfaces:
  `MethodResolver`

public class AnnotationMethodResolver extends Object implements MethodResolver
`MethodResolver` implementation that finds a single Method on the given Class that contains the specified annotation type.

Author:
  Mark Fisher

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AnnotationMethodResolver(Class<? extends Annotation> annotationType)`
  Create a `MethodResolver` for the specified Method-level annotation type.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Method`
  `findMethod(Class<?> clazz)`
  Find a single Method on the given Class that contains the annotation type for which this resolver is searching.
  `Method`
  `findMethod(Object candidate)`
  Find a single Method on the Class of the given candidate object that contains the annotation type for which this resolver is searching.

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

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

- ## Constructor Details

  - ### AnnotationMethodResolver

    public AnnotationMethodResolver(Class<? extends Annotation> annotationType)
    Create a `MethodResolver` for the specified Method-level annotation type.
    Parameters:
      `annotationType` - establish the annotation to be used.

- ## Method Details

  - ### findMethod

    @Nullable public Method findMethod(Object candidate)
    Find a single Method on the Class of the given candidate object that contains the annotation type for which this resolver is searching.
    Specified by:
      `findMethod` in interface `MethodResolver`
    Parameters:
      `candidate` - the instance whose Class will be checked for the annotation
    Returns:
      a single matching Method instance or `null` if the candidate's Class contains no Methods with the specified annotation
    Throws:
      `IllegalArgumentException` - if more than one Method has the specified annotation

  - ### findMethod

    @Nullable public Method findMethod(Class<?> clazz)
    Find a single Method on the given Class that contains the annotation type for which this resolver is searching.
    Specified by:
      `findMethod` in interface `MethodResolver`
    Parameters:
      `clazz` - the Class instance to check for the annotation
    Returns:
      a single matching Method instance or `null` if the Class contains no Methods with the specified annotation
    Throws:
      `IllegalArgumentException` - if more than one Method has the specified annotation