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 439a0bc130cd685c16b4db4426706dc02e3c9d28..662efa7127912ec625acd4d5e0b0319d846a7694 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 managerForRequest(request) { |
dgozman
2017/06/06 20:54:40
We usually do just forRequest or fromRequest.
allada
2017/06/08 00:42:06
Done.
|
+ 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.target().networkAgent().replayXHR(request.requestId()); |
dgozman
2017/06/06 20:54:41
manager._networkAgent...
allada
2017/06/08 00:42:06
Done.
|
} |
/** |
@@ -174,12 +185,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>} */ |
@@ -473,7 +488,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); |
} |
@@ -672,7 +688,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; |
} |
}; |