Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorCôme Chilliet <come.chilliet@nextcloud.com>2022-08-29 11:37:08 +0300
committerCôme Chilliet <come.chilliet@nextcloud.com>2022-08-29 14:55:08 +0300
commitb3cd9b557358a3aa506d7ad24883650d4449bb8c (patch)
tree8755c47a3fd92ea7a7444675dad8b591622d0cdf /apps
parente34f2c4799b271ac1b1c412af4bf2fa1f6279359 (diff)
Move Dav fileid and permissions logic into OCP\Util to be able to use it for BulkUpload
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Diffstat (limited to 'apps')
-rw-r--r--apps/dav/lib/BulkUpload/BulkUploadPlugin.php17
-rw-r--r--apps/dav/lib/Connector/Sabre/Node.php36
-rw-r--r--apps/dav/lib/Server.php5
3 files changed, 15 insertions, 43 deletions
diff --git a/apps/dav/lib/BulkUpload/BulkUploadPlugin.php b/apps/dav/lib/BulkUpload/BulkUploadPlugin.php
index 79a1561ef5b..b5400ec58d2 100644
--- a/apps/dav/lib/BulkUpload/BulkUploadPlugin.php
+++ b/apps/dav/lib/BulkUpload/BulkUploadPlugin.php
@@ -33,14 +33,13 @@ use OCP\AppFramework\Http;
use OCA\DAV\Connector\Sabre\MtimeSanitizer;
class BulkUploadPlugin extends ServerPlugin {
+ private Folder $userFolder;
+ private LoggerInterface $logger;
- /** @var Folder */
- private $userFolder;
-
- /** @var LoggerInterface */
- private $logger;
-
- public function __construct(Folder $userFolder, LoggerInterface $logger) {
+ public function __construct(
+ Folder $userFolder,
+ LoggerInterface $logger
+ ) {
$this->userFolder = $userFolder;
$this->logger = $logger;
}
@@ -96,8 +95,8 @@ class BulkUploadPlugin extends ServerPlugin {
$writtenFiles[$headers['x-file-path']] = [
"error" => false,
"etag" => $node->getETag(),
- "fileid" => $node->getFileId(),
- "permissions" => $node->getDavPermissions(),
+ "fileid" => \OCP\Util::getDavFileId($node->getId()),
+ "permissions" => \OCP\Util::getDavPermissions($node),
];
} catch (\Exception $e) {
$this->logger->error($e->getMessage(), ['path' => $headers['x-file-path']]);
diff --git a/apps/dav/lib/Connector/Sabre/Node.php b/apps/dav/lib/Connector/Sabre/Node.php
index 87f2fea394f..c4fc6282f84 100644
--- a/apps/dav/lib/Connector/Sabre/Node.php
+++ b/apps/dav/lib/Connector/Sabre/Node.php
@@ -252,10 +252,8 @@ abstract class Node implements \Sabre\DAV\INode {
* @return string|null
*/
public function getFileId() {
- if ($this->info->getId()) {
- $instanceId = \OC_Util::getInstanceId();
- $id = sprintf('%08d', $this->info->getId());
- return $id . $instanceId;
+ if ($id = $this->info->getId()) {
+ return \OCP\Util::getDavFileId($id);
}
return null;
@@ -381,35 +379,7 @@ abstract class Node implements \Sabre\DAV\INode {
* @return string
*/
public function getDavPermissions() {
- $p = '';
- if ($this->info->isShared()) {
- $p .= 'S';
- }
- if ($this->info->isShareable()) {
- $p .= 'R';
- }
- if ($this->info->isMounted()) {
- $p .= 'M';
- }
- if ($this->info->isReadable()) {
- $p .= 'G';
- }
- if ($this->info->isDeletable()) {
- $p .= 'D';
- }
- if ($this->info->isUpdateable()) {
- $p .= 'NV'; // Renameable, Moveable
- }
- if ($this->info->getType() === \OCP\Files\FileInfo::TYPE_FILE) {
- if ($this->info->isUpdateable()) {
- $p .= 'W';
- }
- } else {
- if ($this->info->isCreatable()) {
- $p .= 'CK';
- }
- }
- return $p;
+ return \OCP\Util::getDavPermissions($this->info);
}
public function getOwner() {
diff --git a/apps/dav/lib/Server.php b/apps/dav/lib/Server.php
index 2cfcb3f5393..f98dba22925 100644
--- a/apps/dav/lib/Server.php
+++ b/apps/dav/lib/Server.php
@@ -313,7 +313,10 @@ class Server {
$view
));
$this->server->addPlugin(
- new BulkUploadPlugin($userFolder, $logger)
+ new BulkUploadPlugin(
+ $userFolder,
+ $logger
+ )
);
}
$this->server->addPlugin(new \OCA\DAV\CalDAV\BirthdayCalendar\EnablePlugin(