9aeff2aa7d
PowerService (Power1, стаб running) + PowerMock (dev.PowerMock1, разделяет State через Arc<Mutex>). dev-mocks — default-фича; прод (--no-default-features) mock не регистрирует. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Signed-off-by: Alexander <akotenev2003@gmail.com>
23 lines
928 B
Rust
23 lines
928 B
Rust
//! `ru.shturman.Power1` — сервис. На шину выводит systemd (План 5). Полная FSM/секвенсинг — v0.3.
|
|
//! В dev-сборке дополнительно регистрирует `ru.shturman.dev.PowerMock1` (fake-ACC) на том же пути.
|
|
|
|
use shturman_common::init_tracing;
|
|
use shturman_ipc::{connect, names};
|
|
use shturman_power::PowerService;
|
|
|
|
#[tokio::main]
|
|
async fn main() -> anyhow::Result<()> {
|
|
init_tracing("shturman-power");
|
|
let conn = connect().await?;
|
|
let svc = PowerService::new();
|
|
#[cfg(feature = "dev-mocks")]
|
|
let mock = svc.mock();
|
|
conn.object_server().at(names::power::PATH, svc).await?;
|
|
#[cfg(feature = "dev-mocks")]
|
|
conn.object_server().at(names::power::PATH, mock).await?;
|
|
conn.request_name(names::power::NAME).await?;
|
|
tracing::info!("ru.shturman.Power1 на шине");
|
|
std::future::pending::<()>().await;
|
|
Ok(())
|
|
}
|