parent
082a246f9d
commit
4b641ca211
|
@ -30,7 +30,6 @@ import org.springframework.batch.core.launch.JobLauncher;
|
||||||
import org.springframework.batch.core.launch.support.SimpleJobLauncher;
|
import org.springframework.batch.core.launch.support.SimpleJobLauncher;
|
||||||
import org.springframework.batch.core.repository.JobRepository;
|
import org.springframework.batch.core.repository.JobRepository;
|
||||||
import org.springframework.batch.core.repository.support.JobRepositoryFactoryBean;
|
import org.springframework.batch.core.repository.support.JobRepositoryFactoryBean;
|
||||||
import org.springframework.beans.factory.ObjectProvider;
|
|
||||||
import org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers;
|
import org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers;
|
||||||
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||||
import org.springframework.orm.jpa.JpaTransactionManager;
|
import org.springframework.orm.jpa.JpaTransactionManager;
|
||||||
|
@ -73,7 +72,7 @@ public class BasicBatchConfigurer implements BatchConfigurer {
|
||||||
* {@code null})
|
* {@code null})
|
||||||
*/
|
*/
|
||||||
protected BasicBatchConfigurer(BatchProperties properties, DataSource dataSource,
|
protected BasicBatchConfigurer(BatchProperties properties, DataSource dataSource,
|
||||||
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
|
TransactionManagerCustomizers transactionManagerCustomizers) {
|
||||||
this(properties, dataSource, null, transactionManagerCustomizers);
|
this(properties, dataSource, null, transactionManagerCustomizers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,12 +86,11 @@ public class BasicBatchConfigurer implements BatchConfigurer {
|
||||||
*/
|
*/
|
||||||
protected BasicBatchConfigurer(BatchProperties properties, DataSource dataSource,
|
protected BasicBatchConfigurer(BatchProperties properties, DataSource dataSource,
|
||||||
EntityManagerFactory entityManagerFactory,
|
EntityManagerFactory entityManagerFactory,
|
||||||
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
|
TransactionManagerCustomizers transactionManagerCustomizers) {
|
||||||
this.properties = properties;
|
this.properties = properties;
|
||||||
this.entityManagerFactory = entityManagerFactory;
|
this.entityManagerFactory = entityManagerFactory;
|
||||||
this.dataSource = dataSource;
|
this.dataSource = dataSource;
|
||||||
this.transactionManagerCustomizers = transactionManagerCustomizers
|
this.transactionManagerCustomizers = transactionManagerCustomizers;
|
||||||
.getIfAvailable();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -157,7 +157,7 @@ public class BatchAutoConfiguration {
|
||||||
EntityManagerFactory entityManagerFactory,
|
EntityManagerFactory entityManagerFactory,
|
||||||
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
|
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
|
||||||
return new BasicBatchConfigurer(this.properties, dataSource,
|
return new BasicBatchConfigurer(this.properties, dataSource,
|
||||||
entityManagerFactory, transactionManagerCustomizers);
|
entityManagerFactory, transactionManagerCustomizers.getIfAvailable());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
|
@ -165,7 +165,7 @@ public class BatchAutoConfiguration {
|
||||||
public BasicBatchConfigurer basicBatchConfigurer(DataSource dataSource,
|
public BasicBatchConfigurer basicBatchConfigurer(DataSource dataSource,
|
||||||
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
|
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
|
||||||
return new BasicBatchConfigurer(this.properties, dataSource,
|
return new BasicBatchConfigurer(this.properties, dataSource,
|
||||||
transactionManagerCustomizers);
|
transactionManagerCustomizers.getIfAvailable());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,9 +25,10 @@ import org.springframework.transaction.PlatformTransactionManager;
|
||||||
*
|
*
|
||||||
* @param <T> The transaction manager type
|
* @param <T> The transaction manager type
|
||||||
* @author Phillip Webb
|
* @author Phillip Webb
|
||||||
|
* @since 1.5.0
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public interface PlatformTransactionManagerCustomizer<T extends PlatformTransactionManager> {
|
public interface PlatformTransactionManagerCustomizer<T extends PlatformTransactionManager> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Customize the given transaction manager.
|
* Customize the given transaction manager.
|
||||||
* @param transactionManager the transaction manager to customize
|
* @param transactionManager the transaction manager to customize
|
||||||
|
|
|
@ -27,6 +27,7 @@ import org.springframework.transaction.PlatformTransactionManager;
|
||||||
* A collection of {@link PlatformTransactionManagerCustomizer}.
|
* A collection of {@link PlatformTransactionManagerCustomizer}.
|
||||||
*
|
*
|
||||||
* @author Phillip Webb
|
* @author Phillip Webb
|
||||||
|
* @since 1.5.0
|
||||||
*/
|
*/
|
||||||
public class TransactionManagerCustomizers {
|
public class TransactionManagerCustomizers {
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||||
import org.springframework.transaction.support.AbstractPlatformTransactionManager;
|
import org.springframework.transaction.support.AbstractPlatformTransactionManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nested configuration properties that can be applied to an
|
* Configuration properties that can be applied to an
|
||||||
* {@link AbstractPlatformTransactionManager}.
|
* {@link AbstractPlatformTransactionManager}.
|
||||||
*
|
*
|
||||||
* @author Kazuki Shimizu
|
* @author Kazuki Shimizu
|
||||||
|
|
|
@ -155,7 +155,7 @@ public class Neo4jDataAutoConfigurationTests {
|
||||||
ctx.register(config);
|
ctx.register(config);
|
||||||
}
|
}
|
||||||
ctx.register(PropertyPlaceholderAutoConfiguration.class,
|
ctx.register(PropertyPlaceholderAutoConfiguration.class,
|
||||||
Neo4jDataAutoConfiguration.class, TransactionAutoConfiguration.class);
|
TransactionAutoConfiguration.class, Neo4jDataAutoConfiguration.class);
|
||||||
ctx.refresh();
|
ctx.refresh();
|
||||||
this.context = ctx;
|
this.context = ctx;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue