quic,timers: refactor to use validateAbortSignal

PR-URL: https://github.com/nodejs/node/pull/36604
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
pull/36604/head
ZiJian Liu 2020-12-22 23:23:23 +08:00 committed by Rich Trott
parent 0878d4d049
commit 4905501741
2 changed files with 13 additions and 22 deletions

View File

@ -204,6 +204,7 @@ const {
} = require('internal/histogram');
const {
validateAbortSignal,
validateBoolean,
validateInteger,
validateObject,
@ -680,8 +681,7 @@ class QuicEndpoint {
return this.address;
const { signal } = { ...options };
if (signal != null && !('aborted' in signal))
throw new ERR_INVALID_ARG_TYPE('options.signal', 'AbortSignal', signal);
validateAbortSignal(signal, 'options.signal');
// If an AbortSignal was passed in, check to make sure it is not already
// aborted before we continue on to do any work.
@ -1083,8 +1083,7 @@ class QuicSocket extends EventEmitter {
return;
const { signal } = { ...options };
if (signal != null && !('aborted' in signal))
throw new ERR_INVALID_ARG_TYPE('options.signal', 'AbortSignal', signal);
validateAbortSignal(signal, 'options.signal');
// If an AbotSignal was passed in, check to make sure it is not already
// aborted before we continue on to do any work.

View File

@ -18,6 +18,8 @@ const {
codes: { ERR_INVALID_ARG_TYPE }
} = require('internal/errors');
const { validateAbortSignal } = require('internal/validators');
function cancelListenerHandler(clear, reject) {
if (!this._destroyed) {
clear(this);
@ -35,15 +37,10 @@ function setTimeout(after, value, options = {}) {
options));
}
const { signal, ref = true } = options;
if (signal !== undefined &&
(signal === null ||
typeof signal !== 'object' ||
!('aborted' in signal))) {
return PromiseReject(
new ERR_INVALID_ARG_TYPE(
'options.signal',
'AbortSignal',
signal));
try {
validateAbortSignal(signal, 'options.signal');
} catch (err) {
return PromiseReject(err);
}
if (typeof ref !== 'boolean') {
return PromiseReject(
@ -85,15 +82,10 @@ function setImmediate(value, options = {}) {
options));
}
const { signal, ref = true } = options;
if (signal !== undefined &&
(signal === null ||
typeof signal !== 'object' ||
!('aborted' in signal))) {
return PromiseReject(
new ERR_INVALID_ARG_TYPE(
'options.signal',
'AbortSignal',
signal));
try {
validateAbortSignal(signal, 'options.signal');
} catch (err) {
return PromiseReject(err);
}
if (typeof ref !== 'boolean') {
return PromiseReject(