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.

static boolean isUncompressedDeviceImage(Path path)

تعرض القيمة "صحيح" إذا كان المسار المحدّد صورة جهاز صالحة غير مضغوطة.

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

Constant Value: "android-info.txt"

CAS_LOG_ROOT_NAME

public static final String CAS_LOG_ROOT_NAME

Constant Value: "tf-cas-fuse-log-root"

CHUNKS_DIR_NAME

public static final String CHUNKS_DIR_NAME

Constant Value: "_chunks"

CHUNKS_INDEX_FILENAME

public static final String CHUNKS_INDEX_FILENAME

Constant Value: "_chunks_index.json"

SUPER_IMAGE_FILENAME

public static final String SUPER_IMAGE_FILENAME

Constant Value: "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: اسم عميل 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 ويعرض قيمة فارغة إذا تعذّر قراءة ملف السجلّ.

المعلَمات
logDirPath Path: مسار الدليل الذي سيتم قراءة ملف سجلّ CAS منه.

clientName String: اسم عميل CAS.

المرتجعات
String محتوى ملف سجلّ CAS أو "" إذا تعذّر قراءة ملف السجلّ

isChunkedDir

public static boolean isChunkedDir (Path path)

تعرض هذه الدالة القيمة "صحيح" إذا كان المسار المحدّد دليلاً صالحًا مقسَّمًا إلى أجزاء FastCDC.

المعلَمات
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 تكون القيمة "صحيح" إذا كان المسار صورة جهاز صالحة غير مضغوطة، و"خطأ" في الحالات الأخرى.

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 أو كملف مجاور له (لضمان التوافق مع الإصدارات القديمة).

المعلَمات
path Path: مسار الدليل المقسَّم إلى أجزاء

عمليات الطرح
IOException إذا لم يكن المسار دليلاً صالحًا مقسّمًا إلى أجزاء FastCDC.