pub mod beacon;
pub mod ca_server;
pub mod ioc_app;
pub mod monitor;
pub mod tcp;
pub mod udp;
pub use ca_server::{CaServer, CaServerBuilder};
pub use tcp::ServerConnectionEvent;
use epics_base_rs::error::CaResult;
use epics_base_rs::server::ioc_app::IocRunConfig;
pub async fn run_ca_ioc(config: IocRunConfig) -> CaResult<()> {
let server = CaServer::from_parts(
config.db,
config.port,
config.acf,
config.autosave_config,
config.autosave_manager,
);
server
.run_with_shell(move |shell| {
for cmd in config.shell_commands {
shell.register(cmd);
}
})
.await
}