blob: bbfd3149fe7d5e28e737ef340b25f4f0a7736ae3 [file] [log] [blame]
# Copyright 2015 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""An adapter to remotely access the system facade on DUT."""
class SystemFacadeRemoteAdapter(object):
"""SystemFacadeRemoteAdapter is an adapter to remotely control DUT system.
The Autotest host object representing the remote DUT, passed to this
class on initialization, can be accessed from its _client property.
"""
def __init__(self, host, remote_facade_proxy):
"""Construct an SystemFacadeRemoteAdapter.
@param host: Host object representing a remote host.
@param remote_facade_proxy: RemoteFacadeProxy object.
"""
self._client = host
self._proxy = remote_facade_proxy
@property
def _system_proxy(self):
"""Gets the proxy to DUT system facade.
@return XML RPC proxy to DUT system facade.
"""
return self._proxy.system
def set_scaling_governor_mode(self, index, mode):
"""Set mode of CPU scaling governor on one CPU of DUT.
@param index: CPU index starting from 0.
@param mode: Mode of scaling governor, accept 'interactive' or
'performance'.
@returns: The original mode.
"""
return self._system_proxy.set_scaling_governor_mode(index, mode)