Skip to content

Commit 6f9012b

Browse files
committed
♻️ prefer promisify over manual new Promise
Issue: CLDSRV-878
1 parent 9524559 commit 6f9012b

File tree

2 files changed

+7
-18
lines changed

2 files changed

+7
-18
lines changed

lib/routes/veeam/list.js

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ const metadata = require('../../metadata/wrapper');
66
const { responseXMLBody } = require('arsenal/build/lib/s3routes/routesUtils');
77
const { respondWithData, getResponseHeader, buildHeadXML, validPath, fetchCapacityMetrics } = require('./utils');
88
const { processVersions, processMasterVersions } = require('../../api/bucketGet');
9+
const { promisify } = require('util');
910

11+
metadata.getBucketPromised = promisify(metadata.getBucket);
1012

1113
/**
1214
* Utility function to build a standard response for the LIST route.
@@ -96,12 +98,7 @@ async function listVeeamFiles(request, response, bucketMd, log) {
9698

9799
let data;
98100
try {
99-
data = await new Promise((resolve, reject) =>
100-
metadata.getBucket(request.bucketName, log, (err, result) => {
101-
if (err) { return reject(err); }
102-
return resolve(result);
103-
})
104-
);
101+
data = await metadata.getBucket(request.bucketName, log);
105102
} catch {
106103
return responseXMLBody(errors.InternalError, null, response, log);
107104
}

lib/routes/veeam/utils.js

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ const UtilizationService = require('../../utilization/instance');
1010
const metadata = require('../../metadata/wrapper');
1111

1212
const pipeline = promisify(streamPipeline);
13+
const getUtilizationMetrics = promisify(UtilizationService.getUtilizationMetrics.bind(UtilizationService));
14+
metadata.getBucketPromised = promisify(metadata.getBucket);
1315

1416
/**
1517
* Decodes an URI and return the result.
@@ -217,12 +219,7 @@ function getFileToBuild(request, data, inlineLastModified = false) {
217219
async function fetchCapacityMetrics(bucketMd, request, log, method) {
218220
const bucketKey = `${bucketMd._name}_${new Date(bucketMd._creationDate).getTime()}`;
219221
try {
220-
return await new Promise((resolve, reject) =>
221-
UtilizationService.getUtilizationMetrics('bucket', bucketKey, null, {}, (err, bucketMetrics) => {
222-
if (err) { return reject(err); }
223-
return resolve(bucketMetrics);
224-
})
225-
);
222+
return await getUtilizationMetrics('bucket', bucketKey, null, {});
226223
} catch (err) {
227224
const statusCode = err.response?.status || err.statusCode || err.code;
228225
if (statusCode === 404) {
@@ -255,12 +252,7 @@ async function fetchCapacityMetrics(bucketMd, request, log, method) {
255252
async function buildVeeamFileData(request, bucketMd, log, name) {
256253
let data;
257254
try {
258-
data = await new Promise((resolve, reject) =>
259-
metadata.getBucket(request.bucketName, log, (err, result) => {
260-
if (err) { return reject(err); }
261-
return resolve(result);
262-
})
263-
);
255+
data = await metadata.getBucketPromised(request.bucketName, log);
264256
} catch {
265257
throw errors.InternalError;
266258
}

0 commit comments

Comments
 (0)