Android-cuttlefish cvd tool
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
cuttlefish::AndroidBuildApi Class Reference

#include <android_build_api.h>

Inheritance diagram for cuttlefish::AndroidBuildApi:
Inheritance graph
[legend]
Collaboration diagram for cuttlefish::AndroidBuildApi:
Collaboration graph
[legend]

Classes

struct  BuildInfo
 

Public Member Functions

 AndroidBuildApi ()=delete
 
 AndroidBuildApi (AndroidBuildApi &&)=delete
 
virtual ~AndroidBuildApi ()=default
 
 AndroidBuildApi (HttpClient &http_client, CredentialSource *credential_source, AndroidBuildUrl *android_build_url, std::chrono::seconds retry_period, CasDownloader *cas_downloader=nullptr)
 
Result< BuildGetBuild (const BuildString &build_string) override
 
Result< std::string > DownloadFile (const Build &build, const std::string &target_directory, const std::string &artifact_name) override
 
Result< std::string > DownloadFileWithBackup (const Build &build, const std::string &target_directory, const std::string &artifact_name, const std::string &backup_artifact_name) override
 
Result< SeekableZipSourceFileReader (const Build &, const std::string &artifact_name) override
 
- Public Member Functions inherited from cuttlefish::BuildApi
virtual ~BuildApi ()=default
 
virtual Result< BuildGetBuild (const BuildString &build_string)=0
 
virtual Result< std::string > DownloadFile (const Build &build, const std::string &target_directory, const std::string &artifact_name)=0
 
virtual Result< std::string > DownloadFileWithBackup (const Build &build, const std::string &target_directory, const std::string &artifact_name, const std::string &backup_artifact_name)=0
 
virtual Result< SeekableZipSourceFileReader (const Build &, const std::string &artifact_name)=0
 

Private Member Functions

Result< BuildInfoGetBuildInfo (std::string_view build_id, std::string_view target)
 
Result< void > BlockUntilTerminalStatus (std::string_view initial_status, std::string_view build_id, std::string_view target)
 
Result< std::vector< std::string > > Headers ()
 
Result< std::optional< std::string > > LatestBuildId (const std::string &branch, const std::string &target)
 
Result< std::unordered_set< std::string > > Artifacts (const DeviceBuild &build, const std::vector< std::string > &artifact_filenames)
 
Result< std::unordered_set< std::string > > Artifacts (const DirectoryBuild &build, const std::vector< std::string > &artifact_filenames)
 
Result< std::unordered_set< std::string > > Artifacts (const Build &build, const std::vector< std::string > &artifact_filenames)
 
Result< std::string > GetArtifactDownloadUrl (const DeviceBuild &build, const std::string &artifact)
 
Result< void > ArtifactToFile (const DeviceBuild &build, const std::string &artifact, const std::string &path)
 
Result< void > ArtifactToFile (const DirectoryBuild &build, const std::string &artifact, const std::string &path)
 
Result< void > ArtifactToFile (const Build &build, const std::string &artifact, const std::string &path)
 
Result< std::string > DownloadTargetFile (const Build &build, const std::string &target_directory, const std::string &artifact_name)
 
Result< std::string > DownloadTargetFileFromCas (const Build &build, const std::string &target_directory, const std::string &artifact_name)
 
Result< BuildGetBuild (const DeviceBuildString &build_string)
 
Result< BuildGetBuild (const DirectoryBuildString &build_string)
 
Result< SeekableZipSourceFileReader (const DeviceBuild &, const std::string &artifact_name)
 
Result< SeekableZipSourceFileReader (const DirectoryBuild &, const std::string &artifact_name)
 

Private Attributes

HttpClienthttp_client_
 
CredentialSourcecredential_source_
 
AndroidBuildUrlandroid_build_url_
 
std::chrono::seconds retry_period_
 
CasDownloadercas_downloader_
 

Constructor & Destructor Documentation

◆ AndroidBuildApi() [1/3]

cuttlefish::AndroidBuildApi::AndroidBuildApi ( )
delete

◆ AndroidBuildApi() [2/3]

cuttlefish::AndroidBuildApi::AndroidBuildApi ( AndroidBuildApi &&  )
delete

◆ ~AndroidBuildApi()

virtual cuttlefish::AndroidBuildApi::~AndroidBuildApi ( )
virtualdefault

◆ AndroidBuildApi() [3/3]

cuttlefish::AndroidBuildApi::AndroidBuildApi ( HttpClient http_client,
CredentialSource credential_source,
AndroidBuildUrl android_build_url,
std::chrono::seconds  retry_period,
CasDownloader cas_downloader = nullptr 
)

Member Function Documentation

◆ Artifacts() [1/3]

Result< std::unordered_set< std::string > > cuttlefish::AndroidBuildApi::Artifacts ( const Build build,
const std::vector< std::string > &  artifact_filenames 
)
private

