BuildInfo

public class BuildInfo
extends Object implements IBuildInfo

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


Implementação genérica de um IBuildInfo que precisa ser associado a um ITestDevice.

Resumo

Construtores públicos

BuildInfo()

Cria um BuildInfo usando valores de atributo padrão.

BuildInfo(String buildId, String buildTargetName)

Cria um BuildInfo.

Métodos públicos

void addAppPackageFile(File appPackageFile, String version)

Adiciona o arquivo APK local e a versão associada.

void addBuildAttribute(String attributeName, String attributeValue)

Adicione um atributo de build.

void addBuildAttributes(Map<String, String> buildAttributes)

Adicionar atributos de build

void allowStagingRemoteFile(boolean stageRemoteFile)

Define a permissão para permitir arquivos remotos de staging.

void cleanUp()

Limpe todos os arquivos de build temporários

void cleanUp(List<File> doNotClean)

Versão de cleanUp() em que alguns arquivos não são excluídos.

IBuildInfo clone()

final void copyAllFileFrom(BuildInfo build)

Copie todos os VersionedFile de um build para este.

boolean equals(Object obj)

static IBuildInfo fromProto(BuildInformation.BuildInfo protoBuild)

Operação inversa de toProto() para recuperar a instância.

List<VersionedFile> getAppPackageFiles()

Recebe uma cópia do conjunto de arquivos APK de apps locais e das versões deles.

Map<String, String> getBuildAttributes()

Recebe um conjunto de pares de nome-valor de atributos adicionais que descrevem o build.

String getBuildBranch()

Método opcional para retornar a ramificação do controle de origem de que o build testado foi produzido.

String getBuildFlavor()

Método opcional para retornar o tipo de build que está sendo testado.

String getBuildId()

Retorna o identificador exclusivo do build em teste.

String getBuildTargetName()

Retorna o nome completo do build que está sendo testado.

String getDeviceSerial()

File getFile(String name)

Método auxiliar para recuperar um arquivo com o nome especificado.

