Skip to content

Commit 014d227

Browse files
committed
Fixes for gridfs
1 parent 8d3b9f6 commit 014d227

File tree

2 files changed

+57
-35
lines changed

2 files changed

+57
-35
lines changed

CHANGELOG.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
## Version xx.xx.xx
22

3+
Fixes:
4+
- [gridfs] fixes for moving to Promises
5+
36
Dependencies:
47
- Bump sass from 1.81.0 to 1.83.1
58
- Bump countly-sdk-nodejs from 24.10.0 to 24.10.1

api/utils/countlyFs.js

+54-35
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ countlyFs.gridfs = {};
6868
**/
6969
function beforeSave(category, filename, options, callback, done) {
7070
log.d("checking file", filename);
71-
ob.getId(category, filename, function(err, res) {
71+
ob.getId(category, filename, async function(err, res) {
7272
log.d("file state", filename, err, res);
7373
if (options.forceClean) {
7474
ob.clearFile(category, filename, done);
@@ -80,15 +80,20 @@ countlyFs.gridfs = {};
8080
else if (options.writeMode === "overwrite") {
8181
var bucket = new GridFSBucket(db, { bucketName: category });
8282
log.d("deleting file", filename);
83-
bucket.delete(res, function(error) {
84-
log.d("deleted", filename, error);
85-
if (!error) {
86-
setTimeout(done, 1);
87-
}
88-
else if (callback) {
89-
callback(error);
90-
}
91-
});
83+
let errHandle = null;
84+
try {
85+
await bucket.delete(res);
86+
}
87+
catch (error) {
88+
errHandle = error;
89+
}
90+
log.d("deleted", filename, errHandle);
91+
if (!errHandle) {
92+
setTimeout(done, 1);
93+
}
94+
else if (callback) {
95+
callback(errHandle);
96+
}
9297
}
9398
else {
9499
if (callback) {
@@ -271,7 +276,7 @@ countlyFs.gridfs = {};
271276
* console.log("Finished", err);
272277
* });
273278
*/
274-
ob.rename = function(category, dest, source, options, callback) {
279+
ob.rename = async function(category, dest, source, options, callback) {
275280
var newname = dest.split(path.sep).pop();
276281
var oldname = source.split(path.sep).pop();
277282
if (typeof options === "function") {
@@ -284,22 +289,32 @@ countlyFs.gridfs = {};
284289

285290
if (options.id) {
286291
let bucket = new GridFSBucket(db, { bucketName: category });
287-
bucket.rename(options.id, newname, function(error) {
288-
if (callback) {
289-
callback(error);
290-
}
291-
});
292+
let errHandle = null;
293+
try {
294+
await bucket.rename(options.id, newname);
295+
}
296+
catch (error) {
297+
errHandle = error;
298+
}
299+
if (callback) {
300+
callback(errHandle);
301+
}
292302
}
293303
else {
294-
db.collection(category + ".files").findOne({ filename: oldname }, {_id: 1}, function(err, res) {
304+
db.collection(category + ".files").findOne({ filename: oldname }, {_id: 1}, async function(err, res) {
295305
if (!err) {
296306
if (res && res._id) {
297307
let bucket = new GridFSBucket(db, { bucketName: category });
298-
bucket.rename(res._id, newname, function(error) {
299-
if (callback) {
300-
callback(error);
301-
}
302-
});
308+
let errHandle = null;
309+
try {
310+
await bucket.rename(res._id, newname);
311+
}
312+
catch (error) {
313+
errHandle = error;
314+
}
315+
if (callback) {
316+
callback(errHandle);
317+
}
303318
}
304319
else {
305320
if (callback) {
@@ -372,13 +387,18 @@ countlyFs.gridfs = {};
372387
* console.log("Finished", err);
373388
* });
374389
*/
375-
ob.deleteAll = function(category, dest, callback) {
390+
ob.deleteAll = async function(category, dest, callback) {
376391
var bucket = new GridFSBucket(db, { bucketName: category });
377-
bucket.drop(function(error) {
378-
if (callback) {
379-
callback(error);
380-
}
381-
});
392+
let errHandle = null;
393+
try {
394+
await bucket.drop();
395+
}
396+
catch (error) {
397+
errHandle = error;
398+
}
399+
if (callback) {
400+
callback(errHandle);
401+
}
382402
};
383403

384404
/**
@@ -603,16 +623,15 @@ countlyFs.gridfs = {};
603623
*/
604624
ob.deleteFileById = async function(category, id, callback) {
605625
var bucket = new GridFSBucket(db, { bucketName: category });
626+
let errHandle = null;
606627
try {
607628
await bucket.delete(id);
608-
if (callback) {
609-
callback(null);
610-
}
611629
}
612-
catch (ee) {
613-
if (callback) {
614-
callback(ee);
615-
}
630+
catch (error) {
631+
errHandle = error;
632+
}
633+
if (callback) {
634+
callback(errHandle);
616635
}
617636
};
618637

0 commit comments

Comments
 (0)