use Org\Mxchange\CoreFramework\Result\Update\UpdateableResult;
// Import SPL stuff
+use \InvalidArgumentException;
use \SeekableIterator;
/**
/**
* Result array
*/
- private $resultArray = array();
+ private $resultArray = [];
/**
* Array of out-dated entries
*/
- private $outDated = array();
+ private $outDated = [];
/**
* Affected rows
*
* @param $resultArray The array holding the result from query
* @return $resultInstance An instance of this class
+ * @throws InvalidArgumentException If a parameter is invalid
*/
public static final function createCachedDatabaseResult (array $resultArray) {
+ // Misses an element?
+ if (count($resultArray) == 0) {
+ // Cannot be empty
+ throw new InvalidArgumentException('Array "resultArray" cannot be empty.');
+ } elseif (!array_key_exists(BaseDatabaseBackend::RESULT_INDEX_ROWS, $resultArray)) {
+ // Yes, then abort here
+ throw new InvalidArgumentException(sprintf('resultArray(%d)=%s has no element "%s".', count($resultArray), print_r($resultArray, TRUE), BaseDatabaseBackend::RESULT_INDEX_ROWS));
+ }
+
// Get a new instance
$resultInstance = new CachedDatabaseResult();
*/
public function rewind () {
$this->currentPos = -1;
- $this->currentRow = array();
+ $this->currentRow = [];
}
/**