4646import org .springframework .util .function .SingletonSupplier ;
4747
4848/**
49- * Internal {@link BeanRegistrationCodeFragments} implementation used by
50- * default.
49+ * Internal {@link BeanRegistrationCodeFragments} implementation used by default.
5150 *
5251 * @author Phillip Webb
5352 * @author Stephane Nicoll
@@ -81,7 +80,8 @@ public ClassName getTarget(RegisteredBean registeredBean) {
8180 if (hasInstanceSupplier ()) {
8281 String resourceDescription = registeredBean .getMergedBeanDefinition ().getResourceDescription ();
8382 throw new IllegalStateException ("Error processing bean with name '" + registeredBean .getBeanName () + "'" +
84- (resourceDescription != null ? " defined in " + resourceDescription : "" ) + ": instance supplier is not supported" );
83+ (resourceDescription != null ? " defined in " + resourceDescription : "" ) +
84+ ": instance supplier is not supported" );
8585 }
8686 Class <?> target = extractDeclaringClass (registeredBean , this .instantiationDescriptor .get ());
8787 while (target .getName ().startsWith ("java." ) && registeredBean .isInnerBean ()) {
@@ -94,9 +94,8 @@ public ClassName getTarget(RegisteredBean registeredBean) {
9494
9595 private Class <?> extractDeclaringClass (RegisteredBean registeredBean , InstantiationDescriptor instantiationDescriptor ) {
9696 Class <?> declaringClass = ClassUtils .getUserClass (instantiationDescriptor .targetClass ());
97- if (instantiationDescriptor .executable () instanceof Constructor <?>
98- && AccessControl .forMember (instantiationDescriptor .executable ()).isPublic ()
99- && FactoryBean .class .isAssignableFrom (declaringClass )) {
97+ if (instantiationDescriptor .executable () instanceof Constructor <?> ctor &&
98+ AccessControl .forMember (ctor ).isPublic () && FactoryBean .class .isAssignableFrom (declaringClass )) {
10099 return extractTargetClassFromFactoryBean (declaringClass , registeredBean .getBeanType ());
101100 }
102101 return declaringClass ;
@@ -127,17 +126,15 @@ public CodeBlock generateNewBeanDefinitionCode(GenerationContext generationConte
127126 ResolvableType beanType , BeanRegistrationCode beanRegistrationCode ) {
128127
129128 CodeBlock .Builder code = CodeBlock .builder ();
130- RootBeanDefinition mergedBeanDefinition = this .registeredBean .getMergedBeanDefinition ();
131- Class <?> beanClass = (mergedBeanDefinition .hasBeanClass ()
132- ? ClassUtils .getUserClass (mergedBeanDefinition .getBeanClass ()) : null );
129+ RootBeanDefinition mbd = this .registeredBean .getMergedBeanDefinition ();
130+ Class <?> beanClass = (mbd .hasBeanClass () ? ClassUtils .getUserClass (mbd .getBeanClass ()) : null );
133131 CodeBlock beanClassCode = generateBeanClassCode (
134132 beanRegistrationCode .getClassName ().packageName (),
135133 (beanClass != null ? beanClass : beanType .toClass ()));
136134 code .addStatement ("$T $L = new $T($L)" , RootBeanDefinition .class ,
137135 BEAN_DEFINITION_VARIABLE , RootBeanDefinition .class , beanClassCode );
138136 if (targetTypeNecessary (beanType , beanClass )) {
139- code .addStatement ("$L.setTargetType($L)" , BEAN_DEFINITION_VARIABLE ,
140- generateBeanTypeCode (beanType ));
137+ code .addStatement ("$L.setTargetType($L)" , BEAN_DEFINITION_VARIABLE , generateBeanTypeCode (beanType ));
141138 }
142139 return code .build ();
143140 }
@@ -162,30 +159,27 @@ private boolean targetTypeNecessary(ResolvableType beanType, @Nullable Class<?>
162159 if (beanType .hasGenerics ()) {
163160 return true ;
164161 }
165- if (beanClass != null
166- && this .registeredBean .getMergedBeanDefinition ().getFactoryMethodName () != null ) {
162+ if (beanClass != null && this .registeredBean .getMergedBeanDefinition ().getFactoryMethodName () != null ) {
167163 return true ;
168164 }
169165 return (beanClass != null && !beanType .toClass ().equals (beanClass ));
170166 }
171167
172168 @ Override
173169 public CodeBlock generateSetBeanDefinitionPropertiesCode (
174- GenerationContext generationContext ,
175- BeanRegistrationCode beanRegistrationCode , RootBeanDefinition beanDefinition ,
176- Predicate < String > attributeFilter ) {
170+ GenerationContext generationContext , BeanRegistrationCode beanRegistrationCode ,
171+ RootBeanDefinition beanDefinition , Predicate < String > attributeFilter ) {
172+
177173 Loader loader = AotServices .factories (this .registeredBean .getBeanFactory ().getBeanClassLoader ());
178174 List <Delegate > additionalDelegates = loader .load (Delegate .class ).asList ();
179175 return new BeanDefinitionPropertiesCodeGenerator (generationContext .getRuntimeHints (),
180176 attributeFilter , beanRegistrationCode .getMethods (),
181- additionalDelegates , (name , value ) -> generateValueCode (generationContext , name , value )
182- ) .generateCode (beanDefinition );
177+ additionalDelegates , (name , value ) -> generateValueCode (generationContext , name , value ))
178+ .generateCode (beanDefinition );
183179 }
184180
185181 @ Nullable
186- protected CodeBlock generateValueCode (GenerationContext generationContext ,
187- String name , Object value ) {
188-
182+ protected CodeBlock generateValueCode (GenerationContext generationContext , String name , Object value ) {
189183 RegisteredBean innerRegisteredBean = getInnerRegisteredBean (value );
190184 if (innerRegisteredBean != null ) {
191185 BeanDefinitionMethodGenerator methodGenerator = this .beanDefinitionMethodGeneratorFactory
@@ -211,9 +205,8 @@ private RegisteredBean getInnerRegisteredBean(Object value) {
211205
212206 @ Override
213207 public CodeBlock generateSetBeanInstanceSupplierCode (
214- GenerationContext generationContext ,
215- BeanRegistrationCode beanRegistrationCode , CodeBlock instanceSupplierCode ,
216- List <MethodReference > postProcessors ) {
208+ GenerationContext generationContext , BeanRegistrationCode beanRegistrationCode ,
209+ CodeBlock instanceSupplierCode , List <MethodReference > postProcessors ) {
217210
218211 CodeBlock .Builder code = CodeBlock .builder ();
219212 if (postProcessors .isEmpty ()) {
@@ -233,20 +226,22 @@ public CodeBlock generateSetBeanInstanceSupplierCode(
233226 }
234227
235228 @ Override
236- public CodeBlock generateInstanceSupplierCode (GenerationContext generationContext ,
237- BeanRegistrationCode beanRegistrationCode , boolean allowDirectSupplierShortcut ) {
229+ public CodeBlock generateInstanceSupplierCode (
230+ GenerationContext generationContext , BeanRegistrationCode beanRegistrationCode ,
231+ boolean allowDirectSupplierShortcut ) {
232+
238233 if (hasInstanceSupplier ()) {
239- throw new IllegalStateException ("Default code generation is not supported for bean definitions declaring "
240- + " an instance supplier callback: " + this .registeredBean .getMergedBeanDefinition ());
234+ throw new IllegalStateException ("Default code generation is not supported for bean definitions " +
235+ "declaring an instance supplier callback: " + this .registeredBean .getMergedBeanDefinition ());
241236 }
242237 return new InstanceSupplierCodeGenerator (generationContext , beanRegistrationCode .getClassName (),
243- beanRegistrationCode .getMethods (), allowDirectSupplierShortcut ). generateCode (
244- this .registeredBean , this .instantiationDescriptor .get ());
238+ beanRegistrationCode .getMethods (), allowDirectSupplierShortcut )
239+ . generateCode ( this .registeredBean , this .instantiationDescriptor .get ());
245240 }
246241
247242 @ Override
248- public CodeBlock generateReturnCode (GenerationContext generationContext ,
249- BeanRegistrationCode beanRegistrationCode ) {
243+ public CodeBlock generateReturnCode (
244+ GenerationContext generationContext , BeanRegistrationCode beanRegistrationCode ) {
250245
251246 CodeBlock .Builder code = CodeBlock .builder ();
252247 code .addStatement ("return $L" , BEAN_DEFINITION_VARIABLE );
0 commit comments