Provided by: libminion-perl_7.05-1_all 

NAME
Minion::Worker - Minion worker
SYNOPSIS
use Minion::Worker; my $worker = Minion::Worker->new(minion => $minion);
DESCRIPTION
Minion::Worker performs jobs for Minion.
EVENTS
Minion::Worker inherits all events from Mojo::EventEmitter and can emit the following new ones. dequeue $worker->on(dequeue => sub { my ($worker, $job) = @_; ... }); Emitted in the worker process after a job has been dequeued. $worker->on(dequeue => sub { my ($worker, $job) = @_; my $id = $job->id; say "Job $id has been dequeued."; });
ATTRIBUTES
Minion::Worker implements the following attributes. commands my $commands = $worker->commands; $worker = $worker->commands({jobs => sub {...}}); Registered worker remote control commands. id my $id = $worker->id; $worker = $worker->id($id); Worker id. minion my $minion = $worker->minion; $worker = $worker->minion(Minion->new); Minion object this worker belongs to. status my $status = $worker->status; $worker = $worker->status({queues => ['default', 'important']); Status information to share every time "register" is called.
METHODS
Minion::Worker inherits all methods from Mojo::EventEmitter and implements the following new ones. add_command $worker = $worker->add_command(jobs => sub {...}); Register a worker remote control command. $worker->add_command(foo => sub { my ($worker, @args) = @_; ... }); dequeue my $job = $worker->dequeue(0.5); my $job = $worker->dequeue(0.5 => {queues => ['important']}); Wait a given amount of time in seconds for a job, dequeue Minion::Job object and transition from "inactive" to "active" state, or return "undef" if queues were empty. These options are currently available: id id => '10023' Dequeue a specific job. queues queues => ['important'] One or more queues to dequeue jobs from, defaults to "default". info my $info = $worker->info; Get worker information. # Check worker host my $host = $worker->info->{host}; These fields are currently available: host host => 'localhost' Worker host. jobs jobs => ['10023', '10024', '10025', '10029'] Ids of jobs the worker is currently processing. notified notified => 784111777 Epoch time worker sent the last heartbeat. pid pid => 12345 Process id of worker. started started => 784111777 Epoch time worker was started. status status => {queues => ['default', 'important']} Hash reference with whatever status information the worker would like to share. process_commands $worker = $worker->process_commands; Process worker remote control commands. register $worker = $worker->register; Register worker or send heartbeat to show that this worker is still alive. unregister $worker = $worker->unregister; Unregister worker.
SEE ALSO
Minion, Mojolicious::Guides, <http://mojolicious.org>.