PATH:
home
/
lab2454c
/
westernclear.net
/
vendor
/
league
/
flysystem
/
src
<?php declare(strict_types=1); namespace League\Flysystem; class Filesystem implements FilesystemOperator { /** * @var FilesystemAdapter */ private $adapter; /** * @var Config */ private $config; /** * @var PathNormalizer */ private $pathNormalizer; public function __construct( FilesystemAdapter $adapter, array $config = [], PathNormalizer $pathNormalizer = null ) { $this->adapter = $adapter; $this->config = new Config($config); $this->pathNormalizer = $pathNormalizer ?: new WhitespacePathNormalizer(); } public function fileExists(string $location): bool { return $this->adapter->fileExists($this->pathNormalizer->normalizePath($location)); } public function directoryExists(string $location): bool { return $this->adapter->directoryExists($this->pathNormalizer->normalizePath($location)); } public function has(string $location): bool { $path = $this->pathNormalizer->normalizePath($location); return $this->adapter->fileExists($path) || $this->adapter->directoryExists($path); } public function write(string $location, string $contents, array $config = []): void { $this->adapter->write( $this->pathNormalizer->normalizePath($location), $contents, $this->config->extend($config) ); } public function writeStream(string $location, $contents, array $config = []): void { /* @var resource $contents */ $this->assertIsResource($contents); $this->rewindStream($contents); $this->adapter->writeStream( $this->pathNormalizer->normalizePath($location), $contents, $this->config->extend($config) ); } public function read(string $location): string { return $this->adapter->read($this->pathNormalizer->normalizePath($location)); } public function readStream(string $location) { return $this->adapter->readStream($this->pathNormalizer->normalizePath($location)); } public function delete(string $location): void { $this->adapter->delete($this->pathNormalizer->normalizePath($location)); } public function deleteDirectory(string $location): void { $this->adapter->deleteDirectory($this->pathNormalizer->normalizePath($location)); } public function createDirectory(string $location, array $config = []): void { $this->adapter->createDirectory( $this->pathNormalizer->normalizePath($location), $this->config->extend($config) ); } public function listContents(string $location, bool $deep = self::LIST_SHALLOW): DirectoryListing { $path = $this->pathNormalizer->normalizePath($location); return new DirectoryListing($this->adapter->listContents($path, $deep)); } public function move(string $source, string $destination, array $config = []): void { $this->adapter->move( $this->pathNormalizer->normalizePath($source), $this->pathNormalizer->normalizePath($destination), $this->config->extend($config) ); } public function copy(string $source, string $destination, array $config = []): void { $this->adapter->copy( $this->pathNormalizer->normalizePath($source), $this->pathNormalizer->normalizePath($destination), $this->config->extend($config) ); } public function lastModified(string $path): int { return $this->adapter->lastModified($this->pathNormalizer->normalizePath($path))->lastModified(); } public function fileSize(string $path): int { return $this->adapter->fileSize($this->pathNormalizer->normalizePath($path))->fileSize(); } public function mimeType(string $path): string { return $this->adapter->mimeType($this->pathNormalizer->normalizePath($path))->mimeType(); } public function setVisibility(string $path, string $visibility): void { $this->adapter->setVisibility($this->pathNormalizer->normalizePath($path), $visibility); } public function visibility(string $path): string { return $this->adapter->visibility($this->pathNormalizer->normalizePath($path))->visibility(); } /** * @param mixed $contents */ private function assertIsResource($contents): void { if (is_resource($contents) === false) { throw new InvalidStreamProvided( "Invalid stream provided, expected stream resource, received " . gettype($contents) ); } elseif ($type = get_resource_type($contents) !== 'stream') { throw new InvalidStreamProvided( "Invalid stream provided, expected stream resource, received resource of type " . $type ); } } /** * @param resource $resource */ private function rewindStream($resource): void { if (ftell($resource) !== 0 && stream_get_meta_data($resource)['seekable']) { rewind($resource); } } }
[-] FileAttributes.php
[edit]
[-] UnableToCheckDirectoryExistence.php
[edit]
[-] UnableToMountFilesystem.php
[edit]
[-] UnableToDeleteDirectory.php
[edit]
[-] FilesystemWriter.php
[edit]
[-] UnableToCopyFile.php
[edit]
[+]
..
[-] StorageAttributes.php
[edit]
[-] FilesystemOperationFailed.php
[edit]
[-] Config.php
[edit]
[-] CorruptedPathDetected.php
[edit]
[-] UnableToMoveFile.php
[edit]
[-] FilesystemReader.php
[edit]
[-] FilesystemException.php
[edit]
[-] UnreadableFileEncountered.php
[edit]
[-] SymbolicLinkEncountered.php
[edit]
[-] Visibility.php
[edit]
[-] UnableToCheckFileExistence.php
[edit]
[-] ProxyArrayAccessToProperties.php
[edit]
[-] UnableToReadFile.php
[edit]
[-] WhitespacePathNormalizer.php
[edit]
[-] FilesystemAdapter.php
[edit]
[-] DirectoryListing.php
[edit]
[-] InvalidStreamProvided.php
[edit]
[-] UnableToWriteFile.php
[edit]
[+]
Local
[-] UnableToSetVisibility.php
[edit]
[-] DirectoryAttributes.php
[edit]
[-] PortableVisibilityGuard.php
[edit]
[+]
UnixVisibility
[-] PathNormalizer.php
[edit]
[-] MountManager.php
[edit]
[-] UnableToRetrieveMetadata.php
[edit]
[-] InvalidVisibilityProvided.php
[edit]
[-] UnableToDeleteFile.php
[edit]
[-] Filesystem.php
[edit]
[-] UnableToResolveFilesystemMount.php
[edit]
[-] FilesystemOperator.php
[edit]
[-] UnableToCreateDirectory.php
[edit]
[-] UnableToCheckExistence.php
[edit]
[-] PathPrefixer.php
[edit]
[-] PathTraversalDetected.php
[edit]