From 291803c31f829fe0d32bb3207bc11def95a7408c Mon Sep 17 00:00:00 2001 From: Nevena Bojovic Date: Tue, 1 Mar 2022 20:05:50 +0100 Subject: Urađena test aplikacija. Povezan front i back. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../node_modules/cacache/lib/util/disposer.js | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 sandbox/testAppNevena/Front/node_modules/cacache/lib/util/disposer.js (limited to 'sandbox/testAppNevena/Front/node_modules/cacache/lib/util/disposer.js') diff --git a/sandbox/testAppNevena/Front/node_modules/cacache/lib/util/disposer.js b/sandbox/testAppNevena/Front/node_modules/cacache/lib/util/disposer.js new file mode 100644 index 00000000..aa8aed54 --- /dev/null +++ b/sandbox/testAppNevena/Front/node_modules/cacache/lib/util/disposer.js @@ -0,0 +1,30 @@ +'use strict' + +module.exports.disposer = disposer + +function disposer (creatorFn, disposerFn, fn) { + const runDisposer = (resource, result, shouldThrow = false) => { + return disposerFn(resource) + .then( + // disposer resolved, do something with original fn's promise + () => { + if (shouldThrow) + throw result + + return result + }, + // Disposer fn failed, crash process + (err) => { + throw err + // Or process.exit? + }) + } + + return creatorFn + .then((resource) => { + // fn(resource) can throw, so wrap in a promise here + return Promise.resolve().then(() => fn(resource)) + .then((result) => runDisposer(resource, result)) + .catch((err) => runDisposer(resource, err, true)) + }) +} -- cgit v1.2.3