@Test void findIcon() { assertEquals("foo", finder.findIcon(Direct.class)); assertEquals("yes", finder.findIcon(Indirect.class)); assertEquals("default", finder.findIcon(None.class)); }
public String findIcon(final AnnotatedElement type) { return findDirectIcon(type).orElseGet(() -> findIndirectIcon(type).orElse("default")); }
IconFinder { public String findIcon(final AnnotatedElement type) { return findDirectIcon(type).orElseGet(() -> findIndirectIcon(type).orElse("default")); } }
IconFinder { public String findIcon(final AnnotatedElement type) { return findDirectIcon(type).orElseGet(() -> findIndirectIcon(type).orElse("default")); }  }
IconFinder { public String findIcon(final AnnotatedElement type) { return findDirectIcon(type).orElseGet(() -> findIndirectIcon(type).orElse("default")); }  String findIcon(final AnnotatedElement type); Optional<String> findIndirectIcon(final AnnotatedElement type); Optional<String> findDirectIcon(final AnnotatedElement type); boolean isCustom(final Annotation icon); Annotation extractIcon(final AnnotatedElement annotatedElement); }
IconFinder { public String findIcon(final AnnotatedElement type) { return findDirectIcon(type).orElseGet(() -> findIndirectIcon(type).orElse("default")); }  String findIcon(final AnnotatedElement type); Optional<String> findIndirectIcon(final AnnotatedElement type); Optional<String> findDirectIcon(final AnnotatedElement type); boolean isCustom(final Annotation icon); Annotation extractIcon(final AnnotatedElement annotatedElement);  }