Skip to content

Commit 50d3436

Browse files
committed
Polishing
1 parent 6feeeec commit 50d3436

File tree

5 files changed

+26
-45
lines changed

5 files changed

+26
-45
lines changed

spring-beans/src/main/java/org/springframework/beans/factory/aot/BeanDefinitionMethodGeneratorFactory.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,7 @@
4141
*/
4242
class BeanDefinitionMethodGeneratorFactory {
4343

44-
private static final Log logger = LogFactory
45-
.getLog(BeanDefinitionMethodGeneratorFactory.class);
44+
private static final Log logger = LogFactory.getLog(BeanDefinitionMethodGeneratorFactory.class);
4645

4746

4847
private final AotServices<BeanRegistrationAotProcessor> aotProcessors;

spring-beans/src/main/java/org/springframework/beans/factory/aot/BeanDefinitionPropertyValueCodeGenerator.java

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,7 @@ class BeanDefinitionPropertyValueCodeGenerator {
8383

8484

8585
CodeBlock generateCode(@Nullable Object value) {
86-
ResolvableType type = (value != null) ? ResolvableType.forInstance(value)
87-
: ResolvableType.NONE;
86+
ResolvableType type = ResolvableType.forInstance(value);
8887
try {
8988
return generateCode(value, type);
9089
}
@@ -205,7 +204,6 @@ public CodeBlock generateCode(Object value, ResolvableType type) {
205204
}
206205
return null;
207206
}
208-
209207
}
210208

211209

@@ -223,7 +221,6 @@ public CodeBlock generateCode(Object value, ResolvableType type) {
223221
}
224222
return null;
225223
}
226-
227224
}
228225

229226

@@ -240,7 +237,6 @@ public CodeBlock generateCode(Object value, ResolvableType type) {
240237
}
241238
return null;
242239
}
243-
244240
}
245241

246242

@@ -257,7 +253,6 @@ public CodeBlock generateCode(Object value, ResolvableType type) {
257253
}
258254
return null;
259255
}
260-
261256
}
262257

263258

@@ -281,7 +276,6 @@ public CodeBlock generateCode(@Nullable Object value, ResolvableType type) {
281276
}
282277
return null;
283278
}
284-
285279
}
286280

287281

@@ -334,7 +328,6 @@ protected final CodeBlock generateCollectionOf(Collection<?> collection,
334328
code.add(")");
335329
return code.build();
336330
}
337-
338331
}
339332

340333

@@ -346,7 +339,6 @@ private class ManagedListDelegate extends CollectionDelegate<ManagedList<?>> {
346339
public ManagedListDelegate() {
347340
super(ManagedList.class, CodeBlock.of("new $T()", ManagedList.class));
348341
}
349-
350342
}
351343

352344

@@ -358,7 +350,6 @@ private class ManagedSetDelegate extends CollectionDelegate<ManagedSet<?>> {
358350
public ManagedSetDelegate() {
359351
super(ManagedSet.class, CodeBlock.of("new $T()", ManagedSet.class));
360352
}
361-
362353
}
363354

364355

