#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Vlan {
pub vlan_id: ::std::option::Option<i32>,
pub cidr: ::std::option::Option<::std::string::String>,
pub availability_zone: ::std::option::Option<::std::string::String>,
pub function_name: ::std::option::Option<::std::string::String>,
pub subnet_id: ::std::option::Option<::std::string::String>,
pub created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub modified_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub vlan_state: ::std::option::Option<crate::types::VlanState>,
pub state_details: ::std::option::Option<::std::string::String>,
pub eip_associations: ::std::option::Option<::std::vec::Vec<crate::types::EipAssociation>>,
pub is_public: ::std::option::Option<bool>,
pub network_acl_id: ::std::option::Option<::std::string::String>,
}
impl Vlan {
pub fn vlan_id(&self) -> ::std::option::Option<i32> {
self.vlan_id
}
pub fn cidr(&self) -> ::std::option::Option<&str> {
self.cidr.as_deref()
}
pub fn availability_zone(&self) -> ::std::option::Option<&str> {
self.availability_zone.as_deref()
}
pub fn function_name(&self) -> ::std::option::Option<&str> {
self.function_name.as_deref()
}
pub fn subnet_id(&self) -> ::std::option::Option<&str> {
self.subnet_id.as_deref()
}
pub fn created_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.created_at.as_ref()
}
pub fn modified_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.modified_at.as_ref()
}
pub fn vlan_state(&self) -> ::std::option::Option<&crate::types::VlanState> {
self.vlan_state.as_ref()
}
pub fn state_details(&self) -> ::std::option::Option<&str> {
self.state_details.as_deref()
}
pub fn eip_associations(&self) -> &[crate::types::EipAssociation] {
self.eip_associations.as_deref().unwrap_or_default()
}
pub fn is_public(&self) -> ::std::option::Option<bool> {
self.is_public
}
pub fn network_acl_id(&self) -> ::std::option::Option<&str> {
self.network_acl_id.as_deref()
}
}
impl Vlan {
pub fn builder() -> crate::types::builders::VlanBuilder {
crate::types::builders::VlanBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct VlanBuilder {
pub(crate) vlan_id: ::std::option::Option<i32>,
pub(crate) cidr: ::std::option::Option<::std::string::String>,
pub(crate) availability_zone: ::std::option::Option<::std::string::String>,
pub(crate) function_name: ::std::option::Option<::std::string::String>,
pub(crate) subnet_id: ::std::option::Option<::std::string::String>,
pub(crate) created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) modified_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) vlan_state: ::std::option::Option<crate::types::VlanState>,
pub(crate) state_details: ::std::option::Option<::std::string::String>,
pub(crate) eip_associations: ::std::option::Option<::std::vec::Vec<crate::types::EipAssociation>>,
pub(crate) is_public: ::std::option::Option<bool>,
pub(crate) network_acl_id: ::std::option::Option<::std::string::String>,
}
impl VlanBuilder {
pub fn vlan_id(mut self, input: i32) -> Self {
self.vlan_id = ::std::option::Option::Some(input);
self
}
pub fn set_vlan_id(mut self, input: ::std::option::Option<i32>) -> Self {
self.vlan_id = input;
self
}
pub fn get_vlan_id(&self) -> &::std::option::Option<i32> {
&self.vlan_id
}
pub fn cidr(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.cidr = ::std::option::Option::Some(input.into());
self
}
pub fn set_cidr(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.cidr = input;
self
}
pub fn get_cidr(&self) -> &::std::option::Option<::std::string::String> {
&self.cidr
}
pub fn availability_zone(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.availability_zone = ::std::option::Option::Some(input.into());
self
}
pub fn set_availability_zone(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.availability_zone = input;
self
}
pub fn get_availability_zone(&self) -> &::std::option::Option<::std::string::String> {
&self.availability_zone
}
pub fn function_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.function_name = ::std::option::Option::Some(input.into());
self
}
pub fn set_function_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.function_name = input;
self
}
pub fn get_function_name(&self) -> &::std::option::Option<::std::string::String> {
&self.function_name
}
pub fn subnet_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.subnet_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_subnet_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.subnet_id = input;
self
}
pub fn get_subnet_id(&self) -> &::std::option::Option<::std::string::String> {
&self.subnet_id
}
pub fn created_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.created_at = ::std::option::Option::Some(input);
self
}
pub fn set_created_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.created_at = input;
self
}
pub fn get_created_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.created_at
}
pub fn modified_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.modified_at = ::std::option::Option::Some(input);
self
}
pub fn set_modified_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.modified_at = input;
self
}
pub fn get_modified_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.modified_at
}
pub fn vlan_state(mut self, input: crate::types::VlanState) -> Self {
self.vlan_state = ::std::option::Option::Some(input);
self
}
pub fn set_vlan_state(mut self, input: ::std::option::Option<crate::types::VlanState>) -> Self {
self.vlan_state = input;
self
}
pub fn get_vlan_state(&self) -> &::std::option::Option<crate::types::VlanState> {
&self.vlan_state
}
pub fn state_details(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.state_details = ::std::option::Option::Some(input.into());
self
}
pub fn set_state_details(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.state_details = input;
self
}
pub fn get_state_details(&self) -> &::std::option::Option<::std::string::String> {
&self.state_details
}
pub fn eip_associations(mut self, input: crate::types::EipAssociation) -> Self {
let mut v = self.eip_associations.unwrap_or_default();
v.push(input);
self.eip_associations = ::std::option::Option::Some(v);
self
}
pub fn set_eip_associations(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EipAssociation>>) -> Self {
self.eip_associations = input;
self
}
pub fn get_eip_associations(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EipAssociation>> {
&self.eip_associations
}
pub fn is_public(mut self, input: bool) -> Self {
self.is_public = ::std::option::Option::Some(input);
self
}
pub fn set_is_public(mut self, input: ::std::option::Option<bool>) -> Self {
self.is_public = input;
self
}
pub fn get_is_public(&self) -> &::std::option::Option<bool> {
&self.is_public
}
pub fn network_acl_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.network_acl_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_network_acl_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.network_acl_id = input;
self
}
pub fn get_network_acl_id(&self) -> &::std::option::Option<::std::string::String> {
&self.network_acl_id
}
pub fn build(self) -> crate::types::Vlan {
crate::types::Vlan {
vlan_id: self.vlan_id,
cidr: self.cidr,
availability_zone: self.availability_zone,
function_name: self.function_name,
subnet_id: self.subnet_id,
created_at: self.created_at,
modified_at: self.modified_at,
vlan_state: self.vlan_state,
state_details: self.state_details,
eip_associations: self.eip_associations,
is_public: self.is_public,
network_acl_id: self.network_acl_id,
}
}
}