pub struct BanSystem { /* private fields */ }Implementations§
Source§impl BanSystem
impl BanSystem
pub async fn new(config: BanConfig) -> Result<Self, BanError>
pub async fn add_ban(&self, ban: BanEntry) -> Result<(), BanError>
pub async fn add_bans_batch(&self, bans: Vec<BanEntry>) -> Result<(), BanError>
pub async fn remove_ban( &self, ban_id: &str, removed_by: &str, ) -> Result<BanEntry, BanError>
pub async fn remove_ban_by_ip( &self, ip: &IpAddr, removed_by: &str, ) -> Result<Vec<BanEntry>, BanError>
pub async fn remove_ban_by_uuid( &self, uuid: &str, removed_by: &str, ) -> Result<Vec<BanEntry>, BanError>
pub async fn remove_ban_by_username( &self, username: &str, removed_by: &str, ) -> Result<Vec<BanEntry>, BanError>
pub async fn is_ip_banned(&self, ip: &IpAddr) -> Result<bool, BanError>
pub async fn is_uuid_banned(&self, uuid: &str) -> Result<bool, BanError>
pub async fn is_username_banned(&self, username: &str) -> Result<bool, BanError>
pub async fn get_ban_reason_for_ip( &self, ip: &IpAddr, ) -> Result<Option<String>, BanError>
pub async fn get_ban_reason_for_uuid( &self, uuid: &str, ) -> Result<Option<String>, BanError>
pub async fn get_ban_reason_for_username( &self, username: &str, ) -> Result<Option<String>, BanError>
pub async fn get_ban(&self, ban_id: &str) -> Result<BanEntry, BanError>
pub async fn get_all_bans(&self) -> Result<Vec<BanEntry>, BanError>
pub async fn get_active_bans(&self) -> Result<Vec<BanEntry>, BanError>
pub async fn get_active_bans_paged( &self, page: usize, page_size: usize, ) -> Result<(Vec<BanEntry>, usize), BanError>
pub async fn clear_expired_bans(&self) -> Result<usize, BanError>
pub async fn get_audit_logs( &self, page: usize, page_size: usize, ) -> Result<(Vec<BanAuditLogEntry>, usize), BanError>
pub async fn search_bans( &self, query: SearchBansQuery<'_>, ) -> Result<(Vec<BanEntry>, usize), BanError>
pub async fn get_statistics(&self) -> Result<BanStatistics, BanError>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BanSystem
impl !RefUnwindSafe for BanSystem
impl Send for BanSystem
impl Sync for BanSystem
impl Unpin for BanSystem
impl UnsafeUnpin for BanSystem
impl !UnwindSafe for BanSystem
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