if (valueSource == null) {
// the ResourceInjectionConfiguration is created by LazyResourceInjection
if (targetDescription != null) {
OptionalLookupInjectionSource optionalInjection = new OptionalLookupInjectionSource(localContextName);
final ResourceInjectionConfiguration injectionConfiguration = new ResourceInjectionConfiguration(targetDescription, optionalInjection, true);
classDescription.addResourceInjection(injectionConfiguration);
}
} else {
// our injection comes from the local lookup, no matter what.
final InjectionSource injectionSource = new LookupInjectionSource(localContextName);
final ResourceInjectionConfiguration injectionConfiguration = targetDescription != null ?
new ResourceInjectionConfiguration(targetDescription, injectionSource) : null;
// TODO: class hierarchies? shared bindings?
if (createBindingFinal) {
final BindingConfiguration bindingConfiguration = new BindingConfiguration(localContextName, valueSource);
classDescription.getBindingConfigurations().add(bindingConfiguration);