walker_common/sender/provider/
bearer_token.rs1use super::{Credentials, TokenProvider};
2use crate::sender::Error;
3use async_trait::async_trait;
4use std::fmt::{Debug, Formatter};
5
6#[derive(Clone)]
10pub struct BearerTokenProvider {
11 pub token: String,
12}
13
14impl Debug for BearerTokenProvider {
15 fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
16 f.debug_struct("BearerTokenProvider")
17 .field("token", &"***")
18 .finish()
19 }
20}
21
22#[async_trait]
23impl TokenProvider for BearerTokenProvider {
24 async fn provide_access_token(&self) -> Result<Option<Credentials>, Error> {
25 Ok(Some(Credentials::Bearer(self.token.clone())))
26 }
27}