1use crate::nucleon::{NucleonConfig, NucleonInfo, NucleonState};
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Debug, Serialize, Deserialize)]
5pub enum SystemRequest {
6 ListRegisteredNucleons,
7 ListNucleonInstances,
8 AddNucleon(NucleonConfig, NucleonInfo),
9 DeleteNucleon(String),
10 SetNucleonState(String, NucleonState),
11}
12
13#[derive(Clone, Debug, Serialize, Deserialize)]
14pub enum SystemReply {
15 Success,
16 Error(String),
17 ListRegisteredNucleons(Vec<NucleonInfo>),
18 ListNucleonInstances(Vec<NucleonConfig>),
19}