for (String name : fields.keySet()) {
for (ClassField field : fields.get(name)) {
if (!IManaged.class.isAssignableFrom( field.getBaseType() )) continue;
for (Annotation annotation : field.getAnnotations()) {
Dependency dependency = annotation.annotationType().getAnnotation(Dependency.class);
if (dependency != null) {
field.ensureAccessibility();
manager.relate(managed, (M) field.getValue(managed), dependency.strategy());
}
}
}
}