Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Müller <thomas.mueller@tmit.eu>2015-12-04 14:11:07 +0300
committerThomas Müller <thomas.mueller@tmit.eu>2016-01-12 16:24:01 +0300
commitdbddbb634bcb6df346988b85cb2847e76e22e632 (patch)
tree7622e29c27a9c920bf8209466ebf01069a476160 /apps/federation/appinfo
parentcdc536c42367a1c7667a63c598f50b95956da759 (diff)
Use EventDispatcher to allow additional setup of auth backends - move federation auth to federation app
Diffstat (limited to 'apps/federation/appinfo')
-rw-r--r--apps/federation/appinfo/application.php14
1 files changed, 14 insertions, 0 deletions
diff --git a/apps/federation/appinfo/application.php b/apps/federation/appinfo/application.php
index 45d88548b70..f0fefb948af 100644
--- a/apps/federation/appinfo/application.php
+++ b/apps/federation/appinfo/application.php
@@ -23,6 +23,7 @@ namespace OCA\Federation\AppInfo;
use OCA\Federation\API\OCSAuthAPI;
use OCA\Federation\Controller\SettingsController;
+use OCA\Federation\DAV\FedAuth;
use OCA\Federation\DbHandler;
use OCA\Federation\Hooks;
use OCA\Federation\Middleware\AddServerMiddleware;
@@ -30,7 +31,9 @@ use OCA\Federation\TrustedServers;
use OCP\API;
use OCP\App;
use OCP\AppFramework\IAppContainer;
+use OCP\SabrePluginEvent;
use OCP\Util;
+use Sabre\DAV\Auth\Plugin;
class Application extends \OCP\AppFramework\App {
@@ -144,6 +147,17 @@ class Application extends \OCP\AppFramework\App {
$hooksManager,
'addServerHook'
);
+
+ $dispatcher = $this->getContainer()->getServer()->getEventDispatcher();
+ $dispatcher->addListener('OCA\DAV\Connector\Sabre::authInit', function($event) use($container) {
+ if ($event instanceof SabrePluginEvent) {
+ $authPlugin = $event->getServer()->getPlugin('auth');
+ if ($authPlugin instanceof Plugin) {
+ $db = $container->getServer()->getDatabaseConnection();
+ $authPlugin->addBackend(new FedAuth($db));
+ }
+ }
+ });
}
}