文件下载器

public interface IFileDownloader

com.android.tradefed.build.IFileDownloader


下载远程文件的接口。

概括

公共方法

default void acquireDownloadPermit ()

如果支持并发限制,请取得下载许可。

default void downloadFile (String remoteFilePath, File destFile, long startOffset, long size)

downloadFile(String, File)的替代形式,允许调用者下载文件的一部分并保存到特定的目标文件。

abstract void downloadFile (String relativeRemotePath, File destFile)

downloadFile(String)的替代形式,允许调用者指定远程内容应放置的目标文件。

abstract File downloadFile (String remoteFilePath)

将远程文件下载到本地磁盘上的临时文件。

default void downloadZippedFiles (File destDir, String remoteFilePath, includeFilters, excludeFilters) downloadZippedFiles (File destDir, String remoteFilePath, includeFilters, excludeFilters) downloadZippedFiles (File destDir, String remoteFilePath, includeFilters, excludeFilters)

在远程 zip 文件中下载与给定过滤器匹配的文件。

default boolean isFresh (File localFile, String remoteFilePath)

检查本地文件的新鲜度。

default void releaseDownloadPermit ()

如果支持并发限制,则释放下载权限。

公共方法

获取下载许可

public void acquireDownloadPermit ()

如果支持并发限制,请取得下载许可。

下载文件

public void downloadFile (String remoteFilePath, 
                File destFile, 
                long startOffset, 
                long size)

downloadFile(String, File)的替代形式,允许调用者下载文件的一部分并保存到特定的目标文件。

参数
remoteFilePath String :要下载的文件的远程路径,相对于特定于实现的根目录。

destFile File : 将下载内容放入的文件。不应该存在。

startOffset long :远程文件中的起始偏移量。

size long :要从远程文件下载的字节数。将其设置为负值以下载整个文件。

投掷
BuildRetrievalError如果无法下载文件

下载文件

public abstract void downloadFile (String relativeRemotePath, 
                File destFile)

downloadFile(String)的替代形式,允许调用者指定远程内容应放置的目标文件。

参数
relativeRemotePath String :要下载的文件的远程路径,相对于特定于实现的根目录。

destFile File : 将下载内容放入的文件。不应该存在。

投掷
BuildRetrievalError如果无法下载文件

下载文件

public abstract File downloadFile (String remoteFilePath)

将远程文件下载到本地磁盘上的临时文件。

参数
remoteFilePath String :要下载的文件的远程路径,相对于特定于实现的根目录。

退货
File临时本地下载ERROR(/File)

投掷
BuildRetrievalError如果无法下载文件

下载压缩文件

public void downloadZippedFiles (File destDir, 
                String remoteFilePath, 
                 includeFilters, 
                 excludeFilters)

在远程 zip 文件中下载与给定过滤器匹配的文件。

远程 zip 文件中的文件仅下载到其路径匹配任何包含过滤器但不匹配排除过滤器。

参数
destDir File : 将下载内容放入的文件。

remoteFilePath String :要下载的文件的远程路径,相对于特定于实现的根目录。

includeFilters :用于下载匹配文件的过滤器列表。

excludeFilters :用于跳过下载匹配文件的过滤器列表。

投掷
BuildRetrievalError如果无法下载文件。
异常

是新鲜的

public boolean isFresh (File localFile, 
                String remoteFilePath)

检查本地文件的新鲜度。如果本地文件与远程文件相同,则它是新鲜的。如果不是,则本地文件已过时。这个主要用于缓存。默认实现将始终返回 true,因此如果文件是不可变的,则永远不需要检查新鲜度。

参数
localFile File :本地文件。

remoteFilePath String : 远程文件路径。

退货
boolean如果本地文件是新的则为真,否则为假。

投掷
com.android.tradefed.build.BuildRetrievalError
BuildRetrievalError

发布下载许可

public void releaseDownloadPermit ()

如果支持并发限制,则释放下载权限。