private static List<String> enumerateCustomDeepLinks(Element element, Map<Element, String[]> prefixesMap) { Set<? extends AnnotationMirror> annotationMirrors = AnnotationMirrors.getAnnotatedAnnotations(element, DEEP_LINK_SPEC_CLASS); final List<String> deepLinks = new ArrayList<>(); for (AnnotationMirror customAnnotation : annotationMirrors) { List<? extends AnnotationValue> suffixes = asAnnotationValues(AnnotationMirrors.getAnnotationValue(customAnnotation, "value")); String[] prefixes = prefixesMap.get(customAnnotation.getAnnotationType().asElement()); for (String prefix : prefixes) { for (AnnotationValue suffix : suffixes) { deepLinks.add(prefix + suffix.getValue()); } } } return deepLinks; }
private void validateMethod(Class<? extends Annotation> annotation, ExecutableElement method) { if (!getAnnotatedAnnotations(method, Qualifier.class).isEmpty()) { return; if (!getAnnotatedAnnotations(method, Scope.class).isEmpty()) { SuppressWarnings suppressedWarnings = method.getAnnotation(SuppressWarnings.class); if (suppressedWarnings == null
for (AnnotationMirror scope : getAnnotatedAnnotations(method, Scope.class)) { builder.scopesBuilder().add(AnnotationSpec.get(scope)); for (AnnotationMirror qualifier : getAnnotatedAnnotations(method, Qualifier.class)) { reporter.reportError( "@ContributesAndroidInjector methods cannot have qualifiers", qualifier);