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

Unified Diff: tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_backend_list.py

Issue 1647513002: Delete tools/telemetry. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_backend_list.py
diff --git a/tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_backend_list.py b/tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_backend_list.py
deleted file mode 100644
index 7e1f8fb179495dc6ad6d78ed18adff77bf6bfd67..0000000000000000000000000000000000000000
--- a/tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_backend_list.py
+++ /dev/null
@@ -1,124 +0,0 @@
-# Copyright 2014 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-import collections
-from telemetry.core import exceptions
-
-
-def DebuggerUrlToId(debugger_url):
- return debugger_url.split('/')[-1]
-
-
-class InspectorBackendList(collections.Sequence):
- """A dynamic sequence of active InspectorBackends."""
-
- def __init__(self, browser_backend):
- """Constructor.
-
- Args:
- browser_backend: The BrowserBackend instance to query for
- InspectorBackends.
- """
- self._browser_backend = browser_backend
- self._devtools_context_map_backend = None
- # A list of filtered contexts.
- self._filtered_context_ids = []
- # A cache of inspector backends, by context ID.
- self._wrapper_dict = {}
-
- @property
- def _devtools_client(self):
- return self._browser_backend.devtools_client
-
- @property
- def app(self):
- return self._browser_backend.app
-
- def GetContextInfo(self, context_id):
- return self._devtools_context_map_backend.GetContextInfo(context_id)
-
- def ShouldIncludeContext(self, _):
- """Override this method to control which contexts are included."""
- return True
-
- def CreateWrapper(self, inspector_backend_instance):
- """Override to return the wrapper API over InspectorBackend.
-
- The wrapper API is the public interface for InspectorBackend. It
- may expose whatever methods are desired on top of that backend.
- """
- raise NotImplementedError
-
- # TODO(nednguyen): Remove this method and turn inspector_backend_list API to
- # dictionary-like API (crbug.com/398467)
- def __getitem__(self, index):
- self._Update()
- if index >= len(self._filtered_context_ids):
- raise exceptions.DevtoolsTargetCrashException(
- self.app,
- 'Web content with index %s may have crashed. '
- 'filtered_context_ids = %s' % (
- index, repr(self._filtered_context_ids)))
- context_id = self._filtered_context_ids[index]
- return self.GetBackendFromContextId(context_id)
-
- def GetTabById(self, identifier):
- self._Update()
- return self.GetBackendFromContextId(identifier)
-
- def GetBackendFromContextId(self, context_id):
- self._Update()
- if context_id not in self._wrapper_dict:
- try:
- backend = self._devtools_context_map_backend.GetInspectorBackend(
- context_id)
- except exceptions.Error as e:
- self._HandleDevToolsConnectionError(e)
- raise e
- # Propagate KeyError from GetInspectorBackend call.
-
- wrapper = self.CreateWrapper(backend)
- self._wrapper_dict[context_id] = wrapper
- return self._wrapper_dict[context_id]
-
- def IterContextIds(self):
- self._Update()
- return iter(self._filtered_context_ids)
-
- def __iter__(self):
- self._Update()
- for context_id in self._filtered_context_ids:
- yield self.GetTabById(context_id)
-
- def __len__(self):
- self._Update()
- return len(self._filtered_context_ids)
-
- def _Update(self):
- backends_map = self._devtools_client.GetUpdatedInspectableContexts()
- self._devtools_context_map_backend = backends_map
-
- # Clear context ids that do not appear in the inspectable contexts.
- context_ids = [context['id'] for context in backends_map.contexts]
- self._filtered_context_ids = [context_id
- for context_id in self._filtered_context_ids
- if context_id in context_ids]
- # Add new context ids.
- for context in backends_map.contexts:
- if (context['id'] not in self._filtered_context_ids and
- self.ShouldIncludeContext(context)):
- self._filtered_context_ids.append(context['id'])
-
- # Clean up any backends for contexts that have gone away.
- for context_id in self._wrapper_dict.keys():
- if context_id not in self._filtered_context_ids:
- del self._wrapper_dict[context_id]
-
- def _HandleDevToolsConnectionError(self, error):
- """Called when handling errors in connecting to the DevTools websocket.
-
- This can be overwritten by sub-classes to add more debugging information to
- errors.
- """
- pass

Powered by Google App Engine
This is Rietveld 408576698