objectStoreConfig = $objectStoreConfig; $this->config = $config; } public function getRootMounts(IStorageFactory $loader): array { $objectStoreConfig = $this->objectStoreConfig->getObjectStoreConfigForRoot(); if ($objectStoreConfig) { return [$this->getObjectStoreRootMount($loader, $objectStoreConfig)]; } else { return [$this->getLocalRootMount($loader)]; } } private function getLocalRootMount(IStorageFactory $loader): MountPoint { $configDataDirectory = $this->config->getSystemValue('datadirectory', OC::$SERVERROOT . '/data'); return new MountPoint(LocalRootStorage::class, '/', ['datadir' => $configDataDirectory], $loader, null, null, self::class); } private function getObjectStoreRootMount(IStorageFactory $loader, array $objectStoreConfig): MountPoint { $arguments = array_merge($objectStoreConfig['arguments'], [ 'objectstore' => $this->objectStoreConfig->buildObjectStore($objectStoreConfig), ]); return new MountPoint(ObjectStoreStorage::class, '/', $arguments, $loader, null, null, self::class); } }