pub struct TokenCache { /* private fields */ }
Expand description
TokenCache
provides the current OAuth2 token and a means to refresh it in a thread-safe way.
Implementations§
Source§impl TokenCache
impl TokenCache
Sourcepub fn new(auth: Authorization) -> Self
pub fn new(auth: Authorization) -> Self
Make a new token cache, using the given Authorization
as a source of tokens.
Sourcepub fn get_token(&self) -> Option<Arc<String>>
pub fn get_token(&self) -> Option<Arc<String>>
Get the current token, unless no cached token is set yet.
Sourcepub async fn update_token(
&self,
client: impl NoauthClient,
old_token: Arc<String>,
) -> Result<Arc<String>, Error>
pub async fn update_token( &self, client: impl NoauthClient, old_token: Arc<String>, ) -> Result<Arc<String>, Error>
Forces an update to the token, for when it is detected that the token is expired.
To avoid double-updating the token in a race, requires the token which is being replaced. For the case where no token is currently present, use the empty string as the token.
Sourcepub fn set_access_token(&self, access_token: String)
pub fn set_access_token(&self, access_token: String)
Set the current short-lived token to a specific provided value. Normally it should not be necessary to call this function; the token should be obtained automatically using the refresh token.
Auto Trait Implementations§
impl !Freeze for TokenCache
impl !RefUnwindSafe for TokenCache
impl Send for TokenCache
impl Sync for TokenCache
impl Unpin for TokenCache
impl UnwindSafe for TokenCache
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more