getContainer(); $container->registerService('ContactsManager', function($c) { /** @var IAppContainer $c */ return new ContactsManager( $c->query('CardDavBackend') ); }); $container->registerService('CardDavBackend', function($c) { /** @var IAppContainer $c */ $db = $c->getServer()->getDatabaseConnection(); $logger = $c->getServer()->getLogger(); $principal = new \OCA\DAV\Connector\Sabre\Principal( $c->getServer()->getUserManager() ); return new \OCA\DAV\CardDAV\CardDavBackend($db, $principal, $logger); }); } /** * @param IManager $contactsManager * @param string $userID */ public function setupContactsProvider(IManager $contactsManager, $userID) { /** @var ContactsManager $cm */ $cm = $this->getContainer()->query('ContactsManager'); $cm->setupContactsProvider($contactsManager, $userID); } }