FileDownloadCache

public class FileDownloadCache
extends Object

java.lang.Object
com.android.tradefed.build.FileDownloadCache


Eine Hilfsklasse, die einen LRU-Cache heruntergeladener Dateien im lokalen Dateisystem verwaltet.

Zusammenfassung

Öffentliche Methoden

void deleteCacheEntry(String remoteFilePath)

Ermöglicht das Löschen eines Eintrags aus dem Cache.

void fetchRemoteFile(IFileDownloader downloader, String remoteFilePath, File destFile)

Lädt die Datei herunter oder verknüpft den Cache mit der Zieldatei.

File fetchRemoteFile(IFileDownloader downloader, String remoteFilePath)

Gibt eine lokale Datei zurück, die dem angegebenen remotePath entspricht.

Die lokale File wird aus dem Cache kopiert, falls sie vorhanden ist. Andernfalls wird sie über den angegebenen IFileDownloader heruntergeladen.

void setMaxCacheSize(long numBytes)

Legt die maximale Größe des lokalen Dateicaches fest.

Geschützte Methoden

void lockFile(String remoteFilePath)

Ruft die Sperre für eine Datei ab.

boolean tryLockFile(String remoteFilePath)

Ruft die Sperre für eine Datei nur ab, wenn sie nicht von einem anderen Thread gehalten wird.

void unlockFile(String remoteFilePath)

Versucht, die Sperre für eine Datei freizugeben.

Öffentliche Methoden

deleteCacheEntry

public void deleteCacheEntry (String remoteFilePath)

Ermöglicht das Löschen eines Eintrags aus dem Cache. Für den Fall, dass der Eintrag ungültig oder beschädigt ist.

Parameter
remoteFilePath String

fetchRemoteFile

public void fetchRemoteFile (IFileDownloader downloader, 
                String remoteFilePath, 
                File destFile)

Lädt die Datei herunter oder verknüpft den Cache mit der Zieldatei.

Parameter
downloader IFileDownloader: der IFileDownloader

remoteFilePath String: die Remotedatei.

destFile File: die Zieldatei des Downloads.

Löst aus
com.android.tradefed.build.BuildRetrievalError
BuildRetrievalError

fetchRemoteFile

public File fetchRemoteFile (IFileDownloader downloader, 
                String remoteFilePath)

Gibt eine lokale Datei zurück, die dem angegebenen remotePath entspricht.

Die lokale File wird aus dem Cache kopiert, falls sie vorhanden ist. Andernfalls wird sie über den angegebenen IFileDownloader heruntergeladen.

Parameter
downloader IFileDownloader: der IFileDownloader

remoteFilePath String: die Remotedatei.

Gibt Folgendes zurück:
File eine lokale File mit dem Inhalt von remotePath

Löst aus
BuildRetrievalError wenn die Datei nicht abgerufen werden konnte

setMaxCacheSize

public void setMaxCacheSize (long numBytes)

Legt die maximale Größe des lokalen Dateicaches fest.

Der Cache wird nicht sofort angepasst, wenn er auf eine kleinere Größe als die aktuelle Größe festgelegt wird. Die Änderung wird erst beim nächsten Download einer Datei wirksam.

Geschützte Methoden

lockFile

protected void lockFile (String remoteFilePath)

Ruft die Sperre für eine Datei ab.

Parameter
remoteFilePath String

tryLockFile

protected boolean tryLockFile (String remoteFilePath)

Ruft die Sperre für eine Datei nur ab, wenn sie nicht von einem anderen Thread gehalten wird.

Parameter
remoteFilePath String

Gibt Folgendes zurück:
boolean „true“, wenn die Sperre abgerufen wurde, andernfalls „false“.

unlockFile

protected void unlockFile (String remoteFilePath)

Versucht, die Sperre für eine Datei freizugeben.

Parameter
remoteFilePath String