pub struct OAuthClients { /* private fields */ }Expand description
The consuming app’s OAuth clients. Each Coven builder retains its own value, so unrelated apps in one process never share credentials.
Implementations§
Source§impl OAuthClients
impl OAuthClients
Sourcepub fn new(
credentials: HashMap<CloudProvider, OAuthClientCreds>,
) -> Result<Self, OAuthClientCredsError>
pub fn new( credentials: HashMap<CloudProvider, OAuthClientCreds>, ) -> Result<Self, OAuthClientCredsError>
Construct the OAuth clients this app can use.
Sourcepub fn empty() -> Self
pub fn empty() -> Self
No OAuth providers configured. Suitable for apps using only S3, CloudKit, or local storage.
pub fn config_for( &self, provider: CloudProvider, ) -> Result<OAuthConfig, OAuthClientCredsError>
pub fn for_tests() -> Self
Build an authorization request for a host-managed redirect flow.
Sourcepub async fn exchange_code(
&self,
provider: CloudProvider,
code: &str,
callback_state: Option<&str>,
request: &AuthorizeRequest,
redirect_uri: &str,
clock: &dyn Clock,
) -> Result<OAuthTokens, OAuthError>
pub async fn exchange_code( &self, provider: CloudProvider, code: &str, callback_state: Option<&str>, request: &AuthorizeRequest, redirect_uri: &str, clock: &dyn Clock, ) -> Result<OAuthTokens, OAuthError>
Exchange the result of Self::build_authorize_request for tokens.
Trait Implementations§
Source§impl Clone for OAuthClients
impl Clone for OAuthClients
Source§fn clone(&self) -> OAuthClients
fn clone(&self) -> OAuthClients
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for OAuthClients
impl !RefUnwindSafe for OAuthClients
impl Send for OAuthClients
impl Sync for OAuthClients
impl Unpin for OAuthClients
impl UnsafeUnpin for OAuthClients
impl !UnwindSafe for OAuthClients
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.