| Beanstalk-Client documentation | Contained in the Beanstalk-Client distribution. |
Beanstalk::Job - Class to represent a job from a beanstalkd server
Returns job id
Returns Beanstalk::Client object for the server the job resides on
Returns true if the job is buried
Returns true if the job was created via a reserve command and has not been deleted, buried or released
Returns the raw data for the beanstalkd server for the job
Returns the last error
Return a Stats object for this job. See Beanstalk::Client for a list of methods available.
Tell the server to delete this job
Calling touch on a reserved job will reset the time left for the job to complete
back to the original ttr value.
Peek this job on the server.
Release the job.
Tell the server to bury the job
Decode and return the raw data from the beanstalkd server
Return the name of the tube the job is in
Returns the jobs time to run, in seconds.
Return the jobs priority
Beanstalk::Pool, Beanstalk::Client, Beanstalk::Stats
Graham Barr <gbarr@pobox.com>
Copyright (C) 2008 by Graham Barr.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| Beanstalk-Client documentation | Contained in the Beanstalk-Client distribution. |
package Beanstalk::Job; use strict; use warnings; use base qw(Class::Accessor::Fast); our $VERSION = "1.06"; __PACKAGE__->mk_accessors( qw(id client buried reserved data error) ); sub stats { my $self = shift; $self->{_stats} = $self->client->stats_job($self->id) or $self->error($self->client->error); $self->{_stats}; } sub delete { my $self = shift; my $ret = $self->client->delete($self->id) or $self->error($self->client->error); $self->reserved(0); $self->buried(0); $ret; } sub touch { my $self = shift; my $ret = $self->client->touch($self->id) or $self->error($self->client->error); $ret; } sub peek { my $self = shift; my $ret = $self->client->peek($self->id) or $self->error($self->client->error); $ret; } sub release { my $self = shift; my $opt = shift; my $ret = $self->client->release($self->id, $opt) or $self->error($self->client->error); $self->reserved(0); $ret; } sub bury { my $self = shift; my $opt = shift; unless ($self->client->bury($self->id, $opt)) { $self->error($self->client->error); return undef; } $self->reserved(0); $self->buried(1); return 1; } sub args { my $self = shift; my $data = $self->data; return unless defined($data); $self->client->decoder->($data); } sub tube { my $self = shift; my $stats = $self->{_stats} || $self->stats or return undef; $stats->tube; } sub ttr { my $self = shift; my $stats = $self->{_stats} || $self->stats or return undef; $stats->ttr; } sub priority { my $self = shift; my $stats = $self->{_stats} || $self->stats or return undef; $stats->pri; } 1; __END__