[][src]Struct oxide_auth::endpoint::ResourceFlow

pub struct ResourceFlow<E, R> where
    E: Endpoint<R>,
    R: WebRequest
{ /* fields omitted */ }

Guards resources by requiring OAuth authorization.

Methods

impl<E, R> ResourceFlow<E, R> where
    E: Endpoint<R>,
    R: WebRequest
[src]

pub fn prepare(endpoint: E) -> Result<Self, E::Error>[src]

Check that the endpoint supports the necessary operations for handling requests.

Binds the endpoint to a particular type of request that it supports, for many implementations this is probably single type anyways.

Panics

Indirectly execute may panic when this flow is instantiated with an inconsistent endpoint, for details see the documentation of Endpoint and execute. For consistent endpoints, the panic is instead caught as an error here.

pub fn execute(
    &mut self,
    request: R
) -> Result<Grant, Result<R::Response, E::Error>>
[src]

Use the checked endpoint to check for authorization for a resource.

Panics

When the issuer returned by the endpoint is suddenly None when previously it was Some(_).

Auto Trait Implementations

impl<E, R> Unpin for ResourceFlow<E, R> where
    E: Unpin,
    R: Unpin

impl<E, R> Send for ResourceFlow<E, R> where
    E: Send,
    R: Send

impl<E, R> Sync for ResourceFlow<E, R> where
    E: Sync,
    R: Sync

impl<E, R> RefUnwindSafe for ResourceFlow<E, R> where
    E: RefUnwindSafe,
    R: RefUnwindSafe

impl<E, R> UnwindSafe for ResourceFlow<E, R> where
    E: UnwindSafe,
    R: UnwindSafe

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T

impl<T> Typeable for T where
    T: Any

fn get_type(&self) -> TypeId

Get the TypeId of this object.

impl<T> UnsafeAny for T where
    T: Any

impl<T> IntoCollection<T> for T

impl<T, I> AsResult<T, I> for T where
    I: Input,