From de567e8c6f6453148795b2674e9192025f5ec81b Mon Sep 17 00:00:00 2001 From: Mahmoud Ben Hassine Date: Tue, 18 Oct 2022 11:46:02 +0200 Subject: [PATCH] Fix JavaBean setter collision This commit changes the name of the overloaded setter for isolationLevelForCreate to remove ambiguity in setter selection by Spring Framework. Resolves #4213 --- .../core/configuration/support/DefaultBatchConfiguration.java | 2 +- .../repository/support/AbstractJobRepositoryFactoryBean.java | 2 +- .../core/repository/support/JobRepositoryFactoryBeanTests.java | 2 +- .../batch/core/test/concurrent/ConcurrentTransactionTests.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/DefaultBatchConfiguration.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/DefaultBatchConfiguration.java index cc62922a6b..b5a4f1c25a 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/DefaultBatchConfiguration.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/DefaultBatchConfiguration.java @@ -132,7 +132,7 @@ public JobRepository jobRepository() throws BatchConfigurationException { jobRepositoryFactoryBean.setLobHandler(getLobHandler()); jobRepositoryFactoryBean.setCharset(getCharset()); jobRepositoryFactoryBean.setMaxVarCharLength(getMaxVarCharLength()); - jobRepositoryFactoryBean.setIsolationLevelForCreate(getIsolationLevelForCreate()); + jobRepositoryFactoryBean.setIsolationLevelForCreateEnum(getIsolationLevelForCreate()); jobRepositoryFactoryBean.setValidateTransactionState(getValidateTransactionState()); jobRepositoryFactoryBean.afterPropertiesSet(); return jobRepositoryFactoryBean.getObject(); diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/support/AbstractJobRepositoryFactoryBean.java b/spring-batch-core/src/main/java/org/springframework/batch/core/repository/support/AbstractJobRepositoryFactoryBean.java index 4f64273c4e..7369596311 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/support/AbstractJobRepositoryFactoryBean.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/repository/support/AbstractJobRepositoryFactoryBean.java @@ -144,7 +144,7 @@ public void setIsolationLevelForCreate(String isolationLevelForCreate) { * @see SimpleJobRepository#createJobExecution(String, * org.springframework.batch.core.JobParameters) */ - public void setIsolationLevelForCreate(Isolation isolationLevelForCreate) { + public void setIsolationLevelForCreateEnum(Isolation isolationLevelForCreate) { this.setIsolationLevelForCreate(TRANSACTION_ISOLATION_LEVEL_PREFIX + isolationLevelForCreate.name()); } diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/support/JobRepositoryFactoryBeanTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/repository/support/JobRepositoryFactoryBeanTests.java index 2680337506..f3d439e1cb 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/support/JobRepositoryFactoryBeanTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/repository/support/JobRepositoryFactoryBeanTests.java @@ -325,7 +325,7 @@ void testTransactionAttributesForCreateMethod() throws Exception { @Test void testSetTransactionAttributesForCreateMethod() throws Exception { - factory.setIsolationLevelForCreate(Isolation.READ_UNCOMMITTED); + factory.setIsolationLevelForCreateEnum(Isolation.READ_UNCOMMITTED); testCreateRepository(); JobRepository repository = factory.getObject(); DefaultTransactionDefinition transactionDefinition = new DefaultTransactionDefinition( diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/test/concurrent/ConcurrentTransactionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/test/concurrent/ConcurrentTransactionTests.java index 1d089f42d0..bd15e60589 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/test/concurrent/ConcurrentTransactionTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/test/concurrent/ConcurrentTransactionTests.java @@ -163,7 +163,7 @@ public JobRepository jobRepository(DataSource dataSource, PlatformTransactionMan throws Exception { JobRepositoryFactoryBean factory = new JobRepositoryFactoryBean(); factory.setDataSource(dataSource); - factory.setIsolationLevelForCreate(Isolation.READ_COMMITTED); + factory.setIsolationLevelForCreateEnum(Isolation.READ_COMMITTED); factory.setTransactionManager(transactionManager); factory.afterPropertiesSet(); return factory.getObject();