2016-08-01 12:27:07 -04:00
|
|
|
<?php
|
2025-06-30 09:04:05 -04:00
|
|
|
|
2016-08-01 12:27:07 -04:00
|
|
|
/**
|
2024-05-23 03:26:56 -04:00
|
|
|
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
|
|
|
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
2016-08-01 12:27:07 -04:00
|
|
|
*/
|
|
|
|
|
namespace OC\Lockdown\Filesystem;
|
|
|
|
|
|
|
|
|
|
use OC\Files\Cache\CacheEntry;
|
2021-05-05 12:09:53 -04:00
|
|
|
use OC\Files\Search\SearchComparison;
|
2016-08-01 12:27:07 -04:00
|
|
|
use OCP\Constants;
|
|
|
|
|
use OCP\Files\Cache\ICache;
|
2021-03-08 13:27:39 -05:00
|
|
|
use OCP\Files\Cache\ICacheEntry;
|
2016-08-01 12:27:07 -04:00
|
|
|
use OCP\Files\FileInfo;
|
2021-05-05 12:09:53 -04:00
|
|
|
use OCP\Files\Search\ISearchComparison;
|
|
|
|
|
use OCP\Files\Search\ISearchOperator;
|
2017-02-02 12:20:08 -05:00
|
|
|
use OCP\Files\Search\ISearchQuery;
|
2016-08-01 12:27:07 -04:00
|
|
|
|
|
|
|
|
class NullCache implements ICache {
|
|
|
|
|
public function getNumericStorageId() {
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function get($file) {
|
2025-06-25 08:37:39 -04:00
|
|
|
if ($file !== '') {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return new CacheEntry([
|
|
|
|
|
'fileid' => -1,
|
|
|
|
|
'parent' => -1,
|
|
|
|
|
'name' => '',
|
|
|
|
|
'path' => '',
|
|
|
|
|
'size' => '0',
|
|
|
|
|
'mtime' => time(),
|
|
|
|
|
'storage_mtime' => time(),
|
|
|
|
|
'etag' => '',
|
|
|
|
|
'mimetype' => FileInfo::MIMETYPE_FOLDER,
|
|
|
|
|
'mimepart' => 'httpd',
|
|
|
|
|
'permissions' => Constants::PERMISSION_READ
|
|
|
|
|
]);
|
2016-08-01 12:27:07 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getFolderContents($folder) {
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getFolderContentsById($fileId) {
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function put($file, array $data) {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function insert($file, array $data) {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function update($id, array $data) {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getId($file) {
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getParentId($file) {
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function inCache($file) {
|
|
|
|
|
return $file === '';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function remove($file) {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function move($source, $target) {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function moveFromCache(ICache $sourceCache, $sourcePath, $targetPath) {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getStatus($file) {
|
|
|
|
|
return ICache::COMPLETE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function search($pattern) {
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function searchByMime($mimetype) {
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
|
2017-02-02 12:20:08 -05:00
|
|
|
public function searchQuery(ISearchQuery $query) {
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
|
2016-08-01 12:27:07 -04:00
|
|
|
public function getIncomplete() {
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPathById($id) {
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function normalize($path) {
|
|
|
|
|
return $path;
|
|
|
|
|
}
|
2021-03-08 13:27:39 -05:00
|
|
|
|
|
|
|
|
public function copyFromCache(ICache $sourceCache, ICacheEntry $sourceEntry, string $targetPath): int {
|
|
|
|
|
throw new \OC\ForbiddenException('This request is not allowed to access the filesystem');
|
|
|
|
|
}
|
2021-05-04 13:06:02 -04:00
|
|
|
|
2021-05-05 12:09:53 -04:00
|
|
|
public function getQueryFilterForStorage(): ISearchOperator {
|
|
|
|
|
return new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'storage', -1);
|
2021-05-04 13:06:02 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getCacheEntryFromSearchResult(ICacheEntry $rawEntry): ?ICacheEntry {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
2016-08-01 12:27:07 -04:00
|
|
|
}
|