#112 Adding feature to insert document when overwrite and putIfAbsent… (#155)
If document is not present when overwrite is requested, then insert it.
diff --git a/actions/database-actions/write-document.js b/actions/database-actions/write-document.js
index b96b6af..2db401c 100755
--- a/actions/database-actions/write-document.js
+++ b/actions/database-actions/write-document.js
@@ -45,7 +45,7 @@
/**
* If id defined and overwrite is true, checks if doc exists to retrieve version
- * before insert. Else inserts.
+ * before insert. Else inserts a new doc.
*/
function insertOrUpdate(cloudantDb, overwrite, doc) {
if (doc._id) {
@@ -62,8 +62,19 @@
reject(err);
});
} else {
- console.error('error', error);
- reject(error);
+ if(error.statusCode === 404) {
+ // If document not found, insert it
+ insert(cloudantDb, doc)
+ .then(function (response) {
+ resolve(response);
+ })
+ .catch(function (err) {
+ reject(err);
+ });
+ } else {
+ console.error('error', error);
+ reject(error);
+ }
}
});
});