Rircd/src/endpoint.rs

13 lines
285 B
Rust

use eyre::Result;
use async_trait::async_trait;
use tokio::sync::oneshot;
use std::sync::Arc;
#[async_trait]
pub trait Endpoint {
fn name(&self) -> String;
fn is_active(&self) -> bool;
async fn listen(self: Arc<Self>, success_status_send: oneshot::Sender<Result<()>>);
}