/** * Https Agent base on custom http agent */ 'use strict'; const https = require('https'); const HttpAgent = require('./agent'); const OriginalHttpsAgent = https.Agent; class HttpsAgent extends HttpAgent { constructor(options) { super(options); this.defaultPort = 443; this.protocol = 'https:'; this.maxCachedSessions = this.options.maxCachedSessions; if (this.maxCachedSessions === undefined) { this.maxCachedSessions = 100; } this._sessionCache = { map: {}, list: [], }; } } [ 'createConnection', 'getName', '_getSession', '_cacheSession', // https://github.com/nodejs/node/pull/4982 '_evictSession', ].forEach(function(method) { if (typeof OriginalHttpsAgent.prototype[method] === 'function') { HttpsAgent.prototype[method] = OriginalHttpsAgent.prototype[method]; } }); module.exports = HttpsAgent;