Merge branch '5.1.x'
This commit is contained in:
@@ -208,7 +208,7 @@ public interface BeanFactory {
|
|||||||
<T> T getBean(Class<T> requiredType, Object... args) throws BeansException;
|
<T> T getBean(Class<T> requiredType, Object... args) throws BeansException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return an provider for the specified bean, allowing for lazy on-demand retrieval
|
* Return a provider for the specified bean, allowing for lazy on-demand retrieval
|
||||||
* of instances, including availability and uniqueness options.
|
* of instances, including availability and uniqueness options.
|
||||||
* @param requiredType type the bean must match; can be an interface or superclass
|
* @param requiredType type the bean must match; can be an interface or superclass
|
||||||
* @return a corresponding provider handle
|
* @return a corresponding provider handle
|
||||||
@@ -218,7 +218,7 @@ public interface BeanFactory {
|
|||||||
<T> ObjectProvider<T> getBeanProvider(Class<T> requiredType);
|
<T> ObjectProvider<T> getBeanProvider(Class<T> requiredType);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return an provider for the specified bean, allowing for lazy on-demand retrieval
|
* Return a provider for the specified bean, allowing for lazy on-demand retrieval
|
||||||
* of instances, including availability and uniqueness options.
|
* of instances, including availability and uniqueness options.
|
||||||
* @param requiredType type the bean must match; can be a generic type declaration.
|
* @param requiredType type the bean must match; can be a generic type declaration.
|
||||||
* Note that collection types are not supported here, in contrast to reflective
|
* Note that collection types are not supported here, in contrast to reflective
|
||||||
|
|||||||
@@ -342,6 +342,7 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
|
|||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public <T> T getBean(Class<T> requiredType, @Nullable Object... args) throws BeansException {
|
public <T> T getBean(Class<T> requiredType, @Nullable Object... args) throws BeansException {
|
||||||
|
Assert.notNull(requiredType, "Required type must not be null");
|
||||||
Object resolved = resolveBean(ResolvableType.forRawClass(requiredType), args, false);
|
Object resolved = resolveBean(ResolvableType.forRawClass(requiredType), args, false);
|
||||||
if (resolved == null) {
|
if (resolved == null) {
|
||||||
throw new NoSuchBeanDefinitionException(requiredType);
|
throw new NoSuchBeanDefinitionException(requiredType);
|
||||||
@@ -351,6 +352,7 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <T> ObjectProvider<T> getBeanProvider(Class<T> requiredType) throws BeansException {
|
public <T> ObjectProvider<T> getBeanProvider(Class<T> requiredType) throws BeansException {
|
||||||
|
Assert.notNull(requiredType, "Required type must not be null");
|
||||||
return getBeanProvider(ResolvableType.forRawClass(requiredType));
|
return getBeanProvider(ResolvableType.forRawClass(requiredType));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1105,6 +1107,7 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <T> NamedBeanHolder<T> resolveNamedBean(Class<T> requiredType) throws BeansException {
|
public <T> NamedBeanHolder<T> resolveNamedBean(Class<T> requiredType) throws BeansException {
|
||||||
|
Assert.notNull(requiredType, "Required type must not be null");
|
||||||
NamedBeanHolder<T> namedBean = resolveNamedBean(ResolvableType.forRawClass(requiredType), null, false);
|
NamedBeanHolder<T> namedBean = resolveNamedBean(ResolvableType.forRawClass(requiredType), null, false);
|
||||||
if (namedBean != null) {
|
if (namedBean != null) {
|
||||||
return namedBean;
|
return namedBean;
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user