]> source.dussan.org Git - nextcloud-server.git/commitdiff
Use \OCP\IContainer::injectFn to boot the DAV app
authorChristoph Wurst <christoph@winzerhof-wurst.at>
Mon, 29 Jun 2020 14:04:17 +0000 (16:04 +0200)
committerChristoph Wurst <christoph@winzerhof-wurst.at>
Fri, 3 Jul 2020 12:37:53 +0000 (14:37 +0200)
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
apps/dav/lib/AppInfo/Application.php

index a0d75f5fe2576548ec0b6cf1895d2fd5f139c778..083bd8a474f4efebad4d041bd173b4f6413a7a0a 100644 (file)
@@ -105,30 +105,14 @@ class Application extends App implements IBootstrap {
                // Load all dav apps
                \OC_App::loadApps(['dav']);
 
-               $this->registerHooks(
-                       $context->getAppContainer()->query(HookManager::class),
-                       $context->getServerContainer()->getEventDispatcher(),
-                       $context->getAppContainer(),
-                       $context->getServerContainer()
-               );
-               $this->registerContactsManager(
-                       $context->getAppContainer()->query(IContactsManager::class),
-                       $context->getAppContainer()
-               );
-               $this->registerCalendarManager(
-                       $context->getAppContainer()->query(ICalendarManager::class),
-                       $context->getAppContainer()
-               );
-               $this->registerNotifier(
-                       $context->getServerContainer()->getNotificationManager()
-               );
-               $this->registerCalendarReminders(
-                       $context->getAppContainer()->query(NotificationProviderManager::class),
-                       $context->getAppContainer()->query(ILogger::class)
-               );
+               $context->injectFn([$this, 'registerHooks']);
+               $context->injectFn([$this, 'registerContactsManager']);
+               $context->injectFn([$this, 'registerCalendarManager']);
+               $context->injectFn([$this, 'registerNotifier']);
+               $context->injectFn([$this, 'registerCalendarReminders']);
        }
 
-       private function registerHooks(HookManager $hm,
+       public function registerHooks(HookManager $hm,
                                                                   EventDispatcherInterface $dispatcher,
                                                                   IAppContainer $container,
                                                                   IServerContainer $serverContainer) {
@@ -349,7 +333,7 @@ class Application extends App implements IBootstrap {
                $dispatcher->addListener('\OCP\Calendar\Room\ForceRefreshEvent', $eventHandler);
        }
 
-       private function registerContactsManager(IContactsManager $cm, IAppContainer $container): void {
+       public function registerContactsManager(IContactsManager $cm, IAppContainer $container): void {
                $cm->register(function () use ($container, $cm): void {
                        $user = \OC::$server->getUserSession()->getUser();
                        if (!is_null($user)) {
@@ -377,7 +361,7 @@ class Application extends App implements IBootstrap {
                $cm->setupSystemContactsProvider($contactsManager, $urlGenerator);
        }
 
-       private function registerCalendarManager(ICalendarManager $calendarManager,
+       public function registerCalendarManager(ICalendarManager $calendarManager,
                                                                                         IAppContainer $container): void {
                $calendarManager->register(function () use ($container, $calendarManager) {
                        $user = \OC::$server->getUserSession()->getUser();
@@ -394,11 +378,11 @@ class Application extends App implements IBootstrap {
                $cm->setupCalendarProvider($calendarManager, $userId);
        }
 
-       private function registerNotifier(INotificationManager $manager): void {
+       public function registerNotifier(INotificationManager $manager): void {
                $manager->registerNotifierService(Notifier::class);
        }
 
-       private function registerCalendarReminders(NotificationProviderManager $manager,
+       public function registerCalendarReminders(NotificationProviderManager $manager,
                                                                                           ILogger $logger): void {
                try {
                        $manager->registerProvider(AudioProvider::class);