pub struct UserService { /* private fields */ }Expand description
User service for managing user accounts
Implementations§
Source§impl UserService
impl UserService
Sourcepub async fn create_user(
&self,
username: String,
email: String,
password: String,
) -> Result<User>
pub async fn create_user( &self, username: String, email: String, password: String, ) -> Result<User>
Create a new user account
Sourcepub async fn authenticate(&self, username: &str, password: &str) -> Result<User>
pub async fn authenticate(&self, username: &str, password: &str) -> Result<User>
Authenticate a user and return user if valid
Sourcepub async fn get_user_by_username(&self, username: &str) -> Result<User>
pub async fn get_user_by_username(&self, username: &str) -> Result<User>
Get user by username
Sourcepub async fn update_user(
&self,
user_id: Uuid,
display_name: Option<String>,
avatar_url: Option<String>,
) -> Result<User>
pub async fn update_user( &self, user_id: Uuid, display_name: Option<String>, avatar_url: Option<String>, ) -> Result<User>
Update user profile
Sourcepub async fn change_password(
&self,
user_id: Uuid,
old_password: &str,
new_password: &str,
) -> Result<()>
pub async fn change_password( &self, user_id: Uuid, old_password: &str, new_password: &str, ) -> Result<()>
Change user password
Sourcepub async fn deactivate_user(&self, user_id: Uuid) -> Result<()>
pub async fn deactivate_user(&self, user_id: Uuid) -> Result<()>
Deactivate user account
Auto Trait Implementations§
impl Freeze for UserService
impl !RefUnwindSafe for UserService
impl Send for UserService
impl Sync for UserService
impl Unpin for UserService
impl !UnwindSafe for UserService
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 more