ไฟล์ดาวน์โหลดแคช

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)

พยายามปลดล็อคไฟล์

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

ลบ CacheEntry

public void deleteCacheEntry (String remoteFilePath)

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

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

fetchRemoteFile

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

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

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

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

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

ขว้าง
com.android.tradefed.build.BuildRetrievalError
BuildRetrievalError

fetchRemoteFile

public File fetchRemoteFile (IFileDownloader downloader, 
                String remoteFilePath)

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

ERROR(/File) ในเครื่องจะถูกคัดลอกจากแคชหากมีอยู่ มิฉะนั้นจะถูกดาวน์โหลดผ่าน IFileDownloader ที่กำหนด

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

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

การส่งคืน
File ERROR(/File) ที่มีเนื้อหาของ RemotePath

ขว้าง
BuildRetrievalError หากไม่สามารถเรียกคืนไฟล์ได้

setMaxCacheSize

public void setMaxCacheSize (long numBytes)

ตั้งค่าขนาดสูงสุดของแคชไฟล์ในเครื่อง

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

วิธีการที่ได้รับการป้องกัน

ล็อคไฟล์

protected void lockFile (String remoteFilePath)

รับการล็อคสำหรับไฟล์

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

ลองLockFile

protected boolean tryLockFile (String remoteFilePath)

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

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

การส่งคืน
boolean เป็นจริงหากได้มาซึ่งการล็อคและเป็นเท็จอย่างอื่น

ปลดล็อคไฟล์

protected void unlockFile (String remoteFilePath)

พยายามปลดล็อคไฟล์

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