X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FProcess.php;h=94699d6acc9d21ce59e5eb8288157ffcaf64dccb;hb=f1d3f60499a325557be866fedd31b46093d477ae;hp=2652929681d6e6209280a74098c9954f9f6f892d;hpb=8293d5ed0af78ae6cc5629bb1f982a7b29794d32;p=friendica.git diff --git a/src/Model/Process.php b/src/Model/Process.php index 2652929681..94699d6acc 100644 --- a/src/Model/Process.php +++ b/src/Model/Process.php @@ -1,6 +1,6 @@ dba = $dba; + } + /** * Insert a new process row. If the pid parameter is omitted, we use the current pid * * @param string $command - * @param string $pid + * @param int $pid The process id to insert * @return bool * @throws \Exception */ - public static function insert($command, $pid = null) + public function insert(string $command, int $pid) { $return = true; - if (is_null($pid)) { - $pid = getmypid(); - } + $this->dba->transaction(); - DBA::transaction(); - - if (!DBA::exists('process', ['pid' => $pid])) { - $return = DBA::insert('process', ['pid' => $pid, 'command' => $command, 'created' => DateTimeFormat::utcNow()]); + if (!$this->dba->exists('process', ['pid' => $pid])) { + $return = $this->dba->insert('process', ['pid' => $pid, 'command' => $command, 'created' => DateTimeFormat::utcNow()]); } - DBA::commit(); + $this->dba->commit(); return $return; } @@ -59,33 +63,29 @@ class Process /** * Remove a process row by pid. If the pid parameter is omitted, we use the current pid * - * @param string $pid + * @param int $pid The pid to delete * @return bool * @throws \Exception */ - public static function deleteByPid($pid = null) + public function deleteByPid(int $pid) { - if ($pid === null) { - $pid = getmypid(); - } - - return DBA::delete('process', ['pid' => $pid]); + return $this->dba->delete('process', ['pid' => $pid]); } /** * Clean the process table of inactive physical processes */ - public static function deleteInactive() + public function deleteInactive() { - DBA::transaction(); + $this->dba->transaction(); - $processes = DBA::select('process', ['pid']); - while($process = DBA::fetch($processes)) { + $processes = $this->dba->select('process', ['pid']); + while($process = $this->dba->fetch($processes)) { if (!posix_kill($process['pid'], 0)) { - self::deleteByPid($process['pid']); + $this->deleteByPid($process['pid']); } } - - DBA::commit(); + $this->dba->close($processes); + $this->dba->commit(); } }