文件下載器

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如果無法下載檔案。
IO異常

新鮮

public boolean isFresh (File localFile, 
                String remoteFilePath)

檢查本地文件的新鮮度。如果本地文件與遠端文件相同,則它是新鮮的。如果不是,則本機檔案已過時。這主要用於緩存。預設實作將始終傳回 true,因此如果檔案是不可變的,則它將永遠不需要檢查新鮮度。

參數
localFile File :本地文件。

remoteFilePath String :遠端檔案路徑。

退貨
boolean如果本機檔案是最新的,則為 true,否則為 false。

投擲
com.android.tradefed.build.BuildRetrievalError
BuildRetrievalError

釋放下載許可

public void releaseDownloadPermit ()

如果支援並發限制,則釋放下載許可。