private List<StaticInjector<?>> createListOfStaticInjectors(final Class<?> componentImplementation) { List<StaticInjector<?>> injectors = new ArrayList<StaticInjector<?>>(); Class<?> currentClass = componentImplementation; Class<? extends Annotation> injectionAnnotation = AnnotatedMethodInjection.getInjectionAnnotation("javax.inject.Inject"); while(!currentClass.equals(Object.class)) { // //Method first because we're going to reverse the entire collection //after building. // StaticInjector<?> methodInjector = constructStaticMethodInjections(injectionAnnotation, currentClass); if (methodInjector != null) { injectors.add(methodInjector); } StaticInjector<?> fieldInjector = constructStaticFieldInjections(injectionAnnotation, currentClass); if (fieldInjector != null) { injectors.add(fieldInjector); } currentClass = currentClass.getSuperclass(); } Collections.reverse(injectors); return injectors; }
private List<StaticInjector<?>> createListOfStaticInjectors(final Class<?> componentImplementation) { List<StaticInjector<?>> injectors = new ArrayList<StaticInjector<?>>(); Class<?> currentClass = componentImplementation; Class<? extends Annotation> injectionAnnotation = AnnotatedMethodInjection.getInjectionAnnotation("javax.inject.Inject"); while(!currentClass.equals(Object.class)) { // //Method first because we're going to reverse the entire collection //after building. // StaticInjector<?> methodInjector = constructStaticMethodInjections(injectionAnnotation, currentClass); if (methodInjector != null) { injectors.add(methodInjector); } StaticInjector<?> fieldInjector = constructStaticFieldInjections(injectionAnnotation, currentClass); if (fieldInjector != null) { injectors.add(fieldInjector); } currentClass = currentClass.getSuperclass(); } Collections.reverse(injectors); return injectors; }