Struct UserServiceBuilder

Source
pub struct UserServiceBuilder<TAuthUser: AuthUser + Debug + Send + Sync> { /* private fields */ }
Expand description

Builder to configure and build UserService

Implementations§

Source§

impl<TAuthUser: AuthUser + Debug + Send + Sync> UserServiceBuilder<TAuthUser>

Source

pub fn set_credential_validator(self, validator: CredentialValidator) -> Self

Sets CredentialValidator which will be used to valudate AuthUser credentials in UserService

Source

pub fn set_jwt_algorithm(self, algorithm: Algorithm) -> Self

Sets jwt algorithm which will be used in UserService

Note that only HMAC (HS256, HS384, HS512) algorithms are supported now

Source

pub fn configure_jwt(self, jwt_token_settings: JwtTokenSettings) -> Self

Sets jwt token settings which will be used in UserService

Note that access and refresh token secrets are expected as raw string regardless of the chosen jwt algorithm

Source

pub fn use_repository( self, repository: Arc<dyn AuthRepository<TAuthUser> + Sync + Send>, ) -> Self

Sets the repository which will be used in UserService

Source

pub fn build(self) -> Result<UserService<TAuthUser>, &'static str>

Builds UserService

Returns error, if there are some validation problems or some of the required dependencies are not configured

Auto Trait Implementations§

§

impl<TAuthUser> Freeze for UserServiceBuilder<TAuthUser>

§

impl<TAuthUser> !RefUnwindSafe for UserServiceBuilder<TAuthUser>

§

impl<TAuthUser> Send for UserServiceBuilder<TAuthUser>

§

impl<TAuthUser> Sync for UserServiceBuilder<TAuthUser>

§

impl<TAuthUser> Unpin for UserServiceBuilder<TAuthUser>

§

impl<TAuthUser> !UnwindSafe for UserServiceBuilder<TAuthUser>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Any for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Source§

fn type_name(&self) -> &'static str

Source§

impl<T> AnySync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.