Browse Source

Use DI for files_sharing Cache

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
tags/v22.0.0rc1
Morris Jobke 3 years ago
parent
commit
2690481cba
No account linked to committer's email address
2 changed files with 13 additions and 11 deletions
  1. 7
    10
      apps/files_sharing/lib/Cache.php
  2. 6
    1
      apps/files_sharing/lib/SharedStorage.php

+ 7
- 10
apps/files_sharing/lib/Cache.php View File

@@ -46,15 +46,12 @@ use OCP\IUserManager;
* don't use this class directly if you need to get metadata, use \OC\Files\Filesystem::getFileInfo instead
*/
class Cache extends CacheJail {
/**
* @var \OCA\Files_Sharing\SharedStorage
*/
/** @var \OCA\Files_Sharing\SharedStorage */
private $storage;

/**
* @var ICacheEntry
*/
/** @var ICacheEntry */
private $sourceRootInfo;
/** @var IUserManager */
private $userManager;

private $rootUnchanged = true;

@@ -64,11 +61,11 @@ class Cache extends CacheJail {

/**
* @param \OCA\Files_Sharing\SharedStorage $storage
* @param ICacheEntry $sourceRootInfo
*/
public function __construct($storage, ICacheEntry $sourceRootInfo) {
public function __construct($storage, ICacheEntry $sourceRootInfo, IUserManager $userManager) {
$this->storage = $storage;
$this->sourceRootInfo = $sourceRootInfo;
$this->userManager = $userManager;
$this->numericId = $sourceRootInfo->getStorageId();

parent::__construct(
@@ -176,7 +173,7 @@ class Cache extends CacheJail {
private function getOwnerDisplayName() {
if (!$this->ownerDisplayName) {
$uid = $this->storage->getOwner('');
$user = \OC::$server->get(IUserManager::class)->get($uid);
$user = $this->userManager->get($uid);
if ($user) {
$this->ownerDisplayName = $user->getDisplayName();
} else {

+ 6
- 1
apps/files_sharing/lib/SharedStorage.php View File

@@ -43,6 +43,7 @@ use OCP\Files\Cache\ICacheEntry;
use OCP\Files\NotFoundException;
use OCP\Files\Storage\IDisableEncryptionStorage;
use OCP\Files\Storage\IStorage;
use OCP\IUserManager;
use OCP\Lock\ILockingProvider;
use OCP\Share\IShare;

@@ -385,7 +386,11 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
return new FailedCache();
}

$this->cache = new \OCA\Files_Sharing\Cache($storage, $sourceRoot, $this->superShare);
$this->cache = new \OCA\Files_Sharing\Cache(
$storage,
$sourceRoot,
\OC::$server->get(IUserManager::class)
);
return $this->cache;
}


Loading…
Cancel
Save