diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2013-05-26 10:42:01 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2013-05-26 10:42:01 +0200 |
commit | b65d39ab617d19ac48f44bc41f04a18803ca75e6 (patch) | |
tree | c93ed68851b56f64a33508108cdb432bf507fa11 /src/main/java/io/trygvis/queue/JdbcAsyncService.java | |
parent | 74a3da1853eeb2e853d17d8d8527404248b209d3 (diff) | |
download | quartz-based-queue-b65d39ab617d19ac48f44bc41f04a18803ca75e6.tar.gz quartz-based-queue-b65d39ab617d19ac48f44bc41f04a18803ca75e6.tar.bz2 quartz-based-queue-b65d39ab617d19ac48f44bc41f04a18803ca75e6.tar.xz quartz-based-queue-b65d39ab617d19ac48f44bc41f04a18803ca75e6.zip |
o Adding a 'parent' reference so tasks can be put in a tree.
Diffstat (limited to 'src/main/java/io/trygvis/queue/JdbcAsyncService.java')
-rw-r--r-- | src/main/java/io/trygvis/queue/JdbcAsyncService.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/main/java/io/trygvis/queue/JdbcAsyncService.java b/src/main/java/io/trygvis/queue/JdbcAsyncService.java index 06e7eee..276541f 100644 --- a/src/main/java/io/trygvis/queue/JdbcAsyncService.java +++ b/src/main/java/io/trygvis/queue/JdbcAsyncService.java @@ -94,6 +94,14 @@ public class JdbcAsyncService implements AsyncService { @Transactional(propagation = REQUIRED) public Task schedule(final Queue queue, String... args) { + return scheduleInner(null, queue, args); + } + + public Task schedule(long parent, Queue queue, String... args) { + return scheduleInner(parent, queue, args); + } + + private Task scheduleInner(Long parent, final Queue queue, String... args) { Date scheduled = new Date(); StringBuilder arguments = new StringBuilder(); @@ -101,8 +109,8 @@ public class JdbcAsyncService implements AsyncService { arguments.append(arg).append(' '); } - long id = taskDao.insert(queue.name, scheduled, arguments.toString()); - Task task = new Task(id, queue.name, scheduled, null, 0, null, asList(args)); + long id = taskDao.insert(parent, queue.name, scheduled, arguments.toString()); + Task task = new Task(parent, id, queue.name, scheduled, null, 0, null, asList(args)); log.info("Created task = {}", task); registerSynchronization(new TransactionSynchronizationAdapter() { |