1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::ComponentId;
use bytes::Bytes;
use derive::FromValue;
use netidx_derive::Pack;
use serde::{Deserialize, Serialize};
use std::{collections::HashMap, sync::Arc};

#[derive(Debug, Clone, Pack, FromValue, Serialize, Deserialize)]
pub enum SystemControlMessage {
    // id => (kind, json cfg, packed state)
    Snapshot(Arc<HashMap<ComponentId, (String, String, Bytes)>>),
    SymbologyReady,
    Shutdown,
}