CasUtil

public final class CasUtil
extends Object

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


Podsumowanie

Stałe

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

Metody publiczne

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

Sprawdza obsługiwane flagi klienta CAS.

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

Odczytuje plik logu CAS „.INFO” z podanego katalogu.

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

Odczytuje plik dziennika CAS z podanego katalogu.

static String getCasLogFromDir(Path logDirPath, String clientName)

Odczytuje plik logu CAS „.INFO” z podanego katalogu i usuwa katalog logu.

static boolean isChunkedDir(Path path)

Zwraca wartość „prawda”, jeśli podana ścieżka jest prawidłowym katalogiem podzielonym na fragmenty za pomocą algorytmu FastCDC.

static boolean isUncompressedDeviceImage(Path path)

Zwraca wartość „true”, jeśli podana ścieżka jest prawidłowym nieskompresowanym obrazem urządzenia.

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

Sprawdza, czy podana ścieżka jest prawidłowym katalogiem podzielonym na fragmenty FastCDC.

Stałe

ANDROID_INFO_FILENAME

public static final String ANDROID_INFO_FILENAME

Wartość stała: "android-info.txt"

CAS_LOG_ROOT_NAME

public static final String CAS_LOG_ROOT_NAME

Wartość stała: "tf-cas-fuse-log-root"

CHUNKS_DIR_NAME

public static final String CHUNKS_DIR_NAME

Wartość stała: "_chunks"

CHUNKS_INDEX_FILENAME

public static final String CHUNKS_INDEX_FILENAME

Wartość stała: "_chunks_index.json"

SUPER_IMAGE_FILENAME

public static final String SUPER_IMAGE_FILENAME

Wartość stała: "super.img"

SYSTEM_IMAGE_FILENAME

public static final String SYSTEM_IMAGE_FILENAME

Wartość stała: "system.img"

Metody publiczne

checkCasClientFlags

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

Sprawdza obsługiwane flagi klienta CAS.

Parametry
clientPath Path: ścieżka do pliku binarnego klienta CAS.

flagsConsumerFn Consumer: konsument, który akceptuje zestaw obsługiwanych flag.

createUniqueCasLogDir

public static Path createUniqueCasLogDir (Path logDirRootPath)

Parametry
logDirRootPath Path

Zwraca
Path

Zgłasza
IOException

ensureCasClientExecutable

public static void ensureCasClientExecutable (Path casClientPath, 
                boolean logMetricsIfNotExecutable)

Parametry
casClientPath Path

logMetricsIfNotExecutable boolean

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath)

Odczytuje plik logu CAS „.INFO” z podanego katalogu. Zakłada, że katalog dziennika jest przeznaczony dla jednego klienta CAS, i wywnioskowuje wartość `clientName` z nazwy pliku dziennika.

Parametry
logDirPath Path: ścieżka katalogu, z którego ma być odczytany plik dziennika CAS.

Zwraca
String Zawartość pliku dziennika CAS lub wartość null, jeśli nie można odczytać pliku dziennika.

getCasLogFromDir

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

Odczytuje plik dziennika CAS z podanego katalogu.

Parametry
logDirPath Path: ścieżka katalogu, z którego ma być odczytany plik dziennika CAS.

clientName String: nazwa klienta CAS.

tag String: tag pliku dziennika CAS, np. „INFO”, „WARNING”, „ERROR” itp.

removeLogDirAfterRead boolean: czy po odczytaniu pliku dziennika usunąć katalog dziennika.

Zwraca
String Zawartość pliku logu CAS.

Zgłasza
IOException Jeśli nie można odczytać pliku dziennika CAS.

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath, 
                String clientName)

Odczytuje plik logu CAS „.INFO” z podanego katalogu i usuwa katalog logu. Jest to wygodna metoda, która zawiera powyższą metodę z parametrami domyślnymi. Obsługuje też wyjątek IOException i zwraca wartość null, jeśli nie można odczytać pliku dziennika.

Parametry
logDirPath Path: ścieżka katalogu, z którego ma być odczytany plik dziennika CAS.

clientName String: nazwa klienta CAS.

Zwraca
String Zawartość pliku logu CAS lub „” w przypadku, gdy nie można odczytać pliku logu.

isChunkedDir

public static boolean isChunkedDir (Path path)

Zwraca wartość „prawda”, jeśli podana ścieżka jest prawidłowym katalogiem podzielonym na fragmenty za pomocą algorytmu FastCDC.

Parametry
path Path

Zwraca
boolean

isUncompressedDeviceImage

public static boolean isUncompressedDeviceImage (Path path)

Zwraca wartość „true”, jeśli podana ścieżka jest prawidłowym nieskompresowanym obrazem urządzenia.

Aby uzyskać najbardziej niezawodny i dokładny wynik, sprawdź, czy istnieją pliki (system.img lub super.img) ORAZ android-info.txt.

system.img/super.img: potwierdza, że podstawowe dane systemu operacyjnego są obecne.

android-info.txt: potwierdza, że jest to oficjalny pakiet kompilacji z metadanymi opisującymi urządzenie i wersję kompilacji.

Ta kombinacja jest bardzo mało prawdopodobna w przypadku katalogu, który nie jest nieskompresowanym obrazem urządzenia i prawidłowo obsługuje przypadki takie jak kompilacja telewizora, w której brakuje pliku boot.img.

Parametry
path Path: ścieżka bezwzględna do obrazu urządzenia.

Zwraca
boolean Wartość „prawda”, jeśli ścieżka jest prawidłowym nieskompresowanym obrazem urządzenia. W przeciwnym razie wartość „fałsz”.

logCasClientVersion

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

Parametry
clientPath Path

versionHandlerFn Consumer

logCasClientVersion

public static void logCasClientVersion (Path clientPath)

Parametry
clientPath Path

validateChunkedDir

public static void validateChunkedDir (Path path)

Sprawdza, czy podana ścieżka jest prawidłowym katalogiem podzielonym na fragmenty FastCDC.

   device_image.zip/
     _chunks/
       _chunks_index.json
       chunk1.img
     _chunks_index.json
 
Sprawdzana jest tylko poprawność zawartości ścieżki danych źródłowych. Plik _chunks_index.json musi znajdować się w katalogu _chunks lub w tym samym katalogu co _chunks (ze względu na zgodność wsteczną).

Parametry
path Path: Ścieżka do katalogu podzielonego na części.

Zgłasza
IOException Jeśli ścieżka nie jest prawidłowym katalogiem podzielonym na fragmenty FastCDC.