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,
下载与给定过滤条件匹配的远程 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 |
临时本地下载的 ERROR(/File) 。 |
抛出 | |
---|---|
BuildRetrievalError |
如果无法下载文件 |
downloadZippedFiles
public void downloadZippedFiles (File destDir, String remoteFilePath,includeFilters, excludeFilters)
下载与给定过滤条件匹配的远程 zip 文件中的文件。
远程 ZIP 文件中的文件仅会下载到其路径与任何包含过滤条件(而非排除过滤条件)匹配的位置。
参数 | |
---|---|
destDir |
File :要将下载内容放入其中的文件。 |
remoteFilePath |
String :相对于实现专用根目录的要下载的文件的远程路径。 |
includeFilters |
:用于下载匹配文件的过滤条件列表。 |
excludeFilters |
:用于跳过下载匹配文件的过滤条件列表。 |
抛出 | |
---|---|
BuildRetrievalError |
无法下载文件。 |
|
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 ()
如果支持并发限制,则发布下载许可。