use of org.glassfish.jersey.internal.inject.ForeignDescriptorImpl in project jersey by jersey.
the class InjectionResolverWrapper method resolve.
@Override
public Object resolve(Injectee injectee, ServiceHandle root) {
InjecteeImpl injecteeWrapper = new InjecteeImpl();
injecteeWrapper.setRequiredType(injectee.getRequiredType());
injecteeWrapper.setParent(injectee.getParent());
injecteeWrapper.setRequiredQualifiers(injectee.getRequiredQualifiers());
injecteeWrapper.setOptional(injectee.isOptional());
injecteeWrapper.setPosition(injectee.getPosition());
injecteeWrapper.setFactory(ReflectionHelper.isSubClassOf(injectee.getRequiredType(), Factory.class));
injecteeWrapper.setInjecteeDescriptor(new ForeignDescriptorImpl(injectee.getInjecteeDescriptor()));
Object instance = jerseyResolver.resolve(injecteeWrapper);
if (injecteeWrapper.isFactory()) {
return asFactory(instance);
} else {
return instance;
}
}
Aggregations