diff --git a/spring-aop/src/main/java/org/springframework/aop/aspectj/annotation/AspectJBeanFactoryInitializationAotProcessor.java b/spring-aop/src/main/java/org/springframework/aop/aspectj/annotation/AspectJBeanFactoryInitializationAotProcessor.java index 5fe8c5c35b..71e7bea2b4 100644 --- a/spring-aop/src/main/java/org/springframework/aop/aspectj/annotation/AspectJBeanFactoryInitializationAotProcessor.java +++ b/spring-aop/src/main/java/org/springframework/aop/aspectj/annotation/AspectJBeanFactoryInitializationAotProcessor.java @@ -40,11 +40,12 @@ import org.springframework.util.ClassUtils; */ class AspectJBeanFactoryInitializationAotProcessor implements BeanFactoryInitializationAotProcessor { - private static final boolean aspectJPresent = ClassUtils.isPresent( - "org.aspectj.lang.annotation.Pointcut", AspectJBeanFactoryInitializationAotProcessor.class.getClassLoader()); + private static final boolean aspectJPresent = ClassUtils.isPresent("org.aspectj.lang.annotation.Pointcut", + AspectJBeanFactoryInitializationAotProcessor.class.getClassLoader()); + - @Nullable @Override + @Nullable public BeanFactoryInitializationAotContribution processAheadOfTime(ConfigurableListableBeanFactory beanFactory) { if (aspectJPresent) { return AspectDelegate.processAheadOfTime(beanFactory); @@ -52,6 +53,7 @@ class AspectJBeanFactoryInitializationAotProcessor implements BeanFactoryInitial return null; } + /** * Inner class to avoid a hard dependency on AspectJ at runtime. */ @@ -61,9 +63,8 @@ class AspectJBeanFactoryInitializationAotProcessor implements BeanFactoryInitial private static AspectContribution processAheadOfTime(ConfigurableListableBeanFactory beanFactory) { BeanFactoryAspectJAdvisorsBuilder builder = new BeanFactoryAspectJAdvisorsBuilder(beanFactory); List advisors = builder.buildAspectJAdvisors(); - return advisors.isEmpty() ? null : new AspectContribution(advisors); + return (advisors.isEmpty() ? null : new AspectContribution(advisors)); } - } @@ -84,7 +85,6 @@ class AspectJBeanFactoryInitializationAotProcessor implements BeanFactoryInitial } } } - } } diff --git a/spring-core/src/main/java/org/springframework/aot/hint/support/FilePatternResourceHintsRegistrar.java b/spring-core/src/main/java/org/springframework/aot/hint/support/FilePatternResourceHintsRegistrar.java index 33371f0e80..f5e3525a1e 100644 --- a/spring-core/src/main/java/org/springframework/aot/hint/support/FilePatternResourceHintsRegistrar.java +++ b/spring-core/src/main/java/org/springframework/aot/hint/support/FilePatternResourceHintsRegistrar.java @@ -156,12 +156,10 @@ public class FilePatternResourceHintsRegistrar { private final List fileExtensions = new ArrayList<>(); - private Builder() { // no-op } - /** * Consider the specified classpath locations. *

A location can either be a special {@value ResourceUtils#CLASSPATH_URL_PREFIX} @@ -254,7 +252,6 @@ public class FilePatternResourceHintsRegistrar { public void registerHints(ResourceHints hints, @Nullable ClassLoader classLoader) { build().registerHints(hints, classLoader); } - } } diff --git a/spring-core/src/main/java/org/springframework/core/codec/CharSequenceEncoder.java b/spring-core/src/main/java/org/springframework/core/codec/CharSequenceEncoder.java index 267a68421f..4103a1cec2 100644 --- a/spring-core/src/main/java/org/springframework/core/codec/CharSequenceEncoder.java +++ b/spring-core/src/main/java/org/springframework/core/codec/CharSequenceEncoder.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,8 +51,7 @@ public final class CharSequenceEncoder extends AbstractEncoder { */ public static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8; - private final ConcurrentMap charsetToMaxBytesPerChar = - new ConcurrentHashMap<>(3); + private final ConcurrentMap charsetToMaxBytesPerChar = new ConcurrentHashMap<>(3); private CharSequenceEncoder(MimeType... mimeTypes) { @@ -105,8 +104,8 @@ public final class CharSequenceEncoder extends AbstractEncoder { } int calculateCapacity(CharSequence sequence, Charset charset) { - float maxBytesPerChar = this.charsetToMaxBytesPerChar - .computeIfAbsent(charset, cs -> cs.newEncoder().maxBytesPerChar()); + float maxBytesPerChar = this.charsetToMaxBytesPerChar.computeIfAbsent(charset, + cs -> cs.newEncoder().maxBytesPerChar()); float maxBytesForSequence = sequence.length() * maxBytesPerChar; return (int) Math.ceil(maxBytesForSequence); } diff --git a/spring-core/src/test/java/org/springframework/core/io/ClassPathResourceTests.java b/spring-core/src/test/java/org/springframework/core/io/ClassPathResourceTests.java index 30320564d2..f91e93d5f6 100644 --- a/spring-core/src/test/java/org/springframework/core/io/ClassPathResourceTests.java +++ b/spring-core/src/test/java/org/springframework/core/io/ClassPathResourceTests.java @@ -120,9 +120,9 @@ class ClassPathResourceTests { Resource relative = resource.createRelative("subdir"); assertThat(relative).isEqualTo(new ClassPathResource("dir/subdir")); } - } + @Nested class GetInputStream { @@ -151,9 +151,9 @@ class ClassPathResourceTests { .isThrownBy(resource::getInputStream) .withMessageContaining(ABSOLUTE_PATH_TO_NONEXISTENT_RESOURCE); } - } + @Nested class GetDescription { @@ -190,9 +190,9 @@ class ClassPathResourceTests { private static void assertDescription(ClassPathResource resource) { assertThat(resource.getDescription()).isEqualTo("class path resource [%s]", ABSOLUTE_PATH_TO_NONEXISTENT_RESOURCE); } - } + @Nested class GetPath { @@ -209,9 +209,9 @@ class ClassPathResourceTests { assertThat(((ClassPathResource) new ClassPathResource("", getClass()).createRelative("/test.html")).getPath()).isEqualTo("test.html"); assertThat(((ClassPathResource) new ClassPathResource("", getClass()).createRelative("test.html")).getPath()).isEqualTo(PACKAGE_PATH + "/test.html"); } - } + @Test void directoryNotReadable() throws Exception { Resource fileDir = new ClassPathResource("org/springframework/core"); diff --git a/spring-core/src/test/java/org/springframework/core/io/ResourceTests.java b/spring-core/src/test/java/org/springframework/core/io/ResourceTests.java index 5f33f9bbdb..4fa131384b 100644 --- a/spring-core/src/test/java/org/springframework/core/io/ResourceTests.java +++ b/spring-core/src/test/java/org/springframework/core/io/ResourceTests.java @@ -173,9 +173,9 @@ class ResourceTests { Resource resource = new ByteArrayResource("testString".getBytes(), "my description"); assertThat(resource.getDescription().contains("my description")).isTrue(); } - } + @Nested class InputStreamResourceTests { @@ -215,6 +215,7 @@ class ResourceTests { } } + @Nested class FileSystemResourceTests { @@ -286,6 +287,7 @@ class ResourceTests { } } + @Nested class UrlResourceTests { @@ -421,6 +423,7 @@ class ResourceTests { } } + @Nested class AbstractResourceTests { @@ -467,7 +470,6 @@ class ResourceTests { }; assertThat(resource.contentLength()).isEqualTo(3L); } - } } diff --git a/spring-core/src/test/java/org/springframework/core/io/buffer/PooledDataBufferTests.java b/spring-core/src/test/java/org/springframework/core/io/buffer/PooledDataBufferTests.java index 71a1fed232..5f353ad596 100644 --- a/spring-core/src/test/java/org/springframework/core/io/buffer/PooledDataBufferTests.java +++ b/spring-core/src/test/java/org/springframework/core/io/buffer/PooledDataBufferTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ class PooledDataBufferTests { } } + @Nested class UnpooledByteBufAllocatorWithPreferDirectFalseTests implements PooledDataBufferTestingTrait { @@ -48,6 +49,7 @@ class PooledDataBufferTests { } } + @Nested class PooledByteBufAllocatorWithPreferDirectTrueTests implements PooledDataBufferTestingTrait { @@ -57,6 +59,7 @@ class PooledDataBufferTests { } } + @Nested class PooledByteBufAllocatorWithPreferDirectFalseTests implements PooledDataBufferTestingTrait { @@ -66,6 +69,7 @@ class PooledDataBufferTests { } } + interface PooledDataBufferTestingTrait { DataBufferFactory createDataBufferFactory(); @@ -92,7 +96,6 @@ class PooledDataBufferTests { buffer.release(); assertThatIllegalStateException().isThrownBy(buffer::release); } - } } diff --git a/spring-core/src/test/java/org/springframework/core/io/support/PropertySourceProcessorTests.java b/spring-core/src/test/java/org/springframework/core/io/support/PropertySourceProcessorTests.java index ee663ec934..a19e88529b 100644 --- a/spring-core/src/test/java/org/springframework/core/io/support/PropertySourceProcessorTests.java +++ b/spring-core/src/test/java/org/springframework/core/io/support/PropertySourceProcessorTests.java @@ -48,7 +48,9 @@ class PropertySourceProcessorTests { private static final String PROPS_FILE = ClassUtils.classPackageAsResourcePath(PropertySourceProcessorTests.class) + "/test.properties"; private final StandardEnvironment environment = new StandardEnvironment(); + private final ResourceLoader resourceLoader = new DefaultResourceLoader(); + private final PropertySourceProcessor processor = new PropertySourceProcessor(environment, resourceLoader); @@ -59,12 +61,14 @@ class PropertySourceProcessorTests { @Test void processorRegistersPropertySource() throws Exception { - PropertySourceDescriptor descriptor = new PropertySourceDescriptor(List.of(PROPS_FILE), false, null, DefaultPropertySourceFactory.class, null); + PropertySourceDescriptor descriptor = new PropertySourceDescriptor( + List.of(PROPS_FILE), false, null, DefaultPropertySourceFactory.class, null); processor.processPropertySource(descriptor); assertThat(environment.getPropertySources()).hasSize(3); assertThat(environment.getProperty("enigma")).isEqualTo("42"); } + @Nested class FailOnErrorTests { @@ -86,9 +90,9 @@ class PropertySourceProcessorTests { assertThatExceptionOfType(exceptionType).isThrownBy(() -> processor.processPropertySource(descriptor)); assertThat(environment.getPropertySources()).hasSize(2); } - } + @Nested class IgnoreResourceNotFoundTests { @@ -127,7 +131,6 @@ class PropertySourceProcessorTests { assertThatNoException().isThrownBy(() -> processor.processPropertySource(descriptor)); assertThat(environment.getPropertySources()).hasSize(2); } - } diff --git a/spring-core/src/test/java/org/springframework/core/io/support/SpringFactoriesLoaderTests.java b/spring-core/src/test/java/org/springframework/core/io/support/SpringFactoriesLoaderTests.java index a6511e7ca0..28b420ad41 100644 --- a/spring-core/src/test/java/org/springframework/core/io/support/SpringFactoriesLoaderTests.java +++ b/spring-core/src/test/java/org/springframework/core/io/support/SpringFactoriesLoaderTests.java @@ -223,7 +223,6 @@ class SpringFactoriesLoaderTests { assertThat(messages).hasSize(1); assertThat(messages.get(0)).startsWith("Unable to instantiate factory class"); } - } @@ -292,9 +291,9 @@ class SpringFactoriesLoaderTests { assertThat(resolver.resolve(Integer.class)).isEqualTo(123); assertThat(resolver.resolve(Long.class)).isEqualTo(234L); } - } + @Nested class FactoryInstantiatorTests { @@ -350,14 +349,12 @@ class SpringFactoriesLoaderTests { } static class DefaultConstructor { - } static class SingleConstructor { SingleConstructor(String arg) { } - } static class MultiplePrivateAndSinglePublicConstructor { @@ -368,7 +365,6 @@ class SpringFactoriesLoaderTests { private MultiplePrivateAndSinglePublicConstructor(String arg, boolean extra) { } - } static class MultiplePackagePrivateAndSinglePublicConstructor { @@ -379,22 +375,18 @@ class SpringFactoriesLoaderTests { MultiplePackagePrivateAndSinglePublicConstructor(String arg, boolean extra) { } - } - static class SinglePackagePrivateConstructor { SinglePackagePrivateConstructor(String arg) { } - } static class SinglePrivateConstructor { private SinglePrivateConstructor(String arg) { } - } static class MultiplePackagePrivateConstructors { @@ -405,11 +397,10 @@ class SpringFactoriesLoaderTests { MultiplePackagePrivateConstructors(String arg, boolean extra) { } - } - } + private static class LimitedClassLoader extends URLClassLoader { private static final ClassLoader constructorArgumentFactories = new LimitedClassLoader("constructor-argument-factories"); @@ -428,7 +419,6 @@ class SpringFactoriesLoaderTests { throw new IllegalStateException(ex); } } - } }