PHP Class Neos\Flow\ResourceManagement\Streams\StreamWrapperAdapter

The resource manager will register configured stream wrappers with this class, enabling the use of Flow goodies like DI in those stream wrappers. Instances of this class are created by PHP itself and therefore are unknown to Flow's object registry.
Show file Open project: neos/flow-development-collection Class Usage Examples

Public Properties

Property Type Description
$context resource

Protected Properties

Property Type Description
$registeredStreamWrappers array
$streamWrapper Neos\Flow\ResourceManagement\Streams\StreamWrapperInterface

Public Methods

Method Description
dir_closedir ( ) : boolean Close directory handle.
dir_opendir ( string $path, integer $options ) : boolean Open directory handle.
dir_readdir ( ) : string Read entry from directory handle.
dir_rewinddir ( ) : boolean Rewind directory handle.
getRegisteredStreamWrappers ( ) : array Returns the stream wrappers registered with this class.
getStreamWrapperImplementationClassNames ( Neos\Flow\ObjectManagement\ObjectManagerInterface $objectManager ) : array Returns all class names implementing the StreamWrapperInterface.
initializeStreamWrapper ( Neos\Flow\ObjectManagement\ObjectManagerInterface $objectManager ) : void Initialize StreamWrappers with this adapter
mkdir ( string $path, integer $mode, integer $options ) : boolean Create a directory.
registerStreamWrapper ( string $scheme, string $objectName ) : void Register a stream wrapper. Later registrations for a scheme will override earlier ones without warning.
rename ( string $path_from, string $path_to ) : boolean Renames a file or directory.
rmdir ( string $path, integer $options ) : boolean Removes a directory.
stream_cast ( integer $cast_as ) : resource Retrieve the underlaying resource.
stream_close ( ) : void Close an resource.
stream_eof ( ) : boolean Tests for end-of-file on a file pointer.
stream_flush ( ) : boolean Flushes the output.
stream_lock ( integer $operation ) : boolean Advisory file locking.
stream_open ( string $path, string $mode, integer $options, &$opened_path ) : boolean Opens file or URL.
stream_read ( integer $count ) : string Read from stream.
stream_seek ( integer $offset, integer $whence = SEEK_SET ) : boolean Seeks to specific location in a stream.
stream_set_option ( integer $option, integer $arg1, integer $arg2 ) : boolean Change stream options.
stream_stat ( ) : array Retrieve information about a file resource.
stream_tell ( ) : integer Retrieve the current position of a stream.
stream_write ( string $data ) : integer Write to stream.
unlink ( string $path ) : boolean Delete a file.
url_stat ( string $path, integer $flags ) : array Retrieve information about a file.

Protected Methods

Method Description
createStreamWrapper ( string $path ) : void Create the internal stream wrapper if needed.

Method Details

createStreamWrapper() protected method

Create the internal stream wrapper if needed.
protected createStreamWrapper ( string $path ) : void
$path string The path to fetch the scheme from.
return void

dir_closedir() public method

This method is called in response to closedir(). Any resources which were locked, or allocated, during opening and use of the directory stream should be released.
public dir_closedir ( ) : boolean
return boolean TRUE on success or FALSE on failure.

dir_opendir() public method

This method is called in response to opendir().
public dir_opendir ( string $path, integer $options ) : boolean
$path string Specifies the URL that was passed to opendir().
$options integer Whether or not to enforce safe_mode (0x04).
return boolean TRUE on success or FALSE on failure.

dir_readdir() public method

This method is called in response to readdir().
public dir_readdir ( ) : string
return string Should return string representing the next filename, or FALSE if there is no next file.

dir_rewinddir() public method

This method is called in response to rewinddir(). Should reset the output generated by dir_readdir(). I.e.: The next call to dir_readdir() should return the first entry in the location returned by dir_opendir().
public dir_rewinddir ( ) : boolean
return boolean TRUE on success or FALSE on failure.

getRegisteredStreamWrappers() public static method

Returns the stream wrappers registered with this class.
public static getRegisteredStreamWrappers ( ) : array
return array

