Class 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 
      ConstructorDescription
      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 TypeMethodDescription
      java.lang.reflect.MethodfindMethod​(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.MethodfindMethod​(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

        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

        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