diff options
Diffstat (limited to 'src/main/java/io/trygvis/queue/AsyncService.java')
-rwxr-xr-x | src/main/java/io/trygvis/queue/AsyncService.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/main/java/io/trygvis/queue/AsyncService.java b/src/main/java/io/trygvis/queue/AsyncService.java new file mode 100755 index 0000000..c12f794 --- /dev/null +++ b/src/main/java/io/trygvis/queue/AsyncService.java @@ -0,0 +1,27 @@ +package io.trygvis.queue; + +import java.util.*; + +public interface AsyncService { + + /** + * @param name + * @param interval how often the queue should be polled for missed tasks in seconds. + */ + Queue registerQueue(String name, int interval, AsyncCallable callable); + + void stopQueue(Queue queue); + + Queue getQueue(String name); + + TaskRef schedule(Queue queue, String... args); + + /** + * Polls for a new state of the execution. + */ + Task update(Task ref); + + interface AsyncCallable { + void run(List<String> args) throws Exception; + } +} |