Android-cuttlefish cvd tool
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource Class Reference
Inheritance diagram for cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource:
Inheritance graph
[legend]
Collaboration diagram for cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource:
Collaboration graph
[legend]

Public Member Functions

 RefreshTokenCredentialSource (HttpClient &http_client, const std::string &client_id, const std::string &client_secret, const std::string &refresh_token)
 
- Public Member Functions inherited from cuttlefish::anonymous_namespace{credential_source.cc}::RefreshingCredentialSource
 RefreshingCredentialSource ()
 
virtual Result< std::string > Credential () final override
 
- Public Member Functions inherited from cuttlefish::CredentialSource
virtual ~CredentialSource ()=default
 
virtual Result< std::string > Credential ()=0
 

Static Public Member Functions

static Result< std::unique_ptr< RefreshTokenCredentialSource > > FromOauth2ClientFile (HttpClient &http_client, const std::string &oauth_contents)
 

Private Member Functions

Result< std::pair< std::string, std::chrono::seconds > > Refresh () override
 

Static Private Member Functions

static Result< std::unique_ptr< RefreshTokenCredentialSource > > FromJson (HttpClient &http_client, const Json::Value &credential)
 

Private Attributes

HttpClienthttp_client_
 
std::string client_id_
 
std::string client_secret_
 
std::string refresh_token_
 

Constructor & Destructor Documentation

◆ RefreshTokenCredentialSource()

cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::RefreshTokenCredentialSource ( HttpClient http_client,
const std::string &  client_id,
const std::string &  client_secret,
const std::string &  refresh_token 
)

Member Function Documentation

◆ FromJson()

Result< std::unique_ptr< RefreshTokenCredentialSource > > cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::FromJson ( HttpClient http_client,
const Json::Value &  credential 
)
staticprivate

◆ FromOauth2ClientFile()

Result< std::unique_ptr< RefreshTokenCredentialSource > > cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::FromOauth2ClientFile ( HttpClient http_client,
const std::string &  oauth_contents 
)
static

◆ Refresh()

Result< std::pair< std::string, std::chrono::seconds > > cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::Refresh ( )
overrideprivatevirtual

Member Data Documentation

◆ client_id_

std::string cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::client_id_
private

◆ client_secret_

std::string cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::client_secret_
private

◆ http_client_

HttpClient& cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::http_client_
private

◆ refresh_token_

std::string cuttlefish::anonymous_namespace{credential_source.cc}::RefreshTokenCredentialSource::refresh_token_
private

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