chore: use any-signal module

This commit is contained in:
Jacob Heun 2019-12-04 15:59:01 +01:00
parent 7c2fefda46
commit b7432bd02b
4 changed files with 3 additions and 32 deletions

View File

@ -43,6 +43,7 @@
"dependencies": {
"abort-controller": "^3.0.0",
"aggregate-error": "^3.0.1",
"any-signal": "^1.0.0",
"async": "^2.6.2",
"async-iterator-all": "^1.0.0",
"bignumber.js": "^9.0.0",

View File

@ -4,11 +4,11 @@ const multiaddr = require('multiaddr')
const errCode = require('err-code')
const AbortController = require('abort-controller')
const delay = require('delay')
const anySignal = require('any-signal')
const debug = require('debug')
const log = debug('libp2p:dialer')
log.error = debug('libp2p:dialer:error')
const { DialRequest } = require('./dialer/dial-request')
const { anySignal } = require('./util')
const { codes } = require('./errors')
const {

View File

@ -3,12 +3,12 @@
const AbortController = require('abort-controller')
const AggregateError = require('aggregate-error')
const pDefer = require('p-defer')
const anySignal = require('any-signal')
const debug = require('debug')
const log = debug('libp2p:dialer:request')
log.error = debug('libp2p:dialer:request:error')
const { AbortError } = require('libp2p-interfaces/src/transport/errors')
const { anySignal } = require('../util')
const { TokenHolder } = require('./token-holder')
class DialRequest {

View File

@ -15,34 +15,4 @@ function toBuffer (source) {
})()
}
/**
* Takes an array of AbortSignals and returns a single signal.
* If any signals are aborted, the returned signal will be aborted.
* @param {Array<AbortSignal>} signals
* @returns {AbortSignal}
*/
function anySignal (signals) {
const controller = new AbortController()
function onAbort () {
controller.abort()
// Cleanup
for (const signal of signals) {
signal.removeEventListener('abort', onAbort)
}
}
for (const signal of signals) {
if (signal.aborted) {
onAbort()
break
}
signal.addEventListener('abort', onAbort)
}
return controller.signal
}
module.exports.toBuffer = toBuffer
module.exports.anySignal = anySignal