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 ()
如果支援並行下載限制,請釋出下載許可。