Remove cast on AbstractFactoryBean

Closes gh-28153
This commit is contained in:
Stephane Nicoll 2022-03-10 11:50:24 +01:00
parent 4184294835
commit a0061b7fb9
3 changed files with 12 additions and 12 deletions

View File

@ -46,7 +46,7 @@ import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import org.springframework.beans.factory.config.ConstructorArgumentValues; import org.springframework.beans.factory.config.ConstructorArgumentValues;
import org.springframework.beans.factory.config.ConstructorArgumentValues.ValueHolder; import org.springframework.beans.factory.config.ConstructorArgumentValues.ValueHolder;
import org.springframework.beans.factory.generator.config.BeanDefinitionRegistrar; import org.springframework.beans.factory.generator.config.BeanDefinitionRegistrar;
import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.core.AttributeAccessor; import org.springframework.core.AttributeAccessor;
import org.springframework.core.ResolvableType; import org.springframework.core.ResolvableType;
import org.springframework.javapoet.CodeBlock; import org.springframework.javapoet.CodeBlock;
@ -72,7 +72,7 @@ public class BeanRegistrationBeanFactoryContribution implements BeanFactoryContr
private final String beanName; private final String beanName;
private final BeanDefinition beanDefinition; private final RootBeanDefinition beanDefinition;
private final BeanInstantiationGenerator beanInstantiationGenerator; private final BeanInstantiationGenerator beanInstantiationGenerator;
@ -81,7 +81,7 @@ public class BeanRegistrationBeanFactoryContribution implements BeanFactoryContr
private int nesting = 0; private int nesting = 0;
BeanRegistrationBeanFactoryContribution(String beanName, BeanDefinition beanDefinition, BeanRegistrationBeanFactoryContribution(String beanName, RootBeanDefinition beanDefinition,
BeanInstantiationGenerator beanInstantiationGenerator, BeanInstantiationGenerator beanInstantiationGenerator,
@Nullable DefaultBeanRegistrationContributionProvider innerBeanRegistrationContributionProvider) { @Nullable DefaultBeanRegistrationContributionProvider innerBeanRegistrationContributionProvider) {
this.beanName = beanName; this.beanName = beanName;
@ -90,7 +90,7 @@ public class BeanRegistrationBeanFactoryContribution implements BeanFactoryContr
this.innerBeanRegistrationContributionProvider = innerBeanRegistrationContributionProvider; this.innerBeanRegistrationContributionProvider = innerBeanRegistrationContributionProvider;
} }
public BeanRegistrationBeanFactoryContribution(String beanName, BeanDefinition beanDefinition, public BeanRegistrationBeanFactoryContribution(String beanName, RootBeanDefinition beanDefinition,
BeanInstantiationGenerator beanInstantiationGenerator) { BeanInstantiationGenerator beanInstantiationGenerator) {
this(beanName, beanDefinition, beanInstantiationGenerator, null); this(beanName, beanDefinition, beanInstantiationGenerator, null);
} }
@ -99,7 +99,7 @@ public class BeanRegistrationBeanFactoryContribution implements BeanFactoryContr
return this.beanName; return this.beanName;
} }
BeanDefinition getBeanDefinition() { RootBeanDefinition getBeanDefinition() {
return this.beanDefinition; return this.beanDefinition;
} }
@ -295,7 +295,7 @@ public class BeanRegistrationBeanFactoryContribution implements BeanFactoryContr
private final BeanParameterGenerator parameterGenerator; private final BeanParameterGenerator parameterGenerator;
private final BeanDefinition beanDefinition; private final RootBeanDefinition beanDefinition;
Generator(BeanParameterGenerator parameterGenerator) { Generator(BeanParameterGenerator parameterGenerator) {
this.parameterGenerator = parameterGenerator; this.parameterGenerator = parameterGenerator;
@ -375,8 +375,7 @@ public class BeanRegistrationBeanFactoryContribution implements BeanFactoryContr
if (!this.beanDefinition.isAutowireCandidate()) { if (!this.beanDefinition.isAutowireCandidate()) {
statements.addStatement("$L.setAutowireCandidate(false)", bdVariable); statements.addStatement("$L.setAutowireCandidate(false)", bdVariable);
} }
if (this.beanDefinition instanceof AbstractBeanDefinition if (this.beanDefinition.isSynthetic()) {
&& ((AbstractBeanDefinition) this.beanDefinition).isSynthetic()) {
statements.addStatement("$L.setSynthetic(true)", bdVariable); statements.addStatement("$L.setSynthetic(true)", bdVariable);
} }
if (this.beanDefinition.getRole() != BeanDefinition.ROLE_APPLICATION) { if (this.beanDefinition.getRole() != BeanDefinition.ROLE_APPLICATION) {

View File

@ -16,8 +16,8 @@
package org.springframework.beans.factory.generator; package org.springframework.beans.factory.generator;
import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.beans.factory.generator.config.BeanDefinitionRegistrar; import org.springframework.beans.factory.generator.config.BeanDefinitionRegistrar;
import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.javapoet.CodeBlock; import org.springframework.javapoet.CodeBlock;
/** /**
@ -28,7 +28,7 @@ import org.springframework.javapoet.CodeBlock;
*/ */
class InnerBeanRegistrationBeanFactoryContribution extends BeanRegistrationBeanFactoryContribution { class InnerBeanRegistrationBeanFactoryContribution extends BeanRegistrationBeanFactoryContribution {
InnerBeanRegistrationBeanFactoryContribution(String beanName, BeanDefinition beanDefinition, InnerBeanRegistrationBeanFactoryContribution(String beanName, RootBeanDefinition beanDefinition,
BeanInstantiationGenerator beanInstantiationGenerator, BeanInstantiationGenerator beanInstantiationGenerator,
DefaultBeanRegistrationContributionProvider innerBeanRegistrationContributionProvider) { DefaultBeanRegistrationContributionProvider innerBeanRegistrationContributionProvider) {
super(beanName, beanDefinition, beanInstantiationGenerator, innerBeanRegistrationContributionProvider); super(beanName, beanDefinition, beanInstantiationGenerator, innerBeanRegistrationContributionProvider);

View File

@ -537,12 +537,13 @@ class BeanRegistrationBeanFactoryContributionTests {
} }
private BeanFactoryContribution getContribution(BeanDefinition beanDefinition, Executable instanceCreator) { private BeanFactoryContribution getContribution(BeanDefinition beanDefinition, Executable instanceCreator) {
return new BeanRegistrationBeanFactoryContribution("test", beanDefinition, return new BeanRegistrationBeanFactoryContribution("test", (RootBeanDefinition) beanDefinition,
new DefaultBeanInstantiationGenerator(instanceCreator, Collections.emptyList())); new DefaultBeanInstantiationGenerator(instanceCreator, Collections.emptyList()));
} }
private CodeSnippet beanRegistration(BeanDefinition beanDefinition, Executable instanceCreator, Consumer<Builder> instanceSupplier) { private CodeSnippet beanRegistration(BeanDefinition beanDefinition, Executable instanceCreator, Consumer<Builder> instanceSupplier) {
BeanRegistrationBeanFactoryContribution generator = new BeanRegistrationBeanFactoryContribution("test", beanDefinition, BeanRegistrationBeanFactoryContribution generator = new BeanRegistrationBeanFactoryContribution(
"test", (RootBeanDefinition) beanDefinition,
new DefaultBeanInstantiationGenerator(instanceCreator, Collections.emptyList())); new DefaultBeanInstantiationGenerator(instanceCreator, Collections.emptyList()));
return CodeSnippet.of(generator.generateBeanRegistration(new RuntimeHints(), return CodeSnippet.of(generator.generateBeanRegistration(new RuntimeHints(),
toMultiStatements(instanceSupplier))); toMultiStatements(instanceSupplier)));