Polish code with code cleanup rules

This commit is contained in:
Phillip Webb
2024-12-04 13:54:28 -08:00
parent 1edc997440
commit 9e7972a9b4
19 changed files with 72 additions and 54 deletions

View File

@@ -32,7 +32,7 @@ import org.apache.commons.logging.LogFactory;
import org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy;
import org.hibernate.boot.model.naming.ImplicitNamingStrategy;
import org.hibernate.boot.model.naming.PhysicalNamingStrategy;
import org.hibernate.cfg.AvailableSettings;
import org.hibernate.cfg.ManagedBeanSettings;
import org.springframework.aot.hint.MemberCategory;
import org.springframework.aot.hint.RuntimeHints;
@@ -121,7 +121,7 @@ class HibernateJpaConfiguration extends JpaBaseConfiguration {
List<HibernatePropertiesCustomizer> customizers = new ArrayList<>();
if (ClassUtils.isPresent("org.hibernate.resource.beans.container.spi.BeanContainer",
getClass().getClassLoader())) {
customizers.add((properties) -> properties.put(AvailableSettings.BEAN_CONTAINER,
customizers.add((properties) -> properties.put(ManagedBeanSettings.BEAN_CONTAINER,
new SpringBeanContainer(beanFactory)));
}
if (physicalNamingStrategy != null || implicitNamingStrategy != null) {

View File

@@ -22,7 +22,9 @@ import java.util.Map;
import java.util.function.Supplier;
import org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy;
import org.hibernate.cfg.AvailableSettings;
import org.hibernate.cfg.MappingSettings;
import org.hibernate.cfg.PersistenceSettings;
import org.hibernate.cfg.SchemaToolingSettings;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy;
@@ -86,10 +88,10 @@ public class HibernateProperties {
getNaming().applyNamingStrategies(result);
String ddlAuto = determineDdlAuto(existing, settings::getDdlAuto);
if (StringUtils.hasText(ddlAuto) && !"none".equals(ddlAuto)) {
result.put(AvailableSettings.HBM2DDL_AUTO, ddlAuto);
result.put(SchemaToolingSettings.HBM2DDL_AUTO, ddlAuto);
}
else {
result.remove(AvailableSettings.HBM2DDL_AUTO);
result.remove(SchemaToolingSettings.HBM2DDL_AUTO);
}
Collection<HibernatePropertiesCustomizer> customizers = settings.getHibernatePropertiesCustomizers();
if (!ObjectUtils.isEmpty(customizers)) {
@@ -99,20 +101,20 @@ public class HibernateProperties {
}
private void applyScanner(Map<String, Object> result) {
if (!result.containsKey(AvailableSettings.SCANNER) && ClassUtils.isPresent(DISABLED_SCANNER_CLASS, null)) {
result.put(AvailableSettings.SCANNER, DISABLED_SCANNER_CLASS);
if (!result.containsKey(PersistenceSettings.SCANNER) && ClassUtils.isPresent(DISABLED_SCANNER_CLASS, null)) {
result.put(PersistenceSettings.SCANNER, DISABLED_SCANNER_CLASS);
}
}
private String determineDdlAuto(Map<String, String> existing, Supplier<String> defaultDdlAuto) {
String ddlAuto = existing.get(AvailableSettings.HBM2DDL_AUTO);
String ddlAuto = existing.get(SchemaToolingSettings.HBM2DDL_AUTO);
if (ddlAuto != null) {
return ddlAuto;
}
if (this.ddlAuto != null) {
return this.ddlAuto;
}
if (existing.get(AvailableSettings.JAKARTA_HBM2DDL_DATABASE_ACTION) != null) {
if (existing.get(SchemaToolingSettings.JAKARTA_HBM2DDL_DATABASE_ACTION) != null) {
return null;
}
return defaultDdlAuto.get();
@@ -147,9 +149,9 @@ public class HibernateProperties {
}
private void applyNamingStrategies(Map<String, Object> properties) {
applyNamingStrategy(properties, AvailableSettings.IMPLICIT_NAMING_STRATEGY, this.implicitStrategy,
applyNamingStrategy(properties, MappingSettings.IMPLICIT_NAMING_STRATEGY, this.implicitStrategy,
SpringImplicitNamingStrategy.class::getName);
applyNamingStrategy(properties, AvailableSettings.PHYSICAL_NAMING_STRATEGY, this.physicalStrategy,
applyNamingStrategy(properties, MappingSettings.PHYSICAL_NAMING_STRATEGY, this.physicalStrategy,
CamelCaseToUnderscoresNamingStrategy.class::getName);
}

View File

@@ -115,13 +115,20 @@ class ReactiveOAuth2ResourceServerJwkConfiguration {
List<OAuth2TokenValidator<Jwt>> validators = new ArrayList<>();
validators.add(defaultValidator);
if (!CollectionUtils.isEmpty(audiences)) {
validators.add(new JwtClaimValidator<List<String>>(JwtClaimNames.AUD,
(aud) -> aud != null && !Collections.disjoint(aud, audiences)));
validators.add(audValidator(audiences));
}
validators.addAll(this.additionalValidators);
return new DelegatingOAuth2TokenValidator<>(validators);
}
private JwtClaimValidator<List<String>> audValidator(List<String> audiences) {
return new JwtClaimValidator<>(JwtClaimNames.AUD, (aud) -> nullSafeDisjoint(aud, audiences));
}
private boolean nullSafeDisjoint(List<String> c1, List<String> c2) {
return c1 != null && !Collections.disjoint(c1, c2);
}
@Bean
@Conditional(KeyValueCondition.class)
NimbusReactiveJwtDecoder jwtDecoderByPublicKeyValue() throws Exception {

View File

@@ -114,13 +114,20 @@ class OAuth2ResourceServerJwtConfiguration {
List<OAuth2TokenValidator<Jwt>> validators = new ArrayList<>();
validators.add(defaultValidator);
if (!CollectionUtils.isEmpty(audiences)) {
validators.add(new JwtClaimValidator<List<String>>(JwtClaimNames.AUD,
(aud) -> aud != null && !Collections.disjoint(aud, audiences)));
validators.add(audValidator(audiences));
}
validators.addAll(this.additionalValidators);
return new DelegatingOAuth2TokenValidator<>(validators);
}
private JwtClaimValidator<List<String>> audValidator(List<String> audiences) {
return new JwtClaimValidator<>(JwtClaimNames.AUD, (aud) -> nullSafeDisjoint(aud, audiences));
}
private boolean nullSafeDisjoint(List<String> c1, List<String> c2) {
return c1 != null && !Collections.disjoint(c1, c2);
}
@Bean
@Conditional(KeyValueCondition.class)
JwtDecoder jwtDecoderByPublicKeyValue() throws Exception {

View File

@@ -162,7 +162,7 @@ class GroovyTemplateAutoConfigurationTests {
MarkupTemplateEngine engine = config.getTemplateEngine();
Writer writer = new StringWriter();
engine.createTemplate(new ClassPathResource("templates/message.tpl").getFile())
.make(new HashMap<String, Object>(Collections.singletonMap("greeting", "Hello World")))
.make(new HashMap<>(Collections.singletonMap("greeting", "Hello World")))
.writeTo(writer);
assertThat(writer.toString()).contains("Hello World");
}

View File

@@ -21,7 +21,9 @@ import java.util.function.Consumer;
import java.util.function.Supplier;
import org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy;
import org.hibernate.cfg.AvailableSettings;
import org.hibernate.cfg.MappingSettings;
import org.hibernate.cfg.PersistenceSettings;
import org.hibernate.cfg.SchemaToolingSettings;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
@@ -59,9 +61,9 @@ class HibernatePropertiesTests {
void noCustomNamingStrategy() {
this.contextRunner.run(assertHibernateProperties((hibernateProperties) -> {
assertThat(hibernateProperties).doesNotContainKeys("hibernate.ejb.naming_strategy");
assertThat(hibernateProperties).containsEntry(AvailableSettings.PHYSICAL_NAMING_STRATEGY,
assertThat(hibernateProperties).containsEntry(MappingSettings.PHYSICAL_NAMING_STRATEGY,
CamelCaseToUnderscoresNamingStrategy.class.getName());
assertThat(hibernateProperties).containsEntry(AvailableSettings.IMPLICIT_NAMING_STRATEGY,
assertThat(hibernateProperties).containsEntry(MappingSettings.IMPLICIT_NAMING_STRATEGY,
SpringImplicitNamingStrategy.class.getName());
}));
}
@@ -73,8 +75,8 @@ class HibernatePropertiesTests {
"spring.jpa.hibernate.naming.physical-strategy:com.example.Physical")
.run(assertHibernateProperties((hibernateProperties) -> {
assertThat(hibernateProperties).contains(
entry(AvailableSettings.IMPLICIT_NAMING_STRATEGY, "com.example.Implicit"),
entry(AvailableSettings.PHYSICAL_NAMING_STRATEGY, "com.example.Physical"));
entry(MappingSettings.IMPLICIT_NAMING_STRATEGY, "com.example.Implicit"),
entry(MappingSettings.PHYSICAL_NAMING_STRATEGY, "com.example.Physical"));
assertThat(hibernateProperties).doesNotContainKeys("hibernate.ejb.naming_strategy");
}));
}
@@ -87,8 +89,8 @@ class HibernatePropertiesTests {
.run(assertHibernateProperties((hibernateProperties) -> {
// You can override them as we don't provide any default
assertThat(hibernateProperties).contains(
entry(AvailableSettings.IMPLICIT_NAMING_STRATEGY, "com.example.Implicit"),
entry(AvailableSettings.PHYSICAL_NAMING_STRATEGY, "com.example.Physical"));
entry(MappingSettings.IMPLICIT_NAMING_STRATEGY, "com.example.Implicit"),
entry(MappingSettings.PHYSICAL_NAMING_STRATEGY, "com.example.Physical"));
assertThat(hibernateProperties).doesNotContainKeys("hibernate.ejb.naming_strategy");
}));
}
@@ -96,15 +98,15 @@ class HibernatePropertiesTests {
@Test
void scannerUsesDisabledScannerByDefault() {
this.contextRunner.run(assertHibernateProperties((hibernateProperties) -> assertThat(hibernateProperties)
.containsEntry(AvailableSettings.SCANNER, "org.hibernate.boot.archive.scan.internal.DisabledScanner")));
.containsEntry(PersistenceSettings.SCANNER, "org.hibernate.boot.archive.scan.internal.DisabledScanner")));
}
@Test
void scannerCanBeCustomized() {
this.contextRunner.withPropertyValues(
"spring.jpa.properties.hibernate.archive.scanner:org.hibernate.boot.archive.scan.internal.StandardScanner")
.run(assertHibernateProperties((hibernateProperties) -> assertThat(hibernateProperties)
.containsEntry(AvailableSettings.SCANNER, "org.hibernate.boot.archive.scan.internal.StandardScanner")));
.run(assertHibernateProperties((hibernateProperties) -> assertThat(hibernateProperties).containsEntry(
PersistenceSettings.SCANNER, "org.hibernate.boot.archive.scan.internal.StandardScanner")));
}
@Test
@@ -125,8 +127,8 @@ class HibernatePropertiesTests {
.withPropertyValues(
"spring.jpa.properties.jakarta.persistence.schema-generation.database.action=drop-and-create")
.run(assertHibernateProperties((hibernateProperties) -> {
assertThat(hibernateProperties).doesNotContainKey(AvailableSettings.HBM2DDL_AUTO);
assertThat(hibernateProperties).containsEntry(AvailableSettings.JAKARTA_HBM2DDL_DATABASE_ACTION,
assertThat(hibernateProperties).doesNotContainKey(SchemaToolingSettings.HBM2DDL_AUTO);
assertThat(hibernateProperties).containsEntry(SchemaToolingSettings.JAKARTA_HBM2DDL_DATABASE_ACTION,
"drop-and-create");
then(this.ddlAutoSupplier).should(never()).get();
}));
@@ -134,7 +136,7 @@ class HibernatePropertiesTests {
private ContextConsumer<AssertableApplicationContext> assertDefaultDdlAutoNotInvoked(String expectedDdlAuto) {
return assertHibernateProperties((hibernateProperties) -> {
assertThat(hibernateProperties).containsEntry(AvailableSettings.HBM2DDL_AUTO, expectedDdlAuto);
assertThat(hibernateProperties).containsEntry(SchemaToolingSettings.HBM2DDL_AUTO, expectedDdlAuto);
then(this.ddlAutoSupplier).should(never()).get();
});
}

View File

@@ -34,8 +34,8 @@ import org.assertj.core.api.InstanceOfAssertFactory;
import org.assertj.core.api.MapAssert;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentMatchers;
import org.mockito.InOrder;
import org.mockito.Mockito;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.test.context.TestConfiguration;
@@ -143,7 +143,7 @@ class PulsarConfigurationTests {
.getField(clientFactory, "customizer");
customizeAction.accept(pulsarClientBuilderCustomizer, target);
InOrder ordered = inOrder(target);
ordered.verify(target).serviceUrlProvider(Mockito.any(AutoClusterFailover.class));
ordered.verify(target).serviceUrlProvider(ArgumentMatchers.any(AutoClusterFailover.class));
assertThat(pulsarProperties.getClient().getFailover().getDelay()).isEqualTo(Duration.ofSeconds(15));
assertThat(pulsarProperties.getClient().getFailover().getSwitchBackDelay())
.isEqualTo(Duration.ofSeconds(30));

View File

@@ -56,7 +56,7 @@ class ValidatorAdapterTests {
this.contextRunner.withUserConfiguration(LocalValidatorFactoryBeanConfig.class).run((context) -> {
ValidatorAdapter wrapper = context.getBean(ValidatorAdapter.class);
assertThat(wrapper.supports(SampleData.class)).isTrue();
MapBindingResult errors = new MapBindingResult(new HashMap<String, Object>(), "test");
MapBindingResult errors = new MapBindingResult(new HashMap<>(), "test");
wrapper.validate(new SampleData(40), errors);
assertThat(errors.getErrorCount()).isOne();
});