構建信息

public class BuildInfo
extends Object implements IBuildInfo

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


應與ITestDevice關聯的IBuildInfo的通用實現。

概括

公共構造函數

BuildInfo ()

使用默認屬性值創建BuildInfo

BuildInfo (String buildId, String buildTargetName)

創建一個BuildInfo

公共方法

void addAppPackageFile (File appPackageFile, String version)

添加本地 apk 文件及其關聯版本。

void addBuildAttribute (String attributeName, String attributeValue)

添加構建屬性。

void addBuildAttributes ( buildAttributes) addBuildAttributes ( buildAttributes)

添加構建屬性

void cleanUp ()

清理所有臨時構建文件

void cleanUp ( doNotClean) cleanUp ( doNotClean)

不刪除某些文件的cleanUp()版本。

IBuildInfo clone ()

final void copyAllFileFrom ( BuildInfo build)

將給定構建中的所有VersionedFile複製到這個構建中。

boolean equals (Object obj)

static IBuildInfo fromProto (BuildInformation.BuildInfo protoBuild)

toProto()進行逆向操作以取回實例。

getAppPackageFiles ()

獲取一組本地應用程序 apk 文件及其版本的副本。

getBuildAttributes ()

獲取一組描述構建的附加屬性的名稱-值對。

String getBuildBranch ()

可選方法,用於返回生成被測試構建的源代碼控制分支。

String getBuildFlavor ()

返回正在測試的構建類型的可選方法。

String getBuildId ()

返回被測構建的唯一標識符。

String getBuildTargetName ()

返回正在測試的構建的完整名稱。

String getDeviceSerial ()

File getFile (String name)

檢索具有給定名稱的文件的輔助方法。

File getFile ( BuildInfoKey.BuildInfoFileKey key)

使用給定的BuildInfoFileKey檢索文件的輔助方法。

getFiles ()

返回存儲在此BuildInfo中的所有VersionedFile

getProperties ()

返回當前在IBuildInfo上設置的屬性的副本。

getRemoteFiles ()

獲取延遲下載的構建工件的路徑。

String getTestTag ()

返回正在運行的測試的唯一名稱。

String getVersion ( BuildInfoKey.BuildInfoFileKey key)

使用給定的BuildInfoFileKey檢索文件版本的幫助程序方法。

String getVersion (String name)

用於檢索具有給定名稱的文件版本的幫助程序方法。

VersionedFile getVersionedFile ( BuildInfoKey.BuildInfoFileKey key)

使用給定的BuildInfoFileKey檢索VersionedFile幫助程序方法。

final VersionedFile getVersionedFile (String name)

用於檢索具有給定名稱的VersionedFile幫助程序方法。

getVersionedFileKeys ()

返回可用於通過getFile(BuildInfoFileKey)查詢VersionedFile鍵集。

final getVersionedFiles ( BuildInfoKey.BuildInfoFileKey key)

檢索與給定BuildInfoFileKey關聯的VersionedFile列表的輔助方法。

int hashCode ()

void removeBuildAttribute (String attributeName)

從跟踪中刪除給定的 attributeName。

void setBuildBranch (String branch)

設置構建分支

void setBuildFlavor (String buildFlavor)

設置構建風格。

void setBuildId (String buildId)

設置被測構建的唯一標識符。

void setDeviceSerial (String serial)

設置與此構建關聯的ITestDevice序列號。

void setFile (String name, File file, String version)

在此構建信息中存儲具有給定名稱的文件。

void setFile ( BuildInfoKey.BuildInfoFileKey key, File file, String version)

在此構建信息中存儲給定BuildInfoFileKey文件。

void setProperties ( BuildInfoProperties... properties)

IBuildInfo實例設置BuildInfoProperties

void setTestTag (String testTag)

為正在運行的測試設置唯一名稱。

File stageRemoteFile (String fileName, File workingDir)

在構建信息的根目錄中暫存一個屬於遠程文件的文件。

BuildInformation.BuildInfo toProto ()

將 BuildInfo 實例序列化為 protobuf。

String toString ()

受保護的方法

void addAllBuildAttributes ( BuildInfo build)

從其他構建複製構建屬性、分支和風格的輔助方法。

void addAllFiles ( BuildInfo build)

從其他構建複製所有文件的輔助方法。

boolean applyBuildProperties ( VersionedFile origFileConsidered, IBuildInfo build, IBuildInfo receiver)

允許應用一些IBuildInfo.BuildInfoProperties並可能進行不同的處理。

MultiMap <String, String> getAttributesMultiMap ()
getVersionedFileMap ()
MultiMap <String, VersionedFile > getVersionedFileMapFull ()

