diff options
Diffstat (limited to 'src/main/java/io/trygvis/spring/SpringJdbcAsyncService.java')
-rw-r--r-- | src/main/java/io/trygvis/spring/SpringJdbcAsyncService.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/main/java/io/trygvis/spring/SpringJdbcAsyncService.java b/src/main/java/io/trygvis/spring/SpringJdbcAsyncService.java index 6702642..96442e6 100644 --- a/src/main/java/io/trygvis/spring/SpringJdbcAsyncService.java +++ b/src/main/java/io/trygvis/spring/SpringJdbcAsyncService.java @@ -4,7 +4,9 @@ import io.trygvis.async.AsyncService; import io.trygvis.async.JdbcAsyncService; import io.trygvis.async.SqlEffectExecutor; import io.trygvis.queue.Queue; +import io.trygvis.queue.QueueSystem; import io.trygvis.queue.Task; +import io.trygvis.queue.TaskEffect; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.jdbc.core.ConnectionCallback; @@ -29,19 +31,16 @@ public class SpringJdbcAsyncService implements AsyncService { private final JdbcTemplate jdbcTemplate; - private final SqlEffectExecutor sqlEffectExecutor; - private final JdbcAsyncService jdbcAsyncService; - public SpringJdbcAsyncService(JdbcTemplate jdbcTemplate) { + public SpringJdbcAsyncService(QueueSystem queueSystem, JdbcTemplate jdbcTemplate) { this.jdbcTemplate = jdbcTemplate; - jdbcAsyncService = new JdbcAsyncService(); - sqlEffectExecutor = new SqlEffectExecutor(this.jdbcTemplate.getDataSource()); + jdbcAsyncService = new JdbcAsyncService(queueSystem); } @Transactional(propagation = REQUIRED) - public void registerQueue(final Queue queue, final AsyncService.AsyncCallable callable) { - jdbcAsyncService.registerQueue(sqlEffectExecutor, queue, callable); + public void registerQueue(final Queue queue, final TaskEffect processor) { + jdbcAsyncService.registerQueue(queue, processor); registerSynchronization(new TransactionSynchronizationAdapter() { public void afterCompletion(int status) { |