aboutsummaryrefslogtreecommitdiff
path: root/classes/iterators/IsisMainFieldIterator.php
diff options
context:
space:
mode:
authorSilvio <silvio@devlet.com.br>2010-07-19 18:04:40 -0300
committerSilvio <silvio@devlet.com.br>2010-07-19 18:04:40 -0300
commit1d84217ed97be237d2696c85a997c9e52114b984 (patch)
treee2b241be944cea023d89f785dfb97286cbd9be24 /classes/iterators/IsisMainFieldIterator.php
parent2018efe9bd583378e11e7998070221faa92890b4 (diff)
downloadcinisis-1d84217ed97be237d2696c85a997c9e52114b984.tar.gz
cinisis-1d84217ed97be237d2696c85a997c9e52114b984.tar.bz2
Lots of API changes at IsisConnector and iterators
Diffstat (limited to 'classes/iterators/IsisMainFieldIterator.php')
-rw-r--r--classes/iterators/IsisMainFieldIterator.php87
1 files changed, 0 insertions, 87 deletions
diff --git a/classes/iterators/IsisMainFieldIterator.php b/classes/iterators/IsisMainFieldIterator.php
deleted file mode 100644
index 5ec1cbc..0000000
--- a/classes/iterators/IsisMainFieldIterator.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-
-/**
- * Isis field iterator. Iterates over all field main values for
- * each result row.
- *
- * @todo
- * Support for 'join_subfields'
- */
-class IsisMainFieldIterator implements Iterator
-{
- private $class;
- private $field;
- private $valueset;
- private $row = 0;
- private $rows = 0;
-
- /**
- * Constructor.
- *
- * @param $class
- * Instance of IsisConnector or child class.
- *
- * @param $field
- * Field to iterate over.
- */
- public function __construct($class, $field) {
- $this->rows = $class->getRows($field);
- $this->valueset = $class->getValues($field);
- $this->class = $class;
- $this->field = $field;
- }
-
- /**
- * Rewind the Iterator to the first element.
- */
- function rewind() {
- $this->row = 0;
- $this->value = 0;
- }
-
- /**
- * Return the key of the current element.
- */
- function key() {
- return $this->row;
- }
-
- /**
- * Return the current element.
- */
- function current() {
- $field = $this->class->getMainFieldName($this->field);
- return $this->valueset[$this->row][$field];
- }
-
- /**
- * Move forward to next element.
- */
- function next() {
- do {
- ++$this->row;
- }
- while ($this->current_null() && $this->has_more_rows());
- }
-
- /**
- * Check if there are more rows.
- */
- function has_more_rows() {
- return $this->row <= $this->rows;
- }
-
- /**
- * Check if the current value is null.
- */
- function current_null() {
- return $this->current() == NULL;
- }
-
- /**
- * Check if there is a current element after calls to rewind() or next().
- */
- function valid() {
- return $this->has_more_rows() && !$this->current_null();
- }
-}