hedera-web/js/db/result.js

65 lines
1020 B
JavaScript

/**
* This class stores a database result.
*/
module.exports = new Class
({
/**
* Initilizes the result object.
*/
initialize: function (result)
{
Object.assign (this, {
data: result.data,
tables: result.tables,
columns: result.columns,
row: -1
});
}
/**
* Moves the pointer to the next row and returns it as an object.
*
* @return {Object} The row or %null if there are no more rows
*/
,fetchRow: function ()
{
if (!this.next ())
return null;
return this.data[this.row];
}
/**
* Returns the current row as an object.
*
* @param {number} rowIndex The row index
* @return {Object} The row or %null if there are no more rows
*/
,getRow: function (rowIndex)
{
return this.data[rowIndex];
}
/**
* Resets the result iterator.
*/
,reset: function ()
{
this.row = -1;
}
/**
* Moves the internal iterator to the next row.
*/
,next: function ()
{
this.row++;
if (this.row >= this.data.length)
return false;
return true;
}
});