aboutsummaryrefslogtreecommitdiffstats
path: root/apps/dav
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@users.noreply.github.com>2017-09-04 12:12:46 +0200
committerGitHub <noreply@github.com>2017-09-04 12:12:46 +0200
commitf0158e42e9f1a867e55d79fedb751fbeca10548d (patch)
tree5daa3e0dcc9ba6aa6a35d401aa1515030a54c0b7 /apps/dav
parent5927a6368008975ba0e61b5e8942d9b35f6cd455 (diff)
parent454d136a065cc89cbe3add605ea4654f7ac3d097 (diff)
downloadnextcloud-server-f0158e42e9f1a867e55d79fedb751fbeca10548d.tar.gz
nextcloud-server-f0158e42e9f1a867e55d79fedb751fbeca10548d.zip
Merge pull request #6309 from nextcloud/new-dav-event
add a new dav event to allow apps to register their own sabredav plugins
Diffstat (limited to 'apps/dav')
-rw-r--r--apps/dav/appinfo/v1/webdav.php5
-rw-r--r--apps/dav/lib/Server.php3
2 files changed, 8 insertions, 0 deletions
diff --git a/apps/dav/appinfo/v1/webdav.php b/apps/dav/appinfo/v1/webdav.php
index a1ad4ab489d..a47316ee939 100644
--- a/apps/dav/appinfo/v1/webdav.php
+++ b/apps/dav/appinfo/v1/webdav.php
@@ -67,5 +67,10 @@ $server = $serverFactory->createServer($baseuri, $requestUri, $authPlugin, funct
return \OC\Files\Filesystem::getView();
});
+$dispatcher = \OC::$server->getEventDispatcher();
+// allow setup of additional plugins
+$event = new \OCP\SabrePluginEvent($server);
+$dispatcher->dispatch('OCA\DAV\Connector\Sabre::addPlugin', $event);
+
// And off we go!
$server->exec();
diff --git a/apps/dav/lib/Server.php b/apps/dav/lib/Server.php
index 994ac04033a..896af09f1c0 100644
--- a/apps/dav/lib/Server.php
+++ b/apps/dav/lib/Server.php
@@ -163,6 +163,9 @@ class Server {
$this->server->addPlugin(new CopyEtagHeaderPlugin());
+ // allow setup of additional plugins
+ $dispatcher->dispatch('OCA\DAV\Connector\Sabre::addPlugin', $event);
+
// Some WebDAV clients do require Class 2 WebDAV support (locking), since
// we do not provide locking we emulate it using a fake locking plugin.
if($request->isUserAgent([