| 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 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 InspectorBackendClass._DevToolsErrorCode = -32000; | 42 InspectorBackendClass._DevToolsErrorCode = -32000; |
| 43 InspectorBackendClass.DevToolsStubErrorCode = -32015; | 43 InspectorBackendClass.DevToolsStubErrorCode = -32015; |
| 44 | 44 |
| 45 /** | 45 /** |
| 46 * @param {string} error | 46 * @param {string} error |
| 47 * @param {!Object} messageObject | 47 * @param {!Object} messageObject |
| 48 */ | 48 */ |
| 49 InspectorBackendClass.reportProtocolError = function(error, messageObject) | 49 InspectorBackendClass.reportProtocolError = function(error, messageObject) |
| 50 { | 50 { |
| 51 console.error(error + ": " + JSON.stringify(messageObject)); | 51 console.error(error + ": " + JSON.stringify(messageObject)); |
| 52 } | 52 }; |
| 53 | 53 |
| 54 InspectorBackendClass.prototype = { | 54 InspectorBackendClass.prototype = { |
| 55 /** | 55 /** |
| 56 * @return {boolean} | 56 * @return {boolean} |
| 57 */ | 57 */ |
| 58 isInitialized: function() | 58 isInitialized: function() |
| 59 { | 59 { |
| 60 return this._initialized; | 60 return this._initialized; |
| 61 }, | 61 }, |
| 62 | 62 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 92 return this._agentsMap[domain]; | 92 return this._agentsMap[domain]; |
| 93 } | 93 } |
| 94 | 94 |
| 95 window.Protocol.Agents.prototype[methodName] = agentGetter; | 95 window.Protocol.Agents.prototype[methodName] = agentGetter; |
| 96 | 96 |
| 97 /** | 97 /** |
| 98 * @this {Protocol.Agents} | 98 * @this {Protocol.Agents} |
| 99 */ | 99 */ |
| 100 function registerDispatcher(dispatcher) | 100 function registerDispatcher(dispatcher) |
| 101 { | 101 { |
| 102 this.registerDispatcher(domain, dispatcher) | 102 this.registerDispatcher(domain, dispatcher); |
| 103 } | 103 } |
| 104 | 104 |
| 105 window.Protocol.Agents.prototype["register" + domain + "Dispatcher"] = r
egisterDispatcher; | 105 window.Protocol.Agents.prototype["register" + domain + "Dispatcher"] = r
egisterDispatcher; |
| 106 }, | 106 }, |
| 107 | 107 |
| 108 /** | 108 /** |
| 109 * @param {string} domain | 109 * @param {string} domain |
| 110 * @return {!InspectorBackendClass.AgentPrototype} | 110 * @return {!InspectorBackendClass.AgentPrototype} |
| 111 */ | 111 */ |
| 112 _agentPrototype: function(domain) | 112 _agentPrototype: function(domain) |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 191 clientCallback(defaultValue); | 191 clientCallback(defaultValue); |
| 192 return; | 192 return; |
| 193 } | 193 } |
| 194 if (constructor) | 194 if (constructor) |
| 195 clientCallback(new constructor(value)); | 195 clientCallback(new constructor(value)); |
| 196 else | 196 else |
| 197 clientCallback(value); | 197 clientCallback(value); |
| 198 } | 198 } |
| 199 return callbackWrapper; | 199 return callbackWrapper; |
| 200 } | 200 } |
| 201 } | 201 }; |
| 202 | 202 |
| 203 /** | 203 /** |
| 204 * @constructor | 204 * @constructor |
| 205 * @extends {WebInspector.Object} | 205 * @extends {WebInspector.Object} |
| 206 */ | 206 */ |
| 207 InspectorBackendClass.Connection = function() | 207 InspectorBackendClass.Connection = function() |
| 208 { | 208 { |
| 209 this._lastMessageId = 1; | 209 this._lastMessageId = 1; |
| 210 this._pendingResponsesCount = 0; | 210 this._pendingResponsesCount = 0; |
| 211 this._agents = {}; | 211 this._agents = {}; |
| 212 this._dispatchers = {}; | 212 this._dispatchers = {}; |
| 213 this._callbacks = {}; | 213 this._callbacks = {}; |
| 214 this._initialize(InspectorBackend._agentPrototypes, InspectorBackend._dispat
cherPrototypes); | 214 this._initialize(InspectorBackend._agentPrototypes, InspectorBackend._dispat
cherPrototypes); |
| 215 this._isConnected = true; | 215 this._isConnected = true; |
| 216 } | 216 }; |
| 217 | 217 |
| 218 /** @enum {symbol} */ | 218 /** @enum {symbol} */ |
| 219 InspectorBackendClass.Connection.Events = { | 219 InspectorBackendClass.Connection.Events = { |
| 220 Disconnected: Symbol("Disconnected") | 220 Disconnected: Symbol("Disconnected") |
| 221 } | 221 }; |
| 222 | 222 |
| 223 InspectorBackendClass.Connection.prototype = { | 223 InspectorBackendClass.Connection.prototype = { |
| 224 /** | 224 /** |
| 225 * @param {!Object.<string, !InspectorBackendClass.AgentPrototype>} agentPro
totypes | 225 * @param {!Object.<string, !InspectorBackendClass.AgentPrototype>} agentPro
totypes |
| 226 * @param {!Object.<string, !InspectorBackendClass.DispatcherPrototype>} dis
patcherPrototypes | 226 * @param {!Object.<string, !InspectorBackendClass.DispatcherPrototype>} dis
patcherPrototypes |
| 227 */ | 227 */ |
| 228 _initialize: function(agentPrototypes, dispatcherPrototypes) | 228 _initialize: function(agentPrototypes, dispatcherPrototypes) |
| 229 { | 229 { |
| 230 for (var domain in agentPrototypes) { | 230 for (var domain in agentPrototypes) { |
| 231 this._agents[domain] = Object.create(agentPrototypes[domain]); | 231 this._agents[domain] = Object.create(agentPrototypes[domain]); |
| (...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 477 /** | 477 /** |
| 478 * @param {!Array.<string>} domains | 478 * @param {!Array.<string>} domains |
| 479 */ | 479 */ |
| 480 suppressErrorsForDomains: function(domains) | 480 suppressErrorsForDomains: function(domains) |
| 481 { | 481 { |
| 482 domains.forEach(function(domain) { this._agents[domain].suppressErrorLog
ging(); }, this); | 482 domains.forEach(function(domain) { this._agents[domain].suppressErrorLog
ging(); }, this); |
| 483 }, | 483 }, |
| 484 | 484 |
| 485 __proto__: WebInspector.Object.prototype | 485 __proto__: WebInspector.Object.prototype |
| 486 | 486 |
| 487 } | 487 }; |
| 488 | 488 |
| 489 /** | 489 /** |
| 490 * @constructor | 490 * @constructor |
| 491 * @param {string} domain | 491 * @param {string} domain |
| 492 */ | 492 */ |
| 493 InspectorBackendClass.AgentPrototype = function(domain) | 493 InspectorBackendClass.AgentPrototype = function(domain) |
| 494 { | 494 { |
| 495 this._replyArgs = {}; | 495 this._replyArgs = {}; |
| 496 this._hasErrorData = {}; | 496 this._hasErrorData = {}; |
| 497 this._domain = domain; | 497 this._domain = domain; |
| 498 this._suppressErrorLogging = false; | 498 this._suppressErrorLogging = false; |
| 499 } | 499 }; |
| 500 | 500 |
| 501 InspectorBackendClass.AgentPrototype.prototype = { | 501 InspectorBackendClass.AgentPrototype.prototype = { |
| 502 /** | 502 /** |
| 503 * @param {!InspectorBackendClass.Connection} connection | 503 * @param {!InspectorBackendClass.Connection} connection |
| 504 */ | 504 */ |
| 505 setConnection: function(connection) | 505 setConnection: function(connection) |
| 506 { | 506 { |
| 507 this._connection = connection; | 507 this._connection = connection; |
| 508 }, | 508 }, |
| 509 | 509 |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 586 if (args.length === 1 && (!allowExtraUndefinedArg || (typeof args[0] !==
"undefined"))) { | 586 if (args.length === 1 && (!allowExtraUndefinedArg || (typeof args[0] !==
"undefined"))) { |
| 587 errorCallback("Protocol Error: Optional callback argument for method
'" + method + "' call must be a function but its type is '" + typeof args[0] +
"'."); | 587 errorCallback("Protocol Error: Optional callback argument for method
'" + method + "' call must be a function but its type is '" + typeof args[0] +
"'."); |
| 588 return null; | 588 return null; |
| 589 } | 589 } |
| 590 | 590 |
| 591 if (args.length > 1) { | 591 if (args.length > 1) { |
| 592 errorCallback("Protocol Error: Extra " + args.length + " arguments i
n a call to method '" + method + "'."); | 592 errorCallback("Protocol Error: Extra " + args.length + " arguments i
n a call to method '" + method + "'."); |
| 593 return null; | 593 return null; |
| 594 } | 594 } |
| 595 | 595 |
| 596 return hasParams ? params : null | 596 return hasParams ? params : null; |
| 597 }, | 597 }, |
| 598 | 598 |
| 599 /** | 599 /** |
| 600 * @param {string} method | 600 * @param {string} method |
| 601 * @param {!Array.<!Object>} signature | 601 * @param {!Array.<!Object>} signature |
| 602 * @param {!Array.<*>} args | 602 * @param {!Array.<*>} args |
| 603 * @return {!Promise.<*>} | 603 * @return {!Promise.<*>} |
| 604 */ | 604 */ |
| 605 _sendMessageToBackendPromise: function(method, signature, args) | 605 _sendMessageToBackendPromise: function(method, signature, args) |
| 606 { | 606 { |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 673 argumentsArray.push(messageObject.result[paramNames[i]]); | 673 argumentsArray.push(messageObject.result[paramNames[i]]); |
| 674 } | 674 } |
| 675 | 675 |
| 676 callback.apply(null, argumentsArray); | 676 callback.apply(null, argumentsArray); |
| 677 }, | 677 }, |
| 678 | 678 |
| 679 suppressErrorLogging: function() | 679 suppressErrorLogging: function() |
| 680 { | 680 { |
| 681 this._suppressErrorLogging = true; | 681 this._suppressErrorLogging = true; |
| 682 } | 682 } |
| 683 } | 683 }; |
| 684 | 684 |
| 685 /** | 685 /** |
| 686 * @constructor | 686 * @constructor |
| 687 */ | 687 */ |
| 688 InspectorBackendClass.DispatcherPrototype = function() | 688 InspectorBackendClass.DispatcherPrototype = function() |
| 689 { | 689 { |
| 690 this._eventArgs = {}; | 690 this._eventArgs = {}; |
| 691 this._dispatcher = null; | 691 this._dispatcher = null; |
| 692 } | 692 }; |
| 693 | 693 |
| 694 InspectorBackendClass.DispatcherPrototype.prototype = { | 694 InspectorBackendClass.DispatcherPrototype.prototype = { |
| 695 | 695 |
| 696 /** | 696 /** |
| 697 * @param {string} eventName | 697 * @param {string} eventName |
| 698 * @param {!Object} params | 698 * @param {!Object} params |
| 699 */ | 699 */ |
| 700 registerEvent: function(eventName, params) | 700 registerEvent: function(eventName, params) |
| 701 { | 701 { |
| 702 this._eventArgs[eventName] = params; | 702 this._eventArgs[eventName] = params; |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 738 | 738 |
| 739 var processingStartTime; | 739 var processingStartTime; |
| 740 if (InspectorBackendClass.Options.dumpInspectorTimeStats) | 740 if (InspectorBackendClass.Options.dumpInspectorTimeStats) |
| 741 processingStartTime = Date.now(); | 741 processingStartTime = Date.now(); |
| 742 | 742 |
| 743 this._dispatcher[functionName].apply(this._dispatcher, params); | 743 this._dispatcher[functionName].apply(this._dispatcher, params); |
| 744 | 744 |
| 745 if (InspectorBackendClass.Options.dumpInspectorTimeStats) | 745 if (InspectorBackendClass.Options.dumpInspectorTimeStats) |
| 746 console.log("time-stats: " + messageObject.method + " = " + (Date.no
w() - processingStartTime)); | 746 console.log("time-stats: " + messageObject.method + " = " + (Date.no
w() - processingStartTime)); |
| 747 } | 747 } |
| 748 } | 748 }; |
| 749 | 749 |
| 750 InspectorBackendClass.Options = { | 750 InspectorBackendClass.Options = { |
| 751 dumpInspectorTimeStats: false, | 751 dumpInspectorTimeStats: false, |
| 752 dumpInspectorProtocolMessages: false, | 752 dumpInspectorProtocolMessages: false, |
| 753 suppressRequestErrors: false | 753 suppressRequestErrors: false |
| 754 } | 754 }; |
| 755 | 755 |
| 756 InspectorBackend = new InspectorBackendClass(); | 756 InspectorBackend = new InspectorBackendClass(); |
| OLD | NEW |