getStreamWrapperImplementationClassNames() public static method

Returns all class names implementing the StreamWrapperInterface.
public static getStreamWrapperImplementationClassNames ( Neos\Flow\ObjectManagement\ObjectManagerInterface $objectManager ) : array
$objectManager Neos\Flow\ObjectManagement\ObjectManagerInterface
return array Array of stream wrapper implementations

initializeStreamWrapper() public static method

Initialize StreamWrappers with this adapter
public static initializeStreamWrapper ( Neos\Flow\ObjectManagement\ObjectManagerInterface $objectManager ) : void
$objectManager Neos\Flow\ObjectManagement\ObjectManagerInterface
return void

mkdir() public method

This method is called in response to mkdir(). Note: In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support creating directories.
public mkdir ( string $path, integer $mode, integer $options ) : boolean
$path string Directory which should be created.
$mode integer The value passed to mkdir().
$options integer A bitwise mask of values, such as STREAM_MKDIR_RECURSIVE.
return boolean TRUE on success or FALSE on failure.

registerStreamWrapper() public static method

Register a stream wrapper. Later registrations for a scheme will override earlier ones without warning.
public static registerStreamWrapper ( string $scheme, string $objectName ) : void
$scheme string
$objectName string
return void

rename() public method

This method is called in response to rename(). Should attempt to rename path_from to path_to. Note: In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support creating directories.
public rename ( string $path_from, string $path_to ) : boolean
$path_from string The URL to the current file.
$path_to string The URL which the path_from should be renamed to.
return boolean TRUE on success or FALSE on failure.

rmdir() public method

This method is called in response to rmdir(). Note: In order for the appropriate error message to be returned this method should not be defined if the wrapper does not support creating directories.
public rmdir ( string $path, integer $options ) : boolean
$path string The directory URL which should be removed.
$options integer A bitwise mask of values, such as STREAM_MKDIR_RECURSIVE.
return boolean TRUE on success or FALSE on failure.

stream_cast() public method

This method is called in response to stream_select().
public stream_cast ( integer $cast_as ) : resource
$cast_as integer Can be STREAM_CAST_FOR_SELECT when stream_select() is calling stream_cast() or STREAM_CAST_AS_STREAM when stream_cast() is called for other uses.
return resource Should return the underlying stream resource used by the wrapper, or FALSE.

stream_close() public method

This method is called in response to fclose(). All resources that were locked, or allocated, by the wrapper should be released.
public stream_close ( ) : void
return void

stream_eof() public method

This method is called in response to feof().
public stream_eof ( ) : boolean
return boolean Should return TRUE if the read/write position is at the end of the stream and if no more data is available to be read, or FALSE otherwise.

stream_flush() public method

This method is called in response to fflush(). If you have cached data in your stream but not yet stored it into the underlying storage, you should do so now. Note: If not implemented, FALSE is assumed as the return value.
public stream_flush ( ) : boolean
return boolean Should return TRUE if the cached data was successfully stored (or if there was no data to store), or FALSE if the data could not be stored.

stream_lock() public method

This method is called in response to flock(), when file_put_contents() (when flags contains LOCK_EX), stream_set_blocking() and when closing the stream (LOCK_UN). $operation is one of the following: LOCK_SH to acquire a shared lock (reader). LOCK_EX to acquire an exclusive lock (writer). LOCK_UN to release a lock (shared or exclusive). LOCK_NB if you don't want flock() to block while locking.
public stream_lock ( integer $operation ) : boolean
$operation integer One of the LOCK_* constants
return boolean TRUE on success or FALSE on failure.

stream_open() public method

This method is called immediately after the wrapper is initialized (f.e. by fopen() and file_get_contents()). $options can hold one of the following values OR'd together: STREAM_USE_PATH If path is relative, search for the resource using the include_path. STREAM_REPORT_ERRORS If this flag is set, you are responsible for raising errors using trigger_error() during opening of the stream. If this flag is not set, you should not raise any errors.
public stream_open ( string $path, string $mode, integer $options, &$opened_path ) : boolean
$path string Specifies the URL that was passed to the original function.
$mode string The mode used to open the file, as detailed for fopen().
$options integer Holds additional flags set by the streams API.
return boolean TRUE on success or FALSE on failure.

