mirror of
https://github.com/OpenXE-org/OpenXE.git
synced 2024-12-27 07:00:29 +01:00
285 lines
7.5 KiB
PHP
285 lines
7.5 KiB
PHP
<?php
|
|
|
|
namespace League\Flysystem;
|
|
|
|
use InvalidArgumentException;
|
|
|
|
interface FilesystemInterface
|
|
{
|
|
/**
|
|
* Check whether a file exists.
|
|
*
|
|
* @param string $path
|
|
*
|
|
* @return bool
|
|
*/
|
|
public function has($path);
|
|
|
|
/**
|
|
* Read a file.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return string|false The file contents or false on failure.
|
|
*/
|
|
public function read($path);
|
|
|
|
/**
|
|
* Retrieves a read-stream for a path.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return resource|false The path resource or false on failure.
|
|
*/
|
|
public function readStream($path);
|
|
|
|
/**
|
|
* List contents of a directory.
|
|
*
|
|
* @param string $directory The directory to list.
|
|
* @param bool $recursive Whether to list recursively.
|
|
*
|
|
* @return array A list of file metadata.
|
|
*/
|
|
public function listContents($directory = '', $recursive = false);
|
|
|
|
/**
|
|
* Get a file's metadata.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return array|false The file metadata or false on failure.
|
|
*/
|
|
public function getMetadata($path);
|
|
|
|
/**
|
|
* Get a file's size.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return int|false The file size or false on failure.
|
|
*/
|
|
public function getSize($path);
|
|
|
|
/**
|
|
* Get a file's mime-type.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return string|false The file mime-type or false on failure.
|
|
*/
|
|
public function getMimetype($path);
|
|
|
|
/**
|
|
* Get a file's timestamp.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return int|false The timestamp or false on failure.
|
|
*/
|
|
public function getTimestamp($path);
|
|
|
|
/**
|
|
* Get a file's visibility.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return string|false The visibility (public|private) or false on failure.
|
|
*/
|
|
public function getVisibility($path);
|
|
|
|
/**
|
|
* Write a new file.
|
|
*
|
|
* @param string $path The path of the new file.
|
|
* @param string $contents The file contents.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @throws FileExistsException
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function write($path, $contents, array $config = []);
|
|
|
|
/**
|
|
* Write a new file using a stream.
|
|
*
|
|
* @param string $path The path of the new file.
|
|
* @param resource $resource The file handle.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @throws InvalidArgumentException If $resource is not a file handle.
|
|
* @throws FileExistsException
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function writeStream($path, $resource, array $config = []);
|
|
|
|
/**
|
|
* Update an existing file.
|
|
*
|
|
* @param string $path The path of the existing file.
|
|
* @param string $contents The file contents.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function update($path, $contents, array $config = []);
|
|
|
|
/**
|
|
* Update an existing file using a stream.
|
|
*
|
|
* @param string $path The path of the existing file.
|
|
* @param resource $resource The file handle.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @throws InvalidArgumentException If $resource is not a file handle.
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function updateStream($path, $resource, array $config = []);
|
|
|
|
/**
|
|
* Rename a file.
|
|
*
|
|
* @param string $path Path to the existing file.
|
|
* @param string $newpath The new path of the file.
|
|
*
|
|
* @throws FileExistsException Thrown if $newpath exists.
|
|
* @throws FileNotFoundException Thrown if $path does not exist.
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function rename($path, $newpath);
|
|
|
|
/**
|
|
* Copy a file.
|
|
*
|
|
* @param string $path Path to the existing file.
|
|
* @param string $newpath The new path of the file.
|
|
*
|
|
* @throws FileExistsException Thrown if $newpath exists.
|
|
* @throws FileNotFoundException Thrown if $path does not exist.
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function copy($path, $newpath);
|
|
|
|
/**
|
|
* Delete a file.
|
|
*
|
|
* @param string $path
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function delete($path);
|
|
|
|
/**
|
|
* Delete a directory.
|
|
*
|
|
* @param string $dirname
|
|
*
|
|
* @throws RootViolationException Thrown if $dirname is empty.
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function deleteDir($dirname);
|
|
|
|
/**
|
|
* Create a directory.
|
|
*
|
|
* @param string $dirname The name of the new directory.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function createDir($dirname, array $config = []);
|
|
|
|
/**
|
|
* Set the visibility for a file.
|
|
*
|
|
* @param string $path The path to the file.
|
|
* @param string $visibility One of 'public' or 'private'.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function setVisibility($path, $visibility);
|
|
|
|
/**
|
|
* Create a file or update if exists.
|
|
*
|
|
* @param string $path The path to the file.
|
|
* @param string $contents The file contents.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function put($path, $contents, array $config = []);
|
|
|
|
/**
|
|
* Create a file or update if exists.
|
|
*
|
|
* @param string $path The path to the file.
|
|
* @param resource $resource The file handle.
|
|
* @param array $config An optional configuration array.
|
|
*
|
|
* @throws InvalidArgumentException Thrown if $resource is not a resource.
|
|
*
|
|
* @return bool True on success, false on failure.
|
|
*/
|
|
public function putStream($path, $resource, array $config = []);
|
|
|
|
/**
|
|
* Read and delete a file.
|
|
*
|
|
* @param string $path The path to the file.
|
|
*
|
|
* @throws FileNotFoundException
|
|
*
|
|
* @return string|false The file contents, or false on failure.
|
|
*/
|
|
public function readAndDelete($path);
|
|
|
|
/**
|
|
* Get a file/directory handler.
|
|
*
|
|
* @deprecated
|
|
*
|
|
* @param string $path The path to the file.
|
|
* @param Handler $handler An optional existing handler to populate.
|
|
*
|
|
* @return Handler Either a file or directory handler.
|
|
*/
|
|
public function get($path, Handler $handler = null);
|
|
|
|
/**
|
|
* Register a plugin.
|
|
*
|
|
* @param PluginInterface $plugin The plugin to register.
|
|
*
|
|
* @return $this
|
|
*/
|
|
public function addPlugin(PluginInterface $plugin);
|
|
}
|