19declare(strict_types=1);
79 $config = match ($fqdn_interface) {
80 FilesystemWeb::class =>
new LocalConfig($this->directory_path_config->getWebDirectoryPath()),
81 FilesystemStorage::class =>
new LocalConfig($this->directory_path_config->getStorageDirectoryPath()),
82 FilesystemTemp::class =>
new LocalConfig($this->directory_path_config->getTempDirectoryPath()),
84 $this->directory_path_config->getCustomizingDirectoryPath()
86 FilesystemLibs::class =>
new LocalConfig($this->directory_path_config->getLibsDirectoryPath()),
88 $this->directory_path_config->getNodeModulesDirectoryPath()
90 default =>
throw new \InvalidArgumentException(
"Unknown filesystem interface $fqdn_interface")
94 $read_only = $read_only || in_array(
96 [FilesystemLibs::class, FilesystemNodeModules::class],
The filesystem white list decorator rewrites forbidden file endings and delegates the rest of the ope...
The filesystem ready only decorator provides read only access and will throw an Exception whenever co...
This class is used to configure the local filesystem adapter.
The delegating filesystem factory delegates the instance creation to the factory of the concrete impl...
buildFor(string $fqdn_interface, bool $read_only=false)
getLocal(LocalConfig $config, bool $read_only=false)
@deprectaed
FlySystemFilesystemFactory $implementation
__construct(private FilenameSanitizer $sanitizer, private DirectoryPathConfig $directory_path_config)
DelegatingFilesystemFactory constructor.
The filesystem interface provides the public interface for the Filesystem service API consumer.
The filename sanitizer verifies and fixes file name endings.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...