getUser(); if ($user === null) { return; } $this->userFolder = $rootFolder->getUserFolder($user->getUID()); } public function getPluginName(): string { return 'groupFoldersDavPlugin'; } public function initialize(Server $server): void { $server->on('propFind', $this->propFind(...)); } public function propFind(PropFind $propFind, INode $node): void { if ($this->userFolder === null) { return; } if ($node instanceof GroupFolderNode) { $propFind->handle( self::MOUNT_POINT_PROPERTYNAME, /** @psalm-suppress PossiblyNullReference Null already checked above */ fn () => $this->userFolder->getRelativePath($node->getFileInfo()->getMountPoint()->getMountPoint()) ); $propFind->handle( self::GROUP_FOLDER_ID_PROPERTYNAME, fn (): int => $node->getFolderId() ); } } }