<?php
/**
* RecordSetAdapter is the superclass of all database adapter implementations.
*
* To keep the apadters encapsulated, the getter methods have been added to
* this superclass instead of direct property access. This superclass is really "abstract"
* even though abstraction isn't supported until PHP5. This class must be extended
* and an implementation to set the 3 properties needs to be defined.
*
* The implementation for setting the 3 properties can be defined either in the constructor
* or by overwriting the getter methods.
*
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @copyright (c) 2003 amfphp.org
* @package flashservices
* @subpackage adapters
* @version $Id$
*/
class RecordSetAdapter {
var $rows = array();
var $columns = array();
/**
* The number of rows in this recordset
*
* @access private
* @var int
*/
var $numRows = -1;
/**
* Dummy constructor function.
*
* @param resource $d The result resource
*/
function RecordSetAdapter ($d) {
$this->_resultResource = $d;
$this->_charsetHandler = new CharsetHandler('sqltophp');
$this->_directCharsetHandler = new CharsetHandler('sqltoflash');
$this->isBigEndian = AMFPHP_BIG_ENDIAN;
}
/**
* getter for the number of rows
*
* @return int The number of rows
*/
function getRowCount () {
if($this->numRows == -1)
{
$this->numRows = count($this->rows);
}
return $this->numRows;
}
function getID() {
return md5(microtime());
}
}
?>