/** * Create the federated share provider * * @return FederatedShareProvider */ protected function federatedShareProvider() { if ($this->federatedProvider === null) { /* * Check if the app is enabled */ $appManager = $this->serverContainer->getAppManager(); if (!$appManager->isEnabledForUser('federatedfilesharing')) { return null; } /* * TODO: add factory to federated sharing app */ $l = $this->serverContainer->getL10N('federatedfilessharing'); $addressHandler = new AddressHandler($this->serverContainer->getURLGenerator(), $l); $notifications = new Notifications($addressHandler, $this->serverContainer->getHTTPClientService()); $tokenHandler = new TokenHandler($this->serverContainer->getSecureRandom()); $this->federatedProvider = new FederatedShareProvider($this->serverContainer->getDatabaseConnection(), $addressHandler, $notifications, $tokenHandler, $l, $this->serverContainer->getLogger(), $this->serverContainer->getRootFolder()); } return $this->federatedProvider; }
/** * Create new LDAPProvider * @param \OCP\IServerContainer $serverContainer * @throws \Exception if user_ldap app was not enabled */ public function __construct(IServerContainer $serverContainer, Helper $helper, DeletedUsersIndex $deletedUsersIndex) { $this->logger = $serverContainer->getLogger(); $this->helper = $helper; $this->deletedUsersIndex = $deletedUsersIndex; foreach ($serverContainer->getUserManager()->getBackends() as $backend) { $this->logger->debug('instance ' . get_class($backend) . ' backend.', ['app' => 'user_ldap']); if ($backend instanceof IUserLDAP) { $this->backend = $backend; return; } } throw new \Exception('To use the LDAPProvider, user_ldap app must be enabled'); }
/** * creates and returns an instance of the ICommentsManager * * @return ICommentsManager * @since 9.0.0 */ public function getManager() { return new Manager($this->serverContainer->getDatabaseConnection(), $this->serverContainer->getLogger(), $this->serverContainer->getConfig()); }