|
|
|
@ -582,11 +582,10 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac |
|
|
|
|
for (BeanPostProcessor bp : getBeanPostProcessors()) { |
|
|
|
|
if (bp instanceof SmartInstantiationAwareBeanPostProcessor) { |
|
|
|
|
SmartInstantiationAwareBeanPostProcessor ibp = (SmartInstantiationAwareBeanPostProcessor) bp; |
|
|
|
|
Class predictedType = ibp.predictBeanType(beanClass, beanName); |
|
|
|
|
if (predictedType != null && (typesToMatch.length > 1 || |
|
|
|
|
(typesToMatch.length > 0 && !FactoryBean.class.equals(typesToMatch[0])) || |
|
|
|
|
FactoryBean.class.isAssignableFrom(predictedType))) { |
|
|
|
|
return predictedType; |
|
|
|
|
Class predicted = ibp.predictBeanType(beanClass, beanName); |
|
|
|
|
if (predicted != null && (typesToMatch.length != 1 || !FactoryBean.class.equals(typesToMatch[0]) || |
|
|
|
|
FactoryBean.class.isAssignableFrom(predicted))) { |
|
|
|
|
return predicted; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|