diff options
author | Jonas <jonas@freesources.org> | 2023-09-25 18:25:53 +0200 |
---|---|---|
committer | Jonas <jonas@freesources.org> | 2023-10-23 20:50:24 +0200 |
commit | 7441ce2b11272c4401abcf5cb107d0c055b9dc99 (patch) | |
tree | c3f212a8eceec19fb9a31501558fc6d83f81f988 /lib/private/Files/Mount | |
parent | 9193d8be40d216c06919f9dc476b1fdc6a43c374 (diff) | |
download | nextcloud-server-7441ce2b11272c4401abcf5cb107d0c055b9dc99.tar.gz nextcloud-server-7441ce2b11272c4401abcf5cb107d0c055b9dc99.zip |
enh(IMountManager): Add method to get MountPoint from CachedMountInfo
Signed-off-by: Jonas <jonas@freesources.org>
Diffstat (limited to 'lib/private/Files/Mount')
-rw-r--r-- | lib/private/Files/Mount/Manager.php | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/private/Files/Mount/Manager.php b/lib/private/Files/Mount/Manager.php index 805cce658a6..e623211cc7a 100644 --- a/lib/private/Files/Mount/Manager.php +++ b/lib/private/Files/Mount/Manager.php @@ -10,6 +10,7 @@ declare(strict_types=1); * @author Robin Appelman <robin@icewind.nl> * @author Robin McCorkell <robin@mccorkell.me.uk> * @author Roeland Jago Douma <roeland@famdouma.nl> + * @author Jonas <jonas@freesources.org> * * @license AGPL-3.0 * @@ -33,6 +34,7 @@ use OCP\Cache\CappedMemoryCache; use OC\Files\Filesystem; use OC\Files\SetupManager; use OC\Files\SetupManagerFactory; +use OCP\Files\Config\ICachedMountInfo; use OCP\Files\Mount\IMountManager; use OCP\Files\Mount\IMountPoint; use OCP\Files\NotFoundException; @@ -226,4 +228,21 @@ class Manager implements IMountManager { }); } } + + /** + * Return the mount matching a cached mount info (or mount file info) + * + * @param ICachedMountInfo $info + * + * @return IMountPoint|null + */ + public function getMountFromMountInfo(ICachedMountInfo $info): ?IMountPoint { + $this->setupManager->setupForPath($info->getMountPoint()); + foreach ($this->mounts as $mount) { + if ($mount->getMountPoint() === $info->getMountPoint()) { + return $mount; + } + } + return null; + } } |