@Test public void testFindAllOn() { List<MetaMarkerAnnotation> metaMarkerAnnotation = MetaAnnotation.of(MetaMarkerAnnotation.class) .findAllOn(annotatedAnnotation).collect(Collectors.toList()); assertThat(metaMarkerAnnotation, hasSize(1)); assertThat(metaMarkerAnnotation.get(0).value(), is("foo")); }
public Stream<META> findAllOn(Annotation annotation) { return Arrays.stream(annotation.annotationType().getAnnotationsByType(metaAnnotationClass)); }
MetaAnnotation { public Stream<META> findAllOn(Annotation annotation) { return Arrays.stream(annotation.annotationType().getAnnotationsByType(metaAnnotationClass)); } }
MetaAnnotation { public Stream<META> findAllOn(Annotation annotation) { return Arrays.stream(annotation.annotationType().getAnnotationsByType(metaAnnotationClass)); } private  MetaAnnotation(Class<META> metaAnnotationClass); }
MetaAnnotation { public Stream<META> findAllOn(Annotation annotation) { return Arrays.stream(annotation.annotationType().getAnnotationsByType(metaAnnotationClass)); } private  MetaAnnotation(Class<META> metaAnnotationClass); static MetaAnnotation<META> of(Class<META> metaAnnotationClass); boolean isRepeatable(); boolean isPresentOnAnyAnnotationOn(AnnotatedElement annotatedElement); boolean isPresentOn(@CheckForNull Annotation annotation); Optional<META> findOn(Annotation annotation); Stream<META> findAllOn(Annotation annotation); Stream<Annotation> findAnnotatedAnnotationsOn(AnnotatedElement annotatedElement); BinaryOperator<A> onlyOneOn(AnnotatedElement annotatedElement); Supplier<? extends IllegalArgumentException> missingAnnotation(Annotation annotation,
            AnnotatedElement annotatedElement,
            String checkerMethod); }
MetaAnnotation { public Stream<META> findAllOn(Annotation annotation) { return Arrays.stream(annotation.annotationType().getAnnotationsByType(metaAnnotationClass)); } private  MetaAnnotation(Class<META> metaAnnotationClass); static MetaAnnotation<META> of(Class<META> metaAnnotationClass); boolean isRepeatable(); boolean isPresentOnAnyAnnotationOn(AnnotatedElement annotatedElement); boolean isPresentOn(@CheckForNull Annotation annotation); Optional<META> findOn(Annotation annotation); Stream<META> findAllOn(Annotation annotation); Stream<Annotation> findAnnotatedAnnotationsOn(AnnotatedElement annotatedElement); BinaryOperator<A> onlyOneOn(AnnotatedElement annotatedElement); Supplier<? extends IllegalArgumentException> missingAnnotation(Annotation annotation,
            AnnotatedElement annotatedElement,
            String checkerMethod);  }