Skip to main content

UserStore

Trait UserStore 

Source
pub trait UserStore: Send + Sync {
    // Required methods
    fn get_user(&self, username: &str) -> Option<UserRecord>;
    fn store_user(&self, record: UserRecord) -> Result<(), SecurityError>;
    fn update_user(&self, record: UserRecord) -> Result<(), SecurityError>;
    fn delete_user(&self, username: &str) -> Result<(), SecurityError>;
    fn list_users(&self) -> Vec<String>;
}
Expand description

User store trait for database abstraction.

Required Methods§

Source

fn get_user(&self, username: &str) -> Option<UserRecord>

Get a user by username.

Source

fn store_user(&self, record: UserRecord) -> Result<(), SecurityError>

Store a user record.

Source

fn update_user(&self, record: UserRecord) -> Result<(), SecurityError>

Update a user record.

Source

fn delete_user(&self, username: &str) -> Result<(), SecurityError>

Delete a user.

Source

fn list_users(&self) -> Vec<String>

List all usernames.

Implementors§