org.springframework.batch.support

## Class AnnotationMethodResolver

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

- All Implemented Interfaces:
    MethodResolver

      public class AnnotationMethodResolver
      extends java.lang.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 and Description
    `AnnotationMethodResolver(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)` Create a `MethodResolver` for the specified Method-level annotation type.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.reflect.Method` | `findMethod(java.lang.Class<?> clazz)` Find a single Method on the given Class that contains the annotation type for which this resolver is searching.
    `java.lang.reflect.Method` | `findMethod(java.lang.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 Detail

    - #### AnnotationMethodResolver

          public AnnotationMethodResolver(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)

      Create a `MethodResolver` for the specified Method-level annotation type.
      Parameters:
        `annotationType` - establish the annotation to be used.

  - ### Method Detail

    - #### findMethod

          @Nullable
          public java.lang.reflect.Method findMethod(java.lang.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:
        `java.lang.IllegalArgumentException` - if more than one Method has the specified annotation

    - #### findMethod

          @Nullable
          public java.lang.reflect.Method findMethod(java.lang.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:
        `java.lang.IllegalArgumentException` - if more than one Method has the specified annotation