Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(678)

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js

Issue 2122353002: [DevTools] Make resource tree model optional (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 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 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 */ 71 */
72 WebInspector.NetworkProject = function(target, workspace, networkMapping) 72 WebInspector.NetworkProject = function(target, workspace, networkMapping)
73 { 73 {
74 WebInspector.SDKObject.call(this, target); 74 WebInspector.SDKObject.call(this, target);
75 this._workspace = workspace; 75 this._workspace = workspace;
76 this._networkMapping = networkMapping; 76 this._networkMapping = networkMapping;
77 /** @type {!Map<string, !WebInspector.ContentProviderBasedProject>} */ 77 /** @type {!Map<string, !WebInspector.ContentProviderBasedProject>} */
78 this._workspaceProjects = new Map(); 78 this._workspaceProjects = new Map();
79 target[WebInspector.NetworkProject._networkProjectSymbol] = this; 79 target[WebInspector.NetworkProject._networkProjectSymbol] = this;
80 80
81 target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.Eve ntTypes.ResourceAdded, this._resourceAdded, this); 81 var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(target);
82 target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.Eve ntTypes.FrameWillNavigate, this._frameWillNavigate, this); 82 if (resourceTreeModel) {
83 target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.Eve ntTypes.MainFrameNavigated, this._mainFrameNavigated, this); 83 resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventT ypes.ResourceAdded, this._resourceAdded, this);
84 resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventT ypes.FrameWillNavigate, this._frameWillNavigate, this);
85 resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventT ypes.MainFrameNavigated, this._mainFrameNavigated, this);
86 }
84 87
85 var debuggerModel = WebInspector.DebuggerModel.fromTarget(target); 88 var debuggerModel = WebInspector.DebuggerModel.fromTarget(target);
86 if (debuggerModel) { 89 if (debuggerModel) {
87 debuggerModel.addEventListener(WebInspector.DebuggerModel.Events.ParsedS criptSource, this._parsedScriptSource, this); 90 debuggerModel.addEventListener(WebInspector.DebuggerModel.Events.ParsedS criptSource, this._parsedScriptSource, this);
88 debuggerModel.addEventListener(WebInspector.DebuggerModel.Events.FailedT oParseScriptSource, this._parsedScriptSource, this); 91 debuggerModel.addEventListener(WebInspector.DebuggerModel.Events.FailedT oParseScriptSource, this._parsedScriptSource, this);
89 } 92 }
90 var cssModel = WebInspector.CSSModel.fromTarget(target); 93 var cssModel = WebInspector.CSSModel.fromTarget(target);
91 if (cssModel) { 94 if (cssModel) {
92 cssModel.addEventListener(WebInspector.CSSModel.Events.StyleSheetAdded, this._styleSheetAdded, this); 95 cssModel.addEventListener(WebInspector.CSSModel.Events.StyleSheetAdded, this._styleSheetAdded, this);
93 cssModel.addEventListener(WebInspector.CSSModel.Events.StyleSheetRemoved , this._styleSheetRemoved, this); 96 cssModel.addEventListener(WebInspector.CSSModel.Events.StyleSheetRemoved , this._styleSheetRemoved, this);
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 if (header) 193 if (header)
191 frameId = header.frameId; 194 frameId = header.frameId;
192 } 195 }
193 196
194 if (!frameId) { 197 if (!frameId) {
195 var resource = uiSourceCode[WebInspector.NetworkProject._resourceSymbol] ; 198 var resource = uiSourceCode[WebInspector.NetworkProject._resourceSymbol] ;
196 if (resource) 199 if (resource)
197 frameId = resource.frameId; 200 frameId = resource.frameId;
198 } 201 }
199 202
200 return frameId ? target.resourceTreeModel.frameForId(frameId) : null; 203 var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(target);
204 return (frameId && resourceTreeModel) ? resourceTreeModel.frameForId(frameId ) : null;
pfeldman 2016/07/07 17:44:13 If we have frameId, we should have resourceTreeMod
eostroukhov-old 2016/07/13 23:30:58 I deleted the whole method, it was not used.
201 } 205 }
202 206
203 WebInspector.NetworkProject.prototype = { 207 WebInspector.NetworkProject.prototype = {
204 /** 208 /**
205 * @param {?WebInspector.ResourceTreeFrame} frame 209 * @param {?WebInspector.ResourceTreeFrame} frame
206 * @param {boolean} isContentScripts 210 * @param {boolean} isContentScripts
207 * @return {!WebInspector.ContentProviderBasedProject} 211 * @return {!WebInspector.ContentProviderBasedProject}
208 */ 212 */
209 _workspaceProject: function(frame, isContentScripts) 213 _workspaceProject: function(frame, isContentScripts)
210 { 214 {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 function populateFrame(frame) 261 function populateFrame(frame)
258 { 262 {
259 for (var i = 0; i < frame.childFrames.length; ++i) 263 for (var i = 0; i < frame.childFrames.length; ++i)
260 populateFrame.call(this, frame.childFrames[i]); 264 populateFrame.call(this, frame.childFrames[i]);
261 265
262 var resources = frame.resources(); 266 var resources = frame.resources();
263 for (var i = 0; i < resources.length; ++i) 267 for (var i = 0; i < resources.length; ++i)
264 this._addResource(resources[i]); 268 this._addResource(resources[i]);
265 } 269 }
266 270
267 var mainFrame = this.target().resourceTreeModel.mainFrame; 271 var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(this.t arget());
272 var mainFrame = resourceTreeModel && resourceTreeModel.mainFrame;
268 if (mainFrame) 273 if (mainFrame)
269 populateFrame.call(this, mainFrame); 274 populateFrame.call(this, mainFrame);
270 }, 275 },
271 276
272 /** 277 /**
273 * @param {!WebInspector.UISourceCode} uiSourceCode 278 * @param {!WebInspector.UISourceCode} uiSourceCode
274 * @param {!WebInspector.ContentProvider} contentProvider 279 * @param {!WebInspector.ContentProvider} contentProvider
275 */ 280 */
276 _addUISourceCodeWithProvider: function(uiSourceCode, contentProvider) 281 _addUISourceCodeWithProvider: function(uiSourceCode, contentProvider)
277 { 282 {
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
416 var project = this._workspaceProject(frame, isContentScript); 421 var project = this._workspaceProject(frame, isContentScript);
417 var uiSourceCode = project.createUISourceCode(url, contentProvider.conte ntType()); 422 var uiSourceCode = project.createUISourceCode(url, contentProvider.conte ntType());
418 uiSourceCode[WebInspector.NetworkProject._targetSymbol] = this.target(); 423 uiSourceCode[WebInspector.NetworkProject._targetSymbol] = this.target();
419 return uiSourceCode; 424 return uiSourceCode;
420 }, 425 },
421 426
422 _dispose: function() 427 _dispose: function()
423 { 428 {
424 this._reset(); 429 this._reset();
425 var target = this.target(); 430 var target = this.target();
426 target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeMo del.EventTypes.ResourceAdded, this._resourceAdded, this); 431 var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(target );
427 target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeMo del.EventTypes.MainFrameNavigated, this._mainFrameNavigated, this); 432 if (resourceTreeModel) {
433 resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel .EventTypes.ResourceAdded, this._resourceAdded, this);
pfeldman 2016/07/07 17:44:14 We added 3 listeners, but removed 2 - something is
eostroukhov-old 2016/07/13 23:30:58 Done.
434 resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel .EventTypes.MainFrameNavigated, this._mainFrameNavigated, this);
435 }
428 var debuggerModel = WebInspector.DebuggerModel.fromTarget(target); 436 var debuggerModel = WebInspector.DebuggerModel.fromTarget(target);
429 if (debuggerModel) { 437 if (debuggerModel) {
430 debuggerModel.removeEventListener(WebInspector.DebuggerModel.Events. ParsedScriptSource, this._parsedScriptSource, this); 438 debuggerModel.removeEventListener(WebInspector.DebuggerModel.Events. ParsedScriptSource, this._parsedScriptSource, this);
431 debuggerModel.removeEventListener(WebInspector.DebuggerModel.Events. FailedToParseScriptSource, this._parsedScriptSource, this); 439 debuggerModel.removeEventListener(WebInspector.DebuggerModel.Events. FailedToParseScriptSource, this._parsedScriptSource, this);
432 } 440 }
433 var cssModel = WebInspector.CSSModel.fromTarget(target); 441 var cssModel = WebInspector.CSSModel.fromTarget(target);
434 if (cssModel) { 442 if (cssModel) {
435 cssModel.removeEventListener(WebInspector.CSSModel.Events.StyleSheet Added, this._styleSheetAdded, this); 443 cssModel.removeEventListener(WebInspector.CSSModel.Events.StyleSheet Added, this._styleSheetAdded, this);
436 cssModel.removeEventListener(WebInspector.CSSModel.Events.StyleSheet Removed, this._styleSheetRemoved, this); 444 cssModel.removeEventListener(WebInspector.CSSModel.Events.StyleSheet Removed, this._styleSheetRemoved, this);
437 } 445 }
438 delete target[WebInspector.NetworkProject._networkProjectSymbol]; 446 delete target[WebInspector.NetworkProject._networkProjectSymbol];
439 }, 447 },
440 448
441 _reset: function() 449 _reset: function()
442 { 450 {
443 for (var project of this._workspaceProjects.values()) 451 for (var project of this._workspaceProjects.values())
444 project.reset(); 452 project.reset();
445 this._workspaceProjects.clear(); 453 this._workspaceProjects.clear();
446 }, 454 },
447 455
448 __proto__: WebInspector.SDKObject.prototype 456 __proto__: WebInspector.SDKObject.prototype
449 } 457 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698