diff --git a/module/spring-boot-batch-data-mongodb/src/main/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfiguration.java b/module/spring-boot-batch-data-mongodb/src/main/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfiguration.java index 9638437abb4..ea64addfa0e 100644 --- a/module/spring-boot-batch-data-mongodb/src/main/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfiguration.java +++ b/module/spring-boot-batch-data-mongodb/src/main/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfiguration.java @@ -49,6 +49,7 @@ import org.springframework.data.mongodb.MongoTransactionManager; import org.springframework.data.mongodb.core.MongoOperations; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.convert.MappingMongoConverter; +import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.annotation.Isolation; /** @@ -93,15 +94,15 @@ public final class BatchDataMongoAutoConfiguration { private final MongoOperations mongoOperations; - private final MongoTransactionManager transactionManager; + private final PlatformTransactionManager transactionManager; private final @Nullable TaskExecutor taskExecutor; private final BatchDataMongoProperties properties; SpringBootBatchMongoConfiguration(MongoDatabaseFactory mongoDatabaseFactory, - ObjectProvider transactionManager, - @BatchTransactionManager ObjectProvider batchTransactionManager, + ObjectProvider transactionManager, + @BatchTransactionManager ObjectProvider batchTransactionManager, @BatchTaskExecutor ObjectProvider batchTaskExecutor, BatchDataMongoProperties properties) { this.mongoOperations = createMongoOperations(mongoDatabaseFactory); @@ -124,7 +125,7 @@ public final class BatchDataMongoAutoConfiguration { } @Override - protected MongoTransactionManager getTransactionManager() { + protected PlatformTransactionManager getTransactionManager() { return this.transactionManager; } diff --git a/module/spring-boot-batch-data-mongodb/src/test/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfigurationTests.java b/module/spring-boot-batch-data-mongodb/src/test/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfigurationTests.java index a16e6ac9003..f1cf27b0079 100644 --- a/module/spring-boot-batch-data-mongodb/src/test/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfigurationTests.java +++ b/module/spring-boot-batch-data-mongodb/src/test/java/org/springframework/boot/batch/mongodb/autoconfigure/BatchDataMongoAutoConfigurationTests.java @@ -37,6 +37,7 @@ import org.springframework.data.mongodb.MongoDatabaseFactory; import org.springframework.data.mongodb.MongoTransactionManager; import org.springframework.data.mongodb.core.MongoExceptionTranslator; import org.springframework.data.mongodb.core.MongoOperations; +import org.springframework.transaction.PlatformTransactionManager; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.ArgumentMatchers.anyString; @@ -70,9 +71,9 @@ class BatchDataMongoAutoConfigurationTests { @Test void autConfigurationUsesMainTransactionManager() { - MongoTransactionManager transactionManager = mock(MongoTransactionManager.class); + PlatformTransactionManager transactionManager = mock(PlatformTransactionManager.class); this.contextRunner.withBean(MongoDatabaseFactory.class, this::mockMongoDatabaseFactory) - .withBean(MongoTransactionManager.class, () -> transactionManager) + .withBean(PlatformTransactionManager.class, () -> transactionManager) .run((context) -> assertThat( context.getBean(SpringBootBatchMongoConfiguration.class).getTransactionManager()) .isSameAs(transactionManager)); @@ -85,7 +86,7 @@ class BatchDataMongoAutoConfigurationTests { .withBean(MongoTransactionManager.class, () -> transactionManager) .withUserConfiguration(BatchTransactionManagerConfiguration.class) .run((context) -> { - assertThat(context.getBeansOfType(MongoTransactionManager.class)).hasSize(2); + assertThat(context.getBeansOfType(PlatformTransactionManager.class)).hasSize(2); assertThat(context.getBean(SpringBootBatchMongoConfiguration.class).getTransactionManager()) .isSameAs(context.getBean("customTransactionManager")); }); @@ -97,8 +98,9 @@ class BatchDataMongoAutoConfigurationTests { this.contextRunner.withBean(MongoDatabaseFactory.class, () -> mongoDatabaseFactory).run((context) -> { assertThat(context).doesNotHaveBean(MongoTransactionManager.class); assertThat(context.getBean(SpringBootBatchMongoConfiguration.class).getTransactionManager()) - .satisfies((mongoTransactionManager) -> assertThat(mongoTransactionManager.getDatabaseFactory()) - .isSameAs(mongoDatabaseFactory)); + .isInstanceOfSatisfying(MongoTransactionManager.class, + (transactionManager) -> assertThat(transactionManager.getDatabaseFactory()) + .isSameAs(mongoDatabaseFactory)); }); } @@ -201,8 +203,8 @@ class BatchDataMongoAutoConfigurationTests { @Bean @BatchTransactionManager - MongoTransactionManager customTransactionManager() { - return mock(MongoTransactionManager.class); + PlatformTransactionManager customTransactionManager() { + return mock(PlatformTransactionManager.class); } }