#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct WorkerLogDeliveryDescription {
pub cloud_watch_logs: ::std::option::Option<crate::types::CloudWatchLogsLogDeliveryDescription>,
pub firehose: ::std::option::Option<crate::types::FirehoseLogDeliveryDescription>,
pub s3: ::std::option::Option<crate::types::S3LogDeliveryDescription>,
}
impl WorkerLogDeliveryDescription {
pub fn cloud_watch_logs(&self) -> ::std::option::Option<&crate::types::CloudWatchLogsLogDeliveryDescription> {
self.cloud_watch_logs.as_ref()
}
pub fn firehose(&self) -> ::std::option::Option<&crate::types::FirehoseLogDeliveryDescription> {
self.firehose.as_ref()
}
pub fn s3(&self) -> ::std::option::Option<&crate::types::S3LogDeliveryDescription> {
self.s3.as_ref()
}
}
impl WorkerLogDeliveryDescription {
pub fn builder() -> crate::types::builders::WorkerLogDeliveryDescriptionBuilder {
crate::types::builders::WorkerLogDeliveryDescriptionBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct WorkerLogDeliveryDescriptionBuilder {
pub(crate) cloud_watch_logs: ::std::option::Option<crate::types::CloudWatchLogsLogDeliveryDescription>,
pub(crate) firehose: ::std::option::Option<crate::types::FirehoseLogDeliveryDescription>,
pub(crate) s3: ::std::option::Option<crate::types::S3LogDeliveryDescription>,
}
impl WorkerLogDeliveryDescriptionBuilder {
pub fn cloud_watch_logs(mut self, input: crate::types::CloudWatchLogsLogDeliveryDescription) -> Self {
self.cloud_watch_logs = ::std::option::Option::Some(input);
self
}
pub fn set_cloud_watch_logs(mut self, input: ::std::option::Option<crate::types::CloudWatchLogsLogDeliveryDescription>) -> Self {
self.cloud_watch_logs = input;
self
}
pub fn get_cloud_watch_logs(&self) -> &::std::option::Option<crate::types::CloudWatchLogsLogDeliveryDescription> {
&self.cloud_watch_logs
}
pub fn firehose(mut self, input: crate::types::FirehoseLogDeliveryDescription) -> Self {
self.firehose = ::std::option::Option::Some(input);
self
}
pub fn set_firehose(mut self, input: ::std::option::Option<crate::types::FirehoseLogDeliveryDescription>) -> Self {
self.firehose = input;
self
}
pub fn get_firehose(&self) -> &::std::option::Option<crate::types::FirehoseLogDeliveryDescription> {
&self.firehose
}
pub fn s3(mut self, input: crate::types::S3LogDeliveryDescription) -> Self {
self.s3 = ::std::option::Option::Some(input);
self
}
pub fn set_s3(mut self, input: ::std::option::Option<crate::types::S3LogDeliveryDescription>) -> Self {
self.s3 = input;
self
}
pub fn get_s3(&self) -> &::std::option::Option<crate::types::S3LogDeliveryDescription> {
&self.s3
}
pub fn build(self) -> crate::types::WorkerLogDeliveryDescription {
crate::types::WorkerLogDeliveryDescription {
cloud_watch_logs: self.cloud_watch_logs,
firehose: self.firehose,
s3: self.s3,
}
}
}