RemoteAndroidVirtualDevice
public
class
RemoteAndroidVirtualDevice
extends RemoteAndroidDevice
implements
ITestLoggerReceiver
java.lang.Object | ||||
↳ | com.android.tradefed.device.NativeDevice | |||
↳ | com.android.tradefed.device.TestDevice | |||
↳ | com.android.tradefed.device.RemoteAndroidDevice | |||
↳ | com.android.tradefed.device.cloud.RemoteAndroidVirtualDevice |
Extends RemoteAndroidDevice
behavior for a full stack android device running in the
Google Compute Engine (Gce). Assume the device serial will be in the format
Summary
Public constructors | |
---|---|
RemoteAndroidVirtualDevice(IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)
Creates a |
Public methods | |
---|---|
GceAvdInfo
|
getAvdInfo()
Returns the |
DeviceDescriptor
|
getDeviceDescriptor()
|
|
getTombstones()
Cuttlefish has a special feature that brings the tombstones to the remote host where we can get them directly. |
void
|
postBootSetup()
{@inherit } |
void
|
postInvocationTearDown(Throwable exception)
|
boolean
|
powerwashGce()
Attempt to powerwash a GCE instance |
void
|
preInvocationSetup(IBuildInfo info, MultiMap<String, String> attributes)
|
void
|
recoverDevice()
Attempts to recover device communication. |
void
|
setGceSshMonitor(GceSshTunnelMonitor gceSshMonitor)
Override the internal |
void
|
setTestLogger(ITestLogger testLogger)
|
Protected methods | |
---|---|
void
|
doAdbReboot(NativeDevice.RebootMode rebootMode, String reason)
Perform a adb reboot. |
long
|
getCurrentTime()
Returns the current system time. |
GceSshTunnelMonitor
|
getGceSshMonitor()
Returns the |
void
|
launchGce(IBuildInfo buildInfo, MultiMap<String, String> attributes)
Launch the actual gce device based on the build info. |
void
|
waitForTunnelOnline(long waitTime)
Check if the tunnel monitor is running. |
Public constructors
RemoteAndroidVirtualDevice
public RemoteAndroidVirtualDevice (IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)
Creates a RemoteAndroidVirtualDevice
.
Parameters | |
---|---|
device |
IDevice : the associated IDevice |
stateMonitor |
IDeviceStateMonitor : the IDeviceStateMonitor mechanism to use |
allocationMonitor |
IDeviceMonitor : the IDeviceMonitor to inform of allocation state changes.
|
Public methods
getAvdInfo
public GceAvdInfo getAvdInfo ()
Returns the GceAvdInfo
from the created remote VM. Returns null if the bring up was
not successful.
Returns | |
---|---|
GceAvdInfo |
getDeviceDescriptor
public DeviceDescriptor getDeviceDescriptor ()
Returns | |
---|---|
DeviceDescriptor |
getTombstones
publicgetTombstones ()
Cuttlefish has a special feature that brings the tombstones to the remote host where we can get them directly.
Returns | |
---|---|
|
Throws | |
---|---|
DeviceNotAvailableException |
postBootSetup
public void postBootSetup ()
{@inherit }
Throws | |
---|---|
DeviceNotAvailableException |
postInvocationTearDown
public void postInvocationTearDown (Throwable exception)
Parameters | |
---|---|
exception |
Throwable |
powerwashGce
public boolean powerwashGce ()
Attempt to powerwash a GCE instance
Returns | |
---|---|
boolean |
returns true if powerwash Gce success. |
Throws | |
---|---|
|
com.android.tradefed.targetprep.TargetSetupError |
DeviceNotAvailableException |
|
TargetSetupError |
preInvocationSetup
public void preInvocationSetup (IBuildInfo info, MultiMap<String, String> attributes)
Parameters | |
---|---|
info |
IBuildInfo |
attributes |
MultiMap |
Throws | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
recoverDevice
public void recoverDevice ()
Attempts to recover device communication.
Throws | |
---|---|
DeviceNotAvailableException |
setGceSshMonitor
public void setGceSshMonitor (GceSshTunnelMonitor gceSshMonitor)
Override the internal GceSshTunnelMonitor
of the
device.
Parameters | |
---|---|
gceSshMonitor |
GceSshTunnelMonitor |
setTestLogger
public void setTestLogger (ITestLogger testLogger)
Parameters | |
---|---|
testLogger |
ITestLogger |
Protected methods
doAdbReboot
protected void doAdbReboot (NativeDevice.RebootMode rebootMode, String reason)
Perform a adb reboot.
Parameters | |
---|---|
rebootMode |
NativeDevice.RebootMode : a mode of this reboot. |
reason |
String : for this reboot. |
Throws | |
---|---|
DeviceNotAvailableException |
getCurrentTime
protected long getCurrentTime ()
Returns the current system time. Exposed for testing.
Returns | |
---|---|
long |
getGceSshMonitor
protected GceSshTunnelMonitor getGceSshMonitor ()
Returns the GceSshTunnelMonitor
of the device.
Exposed for testing.
Returns | |
---|---|
GceSshTunnelMonitor |
launchGce
protected void launchGce (IBuildInfo buildInfo, MultiMap<String, String> attributes)
Launch the actual gce device based on the build info.
Parameters | |
---|---|
buildInfo |
IBuildInfo |
attributes |
MultiMap |
Throws | |
---|---|
TargetSetupError |
waitForTunnelOnline
protected void waitForTunnelOnline (long waitTime)
Check if the tunnel monitor is running.
Parameters | |
---|---|
waitTime |
long |
Throws | |
---|---|
DeviceNotAvailableException |