source: trip-planner-front/node_modules/agentkeepalive/lib/https_agent.js@ 8d391a1

Last change on this file since 8d391a1 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 1.2 KB
RevLine 
[6a3a178]1'use strict';
2
3const OriginalHttpsAgent = require('https').Agent;
4const HttpAgent = require('./agent');
5const {
6 INIT_SOCKET,
7 CREATE_HTTPS_CONNECTION,
8} = require('./constants');
9
10class HttpsAgent extends HttpAgent {
11 constructor(options) {
12 super(options);
13
14 this.defaultPort = 443;
15 this.protocol = 'https:';
16 this.maxCachedSessions = this.options.maxCachedSessions;
17 /* istanbul ignore next */
18 if (this.maxCachedSessions === undefined) {
19 this.maxCachedSessions = 100;
20 }
21
22 this._sessionCache = {
23 map: {},
24 list: [],
25 };
26 }
27
28 createConnection(options) {
29 const socket = this[CREATE_HTTPS_CONNECTION](options);
30 this[INIT_SOCKET](socket, options);
31 return socket;
32 }
33}
34
35// https://github.com/nodejs/node/blob/master/lib/https.js#L89
36HttpsAgent.prototype[CREATE_HTTPS_CONNECTION] = OriginalHttpsAgent.prototype.createConnection;
37
38[
39 'getName',
40 '_getSession',
41 '_cacheSession',
42 // https://github.com/nodejs/node/pull/4982
43 '_evictSession',
44].forEach(function(method) {
45 /* istanbul ignore next */
46 if (typeof OriginalHttpsAgent.prototype[method] === 'function') {
47 HttpsAgent.prototype[method] = OriginalHttpsAgent.prototype[method];
48 }
49});
50
51module.exports = HttpsAgent;
Note: See TracBrowser for help on using the repository browser.