kinetics_parser/
params.rs1pub mod cron;
2pub mod endpoint;
3pub mod worker;
4
5pub use cron::Cron;
6pub use endpoint::Endpoint;
7pub use worker::Worker;
8
9use crate::environment::Environment;
10use serde::{Deserialize, Serialize};
11use std::fmt::Display;
12
13#[derive(Debug, Clone, Serialize, Deserialize)]
17pub enum Params {
18 Endpoint(Endpoint),
19 Cron(Cron),
20 Worker(Worker),
21}
22
23impl Display for Params {
24 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
25 let str = match self {
26 Params::Endpoint(_) => "endpoint",
27 Params::Cron(_) => "cron",
28 Params::Worker(_) => "worker",
29 };
30
31 write!(f, "{}", str)
32 }
33}
34
35impl Params {
36 pub fn name(&self) -> Option<&String> {
37 match self {
38 Params::Endpoint(params) => params.name.as_ref(),
39 Params::Cron(params) => params.name.as_ref(),
40 Params::Worker(params) => params.name.as_ref(),
41 }
42 }
43
44 pub fn environment(&self) -> &Environment {
45 match self {
46 Params::Endpoint(params) => ¶ms.environment,
47 Params::Cron(params) => ¶ms.environment,
48 Params::Worker(params) => ¶ms.environment,
49 }
50 }
51}