diff options
Diffstat (limited to 'src/main/java/io/trygvis/spring/SpringQueueService.java')
-rw-r--r-- | src/main/java/io/trygvis/spring/SpringQueueService.java | 32 |
1 files changed, 9 insertions, 23 deletions
diff --git a/src/main/java/io/trygvis/spring/SpringQueueService.java b/src/main/java/io/trygvis/spring/SpringQueueService.java index 3432e35..21746e5 100644 --- a/src/main/java/io/trygvis/spring/SpringQueueService.java +++ b/src/main/java/io/trygvis/spring/SpringQueueService.java @@ -3,48 +3,34 @@ package io.trygvis.spring; import io.trygvis.queue.JdbcQueueService; import io.trygvis.queue.Queue; import io.trygvis.queue.QueueService; +import io.trygvis.queue.QueueSystem; +import io.trygvis.queue.TaskEffect; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.transaction.annotation.Transactional; -import javax.annotation.PostConstruct; import java.sql.Connection; import java.sql.SQLException; import java.util.Date; import java.util.List; -import static io.trygvis.queue.JdbcQueueService.createQueueService; - public class SpringQueueService implements QueueService { public final JdbcTemplate jdbcTemplate; public JdbcQueueService queueService; - public SpringQueueService(JdbcTemplate jdbcTemplate) { + public SpringQueueService(QueueSystem queueSystem, JdbcTemplate jdbcTemplate) { this.jdbcTemplate = jdbcTemplate; + this.queueService = queueSystem.queueService; } - @PostConstruct - public void postConstruct() { - queueService = jdbcTemplate.execute(new ConnectionCallback<JdbcQueueService>() { - @Override - public JdbcQueueService doInConnection(Connection c) throws SQLException, DataAccessException { - return createQueueService(c); - } - }); - } - - @Transactional + /** + * @see JdbcQueueService#consumeAll(io.trygvis.queue.Queue, io.trygvis.queue.TaskEffect) + */ public void consume(final Queue queue, final TaskEffect effect) throws SQLException { - jdbcTemplate.execute(new ConnectionCallback<Object>() { - @Override - public Object doInConnection(Connection c) throws SQLException, DataAccessException { - queueService.consume(c, queue, effect); - return null; - } - }); + queueService.consumeAll(queue, effect); } @Transactional @@ -52,7 +38,7 @@ public class SpringQueueService implements QueueService { return jdbcTemplate.execute(new ConnectionCallback<Queue>() { @Override public Queue doInConnection(Connection c) throws SQLException, DataAccessException { - return queueService.getQueue(c, name, interval, autoCreate); + return queueService.lookupQueue(c, name, interval, autoCreate); } }); } |