diff --git a/lib/private/App/AppManager.php b/lib/private/App/AppManager.php index 7b0a52b2c7a..6fb64610b48 100644 --- a/lib/private/App/AppManager.php +++ b/lib/private/App/AppManager.php @@ -1055,7 +1055,10 @@ class AppManager implements IAppManager { $this->clearAppsCache(); $this->getAppVersion($appId, false); - \OC_App::setupBackgroundJobs($appData['background-jobs']); + // Setup background jobs + foreach ($appData['background-jobs'] as $job) { + $queue->add($job); + } //set remote/public handlers foreach ($appData['remote'] as $name => $path) { diff --git a/lib/private/Installer.php b/lib/private/Installer.php index 7182b33e79d..c303c1b6cfb 100644 --- a/lib/private/Installer.php +++ b/lib/private/Installer.php @@ -21,6 +21,7 @@ use OC\Files\FilenameValidator; use OC_App; use OCP\App\AppPathNotFoundException; use OCP\App\IAppManager; +use OCP\BackgroundJob\IJobList; use OCP\Files; use OCP\HintException; use OCP\Http\Client\IClientService; @@ -552,7 +553,11 @@ class Installer { $output->debug('Registering tasks of ' . $info['id']); } - \OC_App::setupBackgroundJobs($info['background-jobs']); + // Setup background jobs + $queue = Server::get(IJobList::class); + foreach ($info['background-jobs'] as $job) { + $queue->add($job); + } // Run appinfo/install.php self::includeAppScript($appPath . '/appinfo/install.php'); diff --git a/lib/private/legacy/OC_App.php b/lib/private/legacy/OC_App.php index b3fbca04ec7..7f3967236e2 100644 --- a/lib/private/legacy/OC_App.php +++ b/lib/private/legacy/OC_App.php @@ -575,6 +575,9 @@ class OC_App { $r->run(); } + /** + * @deprecated 32.0.0 Use the IJobList directly instead + */ public static function setupBackgroundJobs(array $jobs) { $queue = \OC::$server->getJobList(); foreach ($jobs as $job) {