1234567891011121314151617181920212223242526272829303132333435 |
- 'use strict'
- const Dispatcher = require('./dispatcher')
- const RetryHandler = require('../handler/retry-handler')
- class RetryAgent extends Dispatcher {
- #agent = null
- #options = null
- constructor (agent, options = {}) {
- super(options)
- this.#agent = agent
- this.#options = options
- }
- dispatch (opts, handler) {
- const retry = new RetryHandler({
- ...opts,
- retryOptions: this.#options
- }, {
- dispatch: this.#agent.dispatch.bind(this.#agent),
- handler
- })
- return this.#agent.dispatch(opts, retry)
- }
- close () {
- return this.#agent.close()
- }
- destroy () {
- return this.#agent.destroy()
- }
- }
- module.exports = RetryAgent
|