diff --git a/apps/updatenotification/appinfo/app.php b/apps/updatenotification/appinfo/app.php deleted file mode 100644 index a0608d0237..0000000000 --- a/apps/updatenotification/appinfo/app.php +++ /dev/null @@ -1,30 +0,0 @@ - - * - * @author Joas Schilling - * @author Lukas Reschke - * @author Robin Appelman - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -use \OCA\UpdateNotification\AppInfo\Application; - -/** @var Application $app */ -$app = \OC::$server->query(Application::class); -$app->register(); diff --git a/apps/updatenotification/lib/AppInfo/Application.php b/apps/updatenotification/lib/AppInfo/Application.php index 9a0461d573..12d5cd9e62 100644 --- a/apps/updatenotification/lib/AppInfo/Application.php +++ b/apps/updatenotification/lib/AppInfo/Application.php @@ -7,6 +7,7 @@ declare(strict_types=1); * * @author Joas Schilling * @author Lukas Reschke + * @author Morris Jobke * * @license GNU AGPL version 3 or any later version * @@ -30,17 +31,23 @@ namespace OCA\UpdateNotification\AppInfo; use OCA\UpdateNotification\Notification\Notifier; use OCA\UpdateNotification\UpdateChecker; use OCP\AppFramework\App; +use OCP\AppFramework\Bootstrap\IBootContext; +use OCP\AppFramework\Bootstrap\IBootstrap; +use OCP\AppFramework\Bootstrap\IRegistrationContext; use OCP\AppFramework\QueryException; use OCP\IUser; use OCP\Util; -class Application extends App { +class Application extends App implements IBootstrap { public function __construct() { parent::__construct('updatenotification', []); } - public function register() { - $server = $this->getContainer()->getServer(); + public function register(IRegistrationContext $context): void { + } + + public function boot(IBootContext $context): void { + $server = $context->getServerContainer(); if ($server->getConfig()->getSystemValue('updatechecker', true) !== true) { // Updater check is disabled @@ -48,7 +55,8 @@ class Application extends App { } // Always register the notifier, so background jobs (without a user) can send push notifications - $this->registerNotifier(); + $notificationsManager = $server->getNotificationManager(); + $notificationsManager->registerNotifierService(Notifier::class); $user = $server->getUserSession()->getUser(); if (!$user instanceof IUser) { @@ -59,7 +67,7 @@ class Application extends App { if (!$server->getAppManager()->isEnabledForUser('notifications') && $server->getGroupManager()->isAdmin($user->getUID())) { try { - $updateChecker = $this->getContainer()->query(UpdateChecker::class); + $updateChecker = $server->query(UpdateChecker::class); } catch (QueryException $e) { $server->getLogger()->logException($e); return; @@ -71,9 +79,4 @@ class Application extends App { } } } - - public function registerNotifier() { - $notificationsManager = $this->getContainer()->getServer()->getNotificationManager(); - $notificationsManager->registerNotifierService(Notifier::class); - } }