#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct EndpointDetails {
pub security_details: ::std::option::Option<crate::types::SecurityDetails>,
pub endpoint: ::std::option::Option<crate::types::DataflowEndpoint>,
pub aws_ground_station_agent_endpoint: ::std::option::Option<crate::types::AwsGroundStationAgentEndpoint>,
pub health_status: ::std::option::Option<crate::types::CapabilityHealth>,
pub health_reasons: ::std::option::Option<::std::vec::Vec<crate::types::CapabilityHealthReason>>,
}
impl EndpointDetails {
pub fn security_details(&self) -> ::std::option::Option<&crate::types::SecurityDetails> {
self.security_details.as_ref()
}
pub fn endpoint(&self) -> ::std::option::Option<&crate::types::DataflowEndpoint> {
self.endpoint.as_ref()
}
pub fn aws_ground_station_agent_endpoint(&self) -> ::std::option::Option<&crate::types::AwsGroundStationAgentEndpoint> {
self.aws_ground_station_agent_endpoint.as_ref()
}
pub fn health_status(&self) -> ::std::option::Option<&crate::types::CapabilityHealth> {
self.health_status.as_ref()
}
pub fn health_reasons(&self) -> &[crate::types::CapabilityHealthReason] {
self.health_reasons.as_deref().unwrap_or_default()
}
}
impl EndpointDetails {
pub fn builder() -> crate::types::builders::EndpointDetailsBuilder {
crate::types::builders::EndpointDetailsBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct EndpointDetailsBuilder {
pub(crate) security_details: ::std::option::Option<crate::types::SecurityDetails>,
pub(crate) endpoint: ::std::option::Option<crate::types::DataflowEndpoint>,
pub(crate) aws_ground_station_agent_endpoint: ::std::option::Option<crate::types::AwsGroundStationAgentEndpoint>,
pub(crate) health_status: ::std::option::Option<crate::types::CapabilityHealth>,
pub(crate) health_reasons: ::std::option::Option<::std::vec::Vec<crate::types::CapabilityHealthReason>>,
}
impl EndpointDetailsBuilder {
pub fn security_details(mut self, input: crate::types::SecurityDetails) -> Self {
self.security_details = ::std::option::Option::Some(input);
self
}
pub fn set_security_details(mut self, input: ::std::option::Option<crate::types::SecurityDetails>) -> Self {
self.security_details = input;
self
}
pub fn get_security_details(&self) -> &::std::option::Option<crate::types::SecurityDetails> {
&self.security_details
}
pub fn endpoint(mut self, input: crate::types::DataflowEndpoint) -> Self {
self.endpoint = ::std::option::Option::Some(input);
self
}
pub fn set_endpoint(mut self, input: ::std::option::Option<crate::types::DataflowEndpoint>) -> Self {
self.endpoint = input;
self
}
pub fn get_endpoint(&self) -> &::std::option::Option<crate::types::DataflowEndpoint> {
&self.endpoint
}
pub fn aws_ground_station_agent_endpoint(mut self, input: crate::types::AwsGroundStationAgentEndpoint) -> Self {
self.aws_ground_station_agent_endpoint = ::std::option::Option::Some(input);
self
}
pub fn set_aws_ground_station_agent_endpoint(mut self, input: ::std::option::Option<crate::types::AwsGroundStationAgentEndpoint>) -> Self {
self.aws_ground_station_agent_endpoint = input;
self
}
pub fn get_aws_ground_station_agent_endpoint(&self) -> &::std::option::Option<crate::types::AwsGroundStationAgentEndpoint> {
&self.aws_ground_station_agent_endpoint
}
pub fn health_status(mut self, input: crate::types::CapabilityHealth) -> Self {
self.health_status = ::std::option::Option::Some(input);
self
}
pub fn set_health_status(mut self, input: ::std::option::Option<crate::types::CapabilityHealth>) -> Self {
self.health_status = input;
self
}
pub fn get_health_status(&self) -> &::std::option::Option<crate::types::CapabilityHealth> {
&self.health_status
}
pub fn health_reasons(mut self, input: crate::types::CapabilityHealthReason) -> Self {
let mut v = self.health_reasons.unwrap_or_default();
v.push(input);
self.health_reasons = ::std::option::Option::Some(v);
self
}
pub fn set_health_reasons(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::CapabilityHealthReason>>) -> Self {
self.health_reasons = input;
self
}
pub fn get_health_reasons(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::CapabilityHealthReason>> {
&self.health_reasons
}
pub fn build(self) -> crate::types::EndpointDetails {
crate::types::EndpointDetails {
security_details: self.security_details,
endpoint: self.endpoint,
aws_ground_station_agent_endpoint: self.aws_ground_station_agent_endpoint,
health_status: self.health_status,
health_reasons: self.health_reasons,
}
}
}