MediaWiki master
MediaWiki\Rest\StringStream Class Reference

A stream class which uses a string as the underlying storage. More...

Inherits Stringable, and MediaWiki\Rest\CopyableStreamInterface.

Collaboration diagram for MediaWiki\Rest\StringStream:

Public Member Functions

 __construct ( $contents='')
 Construct a StringStream with the given contents.
 
 __toString ()
 
 close ()
 
 copyToStream ( $stream)
 Copy this stream to a specified stream resource.For some streams, this can be implemented without a tight loop in PHP code.Equivalent to reading from the object until EOF and writing the resulting data to $stream. The position will be advanced to the end.Note that $stream is not a StreamInterface object.
Parameters
resource$streamDestination

 
 detach ()
 
 eof ()
 
 getContents ()
 
 getMetadata ( $key=null)
 
 getSize ()
 
 isReadable ()
 
 isSeekable ()
 
 isWritable ()
 
 read ( $length)
 
 rewind ()
 
 seek ( $offset, $whence=SEEK_SET)
 
 tell ()
 
 write ( $string)
 

Detailed Description

A stream class which uses a string as the underlying storage.

Surprisingly, Guzzle does not appear to have one of these. BufferStream does not do what we want.

The normal use of this class should be to first write to the stream, then rewind, then read back the whole buffer with getContents().

Seeking is supported, however seeking past the end of the string does not fill with null bytes as in a real file, it throws an exception instead.

Definition at line 19 of file StringStream.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Rest\StringStream::__construct ( $contents = '')

Construct a StringStream with the given contents.

The offset will start at 0, ready for reading. If appending to the given string is desired, you should first seek to the end.

Parameters
string$contents

Definition at line 34 of file StringStream.php.

Member Function Documentation

◆ __toString()

MediaWiki\Rest\StringStream::__toString ( )

Definition at line 43 of file StringStream.php.

◆ close()

MediaWiki\Rest\StringStream::close ( )

Definition at line 47 of file StringStream.php.

◆ copyToStream()

MediaWiki\Rest\StringStream::copyToStream ( $stream)

Copy this stream to a specified stream resource.For some streams, this can be implemented without a tight loop in PHP code.Equivalent to reading from the object until EOF and writing the resulting data to $stream. The position will be advanced to the end.Note that $stream is not a StreamInterface object.

Parameters
resource$streamDestination

Implements MediaWiki\Rest\CopyableStreamInterface.

Definition at line 39 of file StringStream.php.

References MediaWiki\Rest\StringStream\getContents().

◆ detach()

MediaWiki\Rest\StringStream::detach ( )

Definition at line 51 of file StringStream.php.

◆ eof()

MediaWiki\Rest\StringStream::eof ( )

Definition at line 66 of file StringStream.php.

◆ getContents()

MediaWiki\Rest\StringStream::getContents ( )

Definition at line 142 of file StringStream.php.

Referenced by MediaWiki\Rest\StringStream\copyToStream().

◆ getMetadata()

MediaWiki\Rest\StringStream::getMetadata ( $key = null)

Definition at line 155 of file StringStream.php.

◆ getSize()

MediaWiki\Rest\StringStream::getSize ( )

Definition at line 56 of file StringStream.php.

◆ isReadable()

MediaWiki\Rest\StringStream::isReadable ( )

Definition at line 124 of file StringStream.php.

◆ isSeekable()

MediaWiki\Rest\StringStream::isSeekable ( )

Definition at line 71 of file StringStream.php.

◆ isWritable()

MediaWiki\Rest\StringStream::isWritable ( )

Definition at line 107 of file StringStream.php.

◆ read()

MediaWiki\Rest\StringStream::read ( $length)

Definition at line 129 of file StringStream.php.

◆ rewind()

MediaWiki\Rest\StringStream::rewind ( )

Definition at line 102 of file StringStream.php.

◆ seek()

MediaWiki\Rest\StringStream::seek ( $offset,
$whence = SEEK_SET )

Definition at line 76 of file StringStream.php.

◆ tell()

MediaWiki\Rest\StringStream::tell ( )

Definition at line 61 of file StringStream.php.

◆ write()

MediaWiki\Rest\StringStream::write ( $string)

Definition at line 112 of file StringStream.php.


The documentation for this class was generated from the following file: