From ac330daef2e616a5c3830b82b3e1353cd5b06c11 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 4 Apr 2016 09:08:55 +0200 Subject: [PATCH] Inject the Mount Manager --- apps/files/appinfo/register_command.php | 3 ++- apps/files/command/transferownership.php | 13 ++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/apps/files/appinfo/register_command.php b/apps/files/appinfo/register_command.php index e77087a229..dad78186c6 100644 --- a/apps/files/appinfo/register_command.php +++ b/apps/files/appinfo/register_command.php @@ -24,8 +24,9 @@ $dbConnection = \OC::$server->getDatabaseConnection(); $userManager = OC::$server->getUserManager(); $shareManager = \OC::$server->getShareManager(); +$mountManager = \OC::$server->getMountManager(); /** @var Symfony\Component\Console\Application $application */ $application->add(new OCA\Files\Command\Scan($userManager)); $application->add(new OCA\Files\Command\DeleteOrphanedFiles($dbConnection)); -$application->add(new OCA\Files\Command\TransferOwnership($userManager, $shareManager)); +$application->add(new OCA\Files\Command\TransferOwnership($userManager, $shareManager, $mountManager)); diff --git a/apps/files/command/transferownership.php b/apps/files/command/transferownership.php index 98dbc42822..6bf2fae6bd 100644 --- a/apps/files/command/transferownership.php +++ b/apps/files/command/transferownership.php @@ -24,7 +24,7 @@ namespace OCA\Files\Command; use OC\Files\Filesystem; use OC\Files\View; use OCP\Files\FileInfo; -use OCP\Files\Folder; +use OCP\Files\Mount\IMountManager; use OCP\IUserManager; use OCP\Share\IManager; use OCP\Share\IShare; @@ -42,6 +42,9 @@ class TransferOwnership extends Command { /** @var IManager */ private $shareManager; + /** @var IMountManager */ + private $mountManager; + /** @var FileInfo[] */ private $allFiles = []; @@ -60,9 +63,10 @@ class TransferOwnership extends Command { /** @var string */ private $finalTarget; - public function __construct(IUserManager $userManager, IManager $shareManager) { + public function __construct(IUserManager $userManager, IManager $shareManager, IMountManager $mountManager) { $this->userManager = $userManager; $this->shareManager = $shareManager; + $this->mountManager = $mountManager; parent::__construct(); } @@ -203,14 +207,13 @@ class TransferOwnership extends Command { private function restoreShares(OutputInterface $output) { $output->writeln("Restoring shares ..."); $progress = new ProgressBar($output, count($this->shares)); - $mountManager = Filesystem::getMountManager($this->destinationUser); foreach($this->shares as $share) { if ($share->getSharedWith() === $this->destinationUser) { // Unmount the shares before deleting, so we don't try to get the storage later on. - $shareMountPoint = $mountManager->find('/' . $this->destinationUser . '/files' . $share->getTarget()); + $shareMountPoint = $this->mountManager->find('/' . $this->destinationUser . '/files' . $share->getTarget()); if ($shareMountPoint) { - $mountManager->removeMount($shareMountPoint->getMountPoint()); + $this->mountManager->removeMount($shareMountPoint->getMountPoint()); } $this->shareManager->deleteShare($share); } else {