stream_read() public method

This method is called in response to fread() and fgets(). Note: Remember to update the read/write position of the stream (by the number of bytes that were successfully read).
public stream_read ( integer $count ) : string
$count integer How many bytes of data from the current position should be returned.
return string If there are less than count bytes available, return as many as are available. If no more data is available, return either FALSE or an empty string.

stream_seek() public method

This method is called in response to fseek(). The read/write position of the stream should be updated according to the offset and whence . $whence can one of: SEEK_SET - Set position equal to offset bytes. SEEK_CUR - Set position to current location plus offset. SEEK_END - Set position to end-of-file plus offset.
public stream_seek ( integer $offset, integer $whence = SEEK_SET ) : boolean
$offset integer The stream offset to seek to.
$whence integer
return boolean TRUE on success or FALSE on failure.

stream_set_option() public method

This method is called to set options on the stream. $option can be one of: STREAM_OPTION_BLOCKING (The method was called in response to stream_set_blocking()) STREAM_OPTION_READ_TIMEOUT (The method was called in response to stream_set_timeout()) STREAM_OPTION_WRITE_BUFFER (The method was called in response to stream_set_write_buffer()) If $option is ... then $arg1 is set to: STREAM_OPTION_BLOCKING: requested blocking mode (1 meaning block 0 not blocking). STREAM_OPTION_READ_TIMEOUT: the timeout in seconds. STREAM_OPTION_WRITE_BUFFER: buffer mode (STREAM_BUFFER_NONE or STREAM_BUFFER_FULL). If $option is ... then $arg2 is set to: STREAM_OPTION_BLOCKING: This option is not set. STREAM_OPTION_READ_TIMEOUT: the timeout in microseconds. STREAM_OPTION_WRITE_BUFFER: the requested buffer size.
public stream_set_option ( integer $option, integer $arg1, integer $arg2 ) : boolean
$option integer
$arg1 integer
$arg2 integer
return boolean TRUE on success or FALSE on failure. If option is not implemented, FALSE should be returned.

stream_stat() public method

This method is called in response to fstat().
public stream_stat ( ) : array
return array See http://php.net/stat

stream_tell() public method

This method is called in response to ftell().
public stream_tell ( ) : integer
return integer Should return the current position of the stream.

stream_write() public method

This method is called in response to fwrite(). If there is not enough room in the underlying stream, store as much as possible. Note: Remember to update the current position of the stream by number of bytes that were successfully written.
public stream_write ( string $data ) : integer
$data string Should be stored into the underlying stream.
return integer Should return the number of bytes that were successfully stored, or 0 if none could be stored.

url_stat() public method

This method is called in response to all stat() related functions. $flags can hold one or more of the following values OR'd together: STREAM_URL_STAT_LINK For resources with the ability to link to other resource (such as an HTTP Location: forward, or a filesystem symlink). This flag specified that only information about the link itself should be returned, not the resource pointed to by the link. This flag is set in response to calls to lstat(), is_link(), or filetype(). STREAM_URL_STAT_QUIET If this flag is set, your wrapper should not raise any errors. If this flag is not set, you are responsible for reporting errors using the trigger_error() function during stating of the path.
public url_stat ( string $path, integer $flags ) : array
$path string The file path or URL to stat. Note that in the case of a URL, it must be a :// delimited URL. Other URL forms are not supported.
$flags integer Holds additional flags set by the streams API.
return array Should return as many elements as stat() does. Unknown or unavailable values should be set to a rational value (usually 0).

Property Details

$context public property

public resource $context
return resource

$registeredStreamWrappers protected static property

protected static array $registeredStreamWrappers
return array

$streamWrapper protected property

protected StreamWrapperInterface,Neos\Flow\ResourceManagement\Streams $streamWrapper
return Neos\Flow\ResourceManagement\Streams\StreamWrapperInterface