IncrementalImageUtil

public class IncrementalImageUtil
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.image.IncrementalImageUtil


A utility to leverage the incremental image and device update.

Summary

Fields

public static final DYNAMIC_PARTITIONS_TO_DIFF

Public constructors

IncrementalImageUtil(ITestDevice device, File deviceImage, File bootloader, File baseband, File targetImage, File createSnapshot, boolean applySnapshot, boolean wipeAfterApply, boolean newFlow, boolean updateBootloaderFromUserspace, SnapuserdWaitPhase waitPhase)

Public methods

void allowSameBuildFlashing()
void allowUnzipBaseline()
void cleanAfterSetup()

When doing some of the apply logic, we can clean up files right after setup.

File getExtractedTargetDirectory()
static IncrementalImageUtil initialize(ITestDevice device, IDeviceBuildInfo build, File createSnapshot, boolean isIsolatedSetup, boolean allowCrossRelease, allowedTransition, boolean applySnapshot, boolean wipeAfterApply, boolean newFlow, boolean updateBootloaderFromUserspace, SnapuserdWaitPhase waitPhase)
boolean isSameBuildFlashingAllowed()
static boolean isSnapshotInUse(ITestDevice device)

Returns whether device is currently using snapshots or not.

static boolean isSnapshotSupported(ITestDevice device, boolean applySnapshot)

Returns whether or not we can use the snapshot logic to update the device

void notifyBasebadNeedsRevert()
void notifyBootloaderNeedsRevert()
void teardownDevice(TestInformation testInfo)
boolean updateCompleted()

Returns whether update was completed or not.

void updateDevice(File currentBootloader, File currentRadio)

Updates the device using the snapshot logic.

void updateDeviceWithNewFlow(File currentBootloader, File currentRadio)
boolean useUpdatedFlow()

Fields

DYNAMIC_PARTITIONS_TO_DIFF

public static final  DYNAMIC_PARTITIONS_TO_DIFF

Public constructors

IncrementalImageUtil

public IncrementalImageUtil (ITestDevice device, 
                File deviceImage, 
                File bootloader, 
                File baseband, 
                File targetImage, 
                File createSnapshot, 
                boolean applySnapshot, 
                boolean wipeAfterApply, 
                boolean newFlow, 
                boolean updateBootloaderFromUserspace, 
                SnapuserdWaitPhase waitPhase)

Parameters
device ITestDevice

deviceImage File

bootloader File

baseband File

targetImage File

createSnapshot File

applySnapshot boolean

wipeAfterApply boolean

newFlow boolean

updateBootloaderFromUserspace boolean

waitPhase SnapuserdWaitPhase

Public methods

allowSameBuildFlashing

public void allowSameBuildFlashing ()

allowUnzipBaseline

public void allowUnzipBaseline ()

cleanAfterSetup

public void cleanAfterSetup ()

When doing some of the apply logic, we can clean up files right after setup.

getExtractedTargetDirectory

public File getExtractedTargetDirectory ()

Returns
File

initialize

public static IncrementalImageUtil initialize (ITestDevice device, 
                IDeviceBuildInfo build, 
                File createSnapshot, 
                boolean isIsolatedSetup, 
                boolean allowCrossRelease, 
                 allowedTransition, 
                boolean applySnapshot, 
                boolean wipeAfterApply, 
                boolean newFlow, 
                boolean updateBootloaderFromUserspace, 
                SnapuserdWaitPhase waitPhase)

Parameters
device ITestDevice

build IDeviceBuildInfo

createSnapshot File

isIsolatedSetup boolean

allowCrossRelease boolean

allowedTransition

applySnapshot boolean

wipeAfterApply boolean

newFlow boolean

updateBootloaderFromUserspace boolean

waitPhase SnapuserdWaitPhase

Returns
IncrementalImageUtil

Throws
DeviceNotAvailableException

isSameBuildFlashingAllowed

public boolean isSameBuildFlashingAllowed ()

Returns
boolean

isSnapshotInUse

public static boolean isSnapshotInUse (ITestDevice device)

Returns whether device is currently using snapshots or not.

Parameters
device ITestDevice

Returns
boolean

Throws
DeviceNotAvailableException

isSnapshotSupported

public static boolean isSnapshotSupported (ITestDevice device, 
                boolean applySnapshot)

Returns whether or not we can use the snapshot logic to update the device

Parameters
device ITestDevice

applySnapshot boolean

Returns
boolean

Throws
DeviceNotAvailableException

notifyBasebadNeedsRevert

public void notifyBasebadNeedsRevert ()

notifyBootloaderNeedsRevert

public void notifyBootloaderNeedsRevert ()

teardownDevice

public void teardownDevice (TestInformation testInfo)

Parameters
testInfo TestInformation

Throws
DeviceNotAvailableException

updateCompleted

public boolean updateCompleted ()

Returns whether update was completed or not.

Returns
boolean

updateDevice

public void updateDevice (File currentBootloader, 
                File currentRadio)

Updates the device using the snapshot logic.

Parameters
currentBootloader File

currentRadio File

Throws
DeviceNotAvailableException
TargetSetupError

updateDeviceWithNewFlow

public void updateDeviceWithNewFlow (File currentBootloader, 
                File currentRadio)

Parameters
currentBootloader File

currentRadio File

Throws
DeviceNotAvailableException
TargetSetupError

useUpdatedFlow

public boolean useUpdatedFlow ()

Returns
boolean