injector = createInjector(siteName, supplier, (WebContextInjectionSite) site); } else if (site instanceof FieldInjectionSite) { injector = reflectionFactory.createInjector(((FieldInjectionSite) site).getField(), supplier); } else if (site instanceof MethodInjectionSite) { injector = reflectionFactory.createInjector(((MethodInjectionSite) site).getMethod(), supplier);
private void handleReference(Reference<?> reference, InjectionSite site, Class<?> implClass, Map<AccessibleObject, Supplier<Object>> injectors) { if (reference.getBindings().isEmpty()) { return; } Class<?> interfaze = reference.getServiceContract().getInterfaceClass(); Binding binding = reference.getBindings().get(0); AccessibleObject accessibleObject; if (site instanceof FieldInjectionSite) { accessibleObject = ((FieldInjectionSite) site).getField(); } else if (site instanceof MethodInjectionSite) { accessibleObject = ((MethodInjectionSite) site).getMethod(); } else { // ignore return; } // create supplier to resolve the proxy injectors.put(accessibleObject, () -> serviceResolver.resolve(interfaze, binding, implClass)); } }
private void handleReference(Reference<?> reference, InjectionSite site, Class<?> implClass, Map<AccessibleObject, Supplier<Object>> injectors) { if (reference.getBindings().isEmpty()) { return; } Class<?> interfaze = reference.getServiceContract().getInterfaceClass(); Binding binding = reference.getBindings().get(0); AccessibleObject accessibleObject; if (site instanceof FieldInjectionSite) { accessibleObject = ((FieldInjectionSite) site).getField(); } else if (site instanceof MethodInjectionSite) { accessibleObject = ((MethodInjectionSite) site).getMethod(); } else { // ignore return; } // create supplier to resolve the proxy injectors.put(accessibleObject, () -> serviceResolver.resolve(interfaze, binding, implClass)); } }
if (site instanceof FieldInjectionSite) { FieldInjectionSite fieldSite = (FieldInjectionSite) site; Field field = fieldSite.getField(); processBindingAnnotations(field, reference, implClass, context); } else if (site instanceof MethodInjectionSite) {