diff --git a/appinfo/app.php b/appinfo/app.php index a2dfb5939..709bd1e79 100644 --- a/appinfo/app.php +++ b/appinfo/app.php @@ -34,7 +34,4 @@ $app = \OC::$server->query(Application::class); -$app->registerNavigation(); -$app->registerFilesNavigation(); -$app->registerFilesPlugin(); - +$app->register(); diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index 1b3c247dc..09c1bbb09 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -29,7 +29,6 @@ namespace OCA\Circles\AppInfo; -use OC; use OCA\Circles\Api\v1\Circles; use OCA\Circles\Notification\Notifier; use OCA\Circles\Service\ConfigService; @@ -39,6 +38,7 @@ use OCP\AppFramework\App; use OCP\AppFramework\IAppContainer; use OCP\AppFramework\QueryException; +use OCP\EventDispatcher\IEventDispatcher; use OCP\Util; require_once __DIR__ . '/../../appinfo/autoload.php'; @@ -56,22 +56,35 @@ class Application extends App { /** @var IAppContainer */ private $container; + /** @var \OC\ServerServer */ + private $server; + + /** @var IEventDispatcher */ + private $dispatcher; + /** * @param array $params */ public function __construct(array $params = array()) { parent::__construct(self::APP_NAME, $params); + } + public function register() + { $this->container = $this->getContainer(); + $this->server = $this->container->getServer(); + $this->dispatcher = $this->server->query(IEventDispatcher::class); - $manager = OC::$server->getNotificationManager(); + $manager = $this->server->getNotificationManager(); $manager->registerNotifierService(Notifier::class); + $this->registerNavigation(); + $this->registerFilesNavigation(); + $this->registerFilesPlugin(); $this->registerHooks(); $this->registerDavHooks(); } - /** * Register Hooks */ @@ -91,7 +104,7 @@ public function registerHooks() { public function registerNavigation() { /** @var ConfigService $configService */ try { - $configService = OC::$server->query(ConfigService::class); + $configService = $this->server->query(ConfigService::class); } catch (QueryException $e) { return; } @@ -104,8 +117,8 @@ public function registerNavigation() { ->getNavigationManager(); $appManager->add( function() { - $urlGen = OC::$server->getURLGenerator(); - $navName = OC::$server->getL10N(self::APP_NAME) + $urlGen = $this->server->getURLGenerator(); + $navName = $this->server->getL10N(self::APP_NAME) ->t('Circles'); return [ @@ -121,8 +134,7 @@ function() { } public function registerFilesPlugin() { - $eventDispatcher = OC::$server->getEventDispatcher(); - $eventDispatcher->addListener( + $this->dispatcher->addListener( 'OCA\Files::loadAdditionalScripts', function() { Circles::addJavascriptAPI(); @@ -143,7 +155,7 @@ public function registerFilesNavigation() { $appManager = FilesApp::getNavigationManager(); $appManager->add( function() { - $l = OC::$server->getL10N('circles'); + $l = $this->server->getL10N('circles'); return [ 'id' => 'circlesfilter', @@ -160,24 +172,22 @@ function() { public function registerDavHooks() { try { /** @var ConfigService $configService */ - $configService = OC::$server->query(ConfigService::class); + $configService = $this->server->query(ConfigService::class); if (!$configService->isContactsBackend()) { return; } /** @var DavService $davService */ - $davService = OC::$server->query(DavService::class); + $davService = $this->server->query(DavService::class); } catch (QueryException $e) { return; } - $event = OC::$server->getEventDispatcher(); + $this->dispatcher->addListener(ManagerEvent::EVENT_APP_ENABLE, [$davService, 'onAppEnabled']); + $this->dispatcher->addListener('\OCA\DAV\CardDAV\CardDavBackend::createCard', [$davService, 'onCreateCard']); + $this->dispatcher->addListener('\OCA\DAV\CardDAV\CardDavBackend::updateCard', [$davService, 'onUpdateCard']); + $this->dispatcher->addListener('\OCA\DAV\CardDAV\CardDavBackend::deleteCard', [$davService, 'onDeleteCard']); - $event->addListener(ManagerEvent::EVENT_APP_ENABLE, [$davService, 'onAppEnabled']); - $event->addListener('\OCA\DAV\CardDAV\CardDavBackend::createCard', [$davService, 'onCreateCard']); - $event->addListener('\OCA\DAV\CardDAV\CardDavBackend::updateCard', [$davService, 'onUpdateCard']); - $event->addListener('\OCA\DAV\CardDAV\CardDavBackend::deleteCard', [$davService, 'onDeleteCard']); } } - diff --git a/lib/Service/DavService.php b/lib/Service/DavService.php index 448bb2213..baa508c9a 100644 --- a/lib/Service/DavService.php +++ b/lib/Service/DavService.php @@ -46,7 +46,7 @@ use OCP\App\ManagerEvent; use OCP\Federation\ICloudIdManager; use OCP\IUserManager; -use Symfony\Component\EventDispatcher\GenericEvent; +use OCP\EventDispatcher\GenericEvent; /** diff --git a/lib/Service/EventsService.php b/lib/Service/EventsService.php index 6495c2279..ff8db229a 100644 --- a/lib/Service/EventsService.php +++ b/lib/Service/EventsService.php @@ -39,10 +39,10 @@ use OCP\IURLGenerator; use OCP\IUser; use OCP\IUserManager; +use OCP\EventDispatcher\IEventDispatcher; +use OCP\EventDispatcher\GenericEvent; use OCP\Notification\IManager as INotificationManager; use OCP\Notification\INotification; -use Symfony\Component\EventDispatcher\EventDispatcher; -use Symfony\Component\EventDispatcher\GenericEvent; class EventsService { @@ -65,7 +65,7 @@ class EventsService { /** @var IURLGenerator */ private $urlGenerator; - /** @var EventDispatcher */ + /** @var IEventDispatcher */ private $eventDispatcher; /** @var CirclesRequest */ @@ -90,7 +90,7 @@ class EventsService { * @param INotificationManager $notificationManager * @param IUserManager $userManager * @param IURLGenerator $urlGenerator - * @param EventDispatcher $eventDispatcher + * @param IEventDispatcher $eventDispatcher * @param CirclesRequest $circlesRequest * @param MembersRequest $membersRequest * @param ConfigService $configService @@ -99,7 +99,7 @@ class EventsService { public function __construct( $userId, ITimeFactory $time, IActivityManager $activityManager, INotificationManager $notificationManager, IUserManager $userManager, IURLGenerator $urlGenerator, - EventDispatcher $eventDispatcher, CirclesRequest $circlesRequest, MembersRequest $membersRequest, + IEventDispatcher $eventDispatcher, CirclesRequest $circlesRequest, MembersRequest $membersRequest, ConfigService $configService, MiscService $miscService ) { $this->userId = $userId;