Detailed Description
PersistentIterator is used to iterate over a tree/list built of oids using a Depth-First-Algorithm.
To persist its state use the PersistentIterator::save() method, to restore its state use the static PersistentIterator::load() method, which returns the loaded instance. States are identified by an unique id, which is provided after saving.
Definition at line 25 of file PersistentIterator.php.
Inheritance diagram for PersistentIterator:Public Member Functions | |
| __construct (PersistenceFacade $persistenceFacade, Session $session, ObjectId $oid, $aggregationKinds=array()) | |
| save () | |
| current () | |
| key () | |
| next () | |
| rewind () | |
| valid () | |
Static Public Member Functions | |
| static | load ($persistenceFacade, $session, $uid) |
Protected Member Functions | |
| addToQueue ($oidList, $depth) | |
Protected Attributes | |
| $_end | |
| $_oidList | |
| $_processedOidList | |
| $_currentOid | |
| $_startOid | |
| $_currentDepth | |
| $_aggregationKinds | |
Constructor & Destructor Documentation
| __construct | ( | PersistenceFacade | $persistenceFacade, |
| Session | $session, | ||
| ObjectId | $oid, | ||
$aggregationKinds = array() |
|||
| ) |
Constructor.
- Parameters
-
$persistenceFacade $session $oid The oid to start from. $aggregationKinds Array of aggregation kind values of relations to follow possible values: 'none', 'shared', 'composite'. Empty array means all (default: empty)
Definition at line 46 of file PersistentIterator.php.
Member Function Documentation
| save | ( | ) |
Save the iterator state to the session.
- Returns
- A unique id to provide for load, see PersistentIterator::load()
Definition at line 66 of file PersistentIterator.php.
|
static |
Load an iterator state from the session.
- Parameters
-
$persistenceFacade $session $uid The unique id returned from the save method, see PersistentIterator::save()
- Returns
- PersistentIterator instance holding the saved state or null if unique id is not found
Definition at line 81 of file PersistentIterator.php.
| current | ( | ) |
Return the current element.
- Returns
- ObjectId, the current object id
Definition at line 102 of file PersistentIterator.php.
| key | ( | ) |
Return the key of the current element.
- Returns
- Number, the current depth
Definition at line 110 of file PersistentIterator.php.
| next | ( | ) |
Move forward to next element.
Definition at line 117 of file PersistentIterator.php.
| rewind | ( | ) |
Rewind the Iterator to the first element.
Definition at line 167 of file PersistentIterator.php.
| valid | ( | ) |
Checks if current position is valid.
Definition at line 178 of file PersistentIterator.php.
|
protected |
Add oids to the processing queue.
- Parameters
-
$oidList An array of oids. $depth The depth of the oids in the tree.
Definition at line 187 of file PersistentIterator.php.
Member Data Documentation
|
protected |
Definition at line 30 of file PersistentIterator.php.
|
protected |
Definition at line 31 of file PersistentIterator.php.
|
protected |
Definition at line 32 of file PersistentIterator.php.
|
protected |
Definition at line 33 of file PersistentIterator.php.
|
protected |
Definition at line 34 of file PersistentIterator.php.
|
protected |
Definition at line 35 of file PersistentIterator.php.
|
protected |
Definition at line 36 of file PersistentIterator.php.