Difference between revisions of "Freeside:1.9:Documentation:Developer/FS/queue"

From Freeside
Jump to: navigation, search
(import from POD)
 
m (Edit via perl MediaWiki framework (1.13))
 
(One intermediate revision by the same user not shown)
Line 20: Line 20:
 
An FS::queue object represents an queued job. FS::queue inherits from FS::Record. The following fields are currently supported:
 
An FS::queue object represents an queued job. FS::queue inherits from FS::Record. The following fields are currently supported:
  
; jobnum - primary key; job - fully-qualified subroutine name; status - job status; statustext - freeform text status message; _date - UNIX timestamp; svcnum - optional link to service (see [[Freeside:1.9:Documentation:Developer/FS/cust svc|FS::cust_svc]])
+
; jobnum
 +
:Primary key
 +
; job
 +
:Fully-qualified subroutine name
 +
; status
 +
:Job status (new, locked, or failed)
 +
; statustext
 +
:Freeform text status message
 +
; _date
 +
:UNIX timestamp
 +
; svcnum
 +
:Optional link to service (see [[Freeside:1.9:Documentation:Developer/FS/cust svc|FS::cust_svc]]).
 +
; custnum
 +
:Optional link to customer (see [[Freeside:1.9:Documentation:Developer/FS/cust main|FS::cust_main]]).
 +
; secure
 +
:Secure flag, 'Y' indicates that when using encryption, the job needs to be run on a machine with the private key.
 +
 
 
==METHODS==
 
==METHODS==
 
; new HASHREF
 
; new HASHREF
:Creates a new job. To add the job to the database, see [[Freeside:1.9:Documentation:Developer/#insert|"insert"|#insert|"insert"]].
+
:Creates a new job. To add the job to the database, see [[#insert|"insert"]].
  
 
:Note that this stores the hash reference, not a distinct copy of the hash it points to. You can ask the object for a copy with the ''hash'' method.
 
:Note that this stores the hash reference, not a distinct copy of the hash it points to. You can ask the object for a copy with the ''hash'' method.

Latest revision as of 17:16, 6 February 2009

NAME

FS::queue - Object methods for queue records

SYNOPSIS

 use FS::queue;

 $record = new FS::queue \%hash;
 $record = new FS::queue { 'column' => 'value' };

 $error = $record->insert;

 $error = $new_record->replace($old_record);

 $error = $record->delete;

 $error = $record->check;

DESCRIPTION

An FS::queue object represents an queued job. FS::queue inherits from FS::Record. The following fields are currently supported:

jobnum
Primary key
job
Fully-qualified subroutine name
status
Job status (new, locked, or failed)
statustext
Freeform text status message
_date
UNIX timestamp
svcnum
Optional link to service (see FS::cust_svc).
custnum
Optional link to customer (see FS::cust_main).
secure
Secure flag, 'Y' indicates that when using encryption, the job needs to be run on a machine with the private key.

METHODS

new HASHREF
Creates a new job. To add the job to the database, see "insert".
Note that this stores the hash reference, not a distinct copy of the hash it points to. You can ask the object for a copy with the hash method.
insert [ ARGUMENT, ARGUMENT... ]
Adds this record to the database. If there is an error, returns the error, otherwise returns false.
If any arguments are supplied, a queue_arg record for each argument is also created (see FS::queue_arg).
delete
Delete this record from the database. Any corresponding queue_arg records are deleted as well
replace OLD_RECORD
Replaces the OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.
check
Checks all fields to make sure this is a valid job. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.
args
Returns a list of the arguments associated with this job.
cust_svc
Returns the FS::cust_svc object associated with this job, if any.
queue_depend
Returns the FS::queue_depend objects associated with this job, if any. (Dependancies that must complete before this job can be run).
depend_insert OTHER_JOBNUM
Inserts a dependancy for this job - it will not be run until the other job specified completes. If there is an error, returns the error, otherwise returns false.
When using job dependancies, you should wrap the insertion of all relevant jobs in a database transaction.
queue_depended
Returns the FS::queue_depend objects that associate other jobs with this job, if any. (The jobs that are waiting for this job to complete before they can run).
depended_delete
Deletes the other queued jobs (FS::queue objects) that are waiting for this job, if any. If there is an error, returns the error, otherwise returns false.
update_statustext VALUE
Updates the statustext value of this job to supplied value, in the database. If there is an error, returns the error, otherwise returns false.

SUBROUTINES

joblisting HASHREF NOACTIONS

BUGS

$jobnums global

SEE ALSO

FS::Record, schema.html from the base documentation.