| Index: third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/sdk/Target.js b/third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js
|
| similarity index 63%
|
| copy from third_party/WebKit/Source/devtools/front_end/sdk/Target.js
|
| copy to third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js
|
| index ccb48e424692ea43737cd1ce7227e686e1f4d7f6..31ccefa23a798efc2fc69e21b174bcae4316b366 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/sdk/Target.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js
|
| @@ -6,257 +6,6 @@
|
|
|
| /**
|
| * @constructor
|
| - * @extends {Protocol.Agents}
|
| - * @param {!WebInspector.TargetManager} targetManager
|
| - * @param {string} name
|
| - * @param {number} type
|
| - * @param {!InspectorBackendClass.Connection} connection
|
| - * @param {?WebInspector.Target} parentTarget
|
| - */
|
| -WebInspector.Target = function(targetManager, name, type, connection, parentTarget)
|
| -{
|
| - Protocol.Agents.call(this, connection.agentsMap());
|
| - this._targetManager = targetManager;
|
| - this._name = name;
|
| - this._type = type;
|
| - this._connection = connection;
|
| - this._parentTarget = parentTarget;
|
| - connection.addEventListener(InspectorBackendClass.Connection.Events.Disconnected, this._onDisconnect, this);
|
| - this._id = WebInspector.Target._nextId++;
|
| -
|
| - /** @type {!Map.<!Function, !WebInspector.SDKModel>} */
|
| - this._modelByConstructor = new Map();
|
| -
|
| - /** @type {!WebInspector.ConsoleModel} */
|
| - this.consoleModel = new WebInspector.ConsoleModel(this);
|
| - /** @type {!WebInspector.NetworkManager} */
|
| - this.networkManager = new WebInspector.NetworkManager(this);
|
| - /** @type {!WebInspector.ResourceTreeModel} */
|
| - this.resourceTreeModel = new WebInspector.ResourceTreeModel(this);
|
| - /** @type {!WebInspector.NetworkLog} */
|
| - this.networkLog = new WebInspector.NetworkLog(this);
|
| -
|
| - /** @type {!WebInspector.RuntimeModel} */
|
| - this.runtimeModel = new WebInspector.RuntimeModel(this);
|
| - if (this.hasJSContext())
|
| - new WebInspector.DebuggerModel(this);
|
| -
|
| - if (this._type === WebInspector.Target.Type.Page) {
|
| - new WebInspector.DOMModel(this);
|
| - new WebInspector.CSSModel(this);
|
| - }
|
| -
|
| - /** @type {?WebInspector.WorkerManager} */
|
| - this.workerManager = !this.isDedicatedWorker() ? new WebInspector.WorkerManager(this) : null;
|
| - /** @type {!WebInspector.CPUProfilerModel} */
|
| - this.cpuProfilerModel = new WebInspector.CPUProfilerModel(this);
|
| - /** @type {!WebInspector.HeapProfilerModel} */
|
| - this.heapProfilerModel = new WebInspector.HeapProfilerModel(this);
|
| -
|
| - this.tracingManager = new WebInspector.TracingManager(this);
|
| -
|
| - if (this.isPage())
|
| - this.serviceWorkerManager = new WebInspector.ServiceWorkerManager(this);
|
| -}
|
| -
|
| -/**
|
| - * @enum {number}
|
| - */
|
| -WebInspector.Target.Type = {
|
| - Page: 1,
|
| - DedicatedWorker: 2,
|
| - ServiceWorker: 4
|
| -}
|
| -
|
| -WebInspector.Target._nextId = 1;
|
| -
|
| -WebInspector.Target.prototype = {
|
| - /**
|
| - * @return {number}
|
| - */
|
| - id: function()
|
| - {
|
| - return this._id;
|
| - },
|
| -
|
| - /**
|
| - *
|
| - * @return {string}
|
| - */
|
| - name: function()
|
| - {
|
| - return this._name;
|
| - },
|
| -
|
| - /**
|
| - *
|
| - * @return {!WebInspector.TargetManager}
|
| - */
|
| - targetManager: function()
|
| - {
|
| - return this._targetManager;
|
| - },
|
| -
|
| - /**
|
| - * @param {string} label
|
| - * @return {string}
|
| - */
|
| - decorateLabel: function(label)
|
| - {
|
| - return this.isWorker() ? "\u2699 " + label : label;
|
| - },
|
| -
|
| - /**
|
| - * @override
|
| - * @param {string} domain
|
| - * @param {!Object} dispatcher
|
| - */
|
| - registerDispatcher: function(domain, dispatcher)
|
| - {
|
| - this._connection.registerDispatcher(domain, dispatcher);
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - isPage: function()
|
| - {
|
| - return this._type === WebInspector.Target.Type.Page;
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - isWorker: function()
|
| - {
|
| - return this.isDedicatedWorker() || this.isServiceWorker();
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - isDedicatedWorker: function()
|
| - {
|
| - return this._type === WebInspector.Target.Type.DedicatedWorker;
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - isServiceWorker: function()
|
| - {
|
| - return this._type === WebInspector.Target.Type.ServiceWorker;
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - hasJSContext: function()
|
| - {
|
| - return !this.isServiceWorker();
|
| - },
|
| -
|
| - /**
|
| - * @return {?WebInspector.Target}
|
| - */
|
| - parentTarget: function()
|
| - {
|
| - return this._parentTarget;
|
| - },
|
| -
|
| - _onDisconnect: function()
|
| - {
|
| - this._targetManager.removeTarget(this);
|
| - this._dispose();
|
| - },
|
| -
|
| - _dispose: function()
|
| - {
|
| - this._targetManager.dispatchEventToListeners(WebInspector.TargetManager.Events.TargetDisposed, this);
|
| - this.networkManager.dispose();
|
| - this.cpuProfilerModel.dispose();
|
| - WebInspector.ServiceWorkerCacheModel.fromTarget(this).dispose();
|
| - if (this.workerManager)
|
| - this.workerManager.dispose();
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - isDetached: function()
|
| - {
|
| - return this._connection.isClosed();
|
| - },
|
| -
|
| - /**
|
| - * @param {!Function} modelClass
|
| - * @return {?WebInspector.SDKModel}
|
| - */
|
| - model: function(modelClass)
|
| - {
|
| - return this._modelByConstructor.get(modelClass) || null;
|
| - },
|
| -
|
| - __proto__: Protocol.Agents.prototype
|
| -}
|
| -
|
| -/**
|
| - * @constructor
|
| - * @extends {WebInspector.Object}
|
| - * @param {!WebInspector.Target} target
|
| - */
|
| -WebInspector.SDKObject = function(target)
|
| -{
|
| - WebInspector.Object.call(this);
|
| - this._target = target;
|
| -}
|
| -
|
| -WebInspector.SDKObject.prototype = {
|
| - /**
|
| - * @return {!WebInspector.Target}
|
| - */
|
| - target: function()
|
| - {
|
| - return this._target;
|
| - },
|
| -
|
| - __proto__: WebInspector.Object.prototype
|
| -}
|
| -
|
| -/**
|
| - * @constructor
|
| - * @extends {WebInspector.SDKObject}
|
| - * @param {!Function} modelClass
|
| - * @param {!WebInspector.Target} target
|
| - */
|
| -WebInspector.SDKModel = function(modelClass, target)
|
| -{
|
| - WebInspector.SDKObject.call(this, target);
|
| - target._modelByConstructor.set(modelClass, this);
|
| -}
|
| -
|
| -WebInspector.SDKModel.prototype = {
|
| - /**
|
| - * @return {!Promise}
|
| - */
|
| - suspendModel: function()
|
| - {
|
| - return Promise.resolve();
|
| - },
|
| -
|
| - /**
|
| - * @return {!Promise}
|
| - */
|
| - resumeModel: function()
|
| - {
|
| - return Promise.resolve();
|
| - },
|
| -
|
| - __proto__: WebInspector.SDKObject.prototype
|
| -}
|
| -
|
| -/**
|
| - * @constructor
|
| * @extends {WebInspector.Object}
|
| */
|
| WebInspector.TargetManager = function()
|
| @@ -444,6 +193,38 @@ WebInspector.TargetManager.prototype = {
|
| createTarget: function(name, type, connection, parentTarget)
|
| {
|
| var target = new WebInspector.Target(this, name, type, connection, parentTarget);
|
| +
|
| + /** @type {!WebInspector.ConsoleModel} */
|
| + target.consoleModel = new WebInspector.ConsoleModel(target);
|
| + /** @type {!WebInspector.NetworkManager} */
|
| + target.networkManager = new WebInspector.NetworkManager(target);
|
| + /** @type {!WebInspector.ResourceTreeModel} */
|
| + target.resourceTreeModel = new WebInspector.ResourceTreeModel(target);
|
| + /** @type {!WebInspector.NetworkLog} */
|
| + target.networkLog = new WebInspector.NetworkLog(target);
|
| +
|
| + /** @type {!WebInspector.RuntimeModel} */
|
| + target.runtimeModel = new WebInspector.RuntimeModel(target);
|
| + if (target.hasJSContext())
|
| + new WebInspector.DebuggerModel(target);
|
| +
|
| + if (target.type() === WebInspector.Target.Type.Page) {
|
| + new WebInspector.DOMModel(target);
|
| + new WebInspector.CSSModel(target);
|
| + }
|
| +
|
| + /** @type {?WebInspector.WorkerManager} */
|
| + target.workerManager = !target.isDedicatedWorker() ? new WebInspector.WorkerManager(target) : null;
|
| + /** @type {!WebInspector.CPUProfilerModel} */
|
| + target.cpuProfilerModel = new WebInspector.CPUProfilerModel(target);
|
| + /** @type {!WebInspector.HeapProfilerModel} */
|
| + target.heapProfilerModel = new WebInspector.HeapProfilerModel(target);
|
| +
|
| + target.tracingManager = new WebInspector.TracingManager(target);
|
| +
|
| + if (target.isPage())
|
| + target.serviceWorkerManager = new WebInspector.ServiceWorkerManager(target);
|
| +
|
| this.addTarget(target);
|
| return target;
|
| },
|
| @@ -475,14 +256,14 @@ WebInspector.TargetManager.prototype = {
|
| target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.PageReloadRequested, this._redispatchEvent, this);
|
| target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.WillReloadPage, this._redispatchEvent, this);
|
| }
|
| - var copy = this._observersByType(target._type);
|
| + var copy = this._observersByType(target.type());
|
| for (var i = 0; i < copy.length; ++i)
|
| copy[i].targetAdded(target);
|
|
|
| for (var eventType in this._modelListeners) {
|
| var listeners = this._modelListeners[eventType];
|
| for (var i = 0; i < listeners.length; ++i) {
|
| - var model = target._modelByConstructor.get(listeners[i].modelClass);
|
| + var model = target.model(listeners[i].modelClass);
|
| if (model)
|
| model.addEventListener(eventType, listeners[i].listener, listeners[i].thisObject);
|
| }
|
| @@ -501,14 +282,14 @@ WebInspector.TargetManager.prototype = {
|
| target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.Load, this._redispatchEvent, this);
|
| target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.WillReloadPage, this._redispatchEvent, this);
|
| }
|
| - var copy = this._observersByType(target._type);
|
| + var copy = this._observersByType(target.type());
|
| for (var i = 0; i < copy.length; ++i)
|
| copy[i].targetRemoved(target);
|
|
|
| for (var eventType in this._modelListeners) {
|
| var listeners = this._modelListeners[eventType];
|
| for (var i = 0; i < listeners.length; ++i) {
|
| - var model = target._modelByConstructor.get(listeners[i].modelClass);
|
| + var model = target.model(listeners[i].modelClass);
|
| if (model)
|
| model.removeEventListener(eventType, listeners[i].listener, listeners[i].thisObject);
|
| }
|
| @@ -535,7 +316,7 @@ WebInspector.TargetManager.prototype = {
|
|
|
| var result = [];
|
| for (var target of this._targets) {
|
| - if (target._type & type)
|
| + if (target.type() & type)
|
| result.push(target);
|
| }
|
| return result;
|
|
|