CasUtil

public final class CasUtil
extends Object

java.lang.Object
com.android.tradefed.util.CasUtil


Краткое содержание

Константы

String ANDROID_INFO_FILENAME

String CAS_LOG_ROOT_NAME

String CHUNKS_DIR_NAME

String CHUNKS_INDEX_FILENAME

String SUPER_IMAGE_FILENAME

String SYSTEM_IMAGE_FILENAME

Общедоступные методы

static void checkCasClientFlags (Path clientPath, Consumer<Set<String>> flagsConsumerFn)

Проверяет поддерживаемые флаги клиента CAS.

static Path createUniqueCasLogDir (Path logDirRootPath)
static void ensureCasClientExecutable (Path casClientPath, boolean logMetricsIfNotExecutable)
static String getCasLogFromDir (Path logDirPath)

Считывает файл журнала CAS " ".INFO" из указанного каталога.

static String getCasLogFromDir (Path logDirPath, String clientName, String tag, boolean removeLogDirAfterRead)

Считывает файл журнала CAS из указанного каталога.

static String getCasLogFromDir (Path logDirPath, String clientName)

Считывает файл журнала CAS " .INFO" из указанного каталога и удалите каталог с логами.

static boolean isChunkedDir (Path path)

Возвращает true, если указанный путь является допустимым каталогом, разбитым на блоки FastCDC.

static boolean isUncompressedDeviceImage (Path path)

Возвращает true, если указанный путь является допустимым несжатым образом устройства.

static void logCasClientVersion (Path clientPath, Consumer<String> versionHandlerFn)
static void logCasClientVersion (Path clientPath)
static void validateChunkedDir (Path path)

Проверяет, является ли указанный путь допустимым каталогом, разбитым на блоки FastCDC.

Константы

ANDROID_INFO_FILENAME

public static final String ANDROID_INFO_FILENAME

Постоянное значение: "android-info.txt"

CAS_LOG_ROOT_NAME

public static final String CAS_LOG_ROOT_NAME

Постоянное значение: "tf-cas-fuse-log-root"

CHUNKS_DIR_NAME

public static final String CHUNKS_DIR_NAME

Постоянное значение: "_chunks"

CHUNKS_INDEX_FILENAME

public static final String CHUNKS_INDEX_FILENAME

Постоянное значение: "_chunks_index.json"

SUPER_IMAGE_FILENAME

public static final String SUPER_IMAGE_FILENAME

Постоянное значение: "super.img"

SYSTEM_IMAGE_FILENAME

public static final String SYSTEM_IMAGE_FILENAME

Постоянное значение: "system.img"

Общедоступные методы

checkCasClientFlags

public static void checkCasClientFlags (Path clientPath, 
                Consumer<Set<String>> flagsConsumerFn)

Проверяет поддерживаемые флаги клиента CAS.

Параметры
clientPath Path : Путь к исполняемому файлу клиента CAS.

flagsConsumerFn Consumer : Потребитель, который принимает набор поддерживаемых флагов.

createUniqueCasLogDir

public static Path createUniqueCasLogDir (Path logDirRootPath)

Параметры
logDirRootPath Path

Возвраты
Path

Броски
IOException

ensureCasClientExecutable

public static void ensureCasClientExecutable (Path casClientPath, 
                boolean logMetricsIfNotExecutable)

Параметры
casClientPath Path

logMetricsIfNotExecutable boolean

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath)

Считывает файл журнала CAS " ".INFO" из указанного каталога. Предполагается, что каталог с логами принадлежит одному клиенту CAS, и значение `clientName` определяется по имени файла лога.

Параметры
logDirPath Path : путь к каталогу, из которого будет считываться файл журнала CAS.

Возвраты
String Содержимое файла журнала CAS или значение null, если файл журнала не может быть прочитан.

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath, 
                String clientName, 
                String tag, 
                boolean removeLogDirAfterRead)

Считывает файл журнала CAS из указанного каталога.

Параметры
logDirPath Path : путь к каталогу, из которого будет считываться файл журнала CAS.

clientName String : Имя клиента CAS.

tag String : тег файла журнала CAS, например, "INFO", "WARNING", "ERROR" и т. д.

removeLogDirAfterRead boolean : Удалять ли каталог с логами после прочтения файла лога.

Возвраты
String Содержимое файла журнала CAS.

Броски
IOException Если файл журнала CAS не может быть прочитан.

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath, 
                String clientName)

Считывает файл журнала CAS " Метод `.INFO` из указанного каталога удаляет каталог с логами. Это вспомогательный метод, который оборачивает описанный выше метод с параметрами по умолчанию. Он также обрабатывает исключение IOException и возвращает `null`, если файл логов не может быть прочитан.

Параметры
logDirPath Path : путь к каталогу, из которого будет считываться файл журнала CAS.

clientName String : Имя клиента CAS.

Возвраты
String Содержимое файла журнала CAS или "", если файл журнала не может быть прочитан.

isChunkedDir

public static boolean isChunkedDir (Path path)

Возвращает true, если указанный путь является допустимым каталогом, разбитым на блоки FastCDC.

Параметры
path Path

Возвраты
boolean

isUncompressedDeviceImage

public static boolean isUncompressedDeviceImage (Path path)

Возвращает true, если указанный путь является допустимым несжатым образом устройства.

Для наиболее надежной и достоверной проверки убедитесь в наличии файлов (system.img или super.img) И android-info.txt.

system.img/super.img: Подтверждает наличие основных данных операционной системы.

android-info.txt: Подтверждает, что это официальный пакет сборки, содержащий метаданные, описывающие устройство и версию сборки.

Такое сочетание крайне маловероятно в каталоге, который не является несжатым образом устройства и корректно обрабатывает случаи, подобные сборке для ТВ, где отсутствует файл boot.img.

Параметры
path Path : Абсолютный путь к образу устройства.

Возвраты
boolean Если путь соответствует допустимому несжатому образу устройства, то значение равно false.

logCasClientVersion

public static void logCasClientVersion (Path clientPath, 
                Consumer<String> versionHandlerFn)

Параметры
clientPath Path

versionHandlerFn Consumer

logCasClientVersion

public static void logCasClientVersion (Path clientPath)

Параметры
clientPath Path

validateChunkedDir

public static void validateChunkedDir (Path path)

Проверяет, является ли указанный путь допустимым каталогом, разбитым на блоки FastCDC.

   device_image.zip/
     _chunks/
       _chunks_index.json
       chunk1.img
     _chunks_index.json
 
Проверяется только содержимое пути к исходным данным. Файл _chunks_index.json должен находиться либо в каталоге _chunks, либо быть соседним с каталогом _chunks (для обратной совместимости).

Параметры
path Path : Путь к каталогу, в который был загружен фрагмент данных.

Броски
IOException Если указанный путь не является допустимым каталогом, разбитым на блоки FastCDC.