You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

viewmodel

Package Overview
Dependencies
2
Maintainers
1
Versions
109
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.5.2 to 0.5.3

37

lib/databases/couchDb.js

@@ -240,4 +240,4 @@ var cradle = require('cradle')

res = _.extend(res, self.fromObject(obj));
res._revision = res.revision;
delete res.revision;
// res._revision = res.revision;
// delete res.revision;

@@ -290,4 +290,4 @@ clb(null, res);

var vm = vms[i].value;
vm._revision = vm.revision;
delete vm.revision;
// vm._revision = vm.revision;
// delete vm.revision;
vm.id = vm._id;

@@ -321,5 +321,6 @@ var obj = self.fromObject(vm);

var self = this;
switch(vm.actionOnCommit) {
case 'delete':
var self = this;
this.db.get(vm.id, function(err, doc) {

@@ -337,14 +338,26 @@ if (doc) {

var obj = this.fromViewModel(vm);
obj.revision = obj._revision;
delete obj._revision;
// obj.revision = obj._revision;
// delete obj._revision;
// delete obj._rev;
obj.id = obj._id;
obj.collectionName = this.collectionName;
this.db.save(obj._id, obj, function(err) {
if (err && err.error === 'conflict' && err.reason.indexOf('update conflict') >= 0) {
function save() {
self.db.save(obj._id, obj._rev, obj, function(err) {
if (err && err.error === 'conflict' && err.reason.indexOf('update conflict') >= 0) {
return callback(new ConcurrencyError());
}
vm.actionOnCommit = 'update';
callback(err, vm);
});
}
if (!obj._rev) {
this.db.get(obj.id, function(err, doc) {
if (doc) {
return callback(new ConcurrencyError());
}
vm.actionOnCommit = 'update';
callback(err, vm);
});
save();
});
} else {
save();
}
break;

@@ -351,0 +364,0 @@ default:

@@ -143,2 +143,5 @@ var _ = require('lodash')

case 'create':
if (col[vm.id]) {
return callback(new ConcurrencyError());
}
// Intended Fall-through

@@ -145,0 +148,0 @@ case 'update':

@@ -150,3 +150,6 @@ var mongo = require('mongodb')

obj._hash = new ObjectID().toString();
this.collection.save(obj, { safe: true }, function(err) {
this.collection.insert(obj, { safe: true }, function(err) {
if (err && err.message && err.message.indexOf('duplicate key') >= 0) {
return callback(new ConcurrencyError());
}
vm.actionOnCommit = 'update';

@@ -153,0 +156,0 @@ callback(err, vm);

@@ -123,3 +123,6 @@ var path = require('path')

obj._hash = new tingodb.ObjectID().toString();
this.collection.save(obj, { safe: true }, function(err) {
this.collection.insert(obj, { safe: true }, function(err) {
if (err && err.message && err.message.indexOf('duplicate key') >= 0) {
return callback(new ConcurrencyError());
}
vm.actionOnCommit = 'update';

@@ -139,3 +142,2 @@ callback(err, vm);

this.collection.update(query, obj, { safe: true, upsert: !currentHash }, function(err, modifiedCount) {
console.log(arguments);
if (modifiedCount === 0) {

@@ -142,0 +144,0 @@ return callback(new ConcurrencyError());

{
"author": "adrai",
"name": "viewmodel",
"version": "0.5.2",
"version": "0.5.3",
"private": false,

@@ -6,0 +6,0 @@ "main": "index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc