1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
package presque::Role::Queue;
use Moose::Role;
sub new_queue {
my ($self, $queue_name, $lkey) = @_;
$self->application->redis->sadd('QUEUESET', $lkey);
my $ckey = $self->_queue_stat($queue_name);
$self->application->redis->set($ckey, 1);
}
sub push_job {
my ($self, $queue_name, $lkey, $key, $delayed) = @_;
my ($method, @args) = ('rpush', $lkey, $key);
if ($delayed) {
$method = 'zadd';
@args = ($queue_name . ':delayed', $delayed, $key);
}
$self->application->redis->$method(@args,);
}
1;
|