diff --git a/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ParametersMissingException.java b/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ParametersMissingException.java index 8839bef64c6..a49af1a7d3a 100644 --- a/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ParametersMissingException.java +++ b/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ParametersMissingException.java @@ -21,8 +21,8 @@ import java.util.Set; import org.springframework.util.StringUtils; /** - * {@link RuntimeException} thrown when an endpoint invocation does - * not contain required parameters. + * {@link RuntimeException} thrown when an endpoint invocation does not contain required + * parameters. * * @author Madhura Bhave * @since 2.0.0 @@ -32,8 +32,9 @@ public class ParametersMissingException extends RuntimeException { private final Set parameters; public ParametersMissingException(Set parameters) { - super("Failed to invoke operation because the following required " + - "parameters were missing: " + StringUtils.collectionToCommaDelimitedString(parameters)); + super("Failed to invoke operation because the following required " + + "parameters were missing: " + + StringUtils.collectionToCommaDelimitedString(parameters)); this.parameters = parameters; } @@ -45,4 +46,3 @@ public class ParametersMissingException extends RuntimeException { return this.parameters; } } - diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/http/HttpMessageConvertersTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/http/HttpMessageConvertersTests.java index 1325fdbfa64..f771f77d312 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/http/HttpMessageConvertersTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/http/HttpMessageConvertersTests.java @@ -110,13 +110,15 @@ public class HttpMessageConvertersTests { @Test public void postProcessConverters() throws Exception { HttpMessageConverters converters = new HttpMessageConverters() { + @Override protected List> postProcessConverters( List> converters) { - converters.removeIf( - converter -> converter instanceof MappingJackson2XmlHttpMessageConverter); + converters.removeIf(( + converter) -> converter instanceof MappingJackson2XmlHttpMessageConverter); return converters; } + }; List> converterClasses = new ArrayList<>(); for (HttpMessageConverter converter : converters) { @@ -135,13 +137,15 @@ public class HttpMessageConvertersTests { @Test public void postProcessPartConverters() throws Exception { HttpMessageConverters converters = new HttpMessageConverters() { + @Override protected List> postProcessPartConverters( List> converters) { - converters.removeIf( - converter -> converter instanceof MappingJackson2XmlHttpMessageConverter); + converters.removeIf(( + converter) -> converter instanceof MappingJackson2XmlHttpMessageConverter); return converters; } + }; List> converterClasses = new ArrayList<>(); for (HttpMessageConverter converter : extractFormPartConverters( diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/AbstractJpaAutoConfigurationTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/AbstractJpaAutoConfigurationTests.java index bec9d886d05..998403975e9 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/AbstractJpaAutoConfigurationTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/AbstractJpaAutoConfigurationTests.java @@ -65,9 +65,9 @@ public abstract class AbstractJpaAutoConfigurationTests { this.autoConfiguredClass = autoConfiguredClass; this.contextRunner = new ApplicationContextRunner() .withPropertyValues("spring.datasource.generate-unique-name=true") - .withUserConfiguration(TestConfiguration.class) - .withConfiguration(AutoConfigurations.of(DataSourceAutoConfiguration.class, - TransactionAutoConfiguration.class, autoConfiguredClass)); + .withUserConfiguration(TestConfiguration.class).withConfiguration( + AutoConfigurations.of(DataSourceAutoConfiguration.class, + TransactionAutoConfiguration.class, autoConfiguredClass)); } protected ApplicationContextRunner contextRunner() { @@ -76,15 +76,17 @@ public abstract class AbstractJpaAutoConfigurationTests { @Test public void dataSourceIsNotAvailable() { - new ApplicationContextRunner().withConfiguration(AutoConfigurations.of( - this.autoConfiguredClass)).run((context) -> { - assertThat(context).hasFailed(); - assertThat(context.getStartupFailure()) - .isInstanceOf(BeanCreationException.class); - assertThat(context.getStartupFailure()) - .hasMessageContaining("No qualifying bean"); - assertThat(context.getStartupFailure()).hasMessageContaining("DataSource"); - }); + new ApplicationContextRunner() + .withConfiguration(AutoConfigurations.of(this.autoConfiguredClass)) + .run((context) -> { + assertThat(context).hasFailed(); + assertThat(context.getStartupFailure()) + .isInstanceOf(BeanCreationException.class); + assertThat(context.getStartupFailure()) + .hasMessageContaining("No qualifying bean"); + assertThat(context.getStartupFailure()) + .hasMessageContaining("DataSource"); + }); } @Test @@ -97,13 +99,15 @@ public abstract class AbstractJpaAutoConfigurationTests { @Test public void jtaTransactionManagerTakesPrecedence() { - this.contextRunner.withConfiguration(AutoConfigurations.of( - DataSourceTransactionManagerAutoConfiguration.class)).run((context) -> { - assertThat(context).hasSingleBean(DataSource.class); - assertThat(context).hasSingleBean(JpaTransactionManager.class); - assertThat(context).getBean("transactionManager") - .isInstanceOf(JpaTransactionManager.class); - }); + this.contextRunner + .withConfiguration(AutoConfigurations + .of(DataSourceTransactionManagerAutoConfiguration.class)) + .run((context) -> { + assertThat(context).hasSingleBean(DataSource.class); + assertThat(context).hasSingleBean(JpaTransactionManager.class); + assertThat(context).getBean("transactionManager") + .isInstanceOf(JpaTransactionManager.class); + }); } @Test @@ -111,7 +115,8 @@ public abstract class AbstractJpaAutoConfigurationTests { new WebApplicationContextRunner() .withPropertyValues("spring.datasource.generate-unique-name=true") .withUserConfiguration(TestConfiguration.class) - .withConfiguration(AutoConfigurations.of(DataSourceAutoConfiguration.class, + .withConfiguration(AutoConfigurations.of( + DataSourceAutoConfiguration.class, TransactionAutoConfiguration.class, this.autoConfiguredClass)) .run((context) -> assertThat(context) .hasSingleBean(OpenEntityManagerInViewInterceptor.class)); @@ -122,7 +127,8 @@ public abstract class AbstractJpaAutoConfigurationTests { new WebApplicationContextRunner() .withPropertyValues("spring.datasource.generate-unique-name=true") .withUserConfiguration(TestFilterConfiguration.class) - .withConfiguration(AutoConfigurations.of(DataSourceAutoConfiguration.class, + .withConfiguration(AutoConfigurations.of( + DataSourceAutoConfiguration.class, TransactionAutoConfiguration.class, this.autoConfiguredClass)) .run((context) -> assertThat(context) .doesNotHaveBean(OpenEntityManagerInViewInterceptor.class)); @@ -131,11 +137,11 @@ public abstract class AbstractJpaAutoConfigurationTests { @Test public void openEntityManagerInViewInterceptorISNotRegisteredWhenExplicitlyOff() { new WebApplicationContextRunner() - .withPropertyValues( - "spring.datasource.generate-unique-name=true", + .withPropertyValues("spring.datasource.generate-unique-name=true", "spring.jpa.open-in-view=false") .withUserConfiguration(TestConfiguration.class) - .withConfiguration(AutoConfigurations.of(DataSourceAutoConfiguration.class, + .withConfiguration(AutoConfigurations.of( + DataSourceAutoConfiguration.class, TransactionAutoConfiguration.class, this.autoConfiguredClass)) .run((context) -> assertThat(context) .doesNotHaveBean(OpenEntityManagerInViewInterceptor.class)); @@ -143,69 +149,72 @@ public abstract class AbstractJpaAutoConfigurationTests { @Test public void customJpaProperties() { - this.contextRunner.withPropertyValues("spring.jpa.properties.a:b", - "spring.jpa.properties.a.b:c", - "spring.jpa.properties.c:d").run((context) -> { - LocalContainerEntityManagerFactoryBean bean = context - .getBean(LocalContainerEntityManagerFactoryBean.class); - Map map = bean.getJpaPropertyMap(); - assertThat(map.get("a")).isEqualTo("b"); - assertThat(map.get("c")).isEqualTo("d"); - assertThat(map.get("a.b")).isEqualTo("c"); - }); + this.contextRunner + .withPropertyValues("spring.jpa.properties.a:b", + "spring.jpa.properties.a.b:c", "spring.jpa.properties.c:d") + .run((context) -> { + LocalContainerEntityManagerFactoryBean bean = context + .getBean(LocalContainerEntityManagerFactoryBean.class); + Map map = bean.getJpaPropertyMap(); + assertThat(map.get("a")).isEqualTo("b"); + assertThat(map.get("c")).isEqualTo("d"); + assertThat(map.get("a.b")).isEqualTo("c"); + }); } @Test public void usesManuallyDefinedLocalContainerEntityManagerFactoryBeanIfAvailable() { - this.contextRunner.withUserConfiguration( - TestConfigurationWithLocalContainerEntityManagerFactoryBean.class - ).run((context) -> { - LocalContainerEntityManagerFactoryBean factoryBean = context - .getBean(LocalContainerEntityManagerFactoryBean.class); - Map map = factoryBean.getJpaPropertyMap(); - assertThat(map.get("configured")).isEqualTo("manually"); - }); + this.contextRunner + .withUserConfiguration( + TestConfigurationWithLocalContainerEntityManagerFactoryBean.class) + .run((context) -> { + LocalContainerEntityManagerFactoryBean factoryBean = context + .getBean(LocalContainerEntityManagerFactoryBean.class); + Map map = factoryBean.getJpaPropertyMap(); + assertThat(map.get("configured")).isEqualTo("manually"); + }); } @Test public void usesManuallyDefinedEntityManagerFactoryIfAvailable() { - this.contextRunner.withUserConfiguration( - TestConfigurationWithLocalContainerEntityManagerFactoryBean.class - ).run((context) -> { - EntityManagerFactory factoryBean = context - .getBean(EntityManagerFactory.class); - Map map = factoryBean.getProperties(); - assertThat(map.get("configured")).isEqualTo("manually"); - }); + this.contextRunner + .withUserConfiguration( + TestConfigurationWithLocalContainerEntityManagerFactoryBean.class) + .run((context) -> { + EntityManagerFactory factoryBean = context + .getBean(EntityManagerFactory.class); + Map map = factoryBean.getProperties(); + assertThat(map.get("configured")).isEqualTo("manually"); + }); } @Test public void usesManuallyDefinedTransactionManagerBeanIfAvailable() { - this.contextRunner.withUserConfiguration( - TestConfigurationWithTransactionManager.class - ).run((context) -> { - PlatformTransactionManager txManager = context - .getBean(PlatformTransactionManager.class); - assertThat(txManager).isInstanceOf(CustomJpaTransactionManager.class); - }); + this.contextRunner + .withUserConfiguration(TestConfigurationWithTransactionManager.class) + .run((context) -> { + PlatformTransactionManager txManager = context + .getBean(PlatformTransactionManager.class); + assertThat(txManager).isInstanceOf(CustomJpaTransactionManager.class); + }); } @Test public void customPersistenceUnitManager() { - this.contextRunner.withUserConfiguration( - TestConfigurationWithCustomPersistenceUnitManager.class - ).run((context) -> { - LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = context - .getBean(LocalContainerEntityManagerFactoryBean.class); - Field field = LocalContainerEntityManagerFactoryBean.class - .getDeclaredField("persistenceUnitManager"); - field.setAccessible(true); - assertThat(field.get(entityManagerFactoryBean)) - .isEqualTo(context.getBean(PersistenceUnitManager.class)); - }); + this.contextRunner + .withUserConfiguration( + TestConfigurationWithCustomPersistenceUnitManager.class) + .run((context) -> { + LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = context + .getBean(LocalContainerEntityManagerFactoryBean.class); + Field field = LocalContainerEntityManagerFactoryBean.class + .getDeclaredField("persistenceUnitManager"); + field.setAccessible(true); + assertThat(field.get(entityManagerFactoryBean)) + .isEqualTo(context.getBean(PersistenceUnitManager.class)); + }); } - @Configuration @TestAutoConfigurationPackage(City.class) protected static class TestConfiguration { diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfigurationTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfigurationTests.java index 525ed6518a9..6b1c348c128 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfigurationTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfigurationTests.java @@ -70,15 +70,15 @@ public class HibernateJpaAutoConfigurationTests @Test public void testDataScriptWithMissingDdl() { - contextRunner().withPropertyValues( - "spring.datasource.data:classpath:/city.sql", + contextRunner().withPropertyValues("spring.datasource.data:classpath:/city.sql", // Missing: "spring.datasource.schema:classpath:/ddl.sql").run((context) -> { - assertThat(context).hasFailed(); - assertThat(context.getStartupFailure()).hasMessageContaining("ddl.sql"); - assertThat(context.getStartupFailure()) - .hasMessageContaining("spring.datasource.schema"); - }); + assertThat(context).hasFailed(); + assertThat(context.getStartupFailure()) + .hasMessageContaining("ddl.sql"); + assertThat(context.getStartupFailure()) + .hasMessageContaining("spring.datasource.schema"); + }); } @Test @@ -86,12 +86,12 @@ public class HibernateJpaAutoConfigurationTests // This can't succeed because the data SQL is executed immediately after the // schema // and Hibernate hasn't initialized yet at that point - contextRunner().withPropertyValues( - "spring.datasource.data:classpath:/city.sql").run((context) -> { - assertThat(context).hasFailed(); - assertThat(context.getStartupFailure()) - .isInstanceOf(BeanCreationException.class); - }); + contextRunner().withPropertyValues("spring.datasource.data:classpath:/city.sql") + .run((context) -> { + assertThat(context).hasFailed(); + assertThat(context.getStartupFailure()) + .isInstanceOf(BeanCreationException.class); + }); } @Test @@ -100,9 +100,10 @@ public class HibernateJpaAutoConfigurationTests .withClassLoader(new HideDataScriptClassLoader()) .withPropertyValues("spring.jpa.show-sql=true", "spring.jpa.hibernate.ddl-auto:create-drop", - "spring.datasource.data:classpath:/city.sql").run((context) -> - assertThat(context.getBean(TestInitializedJpaConfiguration.class).called) - .isTrue()); + "spring.datasource.data:classpath:/city.sql") + .run((context) -> assertThat( + context.getBean(TestInitializedJpaConfiguration.class).called) + .isTrue()); } @Test @@ -111,7 +112,7 @@ public class HibernateJpaAutoConfigurationTests .withPropertyValues("spring.datasource.initialize:false", "spring.flyway.locations:classpath:db/city") .withConfiguration(AutoConfigurations.of(FlywayAutoConfiguration.class)) - .run(context -> assertThat(context).hasNotFailed()); + .run((context) -> assertThat(context).hasNotFailed()); } @Test @@ -121,7 +122,7 @@ public class HibernateJpaAutoConfigurationTests "spring.flyway.locations:classpath:db/city", "spring.jpa.hibernate.ddl-auto:validate") .withConfiguration(AutoConfigurations.of(FlywayAutoConfiguration.class)) - .run(context -> assertThat(context).hasNotFailed()); + .run((context) -> assertThat(context).hasNotFailed()); } @Test @@ -130,20 +131,22 @@ public class HibernateJpaAutoConfigurationTests .withPropertyValues("spring.datasource.initialize:false", "spring.liquibase.changeLog:classpath:db/changelog/db.changelog-city.yaml", "spring.jpa.hibernate.ddl-auto:validate") - .withConfiguration(AutoConfigurations.of(LiquibaseAutoConfiguration.class)) - .run(context -> assertThat(context).hasNotFailed()); + .withConfiguration( + AutoConfigurations.of(LiquibaseAutoConfiguration.class)) + .run((context) -> assertThat(context).hasNotFailed()); } @Test public void jtaDefaultPlatform() { - contextRunner().withConfiguration(AutoConfigurations.of( - JtaAutoConfiguration.class)).run((context) -> { - Map jpaPropertyMap = context - .getBean(LocalContainerEntityManagerFactoryBean.class) - .getJpaPropertyMap(); - assertThat(jpaPropertyMap.get("hibernate.transaction.jta.platform")) - .isInstanceOf(SpringJtaPlatform.class); - }); + contextRunner() + .withConfiguration(AutoConfigurations.of(JtaAutoConfiguration.class)) + .run((context) -> { + Map jpaPropertyMap = context + .getBean(LocalContainerEntityManagerFactoryBean.class) + .getJpaPropertyMap(); + assertThat(jpaPropertyMap.get("hibernate.transaction.jta.platform")) + .isInstanceOf(SpringJtaPlatform.class); + }); } @Test @@ -152,25 +155,28 @@ public class HibernateJpaAutoConfigurationTests .withPropertyValues( "spring.jpa.properties.hibernate.transaction.jta.platform:" + TestJtaPlatform.class.getName()) - .withConfiguration(AutoConfigurations.of( - JtaAutoConfiguration.class)).run((context) -> { - Map jpaPropertyMap = context - .getBean(LocalContainerEntityManagerFactoryBean.class) - .getJpaPropertyMap(); - assertThat((String) jpaPropertyMap.get("hibernate.transaction.jta.platform")) - .isEqualTo(TestJtaPlatform.class.getName()); - }); + .withConfiguration(AutoConfigurations.of(JtaAutoConfiguration.class)) + .run((context) -> { + Map jpaPropertyMap = context + .getBean(LocalContainerEntityManagerFactoryBean.class) + .getJpaPropertyMap(); + assertThat((String) jpaPropertyMap + .get("hibernate.transaction.jta.platform")) + .isEqualTo(TestJtaPlatform.class.getName()); + }); } @Test public void jtaCustomTransactionManagerUsingProperties() { - contextRunner().withPropertyValues("spring.transaction.default-timeout:30", - "spring.transaction.rollback-on-commit-failure:true").run((context) -> { - JpaTransactionManager transactionManager = context - .getBean(JpaTransactionManager.class); - assertThat(transactionManager.getDefaultTimeout()).isEqualTo(30); - assertThat(transactionManager.isRollbackOnCommitFailure()).isTrue(); - }); + contextRunner() + .withPropertyValues("spring.transaction.default-timeout:30", + "spring.transaction.rollback-on-commit-failure:true") + .run((context) -> { + JpaTransactionManager transactionManager = context + .getBean(JpaTransactionManager.class); + assertThat(transactionManager.getDefaultTimeout()).isEqualTo(30); + assertThat(transactionManager.isRollbackOnCommitFailure()).isTrue(); + }); } @Configuration diff --git a/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplate.java b/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplate.java index 39afe88243a..fd72c314e4a 100644 --- a/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplate.java +++ b/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplate.java @@ -149,7 +149,7 @@ public class TestRestTemplate { } interceptors = new ArrayList<>(interceptors); interceptors.removeIf( - interceptor -> interceptor instanceof BasicAuthorizationInterceptor); + (interceptor) -> interceptor instanceof BasicAuthorizationInterceptor); interceptors.add(new BasicAuthorizationInterceptor(username, password)); restTemplate.setInterceptors(interceptors); } diff --git a/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/metadata/ConfigurationMetadata.java b/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/metadata/ConfigurationMetadata.java index 621e3c17c26..a92152a0a93 100644 --- a/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/metadata/ConfigurationMetadata.java +++ b/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/metadata/ConfigurationMetadata.java @@ -148,7 +148,7 @@ public class ConfigurationMetadata { if (candidates == null || candidates.isEmpty()) { return null; } - candidates.removeIf(itemMetadata -> !itemMetadata.hasSameType(metadata)); + candidates.removeIf((itemMetadata) -> !itemMetadata.hasSameType(metadata)); if (candidates.size() == 1) { return candidates.get(0); } diff --git a/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java b/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java index 594357dd9b3..9e45f5c7895 100644 --- a/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java +++ b/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java @@ -40,9 +40,8 @@ class CollectionBinder extends IndexedElementsBinder> { AggregateElementBinder elementBinder) { Class collectionType = (target.getValue() == null ? target.getType().resolve() : List.class); - IndexedCollectionSupplier collection = new IndexedCollectionSupplier(() -> { - return CollectionFactory.createCollection(collectionType, 0); - }); + IndexedCollectionSupplier collection = new IndexedCollectionSupplier( + () -> CollectionFactory.createCollection(collectionType, 0)); ResolvableType elementType = target.getType().asCollection().getGeneric(); ResolvableType aggregateType = ResolvableType.forClassWithGenerics(List.class, target.getType().asCollection().getGenerics()); diff --git a/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/validation/ValidationErrors.java b/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/validation/ValidationErrors.java index bd71752caf0..39a996eba5e 100644 --- a/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/validation/ValidationErrors.java +++ b/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/validation/ValidationErrors.java @@ -95,9 +95,8 @@ public class ValidationErrors implements Iterable { private boolean isForError(ConfigurationPropertyName name, ConfigurationPropertyName boundPropertyName, FieldError error) { - return name.isParentOf(boundPropertyName) - && boundPropertyName.getLastElement(Form.UNIFORM) - .equalsIgnoreCase(error.getField()); + return name.isParentOf(boundPropertyName) && boundPropertyName + .getLastElement(Form.UNIFORM).equalsIgnoreCase(error.getField()); } /**