tembo_api_client/models/
storage.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/*
 * Tembo Cloud
 *
 * Platform API for Tembo Cloud             </br>             </br>             To find a Tembo Data API, please find it here:             </br>             </br>             [AWS US East 1](https://api.data-1.use1.tembo.io/swagger-ui/)
 *
 * The version of the OpenAPI document: v1.0.0
 *
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

///
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Storage {
    #[serde(rename = "10Gi")]
    Variant10Gi,
    #[serde(rename = "50Gi")]
    Variant50Gi,
    #[serde(rename = "100Gi")]
    Variant100Gi,
    #[serde(rename = "200Gi")]
    Variant200Gi,
    #[serde(rename = "300Gi")]
    Variant300Gi,
    #[serde(rename = "400Gi")]
    Variant400Gi,
    #[serde(rename = "500Gi")]
    Variant500Gi,
    #[serde(rename = "1Ti")]
    Variant1Ti,
    #[serde(rename = "1.5Ti")]
    Variant1Period5Ti,
    #[serde(rename = "2Ti")]
    Variant2Ti,
}

impl ToString for Storage {
    fn to_string(&self) -> String {
        match self {
            Self::Variant10Gi => String::from("10Gi"),
            Self::Variant50Gi => String::from("50Gi"),
            Self::Variant100Gi => String::from("100Gi"),
            Self::Variant200Gi => String::from("200Gi"),
            Self::Variant300Gi => String::from("300Gi"),
            Self::Variant400Gi => String::from("400Gi"),
            Self::Variant500Gi => String::from("500Gi"),
            Self::Variant1Ti => String::from("1Ti"),
            Self::Variant1Period5Ti => String::from("1.5Ti"),
            Self::Variant2Ti => String::from("2Ti"),
        }
    }
}

impl Default for Storage {
    fn default() -> Storage {
        Self::Variant10Gi
    }
}

impl std::str::FromStr for Storage {
    type Err = String;

    fn from_str(s: &str) -> Result<Self, Self::Err> {
        match s {
            "10Gi" => Ok(Self::Variant10Gi),
            "50Gi" => Ok(Self::Variant50Gi),
            "100Gi" => Ok(Self::Variant100Gi),
            "200Gi" => Ok(Self::Variant200Gi),
            "300Gi" => Ok(Self::Variant300Gi),
            "400Gi" => Ok(Self::Variant400Gi),
            "500Gi" => Ok(Self::Variant500Gi),
            "1Ti" => Ok(Self::Variant1Ti),
            "1.5Ti" => Ok(Self::Variant1Period5Ti),
            "2Ti" => Ok(Self::Variant2Ti),
            _ => Err(format!("Invalid storage size: {}", s)),
        }
    }
}