conduwuit/src/service/rooms/metadata/data.rs

13 lines
586 B
Rust
Raw Normal View History

2022-09-07 13:25:51 +02:00
use crate::Result;
2022-10-09 17:25:06 +02:00
use ruma::{OwnedRoomId, RoomId};
2022-10-05 15:33:57 +02:00
pub trait Data: Send + Sync {
fn exists(&self, room_id: &RoomId) -> Result<bool>;
2022-10-09 17:25:06 +02:00
fn iter_ids<'a>(&'a self) -> Box<dyn Iterator<Item = Result<OwnedRoomId>> + 'a>;
2022-10-05 18:36:12 +02:00
fn is_disabled(&self, room_id: &RoomId) -> Result<bool>;
fn disable_room(&self, room_id: &RoomId, disabled: bool) -> Result<()>;
fn is_banned(&self, room_id: &RoomId) -> Result<bool>;
fn ban_room(&self, room_id: &RoomId, banned: bool) -> Result<()>;
fn list_banned_rooms<'a>(&'a self) -> Box<dyn Iterator<Item = Result<OwnedRoomId>> + 'a>;
}