MediaWiki master
Wikimedia\FileBackend\FileIteration\SwiftFileBackendList Class Reference

SwiftFileBackend helper class to page through listings. More...

Inherits Iterator.

Inherited by Wikimedia\FileBackend\FileIteration\SwiftFileBackendDirList, and Wikimedia\FileBackend\FileIteration\SwiftFileBackendFileList.

Collaboration diagram for Wikimedia\FileBackend\FileIteration\SwiftFileBackendList:

Public Member Functions

 __construct (SwiftFileBackend $backend, $fullCont, $dir, array $params)
 
 key ()
 
 next ()
 
 rewind ()
 
 valid ()
 

Protected Member Functions

 pageFromList ( $container, $dir, &$after, $limit, array $params)
 Get the next page of entries.
 

Protected Attributes

SwiftFileBackend $backend
 
string $container
 Container name.
 
string null $continueAfter = null
 Continuation marker; the next page starts after this path.
 
string $dir
 Storage directory.
 
string[] array[] $iterableBuffer = []
 Current page of entries; path list or (path,stat map) list.
 
array $params = []
 
int $pos = 0
 
int $suffixStart
 

Detailed Description

SwiftFileBackend helper class to page through listings.

Swift also has a listing limit of 10,000 objects for performance. Do not use this class from places outside SwiftFileBackend.

Definition at line 24 of file SwiftFileBackendList.php.

Constructor & Destructor Documentation

◆ __construct()

Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::__construct ( SwiftFileBackend $backend,
$fullCont,
$dir,
array $params )
Parameters
SwiftFileBackend$backend
string$fullContResolved container name
string$dirResolved directory relative to container
array$params
Note
This defers I/O by not buffering the first page (useful for AppendIterator use)
Do not call current()/valid() without calling rewind() first

Definition at line 59 of file SwiftFileBackendList.php.

References Wikimedia\FileBackend\FileIteration\SwiftFileBackendList\$backend, Wikimedia\FileBackend\FileIteration\SwiftFileBackendList\$dir, and Wikimedia\FileBackend\FileIteration\SwiftFileBackendList\$params.

Member Function Documentation

◆ key()

Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::key ( )
See also
Iterator::key()
Returns
int

Definition at line 78 of file SwiftFileBackendList.php.

◆ next()

Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::next ( )

Definition at line 85 of file SwiftFileBackendList.php.

◆ pageFromList()

Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::pageFromList ( $container,
$dir,
& $after,
$limit,
array $params )
abstractprotected

Get the next page of entries.

Parameters
string$containerResolved container name
string$dirResolved path relative to container
string&$after
int$limit
array$params
Returns
Traversable|array

Reimplemented in Wikimedia\FileBackend\FileIteration\SwiftFileBackendDirList, and Wikimedia\FileBackend\FileIteration\SwiftFileBackendFileList.

◆ rewind()

Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::rewind ( )

Definition at line 109 of file SwiftFileBackendList.php.

◆ valid()

Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::valid ( )
See also
Iterator::valid()
Returns
bool

Definition at line 126 of file SwiftFileBackendList.php.

Member Data Documentation

◆ $backend

SwiftFileBackend Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::$backend
protected

◆ $container

string Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::$container
protected

◆ $continueAfter

string null Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::$continueAfter = null
protected

Continuation marker; the next page starts after this path.

Definition at line 29 of file SwiftFileBackendList.php.

◆ $dir

◆ $iterableBuffer

string [] array [] Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::$iterableBuffer = []
protected

Current page of entries; path list or (path,stat map) list.

Definition at line 26 of file SwiftFileBackendList.php.

◆ $params

◆ $pos

int Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::$pos = 0
protected

Definition at line 32 of file SwiftFileBackendList.php.

◆ $suffixStart

int Wikimedia\FileBackend\FileIteration\SwiftFileBackendList::$suffixStart
protected

Definition at line 47 of file SwiftFileBackendList.php.


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