diff options
author | franck cuny <franck@lumberjaph.net> | 2010-04-14 18:12:07 +0200 |
---|---|---|
committer | franck cuny <franck@lumberjaph.net> | 2010-04-14 18:12:07 +0200 |
commit | 85ce07481255192ae2f74ccb7887e30d42dca75a (patch) | |
tree | 93f3d1690015042344865e0cd7eb48818c3b18b8 /lib/presque/JobQueueHandler.pm | |
parent | ignore conf (diff) | |
download | presque-85ce07481255192ae2f74ccb7887e30d42dca75a.tar.gz |
return a json object
Diffstat (limited to 'lib/presque/JobQueueHandler.pm')
-rw-r--r-- | lib/presque/JobQueueHandler.pm | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/lib/presque/JobQueueHandler.pm b/lib/presque/JobQueueHandler.pm index 848a8b1..65867e3 100644 --- a/lib/presque/JobQueueHandler.pm +++ b/lib/presque/JobQueueHandler.pm @@ -4,12 +4,17 @@ use Moose; extends 'Tatsumaki::Handler'; __PACKAGE__->asynchronous(1); +before [qw/get/] => sub { + my $self = shift; + $self->response->header('Content-Type' => 'application/json'); +}; + sub get { my ( $self, $queue_name ) = @_; if (!$queue_name) { $self->response->code(404); - $self->finish("queue name is missing"); + $self->finish({error => 'queue name is missing'}); return; } @@ -28,15 +33,13 @@ sub get { $lkey, sub { my $total = shift; - $self->render( - 'job.html', - { - queue => $queue_name, - jobs => $jobs, - job_count => $size, - queue_size => scalar @$total - } - ); + my $stats = { + queue => $queue_name, + jobs => $jobs, + job_count => $size, + queue_size => scalar @$total + }; + $self->finish(JSON::encode_json $stats); } ); } |