aoc.setAccessibleObject(f);
final Annotation[] as = f.getAnnotations();
aoc.setAnnotations(as);
boolean missingDependency = false;
for (Annotation a : as) {
Injectable i = ipc.getInjectable(
a.annotationType(), aoc, a, f.getGenericType(),
ComponentScope.UNDEFINED_SINGLETON);
if (i != null) {
missingDependency = false;
setFieldValue(t, f, i.getValue());
break;
} else if (ipc.isAnnotationRegistered(a.annotationType(), f.getGenericType().getClass())) {
missingDependency = true;
}
}
if (missingDependency) {
Errors.missingDependency(f);
}
}
oClass = oClass.getSuperclass();
}
MethodList ml = new MethodList(c.getMethods());
int methodIndex = 0;
for (AnnotatedMethod m : ml.
hasNotMetaAnnotation(HttpMethod.class).
hasNotAnnotation(Path.class).
hasNumParams(1).
hasReturnType(void.class).
nameStartsWith("set")) {
final Annotation[] as = m.getAnnotations();
aoc.setAccessibleObject(m.getMethod());
aoc.setAnnotations(as);
final Type gpt = m.getGenericParameterTypes()[0];
boolean missingDependency = false;
for (Annotation a : as) {
Injectable i = ipc.getInjectable(
a.annotationType(), aoc, a, gpt,
ComponentScope.UNDEFINED_SINGLETON);
if (i != null) {
missingDependency = false;
setMethodValue(t, m, i.getValue());
break;
} else if (ipc.isAnnotationRegistered(a.annotationType(), gpt.getClass())) {
missingDependency = true;
}
}