#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Attribute {
pub fully_qualified_name: ::std::string::String,
pub data_type: crate::types::NodeDataType,
pub description: ::std::option::Option<::std::string::String>,
pub unit: ::std::option::Option<::std::string::String>,
pub allowed_values: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub min: ::std::option::Option<f64>,
pub max: ::std::option::Option<f64>,
#[deprecated(note = "assignedValue is no longer in use")]
pub assigned_value: ::std::option::Option<::std::string::String>,
pub default_value: ::std::option::Option<::std::string::String>,
pub deprecation_message: ::std::option::Option<::std::string::String>,
pub comment: ::std::option::Option<::std::string::String>,
}
impl Attribute {
pub fn fully_qualified_name(&self) -> &str {
use std::ops::Deref;
self.fully_qualified_name.deref()
}
pub fn data_type(&self) -> &crate::types::NodeDataType {
&self.data_type
}
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
pub fn unit(&self) -> ::std::option::Option<&str> {
self.unit.as_deref()
}
pub fn allowed_values(&self) -> &[::std::string::String] {
self.allowed_values.as_deref().unwrap_or_default()
}
pub fn min(&self) -> ::std::option::Option<f64> {
self.min
}
pub fn max(&self) -> ::std::option::Option<f64> {
self.max
}
#[deprecated(note = "assignedValue is no longer in use")]
pub fn assigned_value(&self) -> ::std::option::Option<&str> {
self.assigned_value.as_deref()
}
pub fn default_value(&self) -> ::std::option::Option<&str> {
self.default_value.as_deref()
}
pub fn deprecation_message(&self) -> ::std::option::Option<&str> {
self.deprecation_message.as_deref()
}
pub fn comment(&self) -> ::std::option::Option<&str> {
self.comment.as_deref()
}
}
impl Attribute {
pub fn builder() -> crate::types::builders::AttributeBuilder {
crate::types::builders::AttributeBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct AttributeBuilder {
pub(crate) fully_qualified_name: ::std::option::Option<::std::string::String>,
pub(crate) data_type: ::std::option::Option<crate::types::NodeDataType>,
pub(crate) description: ::std::option::Option<::std::string::String>,
pub(crate) unit: ::std::option::Option<::std::string::String>,
pub(crate) allowed_values: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub(crate) min: ::std::option::Option<f64>,
pub(crate) max: ::std::option::Option<f64>,
pub(crate) assigned_value: ::std::option::Option<::std::string::String>,
pub(crate) default_value: ::std::option::Option<::std::string::String>,
pub(crate) deprecation_message: ::std::option::Option<::std::string::String>,
pub(crate) comment: ::std::option::Option<::std::string::String>,
}
impl AttributeBuilder {
pub fn fully_qualified_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.fully_qualified_name = ::std::option::Option::Some(input.into());
self
}
pub fn set_fully_qualified_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.fully_qualified_name = input;
self
}
pub fn get_fully_qualified_name(&self) -> &::std::option::Option<::std::string::String> {
&self.fully_qualified_name
}
pub fn data_type(mut self, input: crate::types::NodeDataType) -> Self {
self.data_type = ::std::option::Option::Some(input);
self
}
pub fn set_data_type(mut self, input: ::std::option::Option<crate::types::NodeDataType>) -> Self {
self.data_type = input;
self
}
pub fn get_data_type(&self) -> &::std::option::Option<crate::types::NodeDataType> {
&self.data_type
}
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.description = ::std::option::Option::Some(input.into());
self
}
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
pub fn unit(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.unit = ::std::option::Option::Some(input.into());
self
}
pub fn set_unit(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.unit = input;
self
}
pub fn get_unit(&self) -> &::std::option::Option<::std::string::String> {
&self.unit
}
pub fn allowed_values(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.allowed_values.unwrap_or_default();
v.push(input.into());
self.allowed_values = ::std::option::Option::Some(v);
self
}
pub fn set_allowed_values(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.allowed_values = input;
self
}
pub fn get_allowed_values(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.allowed_values
}
pub fn min(mut self, input: f64) -> Self {
self.min = ::std::option::Option::Some(input);
self
}
pub fn set_min(mut self, input: ::std::option::Option<f64>) -> Self {
self.min = input;
self
}
pub fn get_min(&self) -> &::std::option::Option<f64> {
&self.min
}
pub fn max(mut self, input: f64) -> Self {
self.max = ::std::option::Option::Some(input);
self
}
pub fn set_max(mut self, input: ::std::option::Option<f64>) -> Self {
self.max = input;
self
}
pub fn get_max(&self) -> &::std::option::Option<f64> {
&self.max
}
#[deprecated(note = "assignedValue is no longer in use")]
pub fn assigned_value(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.assigned_value = ::std::option::Option::Some(input.into());
self
}
#[deprecated(note = "assignedValue is no longer in use")]
pub fn set_assigned_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.assigned_value = input;
self
}
#[deprecated(note = "assignedValue is no longer in use")]
pub fn get_assigned_value(&self) -> &::std::option::Option<::std::string::String> {
&self.assigned_value
}
pub fn default_value(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.default_value = ::std::option::Option::Some(input.into());
self
}
pub fn set_default_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.default_value = input;
self
}
pub fn get_default_value(&self) -> &::std::option::Option<::std::string::String> {
&self.default_value
}
pub fn deprecation_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.deprecation_message = ::std::option::Option::Some(input.into());
self
}
pub fn set_deprecation_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.deprecation_message = input;
self
}
pub fn get_deprecation_message(&self) -> &::std::option::Option<::std::string::String> {
&self.deprecation_message
}
pub fn comment(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.comment = ::std::option::Option::Some(input.into());
self
}
pub fn set_comment(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.comment = input;
self
}
pub fn get_comment(&self) -> &::std::option::Option<::std::string::String> {
&self.comment
}
pub fn build(self) -> ::std::result::Result<crate::types::Attribute, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::types::Attribute {
fully_qualified_name: self.fully_qualified_name.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"fully_qualified_name",
"fully_qualified_name was not specified but it is required when building Attribute",
)
})?,
data_type: self.data_type.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"data_type",
"data_type was not specified but it is required when building Attribute",
)
})?,
description: self.description,
unit: self.unit,
allowed_values: self.allowed_values,
min: self.min,
max: self.max,
assigned_value: self.assigned_value,
default_value: self.default_value,
deprecation_message: self.deprecation_message,
comment: self.comment,
})
}
}