summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2018-05-24 15:35:46 +0200
committerSimon Rettberg2018-05-24 15:35:46 +0200
commit5e786faa6c577abfd48976a6839f61d08b0a6e5e (patch)
tree510e88641bbd80f23256c8e33a9027c059a0f8d8
parent[serversetup-bwlp] Tweak help text (diff)
downloadslx-admin-5e786faa6c577abfd48976a6839f61d08b0a6e5e.tar.gz
slx-admin-5e786faa6c577abfd48976a6839f61d08b0a6e5e.tar.xz
slx-admin-5e786faa6c577abfd48976a6839f61d08b0a6e5e.zip
Introduce proper constants for taskmanager status
-rw-r--r--inc/property.inc.php2
-rw-r--r--inc/taskmanager.inc.php27
-rw-r--r--modules-available/sysconfig/addmodule_custommodule.inc.php4
-rw-r--r--modules-available/sysconfig/inc/configmodule.inc.php2
-rw-r--r--modules-available/sysconfig/inc/configtgz.inc.php2
-rw-r--r--modules-available/sysconfig/page.inc.php6
6 files changed, 23 insertions, 20 deletions
diff --git a/inc/property.inc.php b/inc/property.inc.php
index 56adb823..b69be1f8 100644
--- a/inc/property.inc.php
+++ b/inc/property.inc.php
@@ -168,7 +168,7 @@ class Property
if (!Taskmanager::isFinished($task)) {
$task = Taskmanager::waitComplete($task['id'], 5000);
}
- if ($task['statusCode'] !== TASK_FINISHED || !isset($task['data']['content'])) {
+ if ($task['statusCode'] !== Taskmanager::TASK_FINISHED || !isset($task['data']['content'])) {
return isset($task['data']['error']) ? $task['data']['error'] : 'Timeout';
}
$data = json_decode($task['data']['content'], true);
diff --git a/inc/taskmanager.inc.php b/inc/taskmanager.inc.php
index 54821e59..dab950ed 100644
--- a/inc/taskmanager.inc.php
+++ b/inc/taskmanager.inc.php
@@ -6,6 +6,13 @@
class Taskmanager
{
+ const NO_SUCH_TASK = 'NO_SUCH_TASK';
+ const TASK_FINISHED = 'TASK_FINISHED';
+ const TASK_ERROR = 'TASK_ERROR';
+ const TASK_WAITING = 'TASK_WAITING';
+ const NO_SUCH_INSTANCE = 'NO_SUCH_INSTANCE';
+ const TASK_PROCESSING = 'TASK_PROCESSING';
+
/**
* UDP socket used for communication with the task manager
* @var resource
@@ -49,7 +56,7 @@ class Taskmanager
if ($async)
return true;
$reply = self::readReply($seq);
- if ($reply === false || !is_array($reply) || !isset($reply['id']) || (isset($reply['statusCode']) && $reply['statusCode'] === NO_SUCH_TASK)) {
+ if ($reply === false || !is_array($reply) || !isset($reply['id']) || (isset($reply['statusCode']) && $reply['statusCode'] === Taskmanager::NO_SUCH_TASK)) {
self::addErrorMessage($reply);
return false;
}
@@ -82,7 +89,7 @@ class Taskmanager
/**
* Checks whether the given task id corresponds to a known task in the taskmanager.
* Returns true iff the taskmanager is reachable and the status of the task
- * is different from NO_SUCH_INSTANCE/_TASK.
+ * is different from Taskmanager::NO_SUCH_INSTANCE/_TASK.
* If you pass an array it is assumed that it was already queried and is evaluated
* directly.
*
@@ -96,8 +103,8 @@ class Taskmanager
if (is_string($task)) {
$task = self::status($task);
}
- return isset($task['statusCode']) && $task['statusCode'] !== NO_SUCH_INSTANCE
- && $task['statusCode'] !== NO_SUCH_TASK;
+ return isset($task['statusCode']) && $task['statusCode'] !== Taskmanager::NO_SUCH_INSTANCE
+ && $task['statusCode'] !== Taskmanager::NO_SUCH_TASK;
}
/**
@@ -110,7 +117,7 @@ class Taskmanager
public static function waitComplete($task, $timeout = 2500)
{
if (is_array($task) && isset($task['id'])) {
- if ($task['statusCode'] !== TASK_PROCESSING && $task['statusCode'] !== TASK_WAITING) {
+ if ($task['statusCode'] !== Taskmanager::TASK_PROCESSING && $task['statusCode'] !== Taskmanager::TASK_WAITING) {
self::release($task['id']);
return $task;
}
@@ -124,7 +131,7 @@ class Taskmanager
$status = self::status($task);
if (!isset($status['statusCode']))
break;
- if ($status['statusCode'] !== TASK_PROCESSING && $status['statusCode'] !== TASK_WAITING) {
+ if ($status['statusCode'] !== Taskmanager::TASK_PROCESSING && $status['statusCode'] !== Taskmanager::TASK_WAITING) {
$done = true;
break;
}
@@ -147,7 +154,7 @@ class Taskmanager
{
if (!is_array($task) || !isset($task['statusCode']) || !isset($task['id']))
return true;
- if ($task['statusCode'] !== TASK_WAITING && $task['statusCode'] !== TASK_PROCESSING && $task['statusCode'] !== TASK_FINISHED)
+ if ($task['statusCode'] !== Taskmanager::TASK_WAITING && $task['statusCode'] !== Taskmanager::TASK_PROCESSING && $task['statusCode'] !== Taskmanager::TASK_FINISHED)
return true;
return false;
}
@@ -163,7 +170,7 @@ class Taskmanager
{
if (!is_array($task) || !isset($task['statusCode']) || !isset($task['id']))
return false;
- if ($task['statusCode'] !== TASK_WAITING && $task['statusCode'] !== TASK_PROCESSING)
+ if ($task['statusCode'] !== Taskmanager::TASK_WAITING && $task['statusCode'] !== Taskmanager::TASK_PROCESSING)
return true;
return false;
}
@@ -244,7 +251,3 @@ class Taskmanager
}
}
-
-foreach (array('TASK_FINISHED', 'TASK_ERROR', 'TASK_WAITING', 'NO_SUCH_TASK', 'NO_SUCH_INSTANCE', 'TASK_PROCESSING') as $i) {
- define($i, $i);
-}
diff --git a/modules-available/sysconfig/addmodule_custommodule.inc.php b/modules-available/sysconfig/addmodule_custommodule.inc.php
index 8c24a071..c234f765 100644
--- a/modules-available/sysconfig/addmodule_custommodule.inc.php
+++ b/modules-available/sysconfig/addmodule_custommodule.inc.php
@@ -62,7 +62,7 @@ class CustomModule_ProcessUpload extends AddModule_Base
unlink($tempfile);
$this->tmError();
}
- if ($status['statusCode'] != TASK_FINISHED) {
+ if ($status['statusCode'] != Taskmanager::TASK_FINISHED) {
unlink($tempfile);
$this->taskError($status);
}
@@ -128,7 +128,7 @@ class CustomModule_CompressModule extends AddModule_Base
if (!isset($status['statusCode'])) {
$this->tmError();
}
- if ($status['statusCode'] != TASK_FINISHED) {
+ if ($status['statusCode'] != Taskmanager::TASK_FINISHED) {
$this->taskError($status);
}
// Seems ok, create entry
diff --git a/modules-available/sysconfig/inc/configmodule.inc.php b/modules-available/sysconfig/inc/configmodule.inc.php
index 2cee37a9..b6db9c4f 100644
--- a/modules-available/sysconfig/inc/configmodule.inc.php
+++ b/modules-available/sysconfig/inc/configmodule.inc.php
@@ -354,7 +354,7 @@ abstract class ConfigModule
// Wait for generation if requested
if ($timeoutMs > 0 && isset($ret['id']) && !Taskmanager::isFinished($ret))
$ret = Taskmanager::waitComplete($ret, $timeoutMs);
- if ($ret === true || (isset($ret['statusCode']) && $ret['statusCode'] === TASK_FINISHED)) {
+ if ($ret === true || (isset($ret['statusCode']) && $ret['statusCode'] === Taskmanager::TASK_FINISHED)) {
// Already Finished
if (file_exists($this->moduleArchive) && !file_exists($tmpTgz))
$tmpTgz = false; // If generateInternal succeeded and there's no tmpTgz, it means the file didn't have to be updated
diff --git a/modules-available/sysconfig/inc/configtgz.inc.php b/modules-available/sysconfig/inc/configtgz.inc.php
index 5b459a2e..7b042cdb 100644
--- a/modules-available/sysconfig/inc/configtgz.inc.php
+++ b/modules-available/sysconfig/inc/configtgz.inc.php
@@ -112,7 +112,7 @@ class ConfigTgz
// Wait for completion
if ($timeoutMs > 0 && !Taskmanager::isFailed($task) && !Taskmanager::isFinished($task))
$task = Taskmanager::waitComplete($task, $timeoutMs);
- if ($task === true || (isset($task['statusCode']) && $task['statusCode'] === TASK_FINISHED)) {
+ if ($task === true || (isset($task['statusCode']) && $task['statusCode'] === Taskmanager::TASK_FINISHED)) {
// Success!
$this->markUpdated();
return true;
diff --git a/modules-available/sysconfig/page.inc.php b/modules-available/sysconfig/page.inc.php
index 8d1799af..515d432c 100644
--- a/modules-available/sysconfig/page.inc.php
+++ b/modules-available/sysconfig/page.inc.php
@@ -425,12 +425,12 @@ class Page_SysConfig extends Page
$task = Taskmanager::submit('DeleteFile', array(
'file' => $row['filepath']
));
- if (isset($task['statusCode']) && $task['statusCode'] === TASK_WAITING) {
+ if (isset($task['statusCode']) && $task['statusCode'] === Taskmanager::TASK_WAITING) {
$task = Taskmanager::waitComplete($task['id']);
}
- if (!isset($task['statusCode']) || $task['statusCode'] === TASK_ERROR) {
+ if (!isset($task['statusCode']) || $task['statusCode'] === Taskmanager::TASK_ERROR) {
Message::addWarning('main.task-error', $task['data']['error']);
- } elseif ($task['statusCode'] === TASK_FINISHED) {
+ } elseif ($task['statusCode'] === Taskmanager::TASK_FINISHED) {
Message::addSuccess('module-deleted', $row['title']);
}
Database::exec("DELETE FROM configtgz_module WHERE moduleid = :moduleid LIMIT 1", array('moduleid' => $moduleid));