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

Unified Diff: tools/telemetry/telemetry/core/platform/__init__.py

Issue 640813002: Revert of Move remote platforms creation logic from android_browser_finder to platform (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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/core/platform/__init__.py
diff --git a/tools/telemetry/telemetry/core/platform/__init__.py b/tools/telemetry/telemetry/core/platform/__init__.py
index d18323a30133ae67745c8c9912915dbe187403ef..80bf4932fb8135a83aec4b1b8276526a0b363f9c 100644
--- a/tools/telemetry/telemetry/core/platform/__init__.py
+++ b/tools/telemetry/telemetry/core/platform/__init__.py
@@ -6,9 +6,9 @@
import os
import sys
-from telemetry.core import discover
-from telemetry.core import util
-from telemetry.core.platform import platform_backend as platform_backend_module
+from telemetry.core.platform import cros_device
+from telemetry.core.platform import cros_interface
+from telemetry.core.platform import cros_platform_backend
from telemetry.core.platform import profiling_controller
from telemetry.core.platform import tracing_controller
@@ -34,8 +34,8 @@
if _host_platform:
return
if _IsRunningOnCrosDevice():
- from telemetry.core.platform import cros_platform_backend
- backend = cros_platform_backend.CrosPlatformBackend()
+ backend = cros_platform_backend.CrosPlatformBackend(
+ cros_interface.CrOSInterface())
elif sys.platform.startswith('linux'):
from telemetry.core.platform import linux_platform_backend
backend = linux_platform_backend.LinuxPlatformBackend()
@@ -61,22 +61,20 @@
Args:
device: a device.Device instance.
"""
- if device.guid in _remote_platforms:
- return _remote_platforms[device.guid]
- try:
- platform_backend = None
- platform_dir = os.path.dirname(os.path.realpath(__file__))
- for platform_backend_class in discover.DiscoverClasses(
- platform_dir, util.GetTelemetryDir(),
- platform_backend_module.PlatformBackend).itervalues():
- if platform_backend_class.SupportsDevice(device):
- platform_backend = platform_backend_class(device)
- _remote_platforms[device.guid] = Platform(platform_backend)
- return _remote_platforms[device.guid]
- return None
- except Exception:
- logging.error('Fail to create platform instance for %s.', device.name)
- raise
+ if device.guid not in _remote_platforms:
+ try:
+ if isinstance(device, cros_device.CrOSDevice):
+ cri = cros_interface.CrOSInterface(
+ device.host_name, device.ssh_identity)
+ cri.TryLogin()
+ _remote_platforms[device.guid] = (
+ Platform(cros_platform_backend.CrosPlatformBackend(cri)))
+ else:
+ raise ValueError('Unsupported device type')
+ except:
+ logging.error('Fail to create platform instance for %s.', device.name)
+ raise
+ return _remote_platforms[device.guid]
class Platform(object):
« no previous file with comments | « tools/telemetry/telemetry/core/exceptions.py ('k') | tools/telemetry/telemetry/core/platform/android_device.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698