◆ Artifacts() [2/3]

Result< std::unordered_set< std::string > > cuttlefish::AndroidBuildApi::Artifacts ( const DeviceBuild build,
const std::vector< std::string > &  artifact_filenames 
)
private

◆ Artifacts() [3/3]

Result< std::unordered_set< std::string > > cuttlefish::AndroidBuildApi::Artifacts ( const DirectoryBuild build,
const std::vector< std::string > &  artifact_filenames 
)
private

◆ ArtifactToFile() [1/3]

Result< void > cuttlefish::AndroidBuildApi::ArtifactToFile ( const Build build,
const std::string &  artifact,
const std::string &  path 
)
private

◆ ArtifactToFile() [2/3]

Result< void > cuttlefish::AndroidBuildApi::ArtifactToFile ( const DeviceBuild build,
const std::string &  artifact,
const std::string &  path 
)
private

◆ ArtifactToFile() [3/3]

Result< void > cuttlefish::AndroidBuildApi::ArtifactToFile ( const DirectoryBuild build,
const std::string &  artifact,
const std::string &  path 
)
private

◆ BlockUntilTerminalStatus()

Result< void > cuttlefish::AndroidBuildApi::BlockUntilTerminalStatus ( std::string_view  initial_status,
std::string_view  build_id,
std::string_view  target 
)
private

◆ DownloadFile()

Result< std::string > cuttlefish::AndroidBuildApi::DownloadFile ( const Build build,
const std::string &  target_directory,
const std::string &  artifact_name 
)
overridevirtual

Implements cuttlefish::BuildApi.

◆ DownloadFileWithBackup()

Result< std::string > cuttlefish::AndroidBuildApi::DownloadFileWithBackup ( const Build build,
const std::string &  target_directory,
const std::string &  artifact_name,
const std::string &  backup_artifact_name 
)
overridevirtual

Implements cuttlefish::BuildApi.

◆ DownloadTargetFile()

Result< std::string > cuttlefish::AndroidBuildApi::DownloadTargetFile ( const Build build,
const std::string &  target_directory,
const std::string &  artifact_name 
)
private

◆ DownloadTargetFileFromCas()

Result< std::string > cuttlefish::AndroidBuildApi::DownloadTargetFileFromCas ( const Build build,
const std::string &  target_directory,
const std::string &  artifact_name 
)
private

◆ FileReader() [1/3]

Result< SeekableZipSource > cuttlefish::AndroidBuildApi::FileReader ( const Build build,
const std::string &  artifact_name 
)
overridevirtual

Implements cuttlefish::BuildApi.

◆ FileReader() [2/3]

Result< SeekableZipSource > cuttlefish::AndroidBuildApi::FileReader ( const DeviceBuild build,
const std::string &  artifact_name 
)
private

◆ FileReader() [3/3]

Result< SeekableZipSource > cuttlefish::AndroidBuildApi::FileReader ( const DirectoryBuild build,
const std::string &  artifact_name 
)
private

◆ GetArtifactDownloadUrl()

Result< std::string > cuttlefish::AndroidBuildApi::GetArtifactDownloadUrl ( const DeviceBuild build,
const std::string &  artifact 
)
private

◆ GetBuild() [1/3]

Result< Build > cuttlefish::AndroidBuildApi::GetBuild ( const BuildString build_string)
overridevirtual

Implements cuttlefish::BuildApi.

◆ GetBuild() [2/3]

Result< Build > cuttlefish::AndroidBuildApi::GetBuild ( const DeviceBuildString build_string)
private

◆ GetBuild() [3/3]

Result< Build > cuttlefish::AndroidBuildApi::GetBuild ( const DirectoryBuildString build_string)
private

◆ GetBuildInfo()

Result< AndroidBuildApi::BuildInfo > cuttlefish::AndroidBuildApi::GetBuildInfo ( std::string_view  build_id,
std::string_view  target 
)
private

◆ Headers()

Result< std::vector< std::string > > cuttlefish::AndroidBuildApi::Headers ( )
private

◆ LatestBuildId()

Result< std::optional< std::string > > cuttlefish::AndroidBuildApi::LatestBuildId ( const std::string &  branch,
const std::string &  target 
)
private

Member Data Documentation

◆ android_build_url_

AndroidBuildUrl* cuttlefish::AndroidBuildApi::android_build_url_
private

◆ cas_downloader_

CasDownloader* cuttlefish::AndroidBuildApi::cas_downloader_
private

◆ credential_source_

CredentialSource* cuttlefish::AndroidBuildApi::credential_source_
private

◆ http_client_

HttpClient& cuttlefish::AndroidBuildApi::http_client_
private

◆ retry_period_

std::chrono::seconds cuttlefish::AndroidBuildApi::retry_period_
private

The documentation for this class was generated from the following files: