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, 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 ()

동시 실행 제한이 지원되는 경우 다운로드 권한을 해제합니다.