revolt_database/models/account_invites/ops/
reference.rs1use crate::{AbstractAccountInvites, AccountInvite, ReferenceDb};
2use revolt_result::Result;
3
4#[async_trait]
5impl AbstractAccountInvites for ReferenceDb {
6 async fn fetch_account_invite(&self, id: &str) -> Result<AccountInvite> {
8 let invites = self.account_invites.lock().await;
9 invites
10 .get(id)
11 .cloned()
12 .ok_or_else(|| create_error!(InvalidInvite))
13 }
14
15 async fn save_account_invite(&self, invite: &AccountInvite) -> Result<()> {
17 let mut invites = self.account_invites.lock().await;
18 invites.insert(invite.id.to_string(), invite.clone());
19 Ok(())
20 }
21}