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()
如果支援並行限制,請釋出下載許可。 |
公用方法
取得下載許可
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 |
表示檔案無法下載 |
下載 ZippedFiles
public void downloadZippedFiles (File destDir, String remoteFilePath,includeFilters, excludeFilters)
在遠端 ZIP 檔案中下載符合指定篩選條件的檔案。
這個遠端 ZIP 檔案中的檔案只會下載至其路徑與下列任一項目相符: 「排除」篩選器而非「排除」篩選器
參數 | |
---|---|
destDir |
File :要放入下載內容的檔案。 |
remoteFilePath |
String :相對於實作項目的遠端路徑,找出要下載的檔案
就在特定根層級上執行 |
includeFilters |
:下載相符檔案的篩選器清單。 |
excludeFilters |
:這是略過下載相符檔案的篩選器清單。 |
擲回 | |
---|---|
BuildRetrievalError |
。 |
|
IOException |
新鮮
public boolean isFresh (File localFile, String remoteFilePath)
檢查本機檔案的更新間隔。如果本機檔案與遠端檔案相同,表示檔案為最新狀態。如果 否,本機檔案已過時。主要用於快取。預設的導入方式 永遠會傳回 true,因此如果檔案不可變動,就無需檢查更新間隔。
參數 | |
---|---|
localFile |
File :本機檔案。 |
remoteFilePath |
String :遠端檔案路徑。 |
傳回 | |
---|---|
boolean |
如果本機檔案為最新檔案,則為「true」,否則為「false」。 |
擲回 | |
---|---|
|
com.android.tradefed.build.BuildRetrievalError |
BuildRetrievalError |
發布下載許可
public void releaseDownloadPermit ()
如果支援並行限制,請釋出下載許可。