conduwuit/src/service/appservice/data.rs

22 lines
685 B
Rust
Raw Normal View History

use ruma::api::appservice::Registration;
2022-09-07 13:25:51 +02:00
use crate::Result;
2022-10-05 15:33:57 +02:00
pub trait Data: Send + Sync {
/// Registers an appservice and returns the ID to the caller
fn register_appservice(&self, yaml: Registration) -> Result<String>;
/// Remove an appservice registration
///
/// # Arguments
///
/// * `service_name` - the name you send to register the service previously
fn unregister_appservice(&self, service_name: &str) -> Result<()>;
fn get_registration(&self, id: &str) -> Result<Option<Registration>>;
2022-10-05 09:34:25 +02:00
fn iter_ids<'a>(&'a self) -> Result<Box<dyn Iterator<Item = Result<String>> + 'a>>;
fn all(&self) -> Result<Vec<(String, Registration)>>;
}