Struct oxide_auth::code_grant::refresh::Refresh[][src]

pub struct Refresh { /* fields omitted */ }
Expand description

An ongoing refresh request.

This is a rather linear Mealy machine with four basic phases. It will pose some requests in the form of Output which should be satisfied with the next Input data. This will eventually produce a refreshed BearerToken or an Error. Note that the executing environment will need to use a Registrar and an Issuer to which some requests should be forwarded.

Issuer ../primitives/issuer/trait.Issuer.html Registrar ../primitives/registrar/trait.Registrar.html

A rough sketch of the operational phases:

  1. Ensure the request is valid based on the basic requirements (includes required parameters)
  2. Check any included authentication
  3. Try to recover the refresh token 3.1. Check that it belongs to the authenticated client 3.2. If there was no authentication, assert token does not require authentication 3.3. Check the intrinsic validity (timestamp, scope)
  4. Query the backend for a renewed (bearer) token

Implementations

Construct a new refresh state machine.

This borrows the request for the duration of the request execution to ensure consistency of all client input.

Advance the state machine.

The provided Input needs to fulfill the previous Output request. See their documentation for more information.

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.