aws_sdk_securityhub/types/
_aws_ecs_task_definition_volumes_details.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct AwsEcsTaskDefinitionVolumesDetails {
7 pub docker_volume_configuration: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails>,
9 pub efs_volume_configuration: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails>,
11 pub host: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesHostDetails>,
13 pub name: ::std::option::Option<::std::string::String>,
15}
16impl AwsEcsTaskDefinitionVolumesDetails {
17 pub fn docker_volume_configuration(&self) -> ::std::option::Option<&crate::types::AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails> {
19 self.docker_volume_configuration.as_ref()
20 }
21 pub fn efs_volume_configuration(&self) -> ::std::option::Option<&crate::types::AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails> {
23 self.efs_volume_configuration.as_ref()
24 }
25 pub fn host(&self) -> ::std::option::Option<&crate::types::AwsEcsTaskDefinitionVolumesHostDetails> {
27 self.host.as_ref()
28 }
29 pub fn name(&self) -> ::std::option::Option<&str> {
31 self.name.as_deref()
32 }
33}
34impl AwsEcsTaskDefinitionVolumesDetails {
35 pub fn builder() -> crate::types::builders::AwsEcsTaskDefinitionVolumesDetailsBuilder {
37 crate::types::builders::AwsEcsTaskDefinitionVolumesDetailsBuilder::default()
38 }
39}
40
41#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
43#[non_exhaustive]
44pub struct AwsEcsTaskDefinitionVolumesDetailsBuilder {
45 pub(crate) docker_volume_configuration: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails>,
46 pub(crate) efs_volume_configuration: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails>,
47 pub(crate) host: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesHostDetails>,
48 pub(crate) name: ::std::option::Option<::std::string::String>,
49}
50impl AwsEcsTaskDefinitionVolumesDetailsBuilder {
51 pub fn docker_volume_configuration(mut self, input: crate::types::AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails) -> Self {
53 self.docker_volume_configuration = ::std::option::Option::Some(input);
54 self
55 }
56 pub fn set_docker_volume_configuration(
58 mut self,
59 input: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails>,
60 ) -> Self {
61 self.docker_volume_configuration = input;
62 self
63 }
64 pub fn get_docker_volume_configuration(
66 &self,
67 ) -> &::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails> {
68 &self.docker_volume_configuration
69 }
70 pub fn efs_volume_configuration(mut self, input: crate::types::AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails) -> Self {
72 self.efs_volume_configuration = ::std::option::Option::Some(input);
73 self
74 }
75 pub fn set_efs_volume_configuration(
77 mut self,
78 input: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails>,
79 ) -> Self {
80 self.efs_volume_configuration = input;
81 self
82 }
83 pub fn get_efs_volume_configuration(&self) -> &::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails> {
85 &self.efs_volume_configuration
86 }
87 pub fn host(mut self, input: crate::types::AwsEcsTaskDefinitionVolumesHostDetails) -> Self {
89 self.host = ::std::option::Option::Some(input);
90 self
91 }
92 pub fn set_host(mut self, input: ::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesHostDetails>) -> Self {
94 self.host = input;
95 self
96 }
97 pub fn get_host(&self) -> &::std::option::Option<crate::types::AwsEcsTaskDefinitionVolumesHostDetails> {
99 &self.host
100 }
101 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
103 self.name = ::std::option::Option::Some(input.into());
104 self
105 }
106 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
108 self.name = input;
109 self
110 }
111 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
113 &self.name
114 }
115 pub fn build(self) -> crate::types::AwsEcsTaskDefinitionVolumesDetails {
117 crate::types::AwsEcsTaskDefinitionVolumesDetails {
118 docker_volume_configuration: self.docker_volume_configuration,
119 efs_volume_configuration: self.efs_volume_configuration,
120 host: self.host,
121 name: self.name,
122 }
123 }
124}