Skip to main content

nominal_api/conjure/objects/timeseries/seriescache/api/
chunk.rs

1#[derive(
2    Debug,
3    Clone,
4    conjure_object::serde::Serialize,
5    conjure_object::serde::Deserialize,
6    PartialEq,
7    Eq,
8    PartialOrd,
9    Ord,
10    Hash
11)]
12#[serde(crate = "conjure_object::serde")]
13#[conjure_object::private::staged_builder::staged_builder]
14#[builder(crate = conjure_object::private::staged_builder, update, inline)]
15pub struct Chunk {
16    #[serde(rename = "rid")]
17    rid: super::super::super::super::api::rids::ChunkRid,
18    #[serde(rename = "type")]
19    type_: super::ChunkType,
20    #[serde(rename = "logicalSeriesRid")]
21    logical_series_rid: super::super::super::super::api::LogicalSeriesRid,
22    #[builder(
23        custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
24    )]
25    #[serde(rename = "startTimestamp")]
26    start_timestamp: Box<super::super::super::super::api::Timestamp>,
27    #[builder(
28        custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
29    )]
30    #[serde(rename = "endTimestamp")]
31    end_timestamp: Box<super::super::super::super::api::Timestamp>,
32    #[serde(rename = "count")]
33    count: conjure_object::SafeLong,
34    #[serde(rename = "sizeInBytes")]
35    size_in_bytes: conjure_object::SafeLong,
36    #[serde(rename = "resolution")]
37    resolution: super::Resolution,
38    #[builder(custom(type = super::Handle, convert = Box::new))]
39    #[serde(rename = "handle")]
40    handle: Box<super::Handle>,
41}
42impl Chunk {
43    #[inline]
44    pub fn rid(&self) -> &super::super::super::super::api::rids::ChunkRid {
45        &self.rid
46    }
47    #[inline]
48    pub fn type_(&self) -> &super::ChunkType {
49        &self.type_
50    }
51    #[inline]
52    pub fn logical_series_rid(
53        &self,
54    ) -> &super::super::super::super::api::LogicalSeriesRid {
55        &self.logical_series_rid
56    }
57    #[inline]
58    pub fn start_timestamp(&self) -> &super::super::super::super::api::Timestamp {
59        &*self.start_timestamp
60    }
61    #[inline]
62    pub fn end_timestamp(&self) -> &super::super::super::super::api::Timestamp {
63        &*self.end_timestamp
64    }
65    /// The number of distinct timestamps contained within the chunk.
66    #[inline]
67    pub fn count(&self) -> conjure_object::SafeLong {
68        self.count
69    }
70    #[inline]
71    pub fn size_in_bytes(&self) -> conjure_object::SafeLong {
72        self.size_in_bytes
73    }
74    #[inline]
75    pub fn resolution(&self) -> super::Resolution {
76        self.resolution
77    }
78    #[inline]
79    pub fn handle(&self) -> &super::Handle {
80        &*self.handle
81    }
82}