GCSFileDownloaderBase

public class GCSFileDownloaderBase
extends GCSCommon

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


文件下载工具,用于从 Google Cloud Storage (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) 文件内容。

下载

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

列出远程文件下的文件夹

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

参数
bucketName String

folder String

subFiles

subFolders

parseGcsPath

protected String[] parseGcsPath (String remotePath)

参数
remotePath String

返回
String[]