continuity_runtime/
vocab.rs1use schemars::JsonSchema;
2use serde::{Deserialize, Serialize};
3use std::fmt::{Display, Formatter, Result as FmtResult};
4
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
6#[serde(rename_all = "snake_case")]
7pub enum IncidentSeverityV1 {
8 #[serde(rename = "sev1")]
9 Sev1,
10 #[serde(rename = "sev2")]
11 Sev2,
12 #[serde(rename = "sev3")]
13 Sev3,
14 #[serde(rename = "sev4")]
15 Sev4,
16}
17
18impl IncidentSeverityV1 {
19 pub const fn as_str(self) -> &'static str {
20 match self {
21 Self::Sev1 => "sev1",
22 Self::Sev2 => "sev2",
23 Self::Sev3 => "sev3",
24 Self::Sev4 => "sev4",
25 }
26 }
27}
28
29impl Display for IncidentSeverityV1 {
30 fn fmt(&self, f: &mut Formatter<'_>) -> FmtResult {
31 f.write_str(self.as_str())
32 }
33}
34
35#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
36#[serde(rename_all = "snake_case")]
37pub enum IncidentStatusV1 {
38 Active,
39 Contained,
40 Resolved,
41}
42
43#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
44#[serde(rename_all = "snake_case")]
45pub enum RecoveryReplayStateV1 {
46 Complete,
47 Partial,
48 Failed,
49}
50
51#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
52#[serde(rename_all = "snake_case")]
53pub enum ResilienceExerciseKindV1 {
54 Tabletop,
55 GameDay,
56 Chaos,
57}