IFileDownloader

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)

指定されたフィルタに一致するファイルをリモートの 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 ()

同時実行数の上限がサポートされている場合は、ダウンロード許可を解放します。