disable update checking for shared storages
update checking is already handled by the share source Signed-off-by: Robin Appelman <robin@icewind.nl>
This commit is contained in:
parent
c1ff011990
commit
244fd6ae49
|
@ -33,6 +33,8 @@
|
|||
namespace OCA\Files_Sharing;
|
||||
|
||||
use OC\Files\Cache\FailedCache;
|
||||
use OC\Files\Cache\LazyWatcher;
|
||||
use OC\Files\Cache\NullWatcher;
|
||||
use OC\Files\Filesystem;
|
||||
use OC\Files\Storage\FailedStorage;
|
||||
use OC\Files\Storage\Wrapper\PermissionsMask;
|
||||
|
@ -126,7 +128,7 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
try {
|
||||
Filesystem::initMountPoints($this->superShare->getShareOwner());
|
||||
$sourcePath = $this->ownerView->getPath($this->superShare->getNodeId());
|
||||
list($this->nonMaskedStorage, $this->rootPath) = $this->ownerView->resolvePath($sourcePath);
|
||||
[$this->nonMaskedStorage, $this->rootPath] = $this->ownerView->resolvePath($sourcePath);
|
||||
$this->storage = new PermissionsMask([
|
||||
'storage' => $this->nonMaskedStorage,
|
||||
'mask' => $this->superShare->getPermissions()
|
||||
|
@ -160,7 +162,7 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
if ($class === '\OC\Files\Storage\Common') {
|
||||
return true;
|
||||
}
|
||||
if (in_array($class, ['\OC\Files\Storage\Home', '\OC\Files\ObjectStore\HomeObjectStoreStorage'])) {
|
||||
if (in_array($class, ['\OC\Files\Storage\Home', '\OC\Files\ObjectStore\HomeObjectStoreStorage', '\OCP\Files\IHomeStorage'])) {
|
||||
return false;
|
||||
}
|
||||
return parent::instanceOfStorage($class);
|
||||
|
@ -223,7 +225,7 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
}
|
||||
/** @var IStorage $storage */
|
||||
/** @var string $internalPath */
|
||||
list($storage, $internalPath) = $this->resolvePath($path);
|
||||
[$storage, $internalPath] = $this->resolvePath($path);
|
||||
return $storage->isReadable($internalPath);
|
||||
}
|
||||
|
||||
|
@ -397,6 +399,11 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
return $this->superShare->getShareOwner();
|
||||
}
|
||||
|
||||
public function getWatcher($path = '', $storage = null) {
|
||||
// cache updating is handled by the share source
|
||||
return new NullWatcher();
|
||||
}
|
||||
|
||||
/**
|
||||
* unshare complete storage, also the grouped shares
|
||||
*
|
||||
|
@ -417,7 +424,7 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
*/
|
||||
public function acquireLock($path, $type, ILockingProvider $provider) {
|
||||
/** @var \OCP\Files\Storage $targetStorage */
|
||||
list($targetStorage, $targetInternalPath) = $this->resolvePath($path);
|
||||
[$targetStorage, $targetInternalPath] = $this->resolvePath($path);
|
||||
$targetStorage->acquireLock($targetInternalPath, $type, $provider);
|
||||
// lock the parent folders of the owner when locking the share as recipient
|
||||
if ($path === '') {
|
||||
|
@ -433,7 +440,7 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
*/
|
||||
public function releaseLock($path, $type, ILockingProvider $provider) {
|
||||
/** @var \OCP\Files\Storage $targetStorage */
|
||||
list($targetStorage, $targetInternalPath) = $this->resolvePath($path);
|
||||
[$targetStorage, $targetInternalPath] = $this->resolvePath($path);
|
||||
$targetStorage->releaseLock($targetInternalPath, $type, $provider);
|
||||
// unlock the parent folders of the owner when unlocking the share as recipient
|
||||
if ($path === '') {
|
||||
|
@ -449,7 +456,7 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
|
|||
*/
|
||||
public function changeLock($path, $type, ILockingProvider $provider) {
|
||||
/** @var \OCP\Files\Storage $targetStorage */
|
||||
list($targetStorage, $targetInternalPath) = $this->resolvePath($path);
|
||||
[$targetStorage, $targetInternalPath] = $this->resolvePath($path);
|
||||
$targetStorage->changeLock($targetInternalPath, $type, $provider);
|
||||
}
|
||||
|
||||
|
|
|
@ -1011,6 +1011,7 @@ return array(
|
|||
'OC\\Files\\Cache\\HomePropagator' => $baseDir . '/lib/private/Files/Cache/HomePropagator.php',
|
||||
'OC\\Files\\Cache\\LocalRootScanner' => $baseDir . '/lib/private/Files/Cache/LocalRootScanner.php',
|
||||
'OC\\Files\\Cache\\MoveFromCacheTrait' => $baseDir . '/lib/private/Files/Cache/MoveFromCacheTrait.php',
|
||||
'OC\\Files\\Cache\\NullWatcher' => $baseDir . '/lib/private/Files/Cache/NullWatcher.php',
|
||||
'OC\\Files\\Cache\\Propagator' => $baseDir . '/lib/private/Files/Cache/Propagator.php',
|
||||
'OC\\Files\\Cache\\QuerySearchHelper' => $baseDir . '/lib/private/Files/Cache/QuerySearchHelper.php',
|
||||
'OC\\Files\\Cache\\Scanner' => $baseDir . '/lib/private/Files/Cache/Scanner.php',
|
||||
|
|
|
@ -1040,6 +1040,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
|
|||
'OC\\Files\\Cache\\HomePropagator' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/HomePropagator.php',
|
||||
'OC\\Files\\Cache\\LocalRootScanner' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/LocalRootScanner.php',
|
||||
'OC\\Files\\Cache\\MoveFromCacheTrait' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/MoveFromCacheTrait.php',
|
||||
'OC\\Files\\Cache\\NullWatcher' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/NullWatcher.php',
|
||||
'OC\\Files\\Cache\\Propagator' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/Propagator.php',
|
||||
'OC\\Files\\Cache\\QuerySearchHelper' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/QuerySearchHelper.php',
|
||||
'OC\\Files\\Cache\\Scanner' => __DIR__ . '/../../..' . '/lib/private/Files/Cache/Scanner.php',
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
/**
|
||||
* @copyright Copyright (c) 2020 Robin Appelman <robin@icewind.nl>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace OC\Files\Cache;
|
||||
|
||||
class NullWatcher extends Watcher {
|
||||
private $policy;
|
||||
|
||||
public function __construct() {
|
||||
|
||||
}
|
||||
|
||||
public function setPolicy($policy) {
|
||||
$this->policy = $policy;
|
||||
}
|
||||
|
||||
public function getPolicy() {
|
||||
return $this->policy;
|
||||
}
|
||||
|
||||
public function checkUpdate($path, $cachedEntry = null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public function update($path, $cachedData) {
|
||||
|
||||
}
|
||||
|
||||
public function needsUpdate($path, $cachedData) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public function cleanFolder($path) {
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue