IWriteStreamStorage extends IStorage
Interface that adds the ability to write a stream directly to file
All paths passed to the storage are relative to the storage and should NOT have a leading slash.
Tags
Table of Contents
- __construct() : mixed
 - $parameters is a free form array with the configuration options needed to construct the storage
 - copy() : bool
 - see http://php.net/manual/en/function.copy.php
 - copyFromStorage() : bool
 - file_exists() : bool
 - see http://php.net/manual/en/function.file_exists.php
 - file_get_contents() : string|false
 - see http://php.net/manual/en/function.file_get_contents.php
 - file_put_contents() : bool
 - see http://php.net/manual/en/function.file_put_contents.php
 - filemtime() : int|false
 - see http://php.net/manual/en/function.filemtime.php
 - filesize() : int|false
 - see http://php.net/manual/en/function.filesize.php The result for filesize when called on a folder is required to be 0
 - filetype() : string|false
 - see http://php.net/manual/en/function.filetype.php
 - fopen() : resource|false
 - see http://php.net/manual/en/function.fopen.php
 - free_space() : int|false
 - see http://php.net/manual/en/function.free_space.php
 - getAvailability() : array
 - getCache() : ICache
 - getDirectDownload() : array|false
 - A custom storage implementation can return an url for direct download of a give file.
 - getETag() : string|false
 - get the ETag for a file or folder
 - getId() : string
 - Get the identifier for the storage, the returned id should be the same for every storage object that is created with the same parameters and two storage objects with the same id should refer to two storages that display the same files.
 - getLocalFile() : string|false
 - get the path to a local version of the file.
 - getMimeType() : string|false
 - get the mimetype for a file or folder The mimetype for a folder is required to be "httpd/unix-directory"
 - getOwner() : mixed
 - getPermissions() : int
 - get the full permissions of a path.
 - getPropagator() : IPropagator
 - getScanner() : IScanner
 - getUpdater() : IUpdater
 - getWatcher() : IWatcher
 - hash() : string|false
 - see http://php.net/manual/en/function.hash-file.php
 - hasUpdated() : bool
 - check if a file or folder has been updated since $time
 - instanceOfStorage() : bool
 - Check if the storage is an instance of $class or is a wrapper for a storage that is an instance of $class
 - is_dir() : bool
 - see http://php.net/manual/en/function.is-dir.php
 - is_file() : bool
 - see http://php.net/manual/en/function.is-file.php
 - isCreatable() : bool
 - check if a file can be created in $path
 - isDeletable() : bool
 - check if a file can be deleted
 - isLocal() : bool
 - Returns whether the storage is local, which means that files are stored on the local filesystem instead of remotely.
 - isReadable() : bool
 - check if a file can be read
 - isSharable() : bool
 - check if a file can be shared
 - isUpdatable() : bool
 - check if a file can be written to
 - mkdir() : bool
 - see http://php.net/manual/en/function.mkdir.php implementations need to implement a recursive mkdir
 - moveFromStorage() : bool
 - opendir() : resource|false
 - see http://php.net/manual/en/function.opendir.php
 - rename() : bool
 - see http://php.net/manual/en/function.rename.php
 - rmdir() : bool
 - see http://php.net/manual/en/function.rmdir.php
 - setAvailability() : mixed
 - stat() : array|false
 - see http://php.net/manual/en/function.stat.php only the following keys are required in the result: size and mtime
 - test() : bool
 - Test a storage for availability
 - touch() : bool
 - see http://php.net/manual/en/function.touch.php If the backend does not support the operation, false should be returned
 - unlink() : bool
 - see http://php.net/manual/en/function.unlink.php
 - verifyPath() : void
 - writeStream() : int
 - Write the data from a stream to a file
 
Methods
__construct()
$parameters is a free form array with the configuration options needed to construct the storage
    public
                __construct(array $parameters) : mixed
    
        Parameters
- $parameters : array
 
Tags
Return values
mixed —copy()
see http://php.net/manual/en/function.copy.php
    public
                copy(string $path1, string $path2) : bool
    
        Parameters
