From 868d748dbfa51461b5ee7cc827be6f314ae0959d Mon Sep 17 00:00:00 2001 From: Côme Chilliet Date: Mon, 27 Jun 2022 11:53:10 +0200 Subject: Code cleaning of Background/ListCommand MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Côme Chilliet --- core/Command/Background/ListCommand.php | 19 +++++-------------- lib/private/BackgroundJob/JobList.php | 9 ++++++--- lib/public/BackgroundJob/IJobList.php | 18 +++++++++--------- 3 files changed, 20 insertions(+), 26 deletions(-) diff --git a/core/Command/Background/ListCommand.php b/core/Command/Background/ListCommand.php index a0bf611606f..0bbf01d76db 100644 --- a/core/Command/Background/ListCommand.php +++ b/core/Command/Background/ListCommand.php @@ -2,9 +2,9 @@ declare(strict_types=1); /** - * @copyright Copyright (c) 2021, Joas Schilling + * @copyright Copyright (c) 2022, Côme Chilliet * - * @author Joas Schilling + * @author Côme Chilliet * * @license GNU AGPL version 3 or any later version * @@ -26,26 +26,17 @@ declare(strict_types=1); namespace OC\Core\Command\Background; use OC\Core\Command\Base; -use OCP\BackgroundJob\IJob; use OCP\BackgroundJob\IJobList; -use OCP\ILogger; -use Symfony\Component\Console\Command\Command; -use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; class ListCommand extends Base { - /** @var IJobList */ - protected $jobList; - /** @var ILogger */ - protected $logger; + protected IJobList $jobList; - public function __construct(IJobList $jobList, - ILogger $logger) { + public function __construct(IJobList $jobList) { parent::__construct(); $this->jobList = $jobList; - $this->logger = $logger; } protected function configure(): void { @@ -83,7 +74,7 @@ class ListCommand extends Base { protected function formatJobs(array $jobs): array { return array_map( - fn($job) => [ + fn ($job) => [ 'id' => $job->getId(), 'class' => get_class($job), 'last_run' => $job->getLastRun(), diff --git a/lib/private/BackgroundJob/JobList.php b/lib/private/BackgroundJob/JobList.php index 8ba993646a9..82e8e86c5c6 100644 --- a/lib/private/BackgroundJob/JobList.php +++ b/lib/private/BackgroundJob/JobList.php @@ -40,7 +40,6 @@ use OCP\IConfig; use OCP\IDBConnection; class JobList implements IJobList { - protected IDBConnection $connection; protected IConfig $config; protected ITimeFactory $timeFactory; @@ -163,12 +162,16 @@ class JobList implements IJobList { * * @return IJob[] * @deprecated 9.0.0 - This method is dangerous since it can cause load and - * memory problems when creating too many instances. + * memory problems when creating too many instances. Use getJobs instead. */ public function getAll() { return $this->getJobs(null, null, 0); } + /** + * @param IJob|class-string|null $job + * @return IJob[] + */ public function getJobs($job, ?int $limit, int $offset): array { $query = $this->connection->getQueryBuilder(); $query->select('*') @@ -297,7 +300,7 @@ class JobList implements IJobList { try { // Try to load the job as a service /** @var IJob $job */ - $job = \OC::$server->get($row['class']); + $job = \OCP\Server::get($row['class']); } catch (QueryException $e) { if (class_exists($row['class'])) { $class = $row['class']; diff --git a/lib/public/BackgroundJob/IJobList.php b/lib/public/BackgroundJob/IJobList.php index 7bc7420f35b..e2fd5b87bcb 100644 --- a/lib/public/BackgroundJob/IJobList.php +++ b/lib/public/BackgroundJob/IJobList.php @@ -47,7 +47,7 @@ interface IJobList { /** * Add a job to the list * - * @param \OCP\BackgroundJob\IJob|string $job + * @param IJob|string $job * @param mixed $argument The argument to be passed to $job->run() when the job is exectured * @since 7.0.0 */ @@ -56,7 +56,7 @@ interface IJobList { /** * Remove a job from the list * - * @param \OCP\BackgroundJob\IJob|string $job + * @param IJob|string $job * @param mixed $argument * @since 7.0.0 */ @@ -65,7 +65,7 @@ interface IJobList { /** * check if a job is in the list * - * @param \OCP\BackgroundJob\IJob|string $job + * @param IJob|string $job * @param mixed $argument * @return bool * @since 7.0.0 @@ -75,18 +75,18 @@ interface IJobList { /** * get all jobs in the list * - * @return \OCP\BackgroundJob\IJob[] + * @return IJob[] * @since 7.0.0 * @deprecated 9.0.0 - This method is dangerous since it can cause load and - * memory problems when creating too many instances. + * memory problems when creating too many instances. Use getJobs instead. */ public function getAll(); /** * Get jobs matching the search * - * @param \OCP\BackgroundJob\IJob|class-string|null $job - * @return \OCP\BackgroundJob\IJob[] + * @param IJob|class-string|null $job + * @return IJob[] * @since 25.0.0 */ public function getJobs($job, ?int $limit, int $offset): array; @@ -95,14 +95,14 @@ interface IJobList { * get the next job in the list * * @param bool $onlyTimeSensitive - * @return \OCP\BackgroundJob\IJob|null + * @return IJob|null * @since 7.0.0 - In 24.0.0 parameter $onlyTimeSensitive got added */ public function getNext(bool $onlyTimeSensitive = false): ?IJob; /** * @param int $id - * @return \OCP\BackgroundJob\IJob|null + * @return IJob|null * @since 7.0.0 */ public function getById($id); -- cgit v1.2.3