CasUtil

public final class CasUtil
extends Object

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


Riepilogo

Costanti

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

Metodi pubblici

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

Controlla i flag supportati del client CAS.

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

Legge il file di log CAS ".INFO" dalla directory specificata.

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

Legge il file di log CAS dalla directory specificata.

static String getCasLogFromDir(Path logDirPath, String clientName)

Legge il file di log CAS ".INFO" dalla directory specificata e rimuove la directory di log.

static boolean isChunkedDir(Path path)

Restituisce true se il percorso specificato è una directory suddivisa in blocchi FastCDC valida.

static boolean isUncompressedDeviceImage(Path path)

Restituisce true se il percorso specificato è un'immagine del dispositivo non compressa valida.

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

Verifica che il percorso specificato sia una directory suddivisa in blocchi FastCDC valida.

Costanti

ANDROID_INFO_FILENAME

public static final String ANDROID_INFO_FILENAME

Valore costante: "android-info.txt"

CAS_LOG_ROOT_NAME

public static final String CAS_LOG_ROOT_NAME

Valore costante: "tf-cas-fuse-log-root"

CHUNKS_DIR_NAME

public static final String CHUNKS_DIR_NAME

Valore costante: "_chunks"

CHUNKS_INDEX_FILENAME

public static final String CHUNKS_INDEX_FILENAME

Valore costante: "_chunks_index.json"

SUPER_IMAGE_FILENAME

public static final String SUPER_IMAGE_FILENAME

Valore costante: "super.img"

SYSTEM_IMAGE_FILENAME

public static final String SYSTEM_IMAGE_FILENAME

Valore costante: "system.img"

Metodi pubblici

checkCasClientFlags

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

Controlla i flag supportati del client CAS.

Parametri
clientPath Path: il percorso del file binario del client CAS.

flagsConsumerFn Consumer: Un consumer che accetta il set di flag supportati.

createUniqueCasLogDir

public static Path createUniqueCasLogDir (Path logDirRootPath)

Parametri
logDirRootPath Path

Resi
Path

Genera
IOException

ensureCasClientExecutable

public static void ensureCasClientExecutable (Path casClientPath, 
                boolean logMetricsIfNotExecutable)

Parametri
casClientPath Path

logMetricsIfNotExecutable boolean

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath)

Legge il file di log CAS ".INFO" dalla directory specificata. Presuppone che la directory dei log sia per un singolo client CAS e deduce il `clientName` dal nome del file di log.

Parametri
logDirPath Path: il percorso della directory da cui leggere il file di log CAS.

Resi
String Il contenuto del file di log CAS o null se il file di log non può essere letto.

getCasLogFromDir

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

Legge il file di log CAS dalla directory specificata.

Parametri
logDirPath Path: il percorso della directory da cui leggere il file di log CAS.

clientName String: il nome del client CAS.

tag String: il tag del file di log CAS, ad esempio "INFO", "WARNING", "ERROR" e così via.

removeLogDirAfterRead boolean: indica se rimuovere la directory dei log dopo aver letto il file di log.

Resi
String I contenuti del file di log CAS.

Genera
IOException Se non è possibile leggere il file di log CAS.

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath, 
                String clientName)

Legge il file di log CAS ".INFO" dalla directory specificata e rimuove la directory di log. Questo è un metodo pratico che racchiude il metodo precedente con i parametri predefiniti. Gestisce anche IOException e restituisce null se il file di log non può essere letto.

Parametri
logDirPath Path: il percorso della directory da cui leggere il file di log CAS.

clientName String: il nome del client CAS.

Resi
String Il contenuto del file di log CAS o "" se il file di log non può essere letto.

isChunkedDir

public static boolean isChunkedDir (Path path)

Restituisce true se il percorso specificato è una directory suddivisa in blocchi FastCDC valida.

Parametri
path Path

Resi
boolean

isUncompressedDeviceImage

public static boolean isUncompressedDeviceImage (Path path)

Restituisce true se il percorso specificato è un'immagine del dispositivo non compressa valida.

Per un controllo più solido e affidabile, verifica l'esistenza di (system.img o super.img) E android-info.txt.

system.img/super.img: conferma che i dati del sistema operativo principale sono presenti.

android-info.txt: conferma che si tratta di un pacchetto di build ufficiale con metadati che descrivono il dispositivo e la versione della build.

È estremamente improbabile che questa combinazione si verifichi in una directory che non sia un'immagine del dispositivo non compressa e che gestisca correttamente casi come la build della TV in cui boot.img è assente.

Parametri
path Path: il percorso assoluto dell'immagine del dispositivo.

Resi
boolean True se il percorso è un'immagine del dispositivo non compressa valida, false in caso contrario.

logCasClientVersion

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

Parametri
clientPath Path

versionHandlerFn Consumer

logCasClientVersion

public static void logCasClientVersion (Path clientPath)

Parametri
clientPath Path

validateChunkedDir

public static void validateChunkedDir (Path path)

Verifica che il percorso specificato sia una directory suddivisa in blocchi FastCDC valida.

   device_image.zip/
     _chunks/
       _chunks_index.json
       chunk1.img
     _chunks_index.json
 
Viene verificata la validità solo dei contenuti del percorso dei dati di origine. Il file _chunks_index.json deve essere presente nella directory _chunks o come elemento di pari livello di _chunks (per la compatibilità con le versioni precedenti).

Parametri
path Path: il percorso della directory suddivisa in blocchi.

Genera
IOException Se il percorso non è una directory suddivisa in blocchi FastCDC valida.