diff options
| author | Sean Fridman <fridman@mail.sfsu.edu> | 2015-04-08 14:17:08 -0400 |
|---|---|---|
| committer | Sean Fridman <fridman@mail.sfsu.edu> | 2015-04-08 14:17:08 -0400 |
| commit | f768fc2d247988bafc80f43bda3a4a1d89a31adb (patch) | |
| tree | f640fbea3d09e3b648ac4761c99ef66ebeab58a8 /app/node_modules/okresource/index.js | |
| parent | 0fc380788157779a39fe630b2464280eea9f5088 (diff) | |
Don't just reject, fail!
Changed Q promise stuff in OKResource so that it properly
catches exceptions in promises.
Diffstat (limited to 'app/node_modules/okresource/index.js')
| -rw-r--r-- | app/node_modules/okresource/index.js | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/app/node_modules/okresource/index.js b/app/node_modules/okresource/index.js index 0e99883..122b293 100644 --- a/app/node_modules/okresource/index.js +++ b/app/node_modules/okresource/index.js @@ -83,7 +83,7 @@ OKResource.prototype.create = function(data) { if (!id) { reject(new Error('Data does not contain ID property')); } else { - db.create(type, data).then(resolve, reject); + db.create(type, data).then(resolve).fail(reject); } }); }; @@ -95,7 +95,7 @@ OKResource.prototype.destroy = function(data) { if (!id) { reject(new Error('Data does not contain ID property')); } else { - this._db.remove(this.type, data.id, data).then(resolve, reject); + this._db.remove(this.type, data.id, data).then(resolve).fail(reject); } }); }; @@ -105,7 +105,7 @@ OKResource.prototype.find = function(query) { if (!query) { throw new Error('No query given'); } else { - this._db.find(this.type, query).then(resolve, reject); + this._db.find(this.type, query).then(resolve).fail(reject); } }); }; @@ -123,7 +123,7 @@ OKResource.prototype.get = function(id) { // to match var query = {}; query[idField] = id; - db.get(type, query).then(resolve, reject); + db.get(type, query).then(resolve).fail(reject); } }); }; @@ -140,7 +140,7 @@ OKResource.prototype.update = function(data) { } else { var query = {}; query[idField] = data[idField]; - db.put(type, query, data).then(resolve, reject);; + db.put(type, query, data).then(resolve).fail(reject);; } }); }; @@ -158,11 +158,12 @@ OKResource.prototype.updateOrCreate = function(data) { reject(new Error('Cannot updateOrCreate without ID')); } else { db.get(type, query).then(function(persisted) { - if (persisted) - db.put(type, query, data).then(resolve, reject); - else - db.create(type, data).then(resolve, reject); - }, reject); + if (persisted) { + db.put(type, query, data).then(resolve).fail(reject); + } else { + db.create(type, data).then(resolve).fail(reject); + } + }).fail(reject); } }); }; |