@@ -367,8 +358,7 @@ public ManagedSetDelegate() {
367358
*/
368359
private class ManagedMapDelegate implements Delegate {
369360

370-
private static final CodeBlock EMPTY_RESULT = CodeBlock.of("$T.ofEntries()",
371-
ManagedMap.class);
361+
private static final CodeBlock EMPTY_RESULT = CodeBlock.of("$T.ofEntries()", ManagedMap.class);
372362

373363
@Override
374364
@Nullable
@@ -379,8 +369,7 @@ public CodeBlock generateCode(Object value, ResolvableType type) {
379369
return null;
380370
}
381371

382-
private <K, V> CodeBlock generateManagedMapCode(ResolvableType type,
383-
ManagedMap<K, V> managedMap) {
372+
private <K, V> CodeBlock generateManagedMapCode(ResolvableType type, ManagedMap<K, V> managedMap) {
384373
if (managedMap.isEmpty()) {
385374
return EMPTY_RESULT;
386375
}
@@ -403,7 +392,6 @@ private <K, V> CodeBlock generateManagedMapCode(ResolvableType type,
403392
code.add(")");
404393
return code.build();
405394
}
406-
407395
}
408396

409397

@@ -415,7 +403,6 @@ private class ListDelegate extends CollectionDelegate<List<?>> {
415403
ListDelegate() {
416404
super(List.class, CodeBlock.of("$T.emptyList()", Collections.class));
417405
}
418-
419406
}
420407

421408

@@ -441,7 +428,6 @@ protected CodeBlock generateCollectionCode(ResolvableType elementType, Set<?> se
441428
private Set<?> orderForCodeConsistency(Set<?> set) {
442429
return new TreeSet<Object>(set);
443430
}
444-
445431
}
446432

447433

@@ -450,8 +436,7 @@ private Set<?> orderForCodeConsistency(Set<?> set) {
450436
*/
451437
private class MapDelegate implements Delegate {
452438

453-
private static final CodeBlock EMPTY_RESULT = CodeBlock.of("$T.emptyMap()",
454-
Collections.class);
439+
private static final CodeBlock EMPTY_RESULT = CodeBlock.of("$T.emptyMap()", Collections.class);
455440

456441
@Override
457442
@Nullable
@@ -502,6 +487,7 @@ private <K, V> Map<K, V> orderForCodeConsistency(Map<K, V> map) {
502487

503488
private <K, V> CodeBlock generateLinkedHashMapCode(Map<K, V> map,
504489
ResolvableType keyType, ResolvableType valueType) {
490+
505491
GeneratedMethods generatedMethods = BeanDefinitionPropertyValueCodeGenerator.this.generatedMethods;
506492
GeneratedMethod generatedMethod = generatedMethods.add("getMap", method -> {
507493
method.addAnnotation(AnnotationSpec
@@ -520,7 +506,6 @@ private <K, V> CodeBlock generateLinkedHashMapCode(Map<K, V> map,
520506
});
521507
return CodeBlock.of("$L()", generatedMethod.getName());
522508
}
523-
524509
}
525510

526511

@@ -532,8 +517,8 @@ private static class BeanReferenceDelegate implements Delegate {
532517
@Override
533518
@Nullable
534519
public CodeBlock generateCode(Object value, ResolvableType type) {
535-
if (value instanceof RuntimeBeanReference runtimeBeanReference
536-
&& runtimeBeanReference.getBeanType() != null) {
520+
if (value instanceof RuntimeBeanReference runtimeBeanReference &&
521+
runtimeBeanReference.getBeanType() != null) {
537522
return CodeBlock.of("new $T($T.class)", RuntimeBeanReference.class,
538523
runtimeBeanReference.getBeanType());
539524
}
@@ -543,7 +528,6 @@ else if (value instanceof BeanReference beanReference) {
543528
}
544529
return null;
545530
}
546-
547531
}
548532

549533
}

spring-beans/src/main/java/org/springframework/beans/factory/aot/DefaultBeanRegistrationCodeFragments.java

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -73,19 +73,20 @@ class DefaultBeanRegistrationCodeFragments extends BeanRegistrationCodeFragments
7373
public Class<?> getTarget(RegisteredBean registeredBean,
7474
Executable constructorOrFactoryMethod) {
7575

76-
Class<?> target = extractDeclaringClass(registeredBean.getBeanType(),
77-
constructorOrFactoryMethod);
76+
Class<?> target = extractDeclaringClass(registeredBean.getBeanType(), constructorOrFactoryMethod);
7877
while (target.getName().startsWith("java.") && registeredBean.isInnerBean()) {
79-
target = registeredBean.getParent().getBeanClass();
78+
RegisteredBean parent = registeredBean.getParent();
79+
Assert.state(parent != null, "No parent available for inner bean");
80+
target = parent.getBeanClass();
8081
}
8182
return target;
8283
}
8384

8485
private Class<?> extractDeclaringClass(ResolvableType beanType, Executable executable) {
8586
Class<?> declaringClass = ClassUtils.getUserClass(executable.getDeclaringClass());
86-
if (executable instanceof Constructor<?>
87-
&& AccessVisibility.forMember(executable) == AccessVisibility.PUBLIC
88-
&& FactoryBean.class.isAssignableFrom(declaringClass)) {
87+
if (executable instanceof Constructor<?> &&
88+
AccessVisibility.forMember(executable) == AccessVisibility.PUBLIC &&
89+
FactoryBean.class.isAssignableFrom(declaringClass)) {
8990
return extractTargetClassFromFactoryBean(declaringClass, beanType);
9091
}
9192
return executable.getDeclaringClass();
@@ -101,8 +102,7 @@ private Class<?> extractDeclaringClass(ResolvableType beanType, Executable execu
101102
* @return the target class to use
102103
*/
103104
private Class<?> extractTargetClassFromFactoryBean(Class<?> factoryBeanType, ResolvableType beanType) {
104-
ResolvableType target = ResolvableType.forType(factoryBeanType)
105-
.as(FactoryBean.class).getGeneric(0);
105+
ResolvableType target = ResolvableType.forType(factoryBeanType).as(FactoryBean.class).getGeneric(0);
106106
if (target.getType().equals(Class.class)) {
107107
return target.toClass();
108108
}
@@ -155,8 +155,7 @@ protected CodeBlock generateValueCode(GenerationContext generationContext,
155155
.getBeanDefinitionMethodGenerator(innerRegisteredBean, name);
156156
Assert.state(methodGenerator != null, "Unexpected filtering of inner-bean");
157157
MethodReference generatedMethod = methodGenerator
158-
.generateBeanDefinitionMethod(generationContext,
159-
this.beanRegistrationsCode);
158+
.generateBeanDefinitionMethod(generationContext, this.beanRegistrationsCode);
160159
return generatedMethod.toInvokeCodeBlock(ArgumentCodeGenerator.none());
161160
}
162161
return null;
@@ -181,13 +180,11 @@ public CodeBlock generateSetBeanInstanceSupplierCode(
181180

182181
CodeBlock.Builder code = CodeBlock.builder();
183182
if (postProcessors.isEmpty()) {
184-
code.addStatement("$L.setInstanceSupplier($L)", BEAN_DEFINITION_VARIABLE,
185-
instanceSupplierCode);
183+
code.addStatement("$L.setInstanceSupplier($L)", BEAN_DEFINITION_VARIABLE, instanceSupplierCode);
186184
return code.build();
187185
}
188186
code.addStatement("$T $L = $L",
189-
ParameterizedTypeName.get(InstanceSupplier.class,
190-
this.registeredBean.getBeanClass()),
187+
ParameterizedTypeName.get(InstanceSupplier.class, this.registeredBean.getBeanClass()),
191188
INSTANCE_SUPPLIER_VARIABLE, instanceSupplierCode);
192189
for (MethodReference postProcessor : postProcessors) {
193190
code.addStatement("$L = $L.andThen($L)", INSTANCE_SUPPLIER_VARIABLE,

spring-core/src/main/java/org/springframework/aot/generate/DefaultGenerationContext.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ public DefaultGenerationContext(ClassNameGenerator classNameGenerator, Generated
8080
*/
8181
DefaultGenerationContext(GeneratedClasses generatedClasses,
8282
GeneratedFiles generatedFiles, RuntimeHints runtimeHints) {
83+
8384
Assert.notNull(generatedClasses, "'generatedClasses' must not be null");
8485
Assert.notNull(generatedFiles, "'generatedFiles' must not be null");
8586
Assert.notNull(runtimeHints, "'runtimeHints' must not be null");
@@ -90,15 +91,15 @@ public DefaultGenerationContext(ClassNameGenerator classNameGenerator, Generated
9091
}
9192

9293
private DefaultGenerationContext(DefaultGenerationContext existing, String name) {
93-
int sequence = existing.sequenceGenerator
94-
.computeIfAbsent(name, key -> new AtomicInteger()).getAndIncrement();
94+
int sequence = existing.sequenceGenerator.computeIfAbsent(name, key -> new AtomicInteger()).getAndIncrement();
9595
String featureName = (sequence > 0 ? name + sequence : name);
9696
this.sequenceGenerator = existing.sequenceGenerator;
9797
this.generatedClasses = existing.generatedClasses.withFeatureNamePrefix(featureName);
9898
this.generatedFiles = existing.generatedFiles;
9999
this.runtimeHints = existing.runtimeHints;
100100
}
101101

102+
102103
@Override
103104
public GeneratedClasses getGeneratedClasses() {
104105
return this.generatedClasses;

spring-core/src/main/java/org/springframework/aot/hint/ReflectionHints.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ public ReflectionHints registerType(Class<?> type, MemberCategory... memberCateg
133133
*/
134134
public ReflectionHints registerTypeIfPresent(@Nullable ClassLoader classLoader,
135135
String typeName, Consumer<TypeHint.Builder> typeHint) {
136+
136137
if (ClassUtils.isPresent(typeName, classLoader)) {
137138
registerType(TypeReference.of(typeName), typeHint);
138139
}
@@ -149,6 +150,7 @@ public ReflectionHints registerTypeIfPresent(@Nullable ClassLoader classLoader,
149150
*/
150151
public ReflectionHints registerTypeIfPresent(@Nullable ClassLoader classLoader,
151152
String typeName, MemberCategory... memberCategories) {
153+
152154
return registerTypeIfPresent(classLoader, typeName, TypeHint.builtWith(memberCategories));
153155
}
154156

@@ -208,7 +210,6 @@ public ReflectionHints registerConstructor(Constructor<?> constructor, Executabl
208210
* @deprecated in favor of {@link #registerConstructor(Constructor, ExecutableMode)}
209211
*/
210212
@Deprecated
211-
@SuppressWarnings("deprecation")
212213
public ReflectionHints registerConstructor(Constructor<?> constructor, Consumer<ExecutableHint.Builder> constructorHint) {
213214
return registerType(TypeReference.of(constructor.getDeclaringClass()),
214215
typeHint -> typeHint.withConstructor(mapParameters(constructor), constructorHint));
@@ -246,15 +247,14 @@ public ReflectionHints registerMethod(Method method, ExecutableMode mode) {
246247
* @deprecated in favor of {@link #registerMethod(Method, ExecutableMode)}
247248
*/
248249
@Deprecated
249-
@SuppressWarnings("deprecation")
250+
250251
public ReflectionHints registerMethod(Method method, Consumer<ExecutableHint.Builder> methodHint) {
251252
return registerType(TypeReference.of(method.getDeclaringClass()),
252253
typeHint -> typeHint.withMethod(method.getName(), mapParameters(method), methodHint));
253254
}
254255

255256
private List<TypeReference> mapParameters(Executable executable) {
256-
return Arrays.stream(executable.getParameterTypes()).map(TypeReference::of)
257-
.collect(Collectors.toList());
257+
return Arrays.stream(executable.getParameterTypes()).map(TypeReference::of).collect(Collectors.toList());
258258
}
259259

260260
}

0 commit comments

Comments
 (0)