summaryrefslogtreecommitdiff
path: root/lib/_http_outgoing.js
diff options
context:
space:
mode:
authorBrian White <mscdex@mscdex.net>2017-03-05 21:13:09 -0500
committerBrian White <mscdex@mscdex.net>2017-03-09 05:50:22 -0500
commit940b5303bef7aee9b24214c62e4b6f182f23f82a (patch)
treee3f80dedadd460f599c8491eb71c5430783bd804 /lib/_http_outgoing.js
parent86996c5838f7ee38e3cc96b3c65c8ca6965a36a2 (diff)
downloadandroid-node-v8-940b5303bef7aee9b24214c62e4b6f182f23f82a.tar.gz
android-node-v8-940b5303bef7aee9b24214c62e4b6f182f23f82a.tar.bz2
android-node-v8-940b5303bef7aee9b24214c62e4b6f182f23f82a.zip
http: use Symbol for outgoing headers
PR-URL: https://github.com/nodejs/node/pull/10941 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Diffstat (limited to 'lib/_http_outgoing.js')
-rw-r--r--lib/_http_outgoing.js26
1 files changed, 14 insertions, 12 deletions
diff --git a/lib/_http_outgoing.js b/lib/_http_outgoing.js
index a095b64230..6ada7bd99f 100644
--- a/lib/_http_outgoing.js
+++ b/lib/_http_outgoing.js
@@ -9,6 +9,8 @@ const Buffer = require('buffer').Buffer;
const common = require('_http_common');
const checkIsHttpToken = common._checkIsHttpToken;
const checkInvalidHeaderChar = common._checkInvalidHeaderChar;
+const outHeadersKey = require('internal/http').outHeadersKey;
+const StorageObject = require('internal/querystring').StorageObject;
const CRLF = common.CRLF;
const debug = common.debug;
@@ -74,7 +76,7 @@ function OutgoingMessage() {
this.socket = null;
this.connection = null;
this._header = null;
- this._headers = null;
+ this[outHeadersKey] = null;
this._onPendingData = null;
}
@@ -201,7 +203,7 @@ function _storeHeader(firstLine, headers) {
var value;
var i;
var j;
- if (headers === this._headers) {
+ if (headers === this[outHeadersKey]) {
for (key in headers) {
var entry = headers[key];
field = entry[0];
@@ -393,11 +395,11 @@ function validateHeader(msg, name, value) {
OutgoingMessage.prototype.setHeader = function setHeader(name, value) {
validateHeader(this, name, value);
- if (!this._headers)
- this._headers = {};
+ if (!this[outHeadersKey])
+ this[outHeadersKey] = {};
const key = name.toLowerCase();
- this._headers[key] = [name, value];
+ this[outHeadersKey][key] = [name, value];
switch (key.length) {
case 10:
@@ -421,9 +423,9 @@ OutgoingMessage.prototype.getHeader = function getHeader(name) {
throw new TypeError('"name" argument must be a string');
}
- if (!this._headers) return;
+ if (!this[outHeadersKey]) return;
- var entry = this._headers[name.toLowerCase()];
+ var entry = this[outHeadersKey][name.toLowerCase()];
if (!entry)
return;
return entry[1];
@@ -432,13 +434,13 @@ OutgoingMessage.prototype.getHeader = function getHeader(name) {
// Returns an array of the names of the current outgoing headers.
OutgoingMessage.prototype.getHeaderNames = function getHeaderNames() {
- return (this._headers ? Object.keys(this._headers) : []);
+ return (this[outHeadersKey] ? Object.keys(this[outHeadersKey]) : []);
};
// Returns a shallow copy of the current outgoing headers.
OutgoingMessage.prototype.getHeaders = function getHeaders() {
- const headers = this._headers;
+ const headers = this[outHeadersKey];
const ret = new OutgoingHeaders();
if (headers) {
const keys = Object.keys(headers);
@@ -457,7 +459,7 @@ OutgoingMessage.prototype.hasHeader = function hasHeader(name) {
throw new TypeError('"name" argument must be a string');
}
- return !!(this._headers && this._headers[name.toLowerCase()]);
+ return !!(this[outHeadersKey] && this[outHeadersKey][name.toLowerCase()]);
};
@@ -491,8 +493,8 @@ OutgoingMessage.prototype.removeHeader = function removeHeader(name) {
break;
}
- if (this._headers) {
- delete this._headers[key];
+ if (this[outHeadersKey]) {
+ delete this[outHeadersKey][key];
}
};