use std::sync::Arc;
use crate::function::ComposableFunction;
pub struct PreloadEntry {
pub route: &'static str,
pub instances: usize,
pub env_instances: Option<&'static str>,
pub optional_service: Option<&'static str>,
pub is_private: bool,
pub zero_tracing: bool,
pub interceptor: bool,
pub factory: fn() -> Arc<dyn ComposableFunction>,
}
pub struct WsServiceEntry {
pub name: &'static str,
pub namespace: &'static str,
pub optional_service: Option<&'static str>,
pub factory: fn() -> Arc<dyn ComposableFunction>,
}
pub struct BeforeAppEntry {
pub sequence: u32,
pub optional_service: Option<&'static str>,
pub factory: fn() -> Arc<dyn crate::app_starter::EntryPoint>,
}
pub struct MainAppEntry {
pub sequence: u32,
pub optional_service: Option<&'static str>,
pub factory: fn() -> Arc<dyn crate::app_starter::EntryPoint>,
}
inventory::collect!(PreloadEntry);
inventory::collect!(WsServiceEntry);
inventory::collect!(BeforeAppEntry);
inventory::collect!(MainAppEntry);