| Index: tools/telemetry/telemetry/core/backends/chrome/inspector_backend.py
|
| diff --git a/tools/telemetry/telemetry/core/backends/chrome/inspector_backend.py b/tools/telemetry/telemetry/core/backends/chrome/inspector_backend.py
|
| index 8c4c47efbe2fa79f3eb0533b3ad183c4bf879478..ca34e4688044c33e770465dcf687251d7ad84fa4 100644
|
| --- a/tools/telemetry/telemetry/core/backends/chrome/inspector_backend.py
|
| +++ b/tools/telemetry/telemetry/core/backends/chrome/inspector_backend.py
|
| @@ -29,12 +29,11 @@ class InspectorException(Exception):
|
|
|
| class InspectorBackend(inspector_websocket.InspectorWebsocket):
|
| def __init__(self, browser_backend, context, timeout=60):
|
| - super(InspectorBackend, self).__init__(self._HandleNotification,
|
| - self._HandleError)
|
| + super(InspectorBackend, self).__init__(self._HandleError)
|
| + self.RegisterDomain('Inspector', self._HandleInspectorDomainNotification)
|
|
|
| self._browser_backend = browser_backend
|
| self._context = context
|
| - self._domain_handlers = {}
|
|
|
| logging.debug('InspectorBackend._Connect() to %s', self.debugger_url)
|
| try:
|
| @@ -59,14 +58,6 @@ class InspectorBackend(inspector_websocket.InspectorWebsocket):
|
| def __del__(self):
|
| self.Disconnect()
|
|
|
| - def Disconnect(self):
|
| - for _, handlers in self._domain_handlers.items():
|
| - _, will_close_handler = handlers
|
| - will_close_handler()
|
| - self._domain_handlers = {}
|
| -
|
| - super(InspectorBackend, self).Disconnect()
|
| -
|
| @property
|
| def app(self):
|
| return self._browser_backend.app
|
| @@ -225,7 +216,7 @@ class InspectorBackend(inspector_websocket.InspectorWebsocket):
|
| contexts = self._browser_backend.ListInspectableContexts()
|
| return self._context['id'] in [c['id'] for c in contexts]
|
|
|
| - def _HandleNotification(self, res):
|
| + def _HandleInspectorDomainNotification(self, res):
|
| if (res['method'] == 'Inspector.detached' and
|
| res.get('params', {}).get('reason', '') == 'replaced_with_devtools'):
|
| self._WaitForInspectorToGoAwayAndReconnect()
|
| @@ -233,18 +224,6 @@ class InspectorBackend(inspector_websocket.InspectorWebsocket):
|
| if res['method'] == 'Inspector.targetCrashed':
|
| raise exceptions.DevtoolsTargetCrashException(self.app)
|
|
|
| - mname = res['method']
|
| - dot_pos = mname.find('.')
|
| - domain_name = mname[:dot_pos]
|
| - if domain_name in self._domain_handlers:
|
| - try:
|
| - self._domain_handlers[domain_name][0](res)
|
| - except Exception:
|
| - import traceback
|
| - traceback.print_exc()
|
| - else:
|
| - logging.warn('Unhandled inspector message: %s', res)
|
| -
|
| def _HandleError(self, elapsed_time):
|
| if self._IsInspectable():
|
| raise util.TimeoutException(
|
| @@ -275,29 +254,6 @@ class InspectorBackend(inspector_websocket.InspectorWebsocket):
|
| sys.stderr.write('\n')
|
| sys.stderr.write('Inspector\'s UI closed. Telemetry will now resume.\n')
|
|
|
| - def RegisterDomain(self,
|
| - domain_name, notification_handler, will_close_handler):
|
| - """Registers a given domain for handling notification methods.
|
| -
|
| - For example, given inspector_backend:
|
| - def OnConsoleNotification(msg):
|
| - if msg['method'] == 'Console.messageAdded':
|
| - print msg['params']['message']
|
| - return
|
| - def OnConsoleClose(self):
|
| - pass
|
| - inspector_backend.RegisterDomain('Console',
|
| - OnConsoleNotification, OnConsoleClose)
|
| - """
|
| - assert domain_name not in self._domain_handlers
|
| - self._domain_handlers[domain_name] = (notification_handler,
|
| - will_close_handler)
|
| -
|
| - def UnregisterDomain(self, domain_name):
|
| - """Unregisters a previously registered domain."""
|
| - assert domain_name in self._domain_handlers
|
| - self._domain_handlers.pop(domain_name)
|
| -
|
| def CollectGarbage(self):
|
| self._page.CollectGarbage()
|
|
|
|
|