公共構造函數

構建信息

public BuildInfo ()

使用默認屬性值創建BuildInfo

構建信息

public BuildInfo (String buildId, 
                String buildTargetName)

創建一個BuildInfo

參數
buildId String :構建 ID

buildTargetName String : 構建目標名稱

公共方法

添加應用程序包文件

public void addAppPackageFile (File appPackageFile, 
                String version)

添加本地 apk 文件及其關聯版本。請注意,apk 將按照此方法添加它們的順序從getAppPackageFiles()返回。

參數
appPackageFile File

version String

添加構建屬性

public void addBuildAttribute (String attributeName, 
                String attributeValue)

添加構建屬性。這不允許覆蓋現有的 attributeName。

參數
attributeName String : 唯一的屬性名稱

attributeValue String : 屬性值

添加構建屬性

public void addBuildAttributes ( buildAttributes)

添加構建屬性

參數
buildAttributes : 要添加的屬性映射

清理

public void cleanUp ()

清理所有臨時構建文件

清理

public void cleanUp ( doNotClean)

不刪除某些文件的cleanUp()版本。

參數
doNotClean

克隆

public IBuildInfo clone ()

退貨
IBuildInfo

複製所有文件來源

public final void copyAllFileFrom (BuildInfo build)

將給定構建中的所有VersionedFile複製到這個構建中。

參數
build BuildInfo

等於

public boolean equals (Object obj)

參數
obj Object

退貨
boolean

來自原型

public static IBuildInfo fromProto (BuildInformation.BuildInfo protoBuild)

toProto()進行逆向操作以取回實例。

參數
protoBuild BuildInformation.BuildInfo

退貨
IBuildInfo

獲取應用程序包文件

public  getAppPackageFiles ()

獲取一組本地應用程序 apk 文件及其版本的副本。返回的順序與將 apk 添加到IAppBuildInfo順序相匹配。

退貨

獲取構建屬性

public  getBuildAttributes ()

獲取一組描述構建的附加屬性的名稱-值對。

退貨
構建屬性的ERROR(/Map) 。不會為null ,但可能為空。

獲取構建分支

public String getBuildBranch ()

可選方法,用於返回生成被測試構建的源代碼控制分支。

退貨
String構建分支或null如果未設置/不適用

獲取BuildFlavor

public String getBuildFlavor ()

返回正在測試的構建類型的可選方法。

Android 平台構建的一個常見實現是返回(構建產品)-(構建操作系統)-(構建變體)。即通用-linux-userdebug

退貨
String構建風格或null如果未設置/不適用

獲取BuildId

public String getBuildId ()

返回被測構建的唯一標識符。永遠不應該為空。默認為UNKNOWN_BUILD_ID

退貨
String

getBuildTargetName

public String getBuildTargetName ()

返回正在測試的構建的完整名稱。

一個常見的實現是通過構建風格和分支名稱的組合來構造構建目標名稱。 [即(分支名稱)-(構建風味)]

退貨
String

獲取設備序列號

public String getDeviceSerial ()

退貨
String

獲取文件

public File getFile (String name)

檢索具有給定名稱的文件的輔助方法。

退貨
File圖像文件或null如果找不到

獲取文件

public File getFile (BuildInfoKey.BuildInfoFileKey key)

使用給定的BuildInfoFileKey檢索文件的輔助方法。

參數
key BuildInfoKey.BuildInfoFileKey :請求的BuildInfoFileKey

退貨
File圖像文件或null如果找不到

獲取文件

public  getFiles ()

返回存儲在此BuildInfo中的所有VersionedFile

退貨

獲取屬性

public  getProperties ()

返回當前在IBuildInfo上設置的屬性的副本。

退貨

獲取遠程文件

public  getRemoteFiles ()

獲取延遲下載的構建工件的路徑。

退貨

獲取測試標籤

public String getTestTag ()

返回正在運行的測試的唯一名稱。

退貨
String

獲取版本

public String getVersion (BuildInfoKey.BuildInfoFileKey key)

使用給定的BuildInfoFileKey檢索文件版本的幫助程序方法。

參數
key BuildInfoKey.BuildInfoFileKey :請求的BuildInfoFileKey

退貨
String圖像版本,如果未找到則為null

獲取版本

public String getVersion (String name)

用於檢索具有給定名稱的文件版本的幫助程序方法。

退貨
String圖像版本,如果未找到則為null

獲取版本文件

public VersionedFile getVersionedFile (BuildInfoKey.BuildInfoFileKey key)

使用給定的BuildInfoFileKey檢索VersionedFile幫助程序方法。

