Skip to content

Commit b44bdd0

Browse files
authored
fix: Method deleteDocument tries to delete null documents (#164)
1 parent 64e8a2a commit b44bdd0

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

packages/nativescript-couchbase/index.android.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,13 +136,16 @@ export class CouchBase extends Common {
136136
}
137137

138138
deleteDocument(documentId: string, concurrencyMode: ConcurrencyMode = ConcurrencyMode.LastWriteWins) {
139+
let success = false;
139140
try {
140141
const doc = this.android.getDocument(documentId);
141-
return this.android.delete(doc, concurrencyMode === ConcurrencyMode.FailOnConflict ? com.couchbase.lite.ConcurrencyControl.FAIL_ON_CONFLICT : com.couchbase.lite.ConcurrencyControl.LAST_WRITE_WINS);
142+
if (doc != null) {
143+
success = this.android.delete(doc, concurrencyMode === ConcurrencyMode.FailOnConflict ? com.couchbase.lite.ConcurrencyControl.FAIL_ON_CONFLICT : com.couchbase.lite.ConcurrencyControl.LAST_WRITE_WINS);
144+
}
142145
} catch (e) {
143146
console.error(e.message);
144-
return false;
145147
}
148+
return success;
146149
}
147150

148151
destroyDatabase() {

packages/nativescript-couchbase/index.ios.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -398,8 +398,16 @@ export class CouchBase extends Common {
398398
}
399399

400400
deleteDocument(documentId: string, concurrencyMode: ConcurrencyMode = 1) {
401-
const doc = this.ios.documentWithID(documentId);
402-
return this.ios.deleteDocumentConcurrencyControlError(doc, concurrencyMode === 1 ? CBLConcurrencyControl.kCBLConcurrencyControlFailOnConflict : CBLConcurrencyControl.kCBLConcurrencyControlLastWriteWins);
401+
let success = false;
402+
try {
403+
const doc = this.ios.documentWithID(documentId);
404+
if (doc != null) {
405+
success = this.ios.deleteDocumentConcurrencyControlError(doc, concurrencyMode === 1 ? CBLConcurrencyControl.kCBLConcurrencyControlFailOnConflict : CBLConcurrencyControl.kCBLConcurrencyControlLastWriteWins);
406+
}
407+
} catch (e) {
408+
console.error(e.message);
409+
}
410+
return success;
403411
}
404412

405413
destroyDatabase() {

0 commit comments

Comments
 (0)