getMountPoint(false), $mount->toMount(), $loader ); } catch (Exception $e) { throw new MountPointConstructionException(); } $this->mount = $mount; $this->storageClass = $storage; } /** * Move the mount point to $target * * @param string $target the target mount point * * @return bool */ public function moveMount($target) { $result = $this->mount->getMountManager()->renameShare($this->gsShareId, $target); $this->setMountPoint($target); return $result; } /** * Remove the mount points * * @return mixed * @return bool */ public function removeMount() { return $this->mount->getMountManager()->unshare($this->gsShareId); } /** * Get the type of mount point, used to distinguish things like shares and external storages * in the web interface * * @return string */ public function getMountType() { return 'shared'; } public function getInitiator() { } /** * @return array */ public function jsonSerialize(): array { return [ 'mount' => $this->mount, 'storage' => $this->storageClass ]; } }