參數
key BuildInfoKey.BuildInfoFileKey :請求的BuildInfoFileKey

退貨
VersionedFile版本化文件,如果未找到則為null

獲取版本文件

public final VersionedFile getVersionedFile (String name)

用於檢索具有給定名稱的VersionedFile幫助程序方法。

退貨
VersionedFile版本化文件,如果未找到則為null

getVersionedFileKeys

public  getVersionedFileKeys ()

返回可用於通過getFile(BuildInfoFileKey)查詢VersionedFile鍵集。

退貨

獲取版本文件

public final  getVersionedFiles (BuildInfoKey.BuildInfoFileKey key)

檢索與給定BuildInfoFileKey關聯的VersionedFile列表的輔助方法。如果密鑰允許存儲列表。

參數
key BuildInfoKey.BuildInfoFileKey :請求的BuildInfoFileKey

退貨
版本化文件,如果未找到則為null

哈希碼

public int hashCode ()

退貨
int

移除構建屬性

public void removeBuildAttribute (String attributeName)

從跟踪中刪除給定的 attributeName。

參數
attributeName String : 停止跟踪的屬性

設置BuildBranch

public void setBuildBranch (String branch)

設置構建分支

參數
branch String : 分支名稱

設置BuildFlavor

public void setBuildFlavor (String buildFlavor)

設置構建風格。

設置BuildId

public void setBuildId (String buildId)

設置被測構建的唯一標識符。永遠不應該為空。

參數
buildId String

設置設備序列號

public void setDeviceSerial (String serial)

設置與此構建關聯的ITestDevice序列號。

參數
serial String :執行此構建的ITestDevice的序列號。

設置文件

public void setFile (String name, 
                File file, 
                String version)

在此構建信息中存儲具有給定名稱的文件。

參數
name String : 文件的唯一名稱

file File :本地ERROR(/File)

version String :文件版本

設置文件

public void setFile (BuildInfoKey.BuildInfoFileKey key, 
                File file, 
                String version)

在此構建信息中存儲給定BuildInfoFileKey文件。

參數
key BuildInfoKey.BuildInfoFileKey :基於BuildInfoFileKey的文件的唯一名稱。

file File :本地ERROR(/File)

version String :文件版本

設置屬性

public void setProperties (BuildInfoProperties... properties)

IBuildInfo實例設置BuildInfoProperties 。覆蓋之前設置的任何現有屬性。

參數
properties BuildInfoProperties :要添加的屬性列表。

設置測試標籤

public void setTestTag (String testTag)

為正在運行的測試設置唯一名稱。

參數
testTag String

階段遠程文件

public File stageRemoteFile (String fileName, 
                File workingDir)

在構建信息的根目錄中暫存一個屬於遠程文件的文件。

TODO(b/138416078):當測試所需的模塊可以正確構建輸出到測試模塊目錄本身時,刪除此接口及其調用方。

參數
fileName String :要位於遠程文件中的文件的名稱。

workingDir File :用於暫存文件的目錄的ERROR(/File)對象。

退貨
File在本地 workingDir 中暫存的文件的ERROR(/File)對象。

到原型

public BuildInformation.BuildInfo toProto ()

將 BuildInfo 實例序列化為 protobuf。

退貨
BuildInformation.BuildInfo

到字符串

public String toString ()

退貨
String

受保護的方法

添加所有構建屬性

protected void addAllBuildAttributes (BuildInfo build)

從其他構建複製構建屬性、分支和風格的輔助方法。

參數
build BuildInfo

添加所有文件

protected void addAllFiles (BuildInfo build)

從其他構建複製所有文件的輔助方法。

為文件創建新的硬鏈接,以便每個構建都有一個唯一的文件路徑。

參數
build BuildInfo

投擲
如果在創建硬鏈接時拋出異常。

applyBuildProperties

protected boolean applyBuildProperties (VersionedFile origFileConsidered, 
                IBuildInfo build, 
                IBuildInfo receiver)

允許應用一些IBuildInfo.BuildInfoProperties並可能進行不同的處理。

參數
origFileConsidered VersionedFile :當前查看的VersionedFile

build IBuildInfo :被克隆的原始構建

receiver IBuildInfo :接收信息的構建。

退貨
boolean如果我們應用了這些屬性並且應該跳過進一步的處理,則為真。否則為假。

getAttributesMultiMap

protected MultiMap<String, String> getAttributesMultiMap ()

退貨
MultiMap <String, String>

getVersionedFileMap

protected  getVersionedFileMap ()

退貨

getVersionedFileMapFull

protected MultiMap<String, VersionedFile> getVersionedFileMapFull ()

退貨
MultiMap <String, VersionedFile >