if (p.getAnnotation() == null) continue;
if (s == ComponentScope.PerRequest) {
// Find a per request injectable with Parameter
Injectable i = ipc.getInjectable(
p.getAnnotation().annotationType(),
aoc,
p.getAnnotation(),
p,
ComponentScope.PerRequest);
if (i != null) {
configureField(af.getField());
perRequest.put(af.getField(), i);
} else {
i = ipc.getInjectable(
p.getAnnotation().annotationType(),
aoc,
p.getAnnotation(),
p.getParameterType(),
ComponentScope.PERREQUEST_UNDEFINED
);
if (i != null) {
configureField(af.getField());
perRequest.put(af.getField(), i);
} else {
i = ipc.getInjectable(
p.getAnnotation().annotationType(),
aoc,
p.getAnnotation(),
p.getParameterType(),
ComponentScope.Singleton
);
if (i != null) {
configureField(af.getField());
singletons.put(af.getField(), i);
}
}
}
} else {
Injectable i = ipc.getInjectable(
p.getAnnotation().annotationType(),
aoc,
p.getAnnotation(),
p.getParameterType(),
ComponentScope.UNDEFINED_SINGLETON