hapiest-mysql
Advanced tools
Comparing version 0.0.16 to 0.0.17
@@ -34,7 +34,15 @@ 'use strict'; | ||
const sql = this._queryHelper.create(createArgs); | ||
return this.createFromSql(sql); | ||
} | ||
/** | ||
* @param {string} sql | ||
* @returns {Promise.<int,Error>} - ID of last inserted item | ||
*/ | ||
createFromSql(sql) { | ||
return this._mysqlService.insert(sql) | ||
.then(result => result.insertId) | ||
.catch(err => { | ||
this._logger.error(err.message, {createArgs:createArgs, err:err}); | ||
throw new Error(`MysqlDao.create() for ${this.tableName} failed`); | ||
this._logger.error(err.message, {sql:sql, err:err}); | ||
throw new Error(`MysqlDao.createFromSql() for ${this.tableName} failed`); | ||
}); | ||
@@ -49,7 +57,11 @@ } | ||
const sql = this._queryHelper.createBulk(createArgsArr); | ||
return this.createBulkFromSql(sql); | ||
} | ||
createBulkFromSql(sql) { | ||
return this._mysqlService.insert(sql) | ||
.then(result => result.affectedRows) | ||
.catch(err => { | ||
this._logger.error(err.message, {createArgsArr:createArgsArr, err:err}); | ||
throw new Error(`MysqlDao.createBulk() for ${this.tableName} failed`); | ||
this._logger.error(err.message, {sql:sql, err:err}); | ||
throw new Error(`MysqlDao.createBulkFromSql() for ${this.tableName} failed`); | ||
}); | ||
@@ -72,7 +84,15 @@ } | ||
const sql = this._queryHelper.getOne(whereClause); | ||
return this.getOneFromSql(sql); | ||
} | ||
/** | ||
* @param {string} sql | ||
* @returns {Promise.<object|null,Error>} | ||
*/ | ||
getOneFromSql(sql) { | ||
return this._mysqlService.selectOne(sql) | ||
.then(dbRow => dbRow ? this._createVoFromDbRow(dbRow) : null) | ||
.catch(err => { | ||
this._logger.error(err.message, {whereClause: whereClause, err:err}); | ||
throw new Error('MysqlDao.getOne() failed'); | ||
this._logger.error(err.message, {sql: sql, err:err}); | ||
throw new Error('MysqlDao.getOneFromSql() failed'); | ||
}); | ||
@@ -89,2 +109,10 @@ } | ||
const sql = this._queryHelper.getAll(whereClause); | ||
return this.getAllFromSql(sql); | ||
} | ||
/** | ||
* @param {string} sql | ||
* @returns {Promise.<object[],Error>} | ||
*/ | ||
getAllFromSql(sql) { | ||
return this._mysqlService.selectAll(sql) | ||
@@ -98,3 +126,3 @@ .then(dbRows => { | ||
this._logger.error(err.message, {whereClause: whereClause, err:err}); | ||
throw new Error('MysqlDao.getAll() failed'); | ||
throw new Error('MysqlDao.getAllFromSql() failed'); | ||
}); | ||
@@ -120,7 +148,15 @@ } | ||
const sql = this._queryHelper.updateOne(whereClause, updateArgs); | ||
return this.updateFromSql(sql); | ||
} | ||
/** | ||
* @param {string} sql | ||
* @returns {Promise.<int>} - returns number of changed rows (should be 0 or 1) | ||
*/ | ||
updateFromSql(sql) { | ||
return this._mysqlService.update(sql) | ||
.then(results => results.changedRows) | ||
.catch(err => { | ||
this._logger.error(err.message, {whereClause: whereClause, updateArgs: updateArgs, err:err}); | ||
throw new Error('MysqlDao.updateOne() failed'); | ||
this._logger.error(err.message, {sql: sql, err:err}); | ||
throw new Error('MysqlDao.updateFromSql() failed'); | ||
}); | ||
@@ -143,7 +179,15 @@ } | ||
const sql = this._queryHelper.deleteOne(whereClause); | ||
return this.deleteFromSql(sql); | ||
} | ||
/** | ||
* @param {string} sql | ||
* @returns {Promise.<int>} - number of affected rows (should be 0 or 1) | ||
*/ | ||
deleteFromSql(sql) { | ||
return this._mysqlService.delete(sql) | ||
.then(results => results.affectedRows) | ||
.catch(err => { | ||
this._logger.error(err.message, {whereClause: whereClause, err:err}); | ||
throw new Error('MysqlDao.deleteOne() failed'); | ||
this._logger.error(err.message, {sql: sql, err:err}); | ||
throw new Error('MysqlDao.deleteFromSql() failed'); | ||
}); | ||
@@ -150,0 +194,0 @@ } |
{ | ||
"name": "hapiest-mysql", | ||
"version": "0.0.16", | ||
"version": "0.0.17", | ||
"description": "A wrapper around mysql that provides a very descriptive way of running queries.", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
126149
2880