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

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