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)

अगर दिया गया पाथ, FastCDC-chunked डायरेक्ट्री है, तो यह फ़ंक्शन 'सही' दिखाता है.

static boolean isUncompressedDeviceImage(Path path)

अगर दिया गया पाथ, डिवाइस की मान्य और बिना कंप्रेस की गई इमेज है, तो यह फ़ंक्शन 'सही' दिखाता है.

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

इस फ़ंक्शन से यह पुष्टि की जाती है कि दिया गया पाथ, FastCDC-chunked डायरेक्ट्री है या नहीं.

कॉन्स्टेंट

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 लॉग फ़ाइल का कॉन्टेंट या अगर लॉग फ़ाइल को नहीं पढ़ा जा सकता, तो शून्य.

getCasLogFromDir

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

यह विकल्प, दी गई डायरेक्ट्री से CAS लॉग फ़ाइल को पढ़ता है.

पैरामीटर
logDirPath Path: CAS लॉग फ़ाइल को पढ़ने के लिए डायरेक्ट्री पाथ.

clientName String: सीएएस क्लाइंट का नाम.

tag String: CAS लॉग फ़ाइल का टैग, जैसे कि "INFO", "WARNING", "ERROR" वगैरह.

removeLogDirAfterRead boolean: लॉग फ़ाइल पढ़ने के बाद, लॉग डायरेक्ट्री को हटाना है या नहीं.

रिटर्न
String CAS लॉग फ़ाइल का कॉन्टेंट.

थ्रो
IOException अगर सीएएस लॉग फ़ाइल को पढ़ा नहीं जा सकता.

getCasLogFromDir

public static String getCasLogFromDir (Path logDirPath, 
                String clientName)

यह कमांड, दी गई डायरेक्ट्री से CAS लॉग फ़ाइल ".INFO" को पढ़ती है और लॉग डायरेक्ट्री को हटाती है. यह एक सुविधाजनक तरीका है, जो ऊपर दिए गए तरीके को डिफ़ॉल्ट पैरामीटर के साथ रैप करता है. यह IOException को भी मैनेज करता है. साथ ही, अगर लॉग फ़ाइल को नहीं पढ़ा जा सकता, तो null दिखाता है.

पैरामीटर
logDirPath Path: CAS लॉग फ़ाइल को पढ़ने के लिए डायरेक्ट्री पाथ.

clientName String: सीएएस क्लाइंट का नाम.

रिटर्न
String CAS लॉग फ़ाइल का कॉन्टेंट या "", अगर लॉग फ़ाइल को नहीं पढ़ा जा सकता.

isChunkedDir

public static boolean isChunkedDir (Path path)

अगर दिया गया पाथ, FastCDC-chunked डायरेक्ट्री है, तो यह फ़ंक्शन 'सही' दिखाता है.

पैरामीटर
path Path

रिटर्न
boolean

isUncompressedDeviceImage

public static boolean isUncompressedDeviceImage (Path path)

अगर दिया गया पाथ, डिवाइस की मान्य और बिना कंप्रेस की गई इमेज है, तो यह फ़ंक्शन 'सही' दिखाता है.

सबसे भरोसेमंद और सटीक जांच के लिए, (system.img या super.img) और android-info.txt की मौजूदगी की पुष्टि करें.

system.img/super.img: इससे पुष्टि होती है कि कोर ओएस डेटा मौजूद है.

android-info.txt: इससे पुष्टि होती है कि यह आधिकारिक बिल्ड पैकेज है. इसमें डिवाइस और बिल्ड वर्शन के बारे में जानकारी देने वाला मेटाडेटा होता है.

इस तरह का कॉम्बिनेशन, किसी ऐसी डायरेक्ट्री में नहीं मिलता जो बिना कंप्रेस की गई डिवाइस इमेज न हो. साथ ही, यह टीवी बिल्ड जैसे मामलों को सही तरीके से हैंडल करता है, जहां boot.img मौजूद नहीं होता.

पैरामीटर
path Path: डिवाइस की इमेज का ऐब्सलूट पाथ.

रिटर्न
boolean अगर पाथ, डिवाइस की मान्य और कंप्रेस न की गई इमेज है, तो वैल्यू true होगी. अगर ऐसा नहीं है, तो वैल्यू 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-chunked डायरेक्ट्री है या नहीं.

   device_image.zip/
     _chunks/
       _chunks_index.json
       chunk1.img
     _chunks_index.json
 
सिर्फ़ सोर्स डेटा पाथ के कॉन्टेंट की वैधता की जांच की जाती है. _chunks_index.json फ़ाइल, _chunks डायरेक्ट्री में या _chunks डायरेक्ट्री के साथ सिबलिंग के तौर पर मौजूद होनी चाहिए. ऐसा पुराने सिस्टम के साथ काम करने की सुविधा के लिए किया जाता है.

पैरामीटर
path Path: यह चंक की गई डायरेक्ट्री का पाथ होता है.

थ्रो
IOException अगर पाथ, FastCDC-chunked डायरेक्ट्री नहीं है.