nominal_api_conjure/conjure/objects/ingest/api/
streaming_session.rs1#[derive(
3 Debug,
4 Clone,
5 conjure_object::serde::Serialize,
6 conjure_object::serde::Deserialize,
7 PartialEq,
8 Eq,
9 PartialOrd,
10 Ord,
11 Hash
12)]
13#[serde(crate = "conjure_object::serde")]
14#[conjure_object::private::staged_builder::staged_builder]
15#[builder(crate = conjure_object::private::staged_builder, update, inline)]
16pub struct StreamingSession {
17 #[serde(rename = "sessionRid")]
18 session_rid: super::StreamingSessionRid,
19 #[serde(rename = "datasetRid")]
20 dataset_rid: super::super::super::api::rids::DatasetRid,
21 #[serde(rename = "status")]
22 status: super::StreamingSessionStatus,
23 #[builder(
24 default,
25 custom(
26 type = impl
27 Into<Option<super::StreamingSessionSource>>,
28 convert = |v|v.into().map(Box::new)
29 )
30 )]
31 #[serde(rename = "source", skip_serializing_if = "Option::is_none", default)]
32 source: Option<Box<super::StreamingSessionSource>>,
33 #[builder(
34 default,
35 custom(
36 type = impl
37 Into<Option<super::super::super::api::Range>>,
38 convert = |v|v.into().map(Box::new)
39 )
40 )]
41 #[serde(rename = "bounds", skip_serializing_if = "Option::is_none", default)]
42 bounds: Option<Box<super::super::super::api::Range>>,
43 #[serde(rename = "pointsCount")]
44 points_count: conjure_object::SafeLong,
45 #[builder(custom(type = super::super::super::api::Timestamp, convert = Box::new))]
46 #[serde(rename = "createdAt")]
47 created_at: Box<super::super::super::api::Timestamp>,
48 #[builder(custom(type = super::super::super::api::Timestamp, convert = Box::new))]
49 #[serde(rename = "lastSeenAt")]
50 last_seen_at: Box<super::super::super::api::Timestamp>,
51 #[builder(
52 default,
53 custom(
54 type = impl
55 Into<Option<super::super::super::api::Timestamp>>,
56 convert = |v|v.into().map(Box::new)
57 )
58 )]
59 #[serde(rename = "closedAt", skip_serializing_if = "Option::is_none", default)]
60 closed_at: Option<Box<super::super::super::api::Timestamp>>,
61}
62impl StreamingSession {
63 #[inline]
64 pub fn session_rid(&self) -> &super::StreamingSessionRid {
65 &self.session_rid
66 }
67 #[inline]
68 pub fn dataset_rid(&self) -> &super::super::super::api::rids::DatasetRid {
69 &self.dataset_rid
70 }
71 #[inline]
72 pub fn status(&self) -> &super::StreamingSessionStatus {
73 &self.status
74 }
75 #[inline]
76 pub fn source(&self) -> Option<&super::StreamingSessionSource> {
77 self.source.as_ref().map(|o| &**o)
78 }
79 #[inline]
80 pub fn bounds(&self) -> Option<&super::super::super::api::Range> {
81 self.bounds.as_ref().map(|o| &**o)
82 }
83 #[inline]
84 pub fn points_count(&self) -> conjure_object::SafeLong {
85 self.points_count
86 }
87 #[inline]
88 pub fn created_at(&self) -> &super::super::super::api::Timestamp {
89 &*self.created_at
90 }
91 #[inline]
93 pub fn last_seen_at(&self) -> &super::super::super::api::Timestamp {
94 &*self.last_seen_at
95 }
96 #[inline]
98 pub fn closed_at(&self) -> Option<&super::super::super::api::Timestamp> {
99 self.closed_at.as_ref().map(|o| &**o)
100 }
101}