summaryrefslogtreecommitdiffstats
path: root/apps/files_versions/lib/Sabre/VersionRoot.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_versions/lib/Sabre/VersionRoot.php')
-rw-r--r--apps/files_versions/lib/Sabre/VersionRoot.php18
1 files changed, 12 insertions, 6 deletions
diff --git a/apps/files_versions/lib/Sabre/VersionRoot.php b/apps/files_versions/lib/Sabre/VersionRoot.php
index 743b1c6ef1b..1c689a4d87b 100644
--- a/apps/files_versions/lib/Sabre/VersionRoot.php
+++ b/apps/files_versions/lib/Sabre/VersionRoot.php
@@ -23,23 +23,29 @@ declare(strict_types=1);
*/
namespace OCA\Files_Versions\Sabre;
+use OCA\Files_Versions\Versions\IVersionManager;
use OCP\Files\File;
use OCP\Files\IRootFolder;
+use OCP\IUser;
use Sabre\DAV\Exception\Forbidden;
use Sabre\DAV\Exception\NotFound;
use Sabre\DAV\ICollection;
class VersionRoot implements ICollection {
- /** @var string */
- private $userId;
+ /** @var IUser */
+ private $user;
/** @var IRootFolder */
private $rootFolder;
- public function __construct(string $userId, IRootFolder $rootFolder) {
- $this->userId = $userId;
+ /** @var IVersionManager */
+ private $versionManager;
+
+ public function __construct(IUser $user, IRootFolder $rootFolder, IVersionManager $versionManager) {
+ $this->user = $user;
$this->rootFolder = $rootFolder;
+ $this->versionManager = $versionManager;
}
public function delete() {
@@ -63,7 +69,7 @@ class VersionRoot implements ICollection {
}
public function getChild($name) {
- $userFolder = $this->rootFolder->getUserFolder($this->userId);
+ $userFolder = $this->rootFolder->getUserFolder($this->user->getUID());
$fileId = (int)$name;
$nodes = $userFolder->getById($fileId);
@@ -78,7 +84,7 @@ class VersionRoot implements ICollection {
throw new NotFound();
}
- return new VersionCollection($userFolder, $node, $this->userId);
+ return new VersionCollection($userFolder, $node, $this->user, $this->versionManager);
}
public function getChildren(): array {