Spaces:
Running
Running
| class InvalidProxyProtocolError extends Error { | |
| constructor (url) { | |
| super(`Invalid protocol \`${url.protocol}\` connecting to proxy \`${url.host}\``) | |
| this.code = 'EINVALIDPROXY' | |
| this.proxy = url | |
| } | |
| } | |
| class ConnectionTimeoutError extends Error { | |
| constructor (host) { | |
| super(`Timeout connecting to host \`${host}\``) | |
| this.code = 'ECONNECTIONTIMEOUT' | |
| this.host = host | |
| } | |
| } | |
| class IdleTimeoutError extends Error { | |
| constructor (host) { | |
| super(`Idle timeout reached for host \`${host}\``) | |
| this.code = 'EIDLETIMEOUT' | |
| this.host = host | |
| } | |
| } | |
| class ResponseTimeoutError extends Error { | |
| constructor (request, proxy) { | |
| let msg = 'Response timeout ' | |
| if (proxy) { | |
| msg += `from proxy \`${proxy.host}\` ` | |
| } | |
| msg += `connecting to host \`${request.host}\`` | |
| super(msg) | |
| this.code = 'ERESPONSETIMEOUT' | |
| this.proxy = proxy | |
| this.request = request | |
| } | |
| } | |
| class TransferTimeoutError extends Error { | |
| constructor (request, proxy) { | |
| let msg = 'Transfer timeout ' | |
| if (proxy) { | |
| msg += `from proxy \`${proxy.host}\` ` | |
| } | |
| msg += `for \`${request.host}\`` | |
| super(msg) | |
| this.code = 'ETRANSFERTIMEOUT' | |
| this.proxy = proxy | |
| this.request = request | |
| } | |
| } | |
| module.exports = { | |
| InvalidProxyProtocolError, | |
| ConnectionTimeoutError, | |
| IdleTimeoutError, | |
| ResponseTimeoutError, | |
| TransferTimeoutError, | |
| } | |