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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/sdk/Target.js

Issue 2758963002: [DevTools] Remove dependency from TargetManager to ResourceTreeModel (Closed)
Patch Set: review comments addressed Created 3 years, 9 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 2014 The Chromium Authors. All rights reserved. 2 * Copyright 2014 The Chromium Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be 3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 /** 7 /**
8 * @unrestricted 8 * @unrestricted
9 */ 9 */
10 SDK.Target = class extends Protocol.TargetBase { 10 SDK.Target = class extends Protocol.TargetBase {
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 136
137 /** 137 /**
138 * @param {function(new:T, !SDK.Target)} modelClass 138 * @param {function(new:T, !SDK.Target)} modelClass
139 * @return {?T} 139 * @return {?T}
140 * @template T 140 * @template T
141 */ 141 */
142 model(modelClass) { 142 model(modelClass) {
143 if (!this._modelByConstructor.get(modelClass)) { 143 if (!this._modelByConstructor.get(modelClass)) {
144 var capabilities = SDK.SDKModel._capabilitiesByModelClass.get(modelClass); 144 var capabilities = SDK.SDKModel._capabilitiesByModelClass.get(modelClass);
145 if (capabilities === undefined) 145 if (capabilities === undefined)
146 throw 'Model class is not registered'; 146 throw 'Model class is not registered @' + new Error().stack;
147 if ((this._capabilitiesMask & capabilities) === capabilities) { 147 if ((this._capabilitiesMask & capabilities) === capabilities) {
148 var model = new modelClass(this); 148 var model = new modelClass(this);
149 this._modelByConstructor.set(modelClass, model); 149 this._modelByConstructor.set(modelClass, model);
150 this._targetManager.modelAdded(this, modelClass, model); 150 this._targetManager.modelAdded(this, modelClass, model);
151 } 151 }
152 } 152 }
153 return this._modelByConstructor.get(modelClass) || null; 153 return this._modelByConstructor.get(modelClass) || null;
154 } 154 }
155 155
156 /** 156 /**
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 * @param {number} capabilities 256 * @param {number} capabilities
257 */ 257 */
258 SDK.SDKModel.register = function(modelClass, capabilities) { 258 SDK.SDKModel.register = function(modelClass, capabilities) {
259 if (!SDK.SDKModel._capabilitiesByModelClass) 259 if (!SDK.SDKModel._capabilitiesByModelClass)
260 SDK.SDKModel._capabilitiesByModelClass = new Map(); 260 SDK.SDKModel._capabilitiesByModelClass = new Map();
261 SDK.SDKModel._capabilitiesByModelClass.set(modelClass, capabilities); 261 SDK.SDKModel._capabilitiesByModelClass.set(modelClass, capabilities);
262 }; 262 };
263 263
264 /** @type {!Map<function(new:SDK.SDKModel, !SDK.Target), number>} */ 264 /** @type {!Map<function(new:SDK.SDKModel, !SDK.Target), number>} */
265 SDK.SDKModel._capabilitiesByModelClass; 265 SDK.SDKModel._capabilitiesByModelClass;
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698