MCPcopy Create free account
hub / github.com/CloudBoost/cloudboost / after

Function after

sdk/src/CloudSocketClientLib.js:2425–2450  ·  view source on GitHub ↗
(count, callback, err_cb)

Source from the content-addressed store, hash-verified

2423 module.exports = after
2424
2425 function after(count, callback, err_cb) {
2426 var bail = false
2427 err_cb = err_cb || noop
2428 proxy.count = count
2429
2430 return (count === 0)
2431 ? callback()
2432 : proxy
2433
2434 function proxy(err, result) {
2435 if (proxy.count <= 0) {
2436 throw new Error('after called too many times')
2437 }
2438 --proxy.count
2439
2440 // after first error, rest are passed to err_cb
2441 if (err) {
2442 bail = true
2443 callback(err)
2444 // future error callbacks will go to error handler
2445 callback = err_cb
2446 } else if (proxy.count === 0 && !bail) {
2447 callback(null, result)
2448 }
2449 }
2450 }
2451
2452 function noop() {}
2453

Callers 12

mapFunction · 0.70
test.jsFile · 0.50
acl.jsFile · 0.50
cloudtable.jsFile · 0.50
test.jsFile · 0.50
defaultValue.jsFile · 0.50
acl.jsFile · 0.50
cloudObject.jsFile · 0.50
masterKeyACL.jsFile · 0.50

Calls 1

callbackFunction · 0.70

Tested by

no test coverage detected