]> source.dussan.org Git - nextcloud-server.git/commitdiff
Use magic DI
authorJoas Schilling <coding@schilljs.com>
Mon, 19 Sep 2016 23:15:24 +0000 (01:15 +0200)
committerJoas Schilling <coding@schilljs.com>
Mon, 19 Sep 2016 23:15:24 +0000 (01:15 +0200)
apps/dav/appinfo/app.php
apps/dav/appinfo/register_command.php
apps/dav/lib/AppInfo/Application.php
apps/dav/lib/CalDAV/BirthdayService.php
apps/dav/tests/unit/AppInfo/ApplicationTest.php

index ebc1d09e3f1105968618d619ec4c22922ee0bf1c..0d417fd3fed2d225d77eacf73d473c3a8de32ad6 100644 (file)
@@ -23,6 +23,7 @@
  */
 
 use OCA\DAV\AppInfo\Application;
+use OCA\DAV\CardDAV\CardDavBackend;
 use Symfony\Component\EventDispatcher\GenericEvent;
 
 $app = new Application();
@@ -36,8 +37,8 @@ $eventDispatcher = \OC::$server->getEventDispatcher();
 
 $eventDispatcher->addListener('OCP\Federation\TrustedServerEvent::remove',
        function(GenericEvent $event) use ($app) {
-               /** @var \OCA\DAV\CardDAV\CardDavBackend $cardDavBackend */
-               $cardDavBackend = $app->getContainer()->query('CardDavBackend');
+               /** @var CardDavBackend $cardDavBackend */
+               $cardDavBackend = $app->getContainer()->query(CardDavBackend::class);
                $addressBookUri = $event->getSubject();
                $addressBook = $cardDavBackend->getAddressBooksByUri('principals/system/system', $addressBookUri);
                if (!is_null($addressBook)) {
index 7595c1b8335551e2134d4d82374f5235f4878113..57bf8ff5dd9bd4196b52e854a5d968ca4b045271 100644 (file)
@@ -34,6 +34,6 @@ $app = new Application();
 
 /** @var Symfony\Component\Console\Application $application */
 $application->add(new CreateCalendar($userManager, $groupManager, $dbConnection));
-$application->add(new CreateAddressBook($userManager, $app->getContainer()->query('CardDavBackend')));
+$application->add(new CreateAddressBook($userManager, $app->getContainer()->query(\OCA\DAV\CardDAV\CardDavBackend::class)));
 $application->add(new SyncSystemAddressBook($app->getSyncService()));
-$application->add(new SyncBirthdayCalendar($userManager, $app->getContainer()->query('BirthdayService')));
+$application->add(new SyncBirthdayCalendar($userManager, $app->getContainer()->query(\OCA\DAV\CalDAV\BirthdayService::class)));
index 17145847fa1387c58e80ea92dc41d8dc0fd6564f..dc3ce7e8bb2b4c3168b16248658b25b127e729b6 100644 (file)
 namespace OCA\DAV\AppInfo;
 
 use OCA\DAV\CalDAV\BirthdayService;
-use OCA\DAV\CalDAV\CalDavBackend;
-use OCA\DAV\CardDAV\CardDavBackend;
 use OCA\DAV\CardDAV\ContactsManager;
-use OCA\DAV\CardDAV\SyncJob;
 use OCA\DAV\CardDAV\SyncService;
-use OCA\DAV\Connector\Sabre\Principal;
-use OCA\DAV\DAV\GroupPrincipalBackend;
 use OCA\DAV\HookManager;
-use OCA\DAV\Migration\Classification;
-use OCA\DAV\Migration\GenerateBirthdays;
 use \OCP\AppFramework\App;
-use OCP\AppFramework\IAppContainer;
 use OCP\Contacts\IManager;
-use OCP\IUser;
-use Sabre\VObject\Reader;
 use Symfony\Component\EventDispatcher\GenericEvent;
 
 class Application extends App {
 
        /**
         * Application constructor.
-        *
-        * @param array $urlParams
         */
-       public function __construct (array $urlParams=array()) {
-               parent::__construct('dav', $urlParams);
-
-               $container = $this->getContainer();
-               $container->registerService('ContactsManager', function($c) {
-                       /** @var IAppContainer $c */
-                       return new ContactsManager(
-                               $c->query('CardDavBackend')
-                       );
-               });
-
-               $container->registerService('HookManager', function($c) {
-                       /** @var IAppContainer $c */
-                       return new HookManager(
-                               $c->getServer()->getUserManager(),
-                               $c->query('SyncService'),
-                               $c->query('CalDavBackend'),
-                               $c->query('CardDavBackend')
-                       );
-               });
-
-               $container->registerService('SyncService', function($c) {
-                       /** @var IAppContainer $c */
-                       return new SyncService(
-                               $c->query('CardDavBackend'),
-                               $c->getServer()->getUserManager(),
-                               $c->getServer()->getLogger()
-                       );
-               });
-
-               $container->registerService('CardDavBackend', function($c) {
-                       /** @var IAppContainer $c */
-                       $db = $c->getServer()->getDatabaseConnection();
-                       $dispatcher = $c->getServer()->getEventDispatcher();
-                       $principal = new Principal(
-                               $c->getServer()->getUserManager(),
-                               $c->getServer()->getGroupManager()
-                       );
-                       return new CardDavBackend($db, $principal, $c->getServer()->getUserManager(), $dispatcher);
-               });
-
-               $container->registerService('CalDavBackend', function($c) {
-                       /** @var IAppContainer $c */
-                       $db = $c->getServer()->getDatabaseConnection();
-                       $principal = new Principal(
-                               $c->getServer()->getUserManager(),
-                               $c->getServer()->getGroupManager()
-                       );
-                       return new CalDavBackend($db, $principal, $c->getServer()->getUserManager());
-               });
-
-               $container->registerService('BirthdayService', function($c) {
-                       /** @var IAppContainer $c */
-                       $g = new GroupPrincipalBackend(
-                               $c->getServer()->getGroupManager()
-                       );
-                       return new BirthdayService(
-                               $c->query('CalDavBackend'),
-                               $c->query('CardDavBackend'),
-                               $g
-                       );
-               });
-
-               $container->registerService('OCA\DAV\Migration\Classification', function ($c) {
-                       /** @var IAppContainer $c */
-                       return new Classification(
-                               $c->query('CalDavBackend'),
-                               $c->getServer()->getUserManager()
-                       );
-               });
-
-               $container->registerService('OCA\DAV\Migration\GenerateBirthdays', function ($c) {
-                       /** @var IAppContainer $c */
-                       /** @var BirthdayService $b */
-                       $b = $c->query('BirthdayService');
-                       return new GenerateBirthdays(
-                               $b,
-                               $c->getServer()->getUserManager()
-                       );
-               });
+       public function __construct() {
+               parent::__construct('dav');
        }
 
        /**
@@ -137,20 +47,20 @@ class Application extends App {
         */
        public function setupContactsProvider(IManager $contactsManager, $userID) {
                /** @var ContactsManager $cm */
-               $cm = $this->getContainer()->query('ContactsManager');
+               $cm = $this->getContainer()->query(ContactsManager::class);
                $urlGenerator = $this->getContainer()->getServer()->getURLGenerator();
                $cm->setupContactsProvider($contactsManager, $userID, $urlGenerator);
        }
 
        public function registerHooks() {
                /** @var HookManager $hm */
-               $hm = $this->getContainer()->query('HookManager');
+               $hm = $this->getContainer()->query(HookManager::class);
                $hm->setup();
 
                $listener = function($event) {
                        if ($event instanceof GenericEvent) {
                                /** @var BirthdayService $b */
-                               $b = $this->getContainer()->query('BirthdayService');
+                               $b = $this->getContainer()->query(BirthdayService::class);
                                $b->onCardChanged(
                                        $event->getArgument('addressBookId'),
                                        $event->getArgument('cardUri'),
@@ -165,7 +75,7 @@ class Application extends App {
                $dispatcher->addListener('\OCA\DAV\CardDAV\CardDavBackend::deleteCard', function($event) {
                        if ($event instanceof GenericEvent) {
                                /** @var BirthdayService $b */
-                               $b = $this->getContainer()->query('BirthdayService');
+                               $b = $this->getContainer()->query(BirthdayService::class);
                                $b->onCardDeleted(
                                        $event->getArgument('addressBookId'),
                                        $event->getArgument('cardUri')
@@ -175,7 +85,7 @@ class Application extends App {
        }
 
        public function getSyncService() {
-               return $this->getContainer()->query('SyncService');
+               return $this->getContainer()->query(SyncService::class);
        }
 
 }
index 31a6c73f48485d1e3b2b06169e9f837c14cdca82..ab2794e67dbabfec5990583db47124791e177132 100644 (file)
@@ -50,7 +50,7 @@ class BirthdayService {
         * @param CardDavBackend $cardDavBackEnd
         * @param GroupPrincipalBackend $principalBackend
         */
-       public function __construct($calDavBackEnd, $cardDavBackEnd, $principalBackend) {
+       public function __construct(CalDavBackend $calDavBackEnd, CardDavBackend $cardDavBackEnd, GroupPrincipalBackend $principalBackend) {
                $this->calDavBackEnd = $calDavBackEnd;
                $this->cardDavBackEnd = $cardDavBackEnd;
                $this->principalBackend = $principalBackend;
index d5fb4e811d2279d592df053ae9e1d4c02de63f06..8656ce93519c7a950830820da9e9f2fe0c12eeef 100644 (file)
@@ -24,6 +24,8 @@
 namespace OCA\DAV\Tests\unit\AppInfo;
 
 use OCA\DAV\AppInfo\Application;
+use OCA\DAV\CardDAV\CardDavBackend;
+use OCA\DAV\CardDAV\ContactsManager;
 use OCP\Contacts\IManager;
 use Test\TestCase;
 
@@ -40,9 +42,9 @@ class ApplicationTest extends TestCase {
                $c = $app->getContainer();
 
                // assert service instances in the container are properly setup
-               $s = $c->query('ContactsManager');
+               $s = $c->query(ContactsManager::class);
                $this->assertInstanceOf('OCA\DAV\CardDAV\ContactsManager', $s);
-               $s = $c->query('CardDavBackend');
+               $s = $c->query(CardDavBackend::class);
                $this->assertInstanceOf('OCA\DAV\CardDAV\CardDavBackend', $s);
        }