| Index: tools/telemetry/telemetry/adb_commands.py | 
| diff --git a/tools/telemetry/telemetry/adb_commands.py b/tools/telemetry/telemetry/adb_commands.py | 
| deleted file mode 100644 | 
| index 3626c8fd9f535d0a1da4ed1699464eacbaf8c7e5..0000000000000000000000000000000000000000 | 
| --- a/tools/telemetry/telemetry/adb_commands.py | 
| +++ /dev/null | 
| @@ -1,180 +0,0 @@ | 
| -# Copyright (c) 2012 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. | 
| -"""Brings in Chrome Android's android_commands module, which itself is a | 
| -thin(ish) wrapper around adb.""" | 
| -import os | 
| -import sys | 
| - | 
| -# This is currently a thin wrapper around Chrome Android's | 
| -# build scripts, located in chrome/build/android. This file exists mainly to | 
| -# deal with locating the module. | 
| - | 
| -# Get build/android scripts into our path. | 
| -sys.path.append( | 
| -    os.path.abspath( | 
| -        os.path.join(os.path.dirname(__file__), | 
| -                     '../../../build/android'))) | 
| -try: | 
| -  from pylib import android_commands # pylint: disable=F0401 | 
| -  from pylib import cmd_helper # pylint: disable=F0401 | 
| -  from pylib import forwarder # pylint: disable=F0401 | 
| -  from pylib import ports # pylint: disable=F0401 | 
| -  from pylib import valgrind_tools # pylint: disable=F0401 | 
| -except Exception: | 
| -  android_commands = None | 
| - | 
| - | 
| -def IsAndroidSupported(): | 
| -  return android_commands != None | 
| - | 
| - | 
| -def GetAttachedDevices(): | 
| -  """Returns a list of attached, online android devices. | 
| - | 
| -  If a preferred device has been set with ANDROID_SERIAL, it will be first in | 
| -  the returned list.""" | 
| -  return android_commands.GetAttachedDevices() | 
| - | 
| - | 
| -def AllocateTestServerPort(): | 
| -  return ports.AllocateTestServerPort() | 
| - | 
| - | 
| -def ResetTestServerPortAllocation(): | 
| -  return ports.ResetTestServerPortAllocation() | 
| - | 
| - | 
| -def GetOutDirectory(): | 
| -  return cmd_helper.OutDirectory.get() | 
| - | 
| - | 
| -class AdbCommands(object): | 
| -  """A thin wrapper around ADB""" | 
| - | 
| -  def __init__(self, device): | 
| -    self._adb = android_commands.AndroidCommands(device) | 
| - | 
| -  def Adb(self): | 
| -    return self._adb | 
| - | 
| -  def Forward(self, local, remote): | 
| -    ret = self._adb.Adb().SendCommand('forward %s %s' % (local, remote)) | 
| -    assert ret == '' | 
| - | 
| -  def RunShellCommand(self, command, timeout_time=20, log_result=False): | 
| -    """Send a command to the adb shell and return the result. | 
| - | 
| -    Args: | 
| -      command: String containing the shell command to send. Must not include | 
| -               the single quotes as we use them to escape the whole command. | 
| -      timeout_time: Number of seconds to wait for command to respond before | 
| -        retrying, used by AdbInterface.SendShellCommand. | 
| -      log_result: Boolean to indicate whether we should log the result of the | 
| -                  shell command. | 
| - | 
| -    Returns: | 
| -      list containing the lines of output received from running the command | 
| -    """ | 
| -    return self._adb.RunShellCommand(command, timeout_time, log_result) | 
| - | 
| -  def CloseApplication(self, package): | 
| -    """Attempt to close down the application, using increasing violence. | 
| - | 
| -    Args: | 
| -      package: Name of the process to kill off, e.g. | 
| -      com.google.android.apps.chrome | 
| -    """ | 
| -    self._adb.CloseApplication(package) | 
| - | 
| -  def KillAll(self, process): | 
| -    """Android version of killall, connected via adb. | 
| - | 
| -    Args: | 
| -      process: name of the process to kill off | 
| - | 
| -    Returns: | 
| -      the number of processess killed | 
| -    """ | 
| -    return self._adb.KillAll(process) | 
| - | 
| -  def ExtractPid(self, process_name): | 
| -    """Extracts Process Ids for a given process name from Android Shell. | 
| - | 
| -    Args: | 
| -      process_name: name of the process on the device. | 
| - | 
| -    Returns: | 
| -      List of all the process ids (as strings) that match the given name. | 
| -      If the name of a process exactly matches the given name, the pid of | 
| -      that process will be inserted to the front of the pid list. | 
| -    """ | 
| -    return self._adb.ExtractPid(process_name) | 
| - | 
| -  def StartActivity(self, package, activity, wait_for_completion=False, | 
| -                    action='android.intent.action.VIEW', | 
| -                    category=None, data=None, | 
| -                    extras=None, trace_file_name=None): | 
| -    """Starts |package|'s activity on the device. | 
| - | 
| -    Args: | 
| -      package: Name of package to start (e.g. 'com.google.android.apps.chrome'). | 
| -      activity: Name of activity (e.g. '.Main' or | 
| -        'com.google.android.apps.chrome.Main'). | 
| -      wait_for_completion: wait for the activity to finish launching (-W flag). | 
| -      action: string (e.g. 'android.intent.action.MAIN'). Default is VIEW. | 
| -      category: string (e.g. 'android.intent.category.HOME') | 
| -      data: Data string to pass to activity (e.g. 'http://www.example.com/'). | 
| -      extras: Dict of extras to pass to activity. Values are significant. | 
| -      trace_file_name: If used, turns on and saves the trace to this file name. | 
| -    """ | 
| -    return self._adb.StartActivity(package, activity, wait_for_completion, | 
| -                    action, | 
| -                    category, data, | 
| -                    extras, trace_file_name) | 
| - | 
| -  def Push(self, local, remote): | 
| -    return self._adb.Adb().Push(local, remote) | 
| - | 
| -  def Pull(self, remote, local): | 
| -    return self._adb.Adb().Pull(remote, local) | 
| - | 
| -  def FileExistsOnDevice(self, file_name): | 
| -    return self._adb.FileExistsOnDevice(file_name) | 
| - | 
| -  def IsRootEnabled(self): | 
| -    return self._adb.IsRootEnabled() | 
| - | 
| -def HasForwarder(buildtype=None): | 
| -  if not buildtype: | 
| -    return (HasForwarder(buildtype='Release') or | 
| -            HasForwarder(buildtype='Debug')) | 
| -  return (os.path.exists(os.path.join(GetOutDirectory(), buildtype, | 
| -                                      'device_forwarder')) and | 
| -          os.path.exists(os.path.join(GetOutDirectory(), buildtype, | 
| -                                      'host_forwarder'))) | 
| - | 
| -class Forwarder(object): | 
| -  def __init__(self, adb, *port_pairs): | 
| -    assert HasForwarder() | 
| -    tool = valgrind_tools.BaseTool() | 
| -    self._host_port = port_pairs[0].local_port | 
| - | 
| -    new_port_pairs = [(port_pair.local_port, port_pair.remote_port) | 
| -                      for port_pair in port_pairs] | 
| - | 
| -    buildtype = 'Debug' | 
| -    if HasForwarder('Release'): | 
| -      buildtype = 'Release' | 
| -    self._forwarder = forwarder.Forwarder(adb.Adb(), buildtype) | 
| -    self._forwarder.Run(new_port_pairs, tool, '127.0.0.1') | 
| - | 
| -  @property | 
| -  def url(self): | 
| -    assert self._forwarder | 
| -    return 'http://localhost:%i' % self._host_port | 
| - | 
| -  def Close(self): | 
| -    if self._forwarder: | 
| -      self._forwarder.Close() | 
| -      self._forwarder = None | 
|  |