nominal_api/conjure/objects/ingest/api/
ingest_status.rs1#![allow(deprecated)]
2use std::fmt;
3use std::str;
4#[derive(
5 Debug,
6 Clone,
7 PartialEq,
8 Eq,
9 PartialOrd,
10 Ord,
11 Hash,
12 conjure_object::serde::Deserialize,
13 conjure_object::serde::Serialize,
14)]
15#[serde(crate = "conjure_object::serde")]
16pub enum IngestStatus {
17 #[serde(rename = "IN_PROGRESS")]
18 InProgress,
19 #[serde(rename = "COMPLETED")]
20 Completed,
21 #[serde(rename = "FAILED")]
22 Failed,
23 #[serde(untagged)]
25 Unknown(Unknown),
26}
27impl IngestStatus {
28 #[inline]
30 pub fn as_str(&self) -> &str {
31 match self {
32 IngestStatus::InProgress => "IN_PROGRESS",
33 IngestStatus::Completed => "COMPLETED",
34 IngestStatus::Failed => "FAILED",
35 IngestStatus::Unknown(v) => &*v,
36 }
37 }
38}
39impl fmt::Display for IngestStatus {
40 fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
41 fmt::Display::fmt(self.as_str(), fmt)
42 }
43}
44impl conjure_object::Plain for IngestStatus {
45 fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
46 conjure_object::Plain::fmt(self.as_str(), fmt)
47 }
48}
49impl str::FromStr for IngestStatus {
50 type Err = conjure_object::plain::ParseEnumError;
51 #[inline]
52 fn from_str(v: &str) -> Result<IngestStatus, conjure_object::plain::ParseEnumError> {
53 match v {
54 "IN_PROGRESS" => Ok(IngestStatus::InProgress),
55 "COMPLETED" => Ok(IngestStatus::Completed),
56 "FAILED" => Ok(IngestStatus::Failed),
57 v => v.parse().map(|v| IngestStatus::Unknown(Unknown(v))),
58 }
59 }
60}
61impl conjure_object::FromPlain for IngestStatus {
62 type Err = conjure_object::plain::ParseEnumError;
63 #[inline]
64 fn from_plain(
65 v: &str,
66 ) -> Result<IngestStatus, conjure_object::plain::ParseEnumError> {
67 v.parse()
68 }
69}
70#[derive(
72 Debug,
73 Clone,
74 PartialEq,
75 Eq,
76 PartialOrd,
77 Ord,
78 Hash,
79 conjure_object::serde::Deserialize,
80 conjure_object::serde::Serialize,
81)]
82#[serde(crate = "conjure_object::serde", transparent)]
83pub struct Unknown(conjure_object::private::Variant);
84impl std::ops::Deref for Unknown {
85 type Target = str;
86 #[inline]
87 fn deref(&self) -> &str {
88 &self.0
89 }
90}
91impl fmt::Display for Unknown {
92 #[inline]
93 fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
94 fmt::Display::fmt(&self.0, fmt)
95 }
96}