Skip to main content

nominal_api/conjure/objects/timeseries/metadata/api/
create_video_series_request.rs

1/// Creates series and metadata for a video channel if it doesn't exist.
2/// Returns the SeriesMetadataRid of the created or existing series metadata.
3#[derive(
4    Debug,
5    Clone,
6    conjure_object::serde::Serialize,
7    conjure_object::serde::Deserialize,
8    PartialEq,
9    Eq,
10    PartialOrd,
11    Ord,
12    Hash
13)]
14#[serde(crate = "conjure_object::serde")]
15#[conjure_object::private::staged_builder::staged_builder]
16#[builder(crate = conjure_object::private::staged_builder, update, inline)]
17pub struct CreateVideoSeriesRequest {
18    #[serde(rename = "datasetRid")]
19    dataset_rid: super::super::super::super::api::rids::DatasetRid,
20    #[serde(rename = "channel")]
21    channel: super::super::super::super::api::Channel,
22    #[builder(
23        default,
24        map(
25            key(type = super::super::super::super::api::TagName),
26            value(type = super::super::super::super::api::TagValue)
27        )
28    )]
29    #[serde(
30        rename = "tags",
31        skip_serializing_if = "std::collections::BTreeMap::is_empty",
32        default
33    )]
34    tags: std::collections::BTreeMap<
35        super::super::super::super::api::TagName,
36        super::super::super::super::api::TagValue,
37    >,
38    #[builder(custom(type = super::TimeBounds, convert = Box::new))]
39    #[serde(rename = "timeBounds")]
40    time_bounds: Box<super::TimeBounds>,
41}
42impl CreateVideoSeriesRequest {
43    /// Constructs a new instance of the type.
44    #[inline]
45    pub fn new(
46        dataset_rid: super::super::super::super::api::rids::DatasetRid,
47        channel: super::super::super::super::api::Channel,
48        time_bounds: super::TimeBounds,
49    ) -> Self {
50        Self::builder()
51            .dataset_rid(dataset_rid)
52            .channel(channel)
53            .time_bounds(time_bounds)
54            .build()
55    }
56    #[inline]
57    pub fn dataset_rid(&self) -> &super::super::super::super::api::rids::DatasetRid {
58        &self.dataset_rid
59    }
60    #[inline]
61    pub fn channel(&self) -> &super::super::super::super::api::Channel {
62        &self.channel
63    }
64    #[inline]
65    pub fn tags(
66        &self,
67    ) -> &std::collections::BTreeMap<
68        super::super::super::super::api::TagName,
69        super::super::super::super::api::TagValue,
70    > {
71        &self.tags
72    }
73    #[inline]
74    pub fn time_bounds(&self) -> &super::TimeBounds {
75        &*self.time_bounds
76    }
77}