NAME

XAS::Lib::Gearman::Client - An interface to the Gearman job queue.

SYNOPSIS

use XAS:::Lib::Gearman::Client;

my $client = XAS::Lib::Gearman::Client->new(
    -server => 'localhost',
    -port   => '4730'
);

my $data = $client->process('reverse', {string => 'this is a string'});
printf("reversed: %s\n", $data);

DESCRIPTION

This module is a wrapper around the Gearman::XS::Client. If unifies common methods with error handling to make main line code easier to work with.

METHODS

process

This method runs a task in the foreground. It returns the processed response from the worker. It takes the following parameters:

-queue

The queue to run the task under.

-params

The paramters for that task. They should be a hashref.

-status

An optional call back to report the status of the running task. The callback will take these following parameters:

-jobid

The ID of the job.

-numerator

The numerator of the status.

-denominator

The denominator of the status.

-priority

An optional priority to run the job at. The priorities are 'low', 'medium' and 'high'. The default is 'medium'.

submit

This method will submit a job to be run in the background. It will return the job id of the background task. It takes the following parameters:

-queue

The queue to run the task on.

-params

The paramters to pass to the job. This should be a hashref.

-priority

An optional priority to run the job at. The priorities are 'low', 'medium' and 'high'. The default is 'medium'.

status

This method will return the status of a background job. It returns a XAS::Lib::Gearman::Client::Status object. It takes following parameter:

-jobid

The id of the background job.

SEE ALSO

Gearman::XS
Gearman::XS::Client
Gearman::XS::Worker

XAS

AUTHOR

Kevin L. Esteb, <kevin@kesteb.us>

COPYRIGHT AND LICENSE

Copyright (C) 2012 by Kevin L. Esteb

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.