| Index: third_party/WebKit/Source/devtools/front_end/sdk/NetworkManager.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/sdk/NetworkManager.js b/third_party/WebKit/Source/devtools/front_end/sdk/NetworkManager.js
|
| index c6a3587ea25edc23cbdfe1500dc8b2b15d8d381f..64bbd62e9c75247ecefe8aa3f3a8b4e667dcb122 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/sdk/NetworkManager.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/sdk/NetworkManager.js
|
| @@ -57,20 +57,31 @@ SDK.NetworkManager = class extends SDK.SDKModel {
|
| Common.moduleSetting('cacheDisabled').addChangeListener(this._cacheDisabledSettingChanged, this);
|
| }
|
|
|
| + /**
|
| + * @param {!SDK.NetworkRequest} request
|
| + * @return {?SDK.NetworkManager}
|
| + */
|
| + static forRequest(request) {
|
| + return request[SDK.NetworkManager._networkManagerForRequestSymbol];
|
| + }
|
| +
|
| /**
|
| * @param {!SDK.NetworkRequest} request
|
| * @return {boolean}
|
| */
|
| static canReplayRequest(request) {
|
| - return request.resourceType() === Common.resourceTypes.XHR;
|
| + return !!request[SDK.NetworkManager._networkManagerForRequestSymbol] &&
|
| + request.resourceType() === Common.resourceTypes.XHR;
|
| }
|
|
|
| /**
|
| * @param {!SDK.NetworkRequest} request
|
| */
|
| static replayRequest(request) {
|
| - // TODO(allada) networkAgent() will be removed from NetworkRequest, but in the mean time we extract it from request.
|
| - request.networkManager()._networkAgent.replayXHR(request.requestId());
|
| + var manager = request[SDK.NetworkManager._networkManagerForRequestSymbol];
|
| + if (!manager)
|
| + return;
|
| + manager._networkAgent.replayXHR(request.requestId());
|
| }
|
|
|
| /**
|
| @@ -82,7 +93,9 @@ SDK.NetworkManager = class extends SDK.SDKModel {
|
| return {error: 'Content for WebSockets is currently not supported', content: null, encoded: false};
|
| if (!request.finished)
|
| await request.once(SDK.NetworkRequest.Events.FinishedLoading);
|
| - var manager = request.networkManager();
|
| + var manager = SDK.NetworkManager.forRequest(request);
|
| + if (!manager)
|
| + return {error: 'No network manager for request', content: null, encoded: false};
|
| var response = await manager._networkAgent.invoke_getResponseBody({requestId: request.requestId()});
|
| var error = response[Protocol.Error] || null;
|
| return {error: error, content: error ? null : response.body, encoded: response.base64Encoded};
|
| @@ -189,12 +202,16 @@ SDK.NetworkManager.OfflineConditions = {
|
| /** @typedef {{url: string, enabled: boolean}} */
|
| SDK.NetworkManager.BlockedPattern;
|
|
|
| +SDK.NetworkManager._networkManagerForRequestSymbol = Symbol('NetworkManager');
|
|
|
| /**
|
| * @implements {Protocol.NetworkDispatcher}
|
| * @unrestricted
|
| */
|
| SDK.NetworkDispatcher = class {
|
| + /**
|
| + * @param {!SDK.NetworkManager} manager
|
| + */
|
| constructor(manager) {
|
| this._manager = manager;
|
| /** @type {!Object<!Protocol.Network.RequestId, !SDK.NetworkRequest>} */
|
| @@ -488,7 +505,8 @@ SDK.NetworkDispatcher = class {
|
| * @param {!Protocol.Network.Initiator=} initiator
|
| */
|
| webSocketCreated(requestId, requestURL, initiator) {
|
| - var networkRequest = new SDK.NetworkRequest(this._manager, requestId, requestURL, '', '', '', initiator || null);
|
| + var networkRequest = new SDK.NetworkRequest(requestId, requestURL, '', '', '', initiator || null);
|
| + networkRequest[SDK.NetworkManager._networkManagerForRequestSymbol] = this._manager;
|
| networkRequest.setResourceType(Common.resourceTypes.WebSocket);
|
| this._startNetworkRequest(networkRequest);
|
| }
|
| @@ -700,7 +718,9 @@ SDK.NetworkDispatcher = class {
|
| * @param {?Protocol.Network.Initiator} initiator
|
| */
|
| _createNetworkRequest(requestId, frameId, loaderId, url, documentURL, initiator) {
|
| - return new SDK.NetworkRequest(this._manager, requestId, url, documentURL, frameId, loaderId, initiator);
|
| + var request = new SDK.NetworkRequest(requestId, url, documentURL, frameId, loaderId, initiator);
|
| + request[SDK.NetworkManager._networkManagerForRequestSymbol] = this._manager;
|
| + return request;
|
| }
|
| };
|
|
|
|
|