- $path1 : string
 - $path2 : string
 
Tags
Return values
bool —copyFromStorage()
    public
                copyFromStorage(IStorage $sourceStorage, string $sourceInternalPath, string $targetInternalPath) : bool
    
        Parameters
- $sourceStorage : IStorage
 - $sourceInternalPath : string
 - $targetInternalPath : string
 
Tags
Return values
bool —file_exists()
see http://php.net/manual/en/function.file_exists.php
    public
                file_exists(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —file_get_contents()
see http://php.net/manual/en/function.file_get_contents.php
    public
                file_get_contents(string $path) : string|false
    
        Parameters
- $path : string
 
Tags
Return values
string|false —file_put_contents()
see http://php.net/manual/en/function.file_put_contents.php
    public
                file_put_contents(string $path, string $data) : bool
    
        Parameters
- $path : string
 - $data : string
 
Tags
Return values
bool —filemtime()
see http://php.net/manual/en/function.filemtime.php
    public
                filemtime(string $path) : int|false
    
        Parameters
- $path : string
 
Tags
Return values
int|false —filesize()
see http://php.net/manual/en/function.filesize.php The result for filesize when called on a folder is required to be 0
    public
                filesize(string $path) : int|false
    
        Parameters
- $path : string
 
Tags
Return values
int|false —filetype()
see http://php.net/manual/en/function.filetype.php
    public
                filetype(string $path) : string|false
    
        Parameters
- $path : string
 
Tags
Return values
string|false —fopen()
see http://php.net/manual/en/function.fopen.php
    public
                fopen(string $path, string $mode) : resource|false
    
        Parameters
- $path : string
 - $mode : string
 
Tags
Return values
resource|false —free_space()
see http://php.net/manual/en/function.free_space.php
    public
                free_space(string $path) : int|false
    
        Parameters
- $path : string
 
Tags
Return values
int|false —getAvailability()
    public
                getAvailability() : array
    
    
    
    Tags
Return values
array —[ available, last_checked ]
getCache()
    public
                getCache() : ICache
    
    
    
    Tags
Return values
ICache —getDirectDownload()
A custom storage implementation can return an url for direct download of a give file.
    public
                getDirectDownload(string $path) : array|false
        For now the returned array can hold the parameter url - in future more attributes might follow.
Parameters
- $path : string
 
Tags
Return values
array|false —getETag()
get the ETag for a file or folder
    public
                getETag(string $path) : string|false
    
        Parameters
- $path : string
 
Tags
Return values
string|false —getId()
Get the identifier for the storage, the returned id should be the same for every storage object that is created with the same parameters and two storage objects with the same id should refer to two storages that display the same files.
    public
                getId() : string
    
    
    
    Tags
Return values
string —getLocalFile()
get the path to a local version of the file.
    public
                getLocalFile(string $path) : string|false
        The local version of the file can be temporary and doesn't have to be persistent across requests
Parameters
- $path : string
 
Tags
Return values
string|false —getMimeType()
get the mimetype for a file or folder The mimetype for a folder is required to be "httpd/unix-directory"
    public
                getMimeType(string $path) : string|false
    
        Parameters
- $path : string
 
Tags
Return values
string|false —getOwner()
    public
                getOwner(string $path) : mixed
    
        Parameters
- $path : string
 - 
                    
path for which to retrieve the owner
 
Tags
Return values
mixed —getPermissions()
get the full permissions of a path.
    public
                getPermissions(string $path) : int
        Should return a combination of the PERMISSION_ constants defined in lib/public/constants.php
Parameters
- $path : string
 
Tags
Return values
int —getPropagator()
    public
                getPropagator() : IPropagator
    
    
    
    Tags
Return values
IPropagator —getScanner()
    public
                getScanner() : IScanner
    
    
    
    Tags
Return values
IScanner —getUpdater()
    public
                getUpdater() : IUpdater
    
    
    
    Tags
Return values
IUpdater —getWatcher()
    public
                getWatcher() : IWatcher
    
    
    
    Tags
Return values
IWatcher —hash()
see http://php.net/manual/en/function.hash-file.php
    public
                hash(string $type, string $path[, bool $raw = false ]) : string|false
    
        Parameters
- $type : string
 - $path : string
 - $raw : bool = false
 
Tags
Return values
string|false —hasUpdated()
check if a file or folder has been updated since $time
    public
                hasUpdated(string $path, int $time) : bool
    
        Parameters
- $path : string
 - $time : int
 
Tags
Return values
bool —instanceOfStorage()
Check if the storage is an instance of $class or is a wrapper for a storage that is an instance of $class
    public
                instanceOfStorage(string $class) : bool
    
        Parameters
- $class : string
 
Tags
Return values
bool —is_dir()
see http://php.net/manual/en/function.is-dir.php
    public
                is_dir(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —is_file()
see http://php.net/manual/en/function.is-file.php
    public
                is_file(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —isCreatable()
check if a file can be created in $path
    public
                isCreatable(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —isDeletable()
check if a file can be deleted
    public
                isDeletable(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —isLocal()
Returns whether the storage is local, which means that files are stored on the local filesystem instead of remotely.
    public
                isLocal() : bool
        Calling getLocalFile() for local storages should always return the local files, whereas for non-local storages it might return a temporary file.
Tags
Return values
bool —true if the files are stored locally, false otherwise
isReadable()
check if a file can be read
    public
                isReadable(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —isSharable()
check if a file can be shared
    public
                isSharable(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —isUpdatable()
check if a file can be written to
    public
                isUpdatable(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —mkdir()
see http://php.net/manual/en/function.mkdir.php implementations need to implement a recursive mkdir
    public
                mkdir(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —moveFromStorage()
    public
                moveFromStorage(IStorage $sourceStorage, string $sourceInternalPath, string $targetInternalPath) : bool
    
        Parameters
- $sourceStorage : IStorage
 - $sourceInternalPath : string
 - $targetInternalPath : string
 
Tags
Return values
bool —opendir()
see http://php.net/manual/en/function.opendir.php
    public
                opendir(string $path) : resource|false
    
        Parameters
- $path : string
 
Tags
Return values
resource|false —rename()
see http://php.net/manual/en/function.rename.php
    public
                rename(string $path1, string $path2) : bool
    
        Parameters
- $path1 : string
 - $path2 : string
 
Tags
Return values
bool —rmdir()
see http://php.net/manual/en/function.rmdir.php
    public
                rmdir(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —setAvailability()
    public
                setAvailability(bool $isAvailable) : mixed
    
        Parameters
- $isAvailable : bool
 
Tags
Return values
mixed —stat()
see http://php.net/manual/en/function.stat.php only the following keys are required in the result: size and mtime
    public
                stat(string $path) : array|false
    
        Parameters
- $path : string
 
Tags
Return values
array|false —test()
Test a storage for availability
    public
                test() : bool
    
    
    
    Tags
Return values
bool —touch()
see http://php.net/manual/en/function.touch.php If the backend does not support the operation, false should be returned
    public
                touch(string $path[, int $mtime = null ]) : bool
    
        Parameters
- $path : string
 - $mtime : int = null
 
Tags
Return values
bool —unlink()
see http://php.net/manual/en/function.unlink.php
    public
                unlink(string $path) : bool
    
        Parameters
- $path : string
 
Tags
Return values
bool —verifyPath()
    public
                verifyPath(string $path, string $fileName) : void
    
        Parameters
- $path : string
 - 
                    
the path of the target folder
 - $fileName : string
 - 
                    
the name of the file itself
 
Tags
writeStream()
Write the data from a stream to a file
    public
                writeStream(string $path, resource $stream[, int|null $size = null ]) : int
    
        Parameters
- $path : string
 - $stream : resource
 - $size : int|null = null
 - 
                    
the size of the stream if known in advance
 
Tags
Return values
int —the number of bytes written