hedera-web/js/db/result.js

61 lines
978 B
JavaScript

/**
* This class stores a database result.
*/
module.exports = new Class
({
/**
* Initilizes the result object.
*/
initialize: function (result)
{
this.data = result.data;
this.tables = result.tables;
this.columns = result.columns;
this.row = -1;
if (this.columns)
{
this.columnMap = {};
for (var i = 0; i < this.columns.length; i++)
this.columnMap[this.columns[i].name] = i;
}
else
this.columnMap = null;
}
/**
* Gets a value from de result.
*
* @param {String} columnName The column name
* @return {Object} The cell value
*/
,get: function (columnName)
{
var columnIndex = this.columnMap[columnName];
return this.data[this.row][columnIndex];
}
/**
* 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;
}
});