#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Reservation {
pub arn: ::std::option::Option<::std::string::String>,
pub count: ::std::option::Option<i32>,
pub currency_code: ::std::option::Option<::std::string::String>,
pub duration: ::std::option::Option<i32>,
pub duration_units: ::std::option::Option<crate::types::OfferingDurationUnits>,
pub end: ::std::option::Option<::std::string::String>,
pub fixed_price: ::std::option::Option<f64>,
pub name: ::std::option::Option<::std::string::String>,
pub offering_description: ::std::option::Option<::std::string::String>,
pub offering_id: ::std::option::Option<::std::string::String>,
pub offering_type: ::std::option::Option<crate::types::OfferingType>,
pub region: ::std::option::Option<::std::string::String>,
pub renewal_settings: ::std::option::Option<crate::types::RenewalSettings>,
pub reservation_id: ::std::option::Option<::std::string::String>,
pub resource_specification: ::std::option::Option<crate::types::ReservationResourceSpecification>,
pub start: ::std::option::Option<::std::string::String>,
pub state: ::std::option::Option<crate::types::ReservationState>,
pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
pub usage_price: ::std::option::Option<f64>,
}
impl Reservation {
pub fn arn(&self) -> ::std::option::Option<&str> {
self.arn.as_deref()
}
pub fn count(&self) -> ::std::option::Option<i32> {
self.count
}
pub fn currency_code(&self) -> ::std::option::Option<&str> {
self.currency_code.as_deref()
}
pub fn duration(&self) -> ::std::option::Option<i32> {
self.duration
}
pub fn duration_units(&self) -> ::std::option::Option<&crate::types::OfferingDurationUnits> {
self.duration_units.as_ref()
}
pub fn end(&self) -> ::std::option::Option<&str> {
self.end.as_deref()
}
pub fn fixed_price(&self) -> ::std::option::Option<f64> {
self.fixed_price
}
pub fn name(&self) -> ::std::option::Option<&str> {
self.name.as_deref()
}
pub fn offering_description(&self) -> ::std::option::Option<&str> {
self.offering_description.as_deref()
}
pub fn offering_id(&self) -> ::std::option::Option<&str> {
self.offering_id.as_deref()
}
pub fn offering_type(&self) -> ::std::option::Option<&crate::types::OfferingType> {
self.offering_type.as_ref()
}
pub fn region(&self) -> ::std::option::Option<&str> {
self.region.as_deref()
}
pub fn renewal_settings(&self) -> ::std::option::Option<&crate::types::RenewalSettings> {
self.renewal_settings.as_ref()
}
pub fn reservation_id(&self) -> ::std::option::Option<&str> {
self.reservation_id.as_deref()
}
pub fn resource_specification(&self) -> ::std::option::Option<&crate::types::ReservationResourceSpecification> {
self.resource_specification.as_ref()
}
pub fn start(&self) -> ::std::option::Option<&str> {
self.start.as_deref()
}
pub fn state(&self) -> ::std::option::Option<&crate::types::ReservationState> {
self.state.as_ref()
}
pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
self.tags.as_ref()
}
pub fn usage_price(&self) -> ::std::option::Option<f64> {
self.usage_price
}
}
impl Reservation {
pub fn builder() -> crate::types::builders::ReservationBuilder {
crate::types::builders::ReservationBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct ReservationBuilder {
pub(crate) arn: ::std::option::Option<::std::string::String>,
pub(crate) count: ::std::option::Option<i32>,
pub(crate) currency_code: ::std::option::Option<::std::string::String>,
pub(crate) duration: ::std::option::Option<i32>,
pub(crate) duration_units: ::std::option::Option<crate::types::OfferingDurationUnits>,
pub(crate) end: ::std::option::Option<::std::string::String>,
pub(crate) fixed_price: ::std::option::Option<f64>,
pub(crate) name: ::std::option::Option<::std::string::String>,
pub(crate) offering_description: ::std::option::Option<::std::string::String>,
pub(crate) offering_id: ::std::option::Option<::std::string::String>,
pub(crate) offering_type: ::std::option::Option<crate::types::OfferingType>,
pub(crate) region: ::std::option::Option<::std::string::String>,
pub(crate) renewal_settings: ::std::option::Option<crate::types::RenewalSettings>,
pub(crate) reservation_id: ::std::option::Option<::std::string::String>,
pub(crate) resource_specification: ::std::option::Option<crate::types::ReservationResourceSpecification>,
pub(crate) start: ::std::option::Option<::std::string::String>,
pub(crate) state: ::std::option::Option<crate::types::ReservationState>,
pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
pub(crate) usage_price: ::std::option::Option<f64>,
}
impl ReservationBuilder {
pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.arn = input;
self
}
pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.arn
}
pub fn count(mut self, input: i32) -> Self {
self.count = ::std::option::Option::Some(input);
self
}
pub fn set_count(mut self, input: ::std::option::Option<i32>) -> Self {
self.count = input;
self
}
pub fn get_count(&self) -> &::std::option::Option<i32> {
&self.count
}
pub fn currency_code(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.currency_code = ::std::option::Option::Some(input.into());
self
}
pub fn set_currency_code(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.currency_code = input;
self
}
pub fn get_currency_code(&self) -> &::std::option::Option<::std::string::String> {
&self.currency_code
}
pub fn duration(mut self, input: i32) -> Self {
self.duration = ::std::option::Option::Some(input);
self
}
pub fn set_duration(mut self, input: ::std::option::Option<i32>) -> Self {
self.duration = input;
self
}
pub fn get_duration(&self) -> &::std::option::Option<i32> {
&self.duration
}
pub fn duration_units(mut self, input: crate::types::OfferingDurationUnits) -> Self {
self.duration_units = ::std::option::Option::Some(input);
self
}
pub fn set_duration_units(mut self, input: ::std::option::Option<crate::types::OfferingDurationUnits>) -> Self {
self.duration_units = input;
self
}
pub fn get_duration_units(&self) -> &::std::option::Option<crate::types::OfferingDurationUnits> {
&self.duration_units
}
pub fn end(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.end = ::std::option::Option::Some(input.into());
self
}
pub fn set_end(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.end = input;
self
}
pub fn get_end(&self) -> &::std::option::Option<::std::string::String> {
&self.end
}
pub fn fixed_price(mut self, input: f64) -> Self {
self.fixed_price = ::std::option::Option::Some(input);
self
}
pub fn set_fixed_price(mut self, input: ::std::option::Option<f64>) -> Self {
self.fixed_price = input;
self
}
pub fn get_fixed_price(&self) -> &::std::option::Option<f64> {
&self.fixed_price
}
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.name = ::std::option::Option::Some(input.into());
self
}
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.name = input;
self
}
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
&self.name
}
pub fn offering_description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.offering_description = ::std::option::Option::Some(input.into());
self
}
pub fn set_offering_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.offering_description = input;
self
}
pub fn get_offering_description(&self) -> &::std::option::Option<::std::string::String> {
&self.offering_description
}
pub fn offering_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.offering_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_offering_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.offering_id = input;
self
}
pub fn get_offering_id(&self) -> &::std::option::Option<::std::string::String> {
&self.offering_id
}
pub fn offering_type(mut self, input: crate::types::OfferingType) -> Self {
self.offering_type = ::std::option::Option::Some(input);
self
}
pub fn set_offering_type(mut self, input: ::std::option::Option<crate::types::OfferingType>) -> Self {
self.offering_type = input;
self
}
pub fn get_offering_type(&self) -> &::std::option::Option<crate::types::OfferingType> {
&self.offering_type
}
pub fn region(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.region = ::std::option::Option::Some(input.into());
self
}
pub fn set_region(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.region = input;
self
}
pub fn get_region(&self) -> &::std::option::Option<::std::string::String> {
&self.region
}
pub fn renewal_settings(mut self, input: crate::types::RenewalSettings) -> Self {
self.renewal_settings = ::std::option::Option::Some(input);
self
}
pub fn set_renewal_settings(mut self, input: ::std::option::Option<crate::types::RenewalSettings>) -> Self {
self.renewal_settings = input;
self
}
pub fn get_renewal_settings(&self) -> &::std::option::Option<crate::types::RenewalSettings> {
&self.renewal_settings
}
pub fn reservation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.reservation_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_reservation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.reservation_id = input;
self
}
pub fn get_reservation_id(&self) -> &::std::option::Option<::std::string::String> {
&self.reservation_id
}
pub fn resource_specification(mut self, input: crate::types::ReservationResourceSpecification) -> Self {
self.resource_specification = ::std::option::Option::Some(input);
self
}
pub fn set_resource_specification(mut self, input: ::std::option::Option<crate::types::ReservationResourceSpecification>) -> Self {
self.resource_specification = input;
self
}
pub fn get_resource_specification(&self) -> &::std::option::Option<crate::types::ReservationResourceSpecification> {
&self.resource_specification
}
pub fn start(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.start = ::std::option::Option::Some(input.into());
self
}
pub fn set_start(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.start = input;
self
}
pub fn get_start(&self) -> &::std::option::Option<::std::string::String> {
&self.start
}
pub fn state(mut self, input: crate::types::ReservationState) -> Self {
self.state = ::std::option::Option::Some(input);
self
}
pub fn set_state(mut self, input: ::std::option::Option<crate::types::ReservationState>) -> Self {
self.state = input;
self
}
pub fn get_state(&self) -> &::std::option::Option<crate::types::ReservationState> {
&self.state
}
pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = ::std::option::Option::Some(hash_map);
self
}
pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
self.tags = input;
self
}
pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
&self.tags
}
pub fn usage_price(mut self, input: f64) -> Self {
self.usage_price = ::std::option::Option::Some(input);
self
}
pub fn set_usage_price(mut self, input: ::std::option::Option<f64>) -> Self {
self.usage_price = input;
self
}
pub fn get_usage_price(&self) -> &::std::option::Option<f64> {
&self.usage_price
}
pub fn build(self) -> crate::types::Reservation {
crate::types::Reservation {
arn: self.arn,
count: self.count,
currency_code: self.currency_code,
duration: self.duration,
duration_units: self.duration_units,
end: self.end,
fixed_price: self.fixed_price,
name: self.name,
offering_description: self.offering_description,
offering_id: self.offering_id,
offering_type: self.offering_type,
region: self.region,
renewal_settings: self.renewal_settings,
reservation_id: self.reservation_id,
resource_specification: self.resource_specification,
start: self.start,
state: self.state,
tags: self.tags,
usage_price: self.usage_price,
}
}
}