From: Robin Appelman Date: Mon, 29 Sep 2014 11:46:27 +0000 (+0200) Subject: Hookup the etag propagator X-Git-Tag: v8.0.0alpha1~536^2~2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=1030f0a7638dd355ae514c51cf17fe7ff65461b2;p=nextcloud-server.git Hookup the etag propagator --- diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php index 604700ccf57..92bb891ca21 100755 --- a/apps/files_external/lib/config.php +++ b/apps/files_external/lib/config.php @@ -118,6 +118,22 @@ class OC_Mount_Config { } $manager->addMount($mount); } + + if ($data['user']) { + $user = \OC::$server->getUserManager()->get($data['user']); + $userView = new \OC\Files\View('/' . $user->getUID() . '/files'); + $changePropagator = new \OC\Files\Cache\ChangePropagator($userView); + $etagPropagator = new \OCA\Files_External\EtagPropagator($user, $changePropagator, \OC::$server->getConfig()); + $etagPropagator->propagateDirtyMountPoints(); + \OCP\Util::connectHook( + \OC\Files\Filesystem::CLASSNAME, + \OC\Files\Filesystem::signal_create_mount, + $etagPropagator, 'updateHook'); + \OCP\Util::connectHook( + \OC\Files\Filesystem::CLASSNAME, + \OC\Files\Filesystem::signal_delete_mount, + $etagPropagator, 'updateHook'); + } } /** diff --git a/apps/files_external/lib/etagpropagator.php b/apps/files_external/lib/etagpropagator.php index 00571657504..35bf8328cad 100644 --- a/apps/files_external/lib/etagpropagator.php +++ b/apps/files_external/lib/etagpropagator.php @@ -97,6 +97,7 @@ class EtagPropagator { $users = $params[Filesystem::signal_param_users]; $type = $params[Filesystem::signal_param_mount_type]; $mountPoint = $params[Filesystem::signal_param_path]; + $mountPoint = Filesystem::normalizePath($mountPoint); if ($type === \OC_Mount_Config::MOUNT_TYPE_GROUP or $users === 'all') { $this->markDirty($mountPoint, $time); } else {