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

#include <credential_source.h>

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

Static Public Member Functions

static Result< std::unique_ptr< RefreshTokenCredentialSource > > FromOauth2ClientFile (HttpClient &http_client, const std::string &oauth_contents)
 
static Result< std::unique_ptr< CredentialSource > > Make (HttpClient &http_client, const std::string &client_id, const std::string &client_secret, const std::string &refresh_token)
 

Private Member Functions

 RefreshTokenCredentialSource (HttpClient &http_client, const std::string &client_id, const std::string &client_secret, const std::string &refresh_token)
 
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_
 

Additional Inherited Members

- Public Member Functions inherited from cuttlefish::RefreshingCredentialSource
virtual Result< std::string > Credential () final override
 
- Public Member Functions inherited from cuttlefish::CredentialSource
virtual ~CredentialSource ()=default
 
virtual Result< std::string > Credential ()=0
 
- Protected Member Functions inherited from cuttlefish::RefreshingCredentialSource
 RefreshingCredentialSource ()
 

Constructor & Destructor Documentation

◆ RefreshTokenCredentialSource()

cuttlefish::RefreshTokenCredentialSource::RefreshTokenCredentialSource ( HttpClient http_client,
const std::string &  client_id,
const std::string &  client_secret,
const std::string &  refresh_token 
)
private

Member Function Documentation

◆ FromJson()

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

◆ FromOauth2ClientFile()

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

◆ Make()

Result< std::unique_ptr< CredentialSource > > cuttlefish::RefreshTokenCredentialSource::Make ( HttpClient http_client,
const std::string &  client_id,
const std::string &  client_secret,
const std::string &  refresh_token 
)
static

◆ Refresh()

Result< std::pair< std::string, std::chrono::seconds > > cuttlefish::RefreshTokenCredentialSource::Refresh ( )
overrideprivatevirtual

Member Data Documentation

◆ client_id_

std::string cuttlefish::RefreshTokenCredentialSource::client_id_
private

◆ client_secret_

std::string cuttlefish::RefreshTokenCredentialSource::client_secret_
private

◆ http_client_

HttpClient& cuttlefish::RefreshTokenCredentialSource::http_client_
private

◆ refresh_token_

std::string cuttlefish::RefreshTokenCredentialSource::refresh_token_
private

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