IFileDownloader
public
interface
IFileDownloader
| com.android.tradefed.build.IFileDownloader |
用于下载远程文件的接口。
摘要
公共方法 | |
|---|---|
default
void
|
acquireDownloadPermit()
如果支持并发限制,则获取下载许可。 |
default
void
|
downloadFile(String remoteFilePath, File destFile, long startOffset, long size)
|
abstract
void
|
downloadFile(String relativeRemotePath, File destFile)
|
abstract
File
|
downloadFile(String remoteFilePath)
将远程文件下载到本地磁盘上的临时文件。 |
default
void
|
downloadZippedFiles(File destDir, String remoteFilePath, List<String> includeFilters, List<String> excludeFilters)
下载远程 zip 文件中与给定过滤器匹配的文件。 |
default
boolean
|
isFresh(File localFile, String remoteFilePath)
检查本地文件的新鲜度。 |
default
void
|
releaseDownloadPermit()
如果支持并发限制,则释放下载许可。 |
公共方法
acquireDownloadPermit
public void acquireDownloadPermit ()
如果支持并发限制,则获取下载许可。
downloadFile
public void downloadFile (String remoteFilePath,
File destFile,
long startOffset,
long size)downloadFile(String,File) 的替代形式,允许调用方下载文件的某个
部分并将其保存到特定的目标文件中。
| 参数 | |
|---|---|
remoteFilePath |
String:要下载的文件的远程路径,相对于实现特定的根目录。 |
destFile |
File:用于放置下载内容的文件。不应存在。 |
startOffset |
long:远程文件中的起始偏移量。 |
size |
long:要从远程文件下载的字节数。将其设置为负值
可下载整个文件。 |
| 抛出 | |
|---|---|
BuildRetrievalError |
如果无法下载文件 |
downloadFile
public abstract void downloadFile (String relativeRemotePath,
File destFile)downloadFile(String) 的替代形式,允许调用方指定应将远程内容放入的
目标文件。
| 参数 | |
|---|---|
relativeRemotePath |
String:要下载的文件的远程路径,相对于实现特定的根目录。 |
destFile |
File:用于放置下载内容的文件。不应存在。 |
| 抛出 | |
|---|---|
BuildRetrievalError |
如果无法下载文件 |
downloadFile
public abstract File downloadFile (String remoteFilePath)
将远程文件下载到本地磁盘上的临时文件。
| 参数 | |
|---|---|
remoteFilePath |
String:要下载的文件的远程路径,相对于实现
特定的根目录。 |
| 返回 | |
|---|---|
File |
临时本地下载的 File。 |
| 抛出 | |
|---|---|
BuildRetrievalError |
如果无法下载文件 |
downloadZippedFiles
public void downloadZippedFiles (File destDir,
String remoteFilePath,
List<String> includeFilters,
List<String> excludeFilters)下载远程 zip 文件中与给定过滤器匹配的文件。
只有当远程 zip 文件中的文件路径与任何 包含过滤器匹配,但不与任何排除过滤器匹配时,才会下载该文件。
| 参数 | |
|---|---|
destDir |
File:用于放置下载内容的文件。 |
remoteFilePath |
String:要下载的文件的远程路径,相对于实现
特定的根目录。 |
includeFilters |
List:用于下载匹配文件的过滤器列表。 |
excludeFilters |
List:用于跳过下载匹配文件的过滤器列表。 |
| 抛出 | |
|---|---|
BuildRetrievalError |
如果无法下载文件。 |
|
java.io.IOException |
IOException |
|
isFresh
public boolean isFresh (File localFile,
String remoteFilePath)检查本地文件的新鲜度。如果本地文件与远程文件相同,则表示本地文件是新鲜的。否则,本地文件已过时。这主要用于缓存。默认实现将 始终返回 true,因此如果文件是不可变的,则永远不需要检查新鲜度。
| 参数 | |
|---|---|
localFile |
File:本地文件。 |
remoteFilePath |
String:远程文件路径。 |
| 返回 | |
|---|---|
boolean |
如果本地文件是新鲜的,则返回 true,否则返回 false。 |
| 抛出 | |
|---|---|
|
com.android.tradefed.build.BuildRetrievalError |
BuildRetrievalError |
|
releaseDownloadPermit
public void releaseDownloadPermit ()
如果支持并发限制,则释放下载许可。