File getFile(BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para recuperar um arquivo com um BuildInfoFileKey específico.

Collection<VersionedFile> getFiles()

Retorna todos os VersionedFiles armazenados neste BuildInfo.

Set<IBuildInfo.BuildInfoProperties> getProperties()

Retorna uma cópia das propriedades definidas no IBuildInfo.

Set<File> getRemoteFiles()

Recebe os caminhos para artefatos de build que têm download atrasado.

String getTestTag()

Retorna um nome exclusivo para os testes em execução.

String getVersion(BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para recuperar uma versão de arquivo com um determinado BuildInfoFileKey.

String getVersion(String name)

Método auxiliar para recuperar uma versão de arquivo com o nome especificado.

VersionedFile getVersionedFile(BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para extrair um VersionedFile com um determinado BuildInfoFileKey.

final VersionedFile getVersionedFile(String name)

Método auxiliar para extrair um VersionedFile com um nome específico.

Set<String> getVersionedFileKeys()

Retorna o conjunto de chaves disponíveis para consultar VersionedFile usando getFile(BuildInfoFileKey).

final List<VersionedFile> getVersionedFiles(BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para recuperar uma lista de VersionedFiles associados a um determinado BuildInfoFileKey.

int hashCode()

void removeBuildAttribute(String attributeName)

Remove um determinado attributeName do rastreamento.

void setBuildBranch(String branch)

Definir a ramificação de build

void setBuildFlavor(String buildFlavor)

Defina a variação de build.

void setBuildId(String buildId)

Define o identificador exclusivo do build em teste.

void setDeviceSerial(String serial)

Defina o número de série ITestDevice associado a este build.

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

Armazena um arquivo usando um BuildInfoFileKey nessas informações de build.

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

Armazena um arquivo com o nome especificado nessas informações de build.

void setProperties(BuildInfoProperties... properties)

Defina o BuildInfoProperties para a instância IBuildInfo.

void setTestTag(String testTag)

Define o nome exclusivo dos testes em execução.

File stageRemoteFile(String fileName, File workingDir)

Adicione um arquivo que faz parte de arquivos remotos no diretório raiz das informações de build.

BuildInformation.BuildInfo toProto()

Serializa a instância BuildInfo em um protobuf.

String toString()

Métodos protegidos

void addAllBuildAttributes(BuildInfo build)

Método auxiliar para copiar atributos de build, ramificação e sabor de outro build.

void addAllFiles(BuildInfo build)

Método auxiliar para copiar todos os arquivos do outro build.

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

Permita aplicar alguns dos IBuildInfo.BuildInfoProperties e possivelmente fazer um processamento diferente.

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

Construtores públicos

BuildInfo

public BuildInfo ()

Cria um BuildInfo usando valores de atributo padrão.

BuildInfo

public BuildInfo (String buildId, 
                String buildTargetName)

Cria um BuildInfo.

Parâmetros
buildId String: o ID da build

buildTargetName String: o nome do destino de build

Métodos públicos

addAppPackageFile

public void addAppPackageFile (File appPackageFile, 
                String version)

Adiciona o arquivo APK local e a versão associada. Os APKs serão retornados de getAppPackageFiles() na ordem em que foram adicionados por esse método.

Parâmetros
appPackageFile File

version String

addBuildAttribute

public void addBuildAttribute (String attributeName, 
                String attributeValue)

Adicione um atributo de build. Isso não permite substituir um atributo existente.

Parâmetros
attributeName String: o nome do atributo exclusivo

attributeValue String: o valor do atributo

addBuildAttributes

public void addBuildAttributes (Map<String, String> buildAttributes)

Adicionar atributos de build

Parâmetros
buildAttributes Map: mapa de atributos a serem adicionados

allowStagingRemoteFile

public void allowStagingRemoteFile (boolean stageRemoteFile)

Define a permissão para permitir arquivos remotos de staging.

Parâmetros
stageRemoteFile boolean

cleanUp

public void cleanUp ()

Limpe todos os arquivos de build temporários

cleanUp

public void cleanUp (List<File> doNotClean)

Versão de cleanUp() em que alguns arquivos não são excluídos.

Parâmetros
doNotClean List

clone

public IBuildInfo clone ()

Retorna
IBuildInfo

copyAllFileFrom

public final void copyAllFileFrom (BuildInfo build)

Copie todos os VersionedFile de um build para este.

Parâmetros
build BuildInfo

igual a

public boolean equals (Object obj)

Parâmetros
obj Object

Retorna
boolean

fromProto

public static IBuildInfo fromProto (BuildInformation.BuildInfo protoBuild)

Operação inversa de toProto() para recuperar a instância.

Parâmetros
protoBuild BuildInformation.BuildInfo

Retorna
IBuildInfo

getAppPackageFiles

public List<VersionedFile> getAppPackageFiles ()

Recebe uma cópia do conjunto de arquivos APK de apps locais e das versões deles. A ordem retornada corresponde à ordem em que os APKs foram adicionados ao IAppBuildInfo.

Retorna
List<VersionedFile>

getBuildAttributes

public Map<String, String> getBuildAttributes ()

Recebe um conjunto de pares de nome-valor de atributos adicionais que descrevem o build.

Retorna
Map<String, String> um Map de atributos de build. Não será null, mas poderá estar vazio.

getBuildBranch

public String getBuildBranch ()

Método opcional para retornar a ramificação do controle de origem de que o build testado foi produzido.

Retorna
String o branch de build ou null se não estiver definido/não for aplicável

getBuildFlavor

public String getBuildFlavor ()

Método opcional para retornar o tipo de build que está sendo testado.

Uma implementação comum para builds da plataforma Android é retornar (produto de build)-(SO de build)-(variante de build). ie generic-linux-userdebug

Retorna
String o sabor do build ou null se não estiver definido/não for aplicável

getBuildId

public String getBuildId ()

Retorna o identificador exclusivo do build em teste. Nunca pode ser nulo. O valor padrão é UNKNOWN_BUILD_ID.

Retorna
String

getBuildTargetName

public String getBuildTargetName ()

Retorna o nome completo do build que está sendo testado.

Uma implementação comum é construir o nome da meta de build com uma combinação da variação de build e do nome do branch. [ie (nome da ramificação)-(sabor do build)]

Retorna
String

getDeviceSerial

public String getDeviceSerial ()

Retorna
String

getFile

public File getFile (String name)

Método auxiliar para recuperar um arquivo com o nome especificado.

Retorna
File o arquivo de imagem ou null se não for encontrado

getFile

public File getFile (BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para recuperar um arquivo com um BuildInfoFileKey específico.

Parâmetros
key BuildInfoKey.BuildInfoFileKey: o BuildInfoFileKey solicitado.

Retorna
File o arquivo de imagem ou null se não for encontrado

getFiles

public Collection<VersionedFile> getFiles ()

Retorna todos os VersionedFiles armazenados neste BuildInfo.

Retorna
Collection<VersionedFile>

getProperties

public Set<IBuildInfo.BuildInfoProperties> getProperties ()

Retorna uma cópia das propriedades definidas no IBuildInfo.

Retorna
Set<IBuildInfo.BuildInfoProperties>

getRemoteFiles

public Set<File> getRemoteFiles ()

Recebe os caminhos para artefatos de build que têm download atrasado.

Retorna
Set<File>

getTestTag

public String getTestTag ()

Retorna um nome exclusivo para os testes em execução.

Retorna
String

getVersion

public String getVersion (BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para recuperar uma versão de arquivo com um determinado BuildInfoFileKey.

Parâmetros
key BuildInfoKey.BuildInfoFileKey: o BuildInfoFileKey solicitado.

Retorna
String a versão de imagem ou null se não for encontrada

getVersion

public String getVersion (String name)

Método auxiliar para recuperar uma versão de arquivo com o nome especificado.

Retorna
String a versão de imagem ou null se não for encontrada

getVersionedFile

public VersionedFile getVersionedFile (BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para extrair um VersionedFile com um determinado BuildInfoFileKey.

Parâmetros
key BuildInfoKey.BuildInfoFileKey: o BuildInfoFileKey solicitado.

Retorna
VersionedFile O arquivo com versão ou null, se não for encontrado

getVersionedFile

public final VersionedFile getVersionedFile (String name)

Método auxiliar para extrair um VersionedFile com um nome específico.

Retorna
VersionedFile O arquivo com versão ou null, se não for encontrado

getVersionedFileKeys

public Set<String> getVersionedFileKeys ()

Retorna o conjunto de chaves disponíveis para consultar VersionedFile usando getFile(BuildInfoFileKey).

Retorna
Set<String>

getVersionedFiles

public final List<VersionedFile> getVersionedFiles (BuildInfoKey.BuildInfoFileKey key)

Método auxiliar para recuperar uma lista de VersionedFiles associados a um determinado BuildInfoFileKey. Se a chave permitir armazenar uma lista.

Parâmetros
key BuildInfoKey.BuildInfoFileKey: o BuildInfoFileKey solicitado.

Retorna
List<VersionedFile> O arquivo com versão ou null, se não for encontrado

hashCode

public int hashCode ()

Retorna
int

removeBuildAttribute

public void removeBuildAttribute (String attributeName)

Remove um determinado attributeName do rastreamento.

Parâmetros
attributeName String: o atributo a ser interrompido

setBuildBranch

public void setBuildBranch (String branch)

Definir a ramificação de build

Parâmetros
branch String: o nome da ramificação

setBuildFlavor

public void setBuildFlavor (String buildFlavor)

Defina a variação de build.

setBuildId

public void setBuildId (String buildId)

Define o identificador exclusivo do build em teste. Nunca pode ser nulo.

Parâmetros
buildId String

setDeviceSerial

public void setDeviceSerial (String serial)

Defina o número de série ITestDevice associado a este build.

Parâmetros
serial String: o número de série do ITestDevice com que esta build foi executada.

setFile

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

Armazena um arquivo usando um BuildInfoFileKey nessas informações de build.

Parâmetros
key BuildInfoKey.BuildInfoFileKey: o nome exclusivo do arquivo com base em BuildInfoFileKey.

file File: o File local

version String: a versão do arquivo

setFile

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

Armazena um arquivo com o nome especificado nessas informações de build.

Parâmetros
name String: o nome exclusivo do arquivo.

file File: o File local

version String: a versão do arquivo

setProperties

public void setProperties (BuildInfoProperties... properties)

Defina o BuildInfoProperties para a instância IBuildInfo. Substitua as propriedades definidas anteriormente.

Parâmetros
properties BuildInfoProperties: a lista de propriedades a serem adicionadas.

setTestTag

public void setTestTag (String testTag)

Define o nome exclusivo dos testes em execução.

Parâmetros
testTag String

stageRemoteFile

public File stageRemoteFile (String fileName, 
                File workingDir)

Adicione um arquivo que faz parte de arquivos remotos no diretório raiz das informações de build.

TODO(b/138416078): remover essa interface e o caller dela quando os módulos exigidos por um teste puderem ser criados corretamente no próprio diretório do módulo de teste.

Parâmetros
fileName String: nome do arquivo a ser localizado em arquivos remotos.

workingDir File: um objeto File do diretório para armazenar o arquivo temporariamente.

Retorna
File o objeto File do arquivo armazenado em workingDir local.

toProto

public BuildInformation.BuildInfo toProto ()

Serializa a instância BuildInfo em um protobuf.

Retorna
BuildInformation.BuildInfo

toString

public String toString ()

Retorna
String

Métodos protegidos

addAllBuildAttributes

protected void addAllBuildAttributes (BuildInfo build)

Método auxiliar para copiar atributos de build, ramificação e sabor de outro build.

Parâmetros
build BuildInfo

addAllFiles

protected void addAllFiles (BuildInfo build)

Método auxiliar para copiar todos os arquivos do outro build.

Cria novos links físicos para os arquivos para que cada build tenha um caminho de arquivo exclusivo para o arquivo.

Parâmetros
build BuildInfo

Gera
IOException se uma exceção for gerada ao criar o link físico.

applyBuildProperties

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

Permita aplicar alguns dos IBuildInfo.BuildInfoProperties e possivelmente fazer um processamento diferente.

Parâmetros
origFileConsidered VersionedFile: o VersionedFile que está sendo analisado no momento.

build IBuildInfo: o build original que está sendo clonado

receiver IBuildInfo: o build que está recebendo as informações.

Retorna
boolean True se aplicamos as propriedades e o processamento adicional deve ser ignorado. Caso contrário, "false".

getAttributesMultiMap

protected MultiMap<String, String> getAttributesMultiMap ()

Retorna
MultiMap<String, String>

getVersionedFileMap

protected Map<String, VersionedFile> getVersionedFileMap ()

Retorna
Map<String, VersionedFile>

getVersionedFileMapFull

protected MultiMap<String, VersionedFile> getVersionedFileMapFull ()

Retorna
MultiMap<String, VersionedFile>