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 对应的本地文件 本地 |
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 :下载的目标文件。 |
抛出 | |
---|---|
|
com.android.tradefed.build.BuildRetrievalError |
BuildRetrievalError |
远程提取文件
public File fetchRemoteFile (IFileDownloader downloader, String remoteFilePath)
返回与指定 remotePath 对应的本地文件
本地 ERROR(/File)
(如果存在)将从缓存中复制,否则将
通过指定的 IFileDownloader
下载。
参数 | |
---|---|
downloader |
IFileDownloader :IFileDownloader |
remoteFilePath |
String :远程文件。 |
返回 | |
---|---|
File |
包含 remotePath 内容的本地 ERROR(/File) |
抛出 | |
---|---|
BuildRetrievalError |
如果无法检索文件,则会发生此错误 |
setMaxCacheSize
public void setMaxCacheSize (long numBytes)
设置本地文件缓存的大小上限。
如果将缓存设置为小于当前大小,则不会立即调整缓存,但会 在下一次下载文件时生效。
受保护的方法
LockFile
protected void lockFile (String remoteFilePath)
获取文件的锁。
参数 | |
---|---|
remoteFilePath |
String |
tryLockFile
protected boolean tryLockFile (String remoteFilePath)
仅当文件未被其他线程持有时,才获取该文件的锁。
参数 | |
---|---|
remoteFilePath |
String |
返回 | |
---|---|
boolean |
如果获得了锁定,则返回 true,否则返回 false。 |
解锁文件
protected void unlockFile (String remoteFilePath)
尝试解除对文件的锁定。
参数 | |
---|---|
remoteFilePath |
String |