#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Datapoint {
pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
pub sample_count: ::std::option::Option<f64>,
pub average: ::std::option::Option<f64>,
pub sum: ::std::option::Option<f64>,
pub minimum: ::std::option::Option<f64>,
pub maximum: ::std::option::Option<f64>,
pub unit: ::std::option::Option<crate::types::StandardUnit>,
pub extended_statistics: ::std::option::Option<::std::collections::HashMap<::std::string::String, f64>>,
}
impl Datapoint {
pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.timestamp.as_ref()
}
pub fn sample_count(&self) -> ::std::option::Option<f64> {
self.sample_count
}
pub fn average(&self) -> ::std::option::Option<f64> {
self.average
}
pub fn sum(&self) -> ::std::option::Option<f64> {
self.sum
}
pub fn minimum(&self) -> ::std::option::Option<f64> {
self.minimum
}
pub fn maximum(&self) -> ::std::option::Option<f64> {
self.maximum
}
pub fn unit(&self) -> ::std::option::Option<&crate::types::StandardUnit> {
self.unit.as_ref()
}
pub fn extended_statistics(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, f64>> {
self.extended_statistics.as_ref()
}
}
impl Datapoint {
pub fn builder() -> crate::types::builders::DatapointBuilder {
crate::types::builders::DatapointBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct DatapointBuilder {
pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) sample_count: ::std::option::Option<f64>,
pub(crate) average: ::std::option::Option<f64>,
pub(crate) sum: ::std::option::Option<f64>,
pub(crate) minimum: ::std::option::Option<f64>,
pub(crate) maximum: ::std::option::Option<f64>,
pub(crate) unit: ::std::option::Option<crate::types::StandardUnit>,
pub(crate) extended_statistics: ::std::option::Option<::std::collections::HashMap<::std::string::String, f64>>,
}
impl DatapointBuilder {
pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.timestamp = ::std::option::Option::Some(input);
self
}
pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.timestamp = input;
self
}
pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.timestamp
}
pub fn sample_count(mut self, input: f64) -> Self {
self.sample_count = ::std::option::Option::Some(input);
self
}
pub fn set_sample_count(mut self, input: ::std::option::Option<f64>) -> Self {
self.sample_count = input;
self
}
pub fn get_sample_count(&self) -> &::std::option::Option<f64> {
&self.sample_count
}
pub fn average(mut self, input: f64) -> Self {
self.average = ::std::option::Option::Some(input);
self
}
pub fn set_average(mut self, input: ::std::option::Option<f64>) -> Self {
self.average = input;
self
}
pub fn get_average(&self) -> &::std::option::Option<f64> {
&self.average
}
pub fn sum(mut self, input: f64) -> Self {
self.sum = ::std::option::Option::Some(input);
self
}
pub fn set_sum(mut self, input: ::std::option::Option<f64>) -> Self {
self.sum = input;
self
}
pub fn get_sum(&self) -> &::std::option::Option<f64> {
&self.sum
}
pub fn minimum(mut self, input: f64) -> Self {
self.minimum = ::std::option::Option::Some(input);
self
}
pub fn set_minimum(mut self, input: ::std::option::Option<f64>) -> Self {
self.minimum = input;
self
}
pub fn get_minimum(&self) -> &::std::option::Option<f64> {
&self.minimum
}
pub fn maximum(mut self, input: f64) -> Self {
self.maximum = ::std::option::Option::Some(input);
self
}
pub fn set_maximum(mut self, input: ::std::option::Option<f64>) -> Self {
self.maximum = input;
self
}
pub fn get_maximum(&self) -> &::std::option::Option<f64> {
&self.maximum
}
pub fn unit(mut self, input: crate::types::StandardUnit) -> Self {
self.unit = ::std::option::Option::Some(input);
self
}
pub fn set_unit(mut self, input: ::std::option::Option<crate::types::StandardUnit>) -> Self {
self.unit = input;
self
}
pub fn get_unit(&self) -> &::std::option::Option<crate::types::StandardUnit> {
&self.unit
}
pub fn extended_statistics(mut self, k: impl ::std::convert::Into<::std::string::String>, v: f64) -> Self {
let mut hash_map = self.extended_statistics.unwrap_or_default();
hash_map.insert(k.into(), v);
self.extended_statistics = ::std::option::Option::Some(hash_map);
self
}
pub fn set_extended_statistics(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, f64>>) -> Self {
self.extended_statistics = input;
self
}
pub fn get_extended_statistics(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, f64>> {
&self.extended_statistics
}
pub fn build(self) -> crate::types::Datapoint {
crate::types::Datapoint {
timestamp: self.timestamp,
sample_count: self.sample_count,
average: self.average,
sum: self.sum,
minimum: self.minimum,
maximum: self.maximum,
unit: self.unit,
extended_statistics: self.extended_statistics,
}
}
}