OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
161 }; | 161 }; |
162 | 162 |
163 | 163 |
164 /** | 164 /** |
165 * @implements {Protocol.NetworkDispatcher} | 165 * @implements {Protocol.NetworkDispatcher} |
166 * @unrestricted | 166 * @unrestricted |
167 */ | 167 */ |
168 SDK.NetworkDispatcher = class { | 168 SDK.NetworkDispatcher = class { |
169 constructor(manager) { | 169 constructor(manager) { |
170 this._manager = manager; | 170 this._manager = manager; |
171 /** @type {!Object<string, !SDK.NetworkRequest>} */ | |
allada
2017/01/07 00:55:26
Closure did not catch stuff in this file, so I fix
luoe
2017/01/09 20:23:00
Why not "@type {!Object<!Protocol.Network.RequestI
| |
171 this._inflightRequestsById = {}; | 172 this._inflightRequestsById = {}; |
173 /** @type {!Object<string, !SDK.NetworkRequest>} */ | |
172 this._inflightRequestsByURL = {}; | 174 this._inflightRequestsByURL = {}; |
173 } | 175 } |
174 | 176 |
175 /** | 177 /** |
176 * @param {!Protocol.Network.Headers} headersMap | 178 * @param {!Protocol.Network.Headers} headersMap |
177 * @return {!Array.<!SDK.NetworkRequest.NameValue>} | 179 * @return {!Array.<!SDK.NetworkRequest.NameValue>} |
178 */ | 180 */ |
179 _headersMapToHeadersArray(headersMap) { | 181 _headersMapToHeadersArray(headersMap) { |
180 var result = []; | 182 var result = []; |
181 for (var name in headersMap) { | 183 for (var name in headersMap) { |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
234 | 236 |
235 networkRequest.setSecurityState(response.securityState); | 237 networkRequest.setSecurityState(response.securityState); |
236 | 238 |
237 if (!this._mimeTypeIsConsistentWithType(networkRequest)) { | 239 if (!this._mimeTypeIsConsistentWithType(networkRequest)) { |
238 var consoleModel = this._manager._target.consoleModel; | 240 var consoleModel = this._manager._target.consoleModel; |
239 consoleModel.addMessage(new SDK.ConsoleMessage( | 241 consoleModel.addMessage(new SDK.ConsoleMessage( |
240 consoleModel.target(), SDK.ConsoleMessage.MessageSource.Network, SDK.C onsoleMessage.MessageLevel.Log, | 242 consoleModel.target(), SDK.ConsoleMessage.MessageSource.Network, SDK.C onsoleMessage.MessageLevel.Log, |
241 Common.UIString( | 243 Common.UIString( |
242 'Resource interpreted as %s but transferred with MIME type %s: "%s ".', | 244 'Resource interpreted as %s but transferred with MIME type %s: "%s ".', |
243 networkRequest.resourceType().title(), networkRequest.mimeType, ne tworkRequest.url), | 245 networkRequest.resourceType().title(), networkRequest.mimeType, ne tworkRequest.url), |
244 SDK.ConsoleMessage.MessageType.Log, '', 0, 0, networkRequest.requestId )); | 246 SDK.ConsoleMessage.MessageType.Log, '', 0, 0, networkRequest.requestId ())); |
245 } | 247 } |
246 | 248 |
247 if (response.securityDetails) | 249 if (response.securityDetails) |
248 networkRequest.setSecurityDetails(response.securityDetails); | 250 networkRequest.setSecurityDetails(response.securityDetails); |
249 } | 251 } |
250 | 252 |
251 /** | 253 /** |
252 * @param {!SDK.NetworkRequest} networkRequest | 254 * @param {!SDK.NetworkRequest} networkRequest |
253 * @return {boolean} | 255 * @return {boolean} |
254 */ | 256 */ |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
427 * @param {boolean=} canceled | 429 * @param {boolean=} canceled |
428 * @param {!Protocol.Network.BlockedReason=} blockedReason | 430 * @param {!Protocol.Network.BlockedReason=} blockedReason |
429 */ | 431 */ |
430 loadingFailed(requestId, time, resourceType, localizedDescription, canceled, b lockedReason) { | 432 loadingFailed(requestId, time, resourceType, localizedDescription, canceled, b lockedReason) { |
431 var networkRequest = this._inflightRequestsById[requestId]; | 433 var networkRequest = this._inflightRequestsById[requestId]; |
432 if (!networkRequest) | 434 if (!networkRequest) |
433 return; | 435 return; |
434 | 436 |
435 networkRequest.failed = true; | 437 networkRequest.failed = true; |
436 networkRequest.setResourceType(Common.resourceTypes[resourceType]); | 438 networkRequest.setResourceType(Common.resourceTypes[resourceType]); |
437 networkRequest.canceled = canceled; | 439 networkRequest.canceled = !!canceled; |
438 if (blockedReason) { | 440 if (blockedReason) { |
439 networkRequest.setBlockedReason(blockedReason); | 441 networkRequest.setBlockedReason(blockedReason); |
440 if (blockedReason === Protocol.Network.BlockedReason.Inspector) { | 442 if (blockedReason === Protocol.Network.BlockedReason.Inspector) { |
441 var consoleModel = this._manager._target.consoleModel; | 443 var consoleModel = this._manager._target.consoleModel; |
442 consoleModel.addMessage(new SDK.ConsoleMessage( | 444 consoleModel.addMessage(new SDK.ConsoleMessage( |
443 consoleModel.target(), SDK.ConsoleMessage.MessageSource.Network, SDK .ConsoleMessage.MessageLevel.Warning, | 445 consoleModel.target(), SDK.ConsoleMessage.MessageSource.Network, SDK .ConsoleMessage.MessageLevel.Warning, |
444 Common.UIString('Request was blocked by DevTools: "%s".', networkReq uest.url), | 446 Common.UIString('Request was blocked by DevTools: "%s".', networkReq uest.url), |
445 SDK.ConsoleMessage.MessageType.Log, '', 0, 0, networkRequest.request Id)); | 447 SDK.ConsoleMessage.MessageType.Log, '', 0, 0, networkRequest.request Id())); |
446 } | 448 } |
447 } | 449 } |
448 networkRequest.localizedFailDescription = localizedDescription; | 450 networkRequest.localizedFailDescription = localizedDescription; |
449 this._finishNetworkRequest(networkRequest, time, -1); | 451 this._finishNetworkRequest(networkRequest, time, -1); |
450 } | 452 } |
451 | 453 |
452 /** | 454 /** |
453 * @override | 455 * @override |
454 * @param {!Protocol.Network.RequestId} requestId | 456 * @param {!Protocol.Network.RequestId} requestId |
455 * @param {string} requestURL | 457 * @param {string} requestURL |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
488 * @param {!Protocol.Network.WebSocketResponse} response | 490 * @param {!Protocol.Network.WebSocketResponse} response |
489 */ | 491 */ |
490 webSocketHandshakeResponseReceived(requestId, time, response) { | 492 webSocketHandshakeResponseReceived(requestId, time, response) { |
491 var networkRequest = this._inflightRequestsById[requestId]; | 493 var networkRequest = this._inflightRequestsById[requestId]; |
492 if (!networkRequest) | 494 if (!networkRequest) |
493 return; | 495 return; |
494 | 496 |
495 networkRequest.statusCode = response.status; | 497 networkRequest.statusCode = response.status; |
496 networkRequest.statusText = response.statusText; | 498 networkRequest.statusText = response.statusText; |
497 networkRequest.responseHeaders = this._headersMapToHeadersArray(response.hea ders); | 499 networkRequest.responseHeaders = this._headersMapToHeadersArray(response.hea ders); |
498 networkRequest.responseHeadersText = response.headersText; | 500 networkRequest.responseHeadersText = response.headersText || ''; |
499 if (response.requestHeaders) | 501 if (response.requestHeaders) |
500 networkRequest.setRequestHeaders(this._headersMapToHeadersArray(response.r equestHeaders)); | 502 networkRequest.setRequestHeaders(this._headersMapToHeadersArray(response.r equestHeaders)); |
501 if (response.requestHeadersText) | 503 if (response.requestHeadersText) |
502 networkRequest.setRequestHeadersText(response.requestHeadersText); | 504 networkRequest.setRequestHeadersText(response.requestHeadersText); |
503 networkRequest.responseReceivedTime = time; | 505 networkRequest.responseReceivedTime = time; |
504 networkRequest.protocol = 'websocket'; | 506 networkRequest.protocol = 'websocket'; |
505 | 507 |
506 this._updateNetworkRequest(networkRequest); | 508 this._updateNetworkRequest(networkRequest); |
507 } | 509 } |
508 | 510 |
509 /** | 511 /** |
510 * @override | 512 * @override |
511 * @param {!Protocol.Network.RequestId} requestId | 513 * @param {!Protocol.Network.RequestId} requestId |
512 * @param {!Protocol.Network.Timestamp} time | 514 * @param {!Protocol.Network.Timestamp} time |
513 * @param {!Protocol.Network.WebSocketFrame} response | 515 * @param {!Protocol.Network.WebSocketFrame} response |
514 */ | 516 */ |
515 webSocketFrameReceived(requestId, time, response) { | 517 webSocketFrameReceived(requestId, time, response) { |
516 var networkRequest = this._inflightRequestsById[requestId]; | 518 var networkRequest = this._inflightRequestsById[requestId]; |
517 if (!networkRequest) | 519 if (!networkRequest) |
518 return; | 520 return; |
519 | 521 |
520 networkRequest.addFrame(response, time); | 522 networkRequest.addFrame(response, time, false); |
521 networkRequest.responseReceivedTime = time; | 523 networkRequest.responseReceivedTime = time; |
522 | 524 |
523 this._updateNetworkRequest(networkRequest); | 525 this._updateNetworkRequest(networkRequest); |
524 } | 526 } |
525 | 527 |
526 /** | 528 /** |
527 * @override | 529 * @override |
528 * @param {!Protocol.Network.RequestId} requestId | 530 * @param {!Protocol.Network.RequestId} requestId |
529 * @param {!Protocol.Network.Timestamp} time | 531 * @param {!Protocol.Network.Timestamp} time |
530 * @param {!Protocol.Network.WebSocketFrame} response | 532 * @param {!Protocol.Network.WebSocketFrame} response |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
586 | 588 |
587 /** | 589 /** |
588 * @param {!Protocol.Network.RequestId} requestId | 590 * @param {!Protocol.Network.RequestId} requestId |
589 * @param {!Protocol.Network.Timestamp} time | 591 * @param {!Protocol.Network.Timestamp} time |
590 * @param {string} redirectURL | 592 * @param {string} redirectURL |
591 * @return {!SDK.NetworkRequest} | 593 * @return {!SDK.NetworkRequest} |
592 */ | 594 */ |
593 _appendRedirect(requestId, time, redirectURL) { | 595 _appendRedirect(requestId, time, redirectURL) { |
594 var originalNetworkRequest = this._inflightRequestsById[requestId]; | 596 var originalNetworkRequest = this._inflightRequestsById[requestId]; |
595 var previousRedirects = originalNetworkRequest.redirects || []; | 597 var previousRedirects = originalNetworkRequest.redirects || []; |
596 originalNetworkRequest.requestId = requestId + ':redirected.' + previousRedi rects.length; | 598 originalNetworkRequest.setRequestId(requestId + ':redirected.' + previousRed irects.length); |
597 delete originalNetworkRequest.redirects; | 599 delete originalNetworkRequest.redirects; |
598 if (previousRedirects.length > 0) | 600 if (previousRedirects.length > 0) |
599 originalNetworkRequest.redirectSource = previousRedirects[previousRedirect s.length - 1]; | 601 originalNetworkRequest.redirectSource = previousRedirects[previousRedirect s.length - 1]; |
600 this._finishNetworkRequest(originalNetworkRequest, time, -1); | 602 this._finishNetworkRequest(originalNetworkRequest, time, -1); |
601 var newNetworkRequest = this._createNetworkRequest( | 603 var newNetworkRequest = this._createNetworkRequest( |
602 requestId, originalNetworkRequest.frameId, originalNetworkRequest.loader Id, redirectURL, | 604 requestId, originalNetworkRequest.frameId, originalNetworkRequest.loader Id, redirectURL, |
603 originalNetworkRequest.documentURL, originalNetworkRequest.initiator()); | 605 originalNetworkRequest.documentURL, originalNetworkRequest.initiator()); |
604 newNetworkRequest.redirects = previousRedirects.concat(originalNetworkReques t); | 606 newNetworkRequest.redirects = previousRedirects.concat(originalNetworkReques t); |
605 return newNetworkRequest; | 607 return newNetworkRequest; |
606 } | 608 } |
607 | 609 |
608 /** | 610 /** |
609 * @param {!SDK.NetworkRequest} networkRequest | 611 * @param {!SDK.NetworkRequest} networkRequest |
610 */ | 612 */ |
611 _startNetworkRequest(networkRequest) { | 613 _startNetworkRequest(networkRequest) { |
612 this._inflightRequestsById[networkRequest.requestId] = networkRequest; | 614 this._inflightRequestsById[networkRequest.requestId()] = networkRequest; |
613 this._inflightRequestsByURL[networkRequest.url] = networkRequest; | 615 this._inflightRequestsByURL[networkRequest.url] = networkRequest; |
614 this._dispatchEventToListeners(SDK.NetworkManager.Events.RequestStarted, net workRequest); | 616 this._dispatchEventToListeners(SDK.NetworkManager.Events.RequestStarted, net workRequest); |
615 } | 617 } |
616 | 618 |
617 /** | 619 /** |
618 * @param {!SDK.NetworkRequest} networkRequest | 620 * @param {!SDK.NetworkRequest} networkRequest |
619 */ | 621 */ |
620 _updateNetworkRequest(networkRequest) { | 622 _updateNetworkRequest(networkRequest) { |
621 this._dispatchEventToListeners(SDK.NetworkManager.Events.RequestUpdated, net workRequest); | 623 this._dispatchEventToListeners(SDK.NetworkManager.Events.RequestUpdated, net workRequest); |
622 } | 624 } |
623 | 625 |
624 /** | 626 /** |
625 * @param {!SDK.NetworkRequest} networkRequest | 627 * @param {!SDK.NetworkRequest} networkRequest |
626 * @param {!Protocol.Network.Timestamp} finishTime | 628 * @param {!Protocol.Network.Timestamp} finishTime |
627 * @param {number} encodedDataLength | 629 * @param {number} encodedDataLength |
628 */ | 630 */ |
629 _finishNetworkRequest(networkRequest, finishTime, encodedDataLength) { | 631 _finishNetworkRequest(networkRequest, finishTime, encodedDataLength) { |
630 networkRequest.endTime = finishTime; | 632 networkRequest.endTime = finishTime; |
631 networkRequest.finished = true; | 633 networkRequest.finished = true; |
632 if (encodedDataLength >= 0) | 634 if (encodedDataLength >= 0) |
633 networkRequest.setTransferSize(encodedDataLength); | 635 networkRequest.setTransferSize(encodedDataLength); |
634 this._dispatchEventToListeners(SDK.NetworkManager.Events.RequestFinished, ne tworkRequest); | 636 this._dispatchEventToListeners(SDK.NetworkManager.Events.RequestFinished, ne tworkRequest); |
635 delete this._inflightRequestsById[networkRequest.requestId]; | 637 delete this._inflightRequestsById[networkRequest.requestId()]; |
636 delete this._inflightRequestsByURL[networkRequest.url]; | 638 delete this._inflightRequestsByURL[networkRequest.url]; |
637 } | 639 } |
638 | 640 |
639 /** | 641 /** |
640 * @param {string} eventType | 642 * @param {string} eventType |
641 * @param {!SDK.NetworkRequest} networkRequest | 643 * @param {!SDK.NetworkRequest} networkRequest |
642 */ | 644 */ |
643 _dispatchEventToListeners(eventType, networkRequest) { | 645 _dispatchEventToListeners(eventType, networkRequest) { |
644 this._manager.dispatchEventToListeners(eventType, networkRequest); | 646 this._manager.dispatchEventToListeners(eventType, networkRequest); |
645 } | 647 } |
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
894 SDK.MultitargetNetworkManager.Events = { | 896 SDK.MultitargetNetworkManager.Events = { |
895 ConditionsChanged: Symbol('ConditionsChanged'), | 897 ConditionsChanged: Symbol('ConditionsChanged'), |
896 UserAgentChanged: Symbol('UserAgentChanged') | 898 UserAgentChanged: Symbol('UserAgentChanged') |
897 }; | 899 }; |
898 | 900 |
899 | 901 |
900 /** | 902 /** |
901 * @type {!SDK.MultitargetNetworkManager} | 903 * @type {!SDK.MultitargetNetworkManager} |
902 */ | 904 */ |
903 SDK.multitargetNetworkManager; | 905 SDK.multitargetNetworkManager; |
OLD | NEW |