| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # | 2 # |
| 3 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 """Sends a heart beat pulse to the currently online Android devices. | 7 """Sends a heart beat pulse to the currently online Android devices. |
| 8 This heart beat lets the devices know that they are connected to a host. | 8 This heart beat lets the devices know that they are connected to a host. |
| 9 """ | 9 """ |
| 10 # pylint: disable=W0702 | 10 # pylint: disable=W0702 |
| 11 | 11 |
| 12 import sys | 12 import sys |
| 13 import time | 13 import time |
| 14 | 14 |
| 15 from pylib.device import adb_wrapper | |
| 16 from pylib.device import device_filter | |
| 17 from pylib.device import device_utils | 15 from pylib.device import device_utils |
| 18 | 16 |
| 19 PULSE_PERIOD = 20 | 17 PULSE_PERIOD = 20 |
| 20 | 18 |
| 21 def main(): | 19 def main(): |
| 22 while True: | 20 while True: |
| 23 try: | 21 try: |
| 24 devices = adb_wrapper.AdbWrapper.Devices( | 22 devices = device_utils.DeviceUtils.HealthyDevices() |
| 25 filters=device_filter.DefaultFilters()) | |
| 26 for d in devices: | 23 for d in devices: |
| 27 device_utils.DeviceUtils(d).RunShellCommand( | 24 d.RunShellCommand(['touch', '/sdcard/host_heartbeat'], |
| 28 ['touch', '/sdcard/host_heartbeat'], check_return=True) | 25 check_return=True) |
| 29 except: | 26 except: |
| 30 # Keep the heatbeat running bypassing all errors. | 27 # Keep the heatbeat running bypassing all errors. |
| 31 pass | 28 pass |
| 32 time.sleep(PULSE_PERIOD) | 29 time.sleep(PULSE_PERIOD) |
| 33 | 30 |
| 34 | 31 |
| 35 if __name__ == '__main__': | 32 if __name__ == '__main__': |
| 36 sys.exit(main()) | 33 sys.exit(main()) |
| OLD | NEW |