/** * A helper for {@link ResolvedJavaMethod#getParameterAnnotation(Class, int)} that handles the * absence of parameter annotations on bridge methods where the bridged method has parameter * annotations. */ public static <T extends Annotation> T getParameterAnnotation( Class<T> annotationClass, int parameterIndex, ResolvedJavaMethod method) { T a = method.getParameterAnnotation(annotationClass, parameterIndex); if (a == null && method.isBridge()) { a = getBridgedMethod(method).getParameterAnnotation(annotationClass, parameterIndex); } return a; }