Polish
This commit is contained in:
parent
9ba20cc380
commit
9102eb32d1
|
|
@ -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<String> parameters;
|
||||
|
||||
public ParametersMissingException(Set<String> 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;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -110,13 +110,15 @@ public class HttpMessageConvertersTests {
|
|||
@Test
|
||||
public void postProcessConverters() throws Exception {
|
||||
HttpMessageConverters converters = new HttpMessageConverters() {
|
||||
|
||||
@Override
|
||||
protected List<HttpMessageConverter<?>> postProcessConverters(
|
||||
List<HttpMessageConverter<?>> converters) {
|
||||
converters.removeIf(
|
||||
converter -> converter instanceof MappingJackson2XmlHttpMessageConverter);
|
||||
converters.removeIf((
|
||||
converter) -> converter instanceof MappingJackson2XmlHttpMessageConverter);
|
||||
return converters;
|
||||
}
|
||||
|
||||
};
|
||||
List<Class<?>> 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<HttpMessageConverter<?>> postProcessPartConverters(
|
||||
List<HttpMessageConverter<?>> converters) {
|
||||
converters.removeIf(
|
||||
converter -> converter instanceof MappingJackson2XmlHttpMessageConverter);
|
||||
converters.removeIf((
|
||||
converter) -> converter instanceof MappingJackson2XmlHttpMessageConverter);
|
||||
return converters;
|
||||
}
|
||||
|
||||
};
|
||||
List<Class<?>> converterClasses = new ArrayList<>();
|
||||
for (HttpMessageConverter<?> converter : extractFormPartConverters(
|
||||
|
|
|
|||
|
|
@ -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<String, Object> 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<String, Object> 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<String, Object> map = factoryBean.getJpaPropertyMap();
|
||||
assertThat(map.get("configured")).isEqualTo("manually");
|
||||
});
|
||||
this.contextRunner
|
||||
.withUserConfiguration(
|
||||
TestConfigurationWithLocalContainerEntityManagerFactoryBean.class)
|
||||
.run((context) -> {
|
||||
LocalContainerEntityManagerFactoryBean factoryBean = context
|
||||
.getBean(LocalContainerEntityManagerFactoryBean.class);
|
||||
Map<String, Object> 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<String, Object> map = factoryBean.getProperties();
|
||||
assertThat(map.get("configured")).isEqualTo("manually");
|
||||
});
|
||||
this.contextRunner
|
||||
.withUserConfiguration(
|
||||
TestConfigurationWithLocalContainerEntityManagerFactoryBean.class)
|
||||
.run((context) -> {
|
||||
EntityManagerFactory factoryBean = context
|
||||
.getBean(EntityManagerFactory.class);
|
||||
Map<String, Object> 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 {
|
||||
|
|
|
|||
|
|
@ -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<String, Object> 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<String, Object> 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<String, Object> 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<String, Object> 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
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,9 +40,8 @@ class CollectionBinder extends IndexedElementsBinder<Collection<Object>> {
|
|||
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());
|
||||
|
|
|
|||
|
|
@ -95,9 +95,8 @@ public class ValidationErrors implements Iterable<ObjectError> {
|
|||
|
||||
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());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue