Skip to content

Commit ed98393

Browse files
committed
SmartObjectFactory renamed to ObjectProvider (extends ObjectFactory)
Issue: SPR-13943 Issue: SPR-13956
1 parent 1899fb3 commit ed98393

File tree

3 files changed

+14
-14
lines changed

3 files changed

+14
-14
lines changed

spring-beans/src/main/java/org/springframework/beans/factory/SmartObjectFactory.java renamed to spring-beans/src/main/java/org/springframework/beans/factory/ObjectProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
* @author Juergen Hoeller
2626
* @since 4.3
2727
*/
28-
public interface SmartObjectFactory<T> extends ObjectFactory<T> {
28+
public interface ObjectProvider<T> extends ObjectFactory<T> {
2929

3030
/**
3131
* Return an instance (possibly shared or independent) of the object

spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@
5757
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
5858
import org.springframework.beans.factory.NoUniqueBeanDefinitionException;
5959
import org.springframework.beans.factory.ObjectFactory;
60+
import org.springframework.beans.factory.ObjectProvider;
6061
import org.springframework.beans.factory.SmartFactoryBean;
6162
import org.springframework.beans.factory.SmartInitializingSingleton;
62-
import org.springframework.beans.factory.SmartObjectFactory;
6363
import org.springframework.beans.factory.config.BeanDefinition;
6464
import org.springframework.beans.factory.config.BeanDefinitionHolder;
6565
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
@@ -1005,11 +1005,11 @@ public Object resolveDependency(DependencyDescriptor descriptor, String beanName
10051005
return new OptionalDependencyFactory().createOptionalDependency(descriptor, beanName);
10061006
}
10071007
else if (ObjectFactory.class == descriptor.getDependencyType() ||
1008-
SmartObjectFactory.class == descriptor.getDependencyType()) {
1009-
return new DependencyObjectFactory(descriptor, beanName);
1008+
ObjectProvider.class == descriptor.getDependencyType()) {
1009+
return new DependencyObjectProvider(descriptor, beanName);
10101010
}
10111011
else if (javaxInjectProviderClass == descriptor.getDependencyType()) {
1012-
return new DependencyProviderFactory().createDependencyProvider(descriptor, beanName);
1012+
return new Jsr330ProviderFactory().createDependencyProvider(descriptor, beanName);
10131013
}
10141014
else {
10151015
Object result = getAutowireCandidateResolver().getLazyResolutionProxyIfNecessary(descriptor, beanName);
@@ -1481,17 +1481,17 @@ public Object resolveCandidate(String beanName, BeanFactory beanFactory) {
14811481

14821482

14831483
/**
1484-
* Serializable ObjectFactory for lazy resolution of a dependency.
1484+
* Serializable ObjectFactory/ObjectProvider for lazy resolution of a dependency.
14851485
*/
1486-
private class DependencyObjectFactory implements SmartObjectFactory<Object>, Serializable {
1486+
private class DependencyObjectProvider implements ObjectProvider<Object>, Serializable {
14871487

14881488
private final DependencyDescriptor descriptor;
14891489

14901490
private final boolean optional;
14911491

14921492
private final String beanName;
14931493

1494-
public DependencyObjectFactory(DependencyDescriptor descriptor, String beanName) {
1494+
public DependencyObjectProvider(DependencyDescriptor descriptor, String beanName) {
14951495
this.descriptor = new DependencyDescriptor(descriptor);
14961496
this.descriptor.increaseNestingLevel();
14971497
this.optional = this.descriptor.getDependencyType().equals(javaUtilOptionalClass);
@@ -1565,9 +1565,9 @@ public Object resolveNotUnique(Class<?> type, Map<String, Object> matchingBeans)
15651565
/**
15661566
* Serializable ObjectFactory for lazy resolution of a dependency.
15671567
*/
1568-
private class DependencyProvider extends DependencyObjectFactory implements Provider<Object> {
1568+
private class Jsr330DependencyProvider extends DependencyObjectProvider implements Provider<Object> {
15691569

1570-
public DependencyProvider(DependencyDescriptor descriptor, String beanName) {
1570+
public Jsr330DependencyProvider(DependencyDescriptor descriptor, String beanName) {
15711571
super(descriptor, beanName);
15721572
}
15731573

@@ -1581,10 +1581,10 @@ public Object get() throws BeansException {
15811581
/**
15821582
* Separate inner class for avoiding a hard dependency on the {@code javax.inject} API.
15831583
*/
1584-
private class DependencyProviderFactory {
1584+
private class Jsr330ProviderFactory {
15851585

15861586
public Object createDependencyProvider(DependencyDescriptor descriptor, String beanName) {
1587-
return new DependencyProvider(descriptor, beanName);
1587+
return new Jsr330DependencyProvider(descriptor, beanName);
15881588
}
15891589
}
15901590

spring-beans/src/test/java/org/springframework/beans/factory/annotation/AutowiredAnnotationBeanPostProcessorTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
4646
import org.springframework.beans.factory.NoUniqueBeanDefinitionException;
4747
import org.springframework.beans.factory.ObjectFactory;
48-
import org.springframework.beans.factory.SmartObjectFactory;
48+
import org.springframework.beans.factory.ObjectProvider;
4949
import org.springframework.beans.factory.UnsatisfiedDependencyException;
5050
import org.springframework.beans.factory.config.BeanDefinition;
5151
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
@@ -2570,7 +2570,7 @@ public TestBean getTestBean() {
25702570
public static class SmartObjectFactoryInjectionBean {
25712571

25722572
@Autowired
2573-
private SmartObjectFactory<TestBean> testBeanFactory;
2573+
private ObjectProvider<TestBean> testBeanFactory;
25742574

25752575
public TestBean getTestBean() {
25762576
return this.testBeanFactory.getObject();

0 commit comments

Comments
 (0)