FileDownloadCache

public class FileDownloadCache
extends Object

java.lang.Object
com.android.tradefed.build.FileDownloadCache


คลาสตัวช่วยที่ดูแลแคช LRU ของระบบไฟล์ในเครื่องของไฟล์ที่ดาวน์โหลด

สรุป

วิธีการสาธารณะ

void deleteCacheEntry(String remoteFilePath)

อนุญาตให้ลบรายการจากแคช

void fetchRemoteFile(IFileDownloader downloader, String remoteFilePath, File destFile)

ดาวน์โหลดไฟล์หรือลิงก์แคชไปยังไฟล์ปลายทาง

File fetchRemoteFile(IFileDownloader downloader, String remoteFilePath)

แสดงไฟล์ในเครื่องที่สอดคล้องกับ remotePath ที่ระบุ

ระบบจะคัดลอก ERROR(/File) ในเครื่องจากแคช หากมี ไม่เช่นนั้น ระบบจะคัดลอก ดาวน์โหลดผ่าน IFileDownloader ที่ระบุ

void setMaxCacheSize(long numBytes)

กำหนดขนาดสูงสุดของแคชไฟล์ในเครื่อง

วิธีการป้องกัน

void lockFile(String remoteFilePath)

ได้การล็อกไฟล์

boolean tryLockFile(String remoteFilePath)

ขอรับการล็อกสำหรับไฟล์เฉพาะในกรณีที่ไฟล์ไม่ได้ถูกระงับโดยเทรดอื่น

void unlockFile(String remoteFilePath)

ลองปลดล็อกไฟล์

วิธีการสาธารณะ

deleteCacheEntry

public void deleteCacheEntry (String remoteFilePath)

อนุญาตให้ลบรายการจากแคช ในกรณีที่รายการไม่ถูกต้องหรือเสียหาย

พารามิเตอร์
remoteFilePath String

ดึงข้อมูลระยะไกลไฟล์

public void fetchRemoteFile (IFileDownloader downloader, 
                String remoteFilePath, 
                File destFile)

ดาวน์โหลดไฟล์หรือลิงก์แคชไปยังไฟล์ปลายทาง

พารามิเตอร์
downloader IFileDownloader: IFileDownloader

remoteFilePath String: ไฟล์ระยะไกล

destFile File: ไฟล์ปลายทางของการดาวน์โหลด

การขว้าง
BuildRetrievalError

ดึงข้อมูลระยะไกลไฟล์

public File fetchRemoteFile (IFileDownloader downloader, 
                String remoteFilePath)

แสดงไฟล์ในเครื่องที่สอดคล้องกับ remotePath ที่ระบุ

ระบบจะคัดลอก ERROR(/File) ในเครื่องจากแคช หากมี ไม่เช่นนั้น ระบบจะคัดลอก ดาวน์โหลดผ่าน IFileDownloader ที่ระบุ

พารามิเตอร์
downloader IFileDownloader: IFileDownloader

remoteFilePath String: ไฟล์ระยะไกล

คิกรีเทิร์น
File ERROR(/File) ภายในที่มีเนื้อหาของ RemotePath

การขว้าง
BuildRetrievalError หากดึงไฟล์ไม่ได้

ตั้งค่าขนาดแคชสูงสุด

public void setMaxCacheSize (long numBytes)

กำหนดขนาดสูงสุดของแคชไฟล์ในเครื่อง

แคชจะไม่ถูกปรับในทันทีหากตั้งค่ามีขนาดน้อยกว่าปัจจุบัน แต่จะ มีผลกับการดาวน์โหลดไฟล์ครั้งถัดไป

วิธีการป้องกัน

LockFile

protected void lockFile (String remoteFilePath)

ได้การล็อกไฟล์

พารามิเตอร์
remoteFilePath String

TryLockFile

protected boolean tryLockFile (String remoteFilePath)

ขอรับการล็อกสำหรับไฟล์เฉพาะในกรณีที่ไฟล์ไม่ได้ถูกระงับโดยเทรดอื่น

พารามิเตอร์
remoteFilePath String

คิกรีเทิร์น
boolean "จริง" หากได้ล็อก และ "เท็จ" หากไม่เป็นเช่นนั้น

ไฟล์ Unlock

protected void unlockFile (String remoteFilePath)

ลองปลดล็อกไฟล์

พารามิเตอร์
remoteFilePath String