mirror of
https://github.com/nextcloud/server.git
synced 2026-05-28 04:32:30 -04:00
move permission related code into getMetaData()
This commit is contained in:
parent
a637bd7f2b
commit
32995ace1c
3 changed files with 21 additions and 16 deletions
12
lib/private/files/cache/scanner.php
vendored
12
lib/private/files/cache/scanner.php
vendored
|
|
@ -103,16 +103,10 @@ class Scanner extends BasicEmitter {
|
|||
* @return array an array of metadata of the file
|
||||
*/
|
||||
public function getData($path) {
|
||||
$permissions = $this->storage->getPermissions($path);
|
||||
if (!$permissions & \OCP\PERMISSION_READ) {
|
||||
//cant read, nothing we can do
|
||||
\OCP\Util::writeLog('OC\Files\Cache\Scanner', "!!! Path '$path' is not accessible or present !!!", \OCP\Util::DEBUG);
|
||||
return null;
|
||||
}
|
||||
|
||||
$data = $this->storage->getMetaData($path);
|
||||
$data['permissions'] = $permissions;
|
||||
|
||||
if (is_null($data)) {
|
||||
\OCP\Util::writeLog('OC\Files\Cache\Scanner', "!!! Path '$path' is not accessible or present !!!", \OCP\Util::DEBUG);
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -585,6 +585,12 @@ abstract class Common implements Storage {
|
|||
* @inheritdoc
|
||||
*/
|
||||
public function getMetaData($path) {
|
||||
$permissions = $this->getPermissions($path);
|
||||
if (!$permissions & \OCP\Constants::PERMISSION_READ) {
|
||||
//cant read, nothing we can do
|
||||
return null;
|
||||
}
|
||||
|
||||
$data = [];
|
||||
$data['mimetype'] = $this->getMimeType($path);
|
||||
$data['mtime'] = $this->filemtime($path);
|
||||
|
|
@ -595,6 +601,8 @@ abstract class Common implements Storage {
|
|||
}
|
||||
$data['etag'] = $this->getETag($path);
|
||||
$data['storage_mtime'] = $data['mtime'];
|
||||
$data['permissions'] = $this->getPermissions($path);
|
||||
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,8 @@
|
|||
namespace OC\Files\Storage\Wrapper;
|
||||
|
||||
use OC\Encryption\Exceptions\ModuleDoesNotExistsException;
|
||||
use OC\Encryption\File;
|
||||
use OC\Files\Filesystem;
|
||||
use OC\Files\Storage\LocalTempFileTrait;
|
||||
use OCP\Files\Mount\IMountPoint;
|
||||
|
||||
|
|
@ -48,7 +50,7 @@ class Encryption extends Wrapper {
|
|||
/** @var array */
|
||||
private $unencryptedSize;
|
||||
|
||||
/** @var \OC\Encryption\File */
|
||||
/** @var File */
|
||||
private $fileHelper;
|
||||
|
||||
/** @var IMountPoint */
|
||||
|
|
@ -59,7 +61,7 @@ class Encryption extends Wrapper {
|
|||
* @param \OC\Encryption\Manager $encryptionManager
|
||||
* @param \OC\Encryption\Util $util
|
||||
* @param \OC\Log $logger
|
||||
* @param \OC\Encryption\File $fileHelper
|
||||
* @param File $fileHelper
|
||||
* @param string $uid user who perform the read/write operation (null for public access)
|
||||
*/
|
||||
public function __construct(
|
||||
|
|
@ -67,7 +69,7 @@ class Encryption extends Wrapper {
|
|||
\OC\Encryption\Manager $encryptionManager = null,
|
||||
\OC\Encryption\Util $util = null,
|
||||
\OC\Log $logger = null,
|
||||
\OC\Encryption\File $fileHelper = null,
|
||||
File $fileHelper = null,
|
||||
$uid = null
|
||||
) {
|
||||
|
||||
|
|
@ -116,13 +118,14 @@ class Encryption extends Wrapper {
|
|||
*/
|
||||
public function getMetaData($path) {
|
||||
$data = $this->storage->getMetaData($path);
|
||||
if (is_null($data)) {
|
||||
return null;
|
||||
}
|
||||
$fullPath = $this->getFullPath($path);
|
||||
|
||||
if (isset($this->unencryptedSize[$fullPath])) {
|
||||
$size = $this->unencryptedSize[$fullPath];
|
||||
|
||||
$data['encrypted'] = true;
|
||||
$data['size'] = $size;
|
||||
$data['size'] = $this->unencryptedSize[$fullPath];
|
||||
} else {
|
||||
$info = $this->getCache()->get($path);
|
||||
if (isset($info['fileid']) && $info['encrypted']) {
|
||||
|
|
@ -383,7 +386,7 @@ class Encryption extends Wrapper {
|
|||
* @return string full path including mount point
|
||||
*/
|
||||
protected function getFullPath($path) {
|
||||
return \OC\Files\Filesystem::normalizePath($this->mountPoint . '/' . $path);
|
||||
return Filesystem::normalizePath($this->mountPoint . '/' . $path);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in a new issue