GCSFileDownloaderBase

public class GCSFileDownloaderBase
extends GCSCommon

java.lang.Object
   ↳ com.android.tradefed.util.gcs.GCSCommon
     ↳ com.android.tradefed.util.gcs.GCSFileDownloaderBase


用於從 Google 雲端儲存空間 (GCS) 下載檔案的檔案下載工具。

摘要

欄位

public static final String GCS_APPROX_PREFIX

public static final String GCS_PREFIX

protected Boolean mCreateEmptyFile

公用建構函式

GCSFileDownloaderBase()
GCSFileDownloaderBase(Boolean createEmptyFile)

公用方法

static File createTempFileForRemote(String remoteFilePath, File rootDir)

在暫時磁碟上建立專屬檔案,以便儲存下載的檔案和指定路徑。

InputStream downloadFile(String bucketName, String filename)

從 GCS 值區檔案下載檔案。

void downloadFile(String remotePath, File destFile)
File downloadFile(String remoteFilePath)
StorageObject getRemoteFileMetaData(String bucketName, String remoteFilename)
boolean isRemoteFolder(String bucketName, String filename)

檢查指定的檔案名稱是否為資料夾。

String sanitizeDirectoryName(String name)

受保護的方法

File createTempFile(String remoteFilePath, File rootDir)
void downloadFile(String bucketName, String remoteFilename, File localFile)
Storage getStorage()
void listRemoteFilesUnderFolder(String bucketName, String folder, subFiles, subFolders)
String[] parseGcsPath(String remotePath)

欄位

GCS_APPROX_PREFIX

public static final String GCS_APPROX_PREFIX

GCS_PREFIX

public static final String GCS_PREFIX

mCreateEmptyFile

protected Boolean mCreateEmptyFile

公用建構函式

GCSFileDownloaderBase

public GCSFileDownloaderBase ()

GCSFileDownloaderBase

public GCSFileDownloaderBase (Boolean createEmptyFile)

參數
createEmptyFile Boolean

公用方法

createTempFileForRemote

public static File createTempFileForRemote (String remoteFilePath, 
                File rootDir)

在暫時磁碟上建立專屬檔案,以便儲存下載的檔案和指定路徑。

根據路徑的基本檔案名稱建構檔案名稱

參數
remoteFilePath String:要用來建構名稱的遠端路徑

rootDir File

傳回
File

下載檔案

public InputStream downloadFile (String bucketName, 
                String filename)

從 GCS 值區檔案下載檔案。

參數
bucketName String:GCS 值區名稱

filename String:檔案名稱

傳回
InputStream ERROR(/InputStream) 替換為檔案內容。

downloadFile

public void downloadFile (String remotePath, 
                File destFile)

參數
remotePath String

destFile File

下載檔案

public File downloadFile (String remoteFilePath)

參數
remoteFilePath String

傳回
File

getRemoteFileMetaData

public StorageObject getRemoteFileMetaData (String bucketName, 
                String remoteFilename)

參數
bucketName String

remoteFilename String

傳回
StorageObject

isRemoteFolder

public boolean isRemoteFolder (String bucketName, 
                String filename)

檢查指定的檔案名稱是否為資料夾。

GCS 中有 2 種資料夾:1. 從使用者介面明確建立。這個資料夾的大小為 0 的文字檔 (單一物件)。2. 上傳檔案時,系統會建立其所有父項資料夾,但 GCS 中不存在這些資料夾 (而非物件)。此函式適用於這兩種情況。但我們並不應嘗試下載大小為 0 的資料夾。

參數
bucketName String:GCS 值區名稱。

filename String:值區的相對路徑。

傳回
boolean 如果檔案名稱是資料夾,則傳回 true,否則傳回 false。

sanitizeDirectoryName

public String sanitizeDirectoryName (String name)

參數
name String

傳回
String

受保護的方法

createTempFile

protected File createTempFile (String remoteFilePath, 
                File rootDir)

參數
remoteFilePath String

rootDir File

傳回
File

下載檔案

protected void downloadFile (String bucketName, 
                String remoteFilename, 
                File localFile)

參數
bucketName String

remoteFilename String

localFile File

getStorage

protected Storage getStorage ()

傳回
Storage

listRemoteFilesUnderFolder

protected void listRemoteFilesUnderFolder (String bucketName, 
                String folder, 
                 subFiles, 
                 subFolders)

參數
bucketName String

folder String

subFiles

subFolders

parseGcsPath

protected String[] parseGcsPath (String remotePath)

參數
remotePath String

傳回
String[]