scripts daemonize themselves

darcs-hash:20080904184031-84dde-eba2061f3aa898d0c791ffeb70837f759778c567.gz
This commit is contained in:
Evan Prodromou
2008-09-04 14:40:31 -04:00
parent 95d9920d78
commit aed0fff4ea
9 changed files with 167 additions and 37 deletions

View File

@@ -19,7 +19,11 @@
define('CLAIM_TIMEOUT', 1200);
class QueueHandler {
if (!defined('LACONICA')) { exit(1); }
require_once(INSTALLDIR.'/lib/daemon.php');
class QueueHandler extends Daemon {
var $_id = 'generic';
@@ -32,6 +36,10 @@ class QueueHandler {
function class_name() {
return ucfirst($this->transport()) . 'Handler';
}
function name() {
return strtolower($this->class_name().'.'.$this->get_id());
}
function get_id() {
return $this->_id;
@@ -55,7 +63,10 @@ class QueueHandler {
return true;
}
function handle_queue() {
function run() {
if (!$this->start()) {
return false;
}
$this->log(LOG_INFO, 'checking for queued notices');
$transport = $this->transport();
do {
@@ -87,6 +98,10 @@ class QueueHandler {
$this->idle(5);
}
} while (true);
if (!$this->finish()) {
return false;
}
return true;
}
function idle($timeout=0) {