aws_sdk_ec2/types/
_create_fleet_instance.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct CreateFleetInstance {
7 pub launch_template_and_overrides: ::std::option::Option<crate::types::LaunchTemplateAndOverridesResponse>,
9 pub lifecycle: ::std::option::Option<crate::types::InstanceLifecycle>,
11 pub instance_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
13 pub instance_type: ::std::option::Option<crate::types::InstanceType>,
15 pub platform: ::std::option::Option<crate::types::PlatformValues>,
17}
18impl CreateFleetInstance {
19 pub fn launch_template_and_overrides(&self) -> ::std::option::Option<&crate::types::LaunchTemplateAndOverridesResponse> {
21 self.launch_template_and_overrides.as_ref()
22 }
23 pub fn lifecycle(&self) -> ::std::option::Option<&crate::types::InstanceLifecycle> {
25 self.lifecycle.as_ref()
26 }
27 pub fn instance_ids(&self) -> &[::std::string::String] {
31 self.instance_ids.as_deref().unwrap_or_default()
32 }
33 pub fn instance_type(&self) -> ::std::option::Option<&crate::types::InstanceType> {
35 self.instance_type.as_ref()
36 }
37 pub fn platform(&self) -> ::std::option::Option<&crate::types::PlatformValues> {
39 self.platform.as_ref()
40 }
41}
42impl CreateFleetInstance {
43 pub fn builder() -> crate::types::builders::CreateFleetInstanceBuilder {
45 crate::types::builders::CreateFleetInstanceBuilder::default()
46 }
47}
48
49#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
51#[non_exhaustive]
52pub struct CreateFleetInstanceBuilder {
53 pub(crate) launch_template_and_overrides: ::std::option::Option<crate::types::LaunchTemplateAndOverridesResponse>,
54 pub(crate) lifecycle: ::std::option::Option<crate::types::InstanceLifecycle>,
55 pub(crate) instance_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
56 pub(crate) instance_type: ::std::option::Option<crate::types::InstanceType>,
57 pub(crate) platform: ::std::option::Option<crate::types::PlatformValues>,
58}
59impl CreateFleetInstanceBuilder {
60 pub fn launch_template_and_overrides(mut self, input: crate::types::LaunchTemplateAndOverridesResponse) -> Self {
62 self.launch_template_and_overrides = ::std::option::Option::Some(input);
63 self
64 }
65 pub fn set_launch_template_and_overrides(mut self, input: ::std::option::Option<crate::types::LaunchTemplateAndOverridesResponse>) -> Self {
67 self.launch_template_and_overrides = input;
68 self
69 }
70 pub fn get_launch_template_and_overrides(&self) -> &::std::option::Option<crate::types::LaunchTemplateAndOverridesResponse> {
72 &self.launch_template_and_overrides
73 }
74 pub fn lifecycle(mut self, input: crate::types::InstanceLifecycle) -> Self {
76 self.lifecycle = ::std::option::Option::Some(input);
77 self
78 }
79 pub fn set_lifecycle(mut self, input: ::std::option::Option<crate::types::InstanceLifecycle>) -> Self {
81 self.lifecycle = input;
82 self
83 }
84 pub fn get_lifecycle(&self) -> &::std::option::Option<crate::types::InstanceLifecycle> {
86 &self.lifecycle
87 }
88 pub fn instance_ids(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
94 let mut v = self.instance_ids.unwrap_or_default();
95 v.push(input.into());
96 self.instance_ids = ::std::option::Option::Some(v);
97 self
98 }
99 pub fn set_instance_ids(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
101 self.instance_ids = input;
102 self
103 }
104 pub fn get_instance_ids(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
106 &self.instance_ids
107 }
108 pub fn instance_type(mut self, input: crate::types::InstanceType) -> Self {
110 self.instance_type = ::std::option::Option::Some(input);
111 self
112 }
113 pub fn set_instance_type(mut self, input: ::std::option::Option<crate::types::InstanceType>) -> Self {
115 self.instance_type = input;
116 self
117 }
118 pub fn get_instance_type(&self) -> &::std::option::Option<crate::types::InstanceType> {
120 &self.instance_type
121 }
122 pub fn platform(mut self, input: crate::types::PlatformValues) -> Self {
124 self.platform = ::std::option::Option::Some(input);
125 self
126 }
127 pub fn set_platform(mut self, input: ::std::option::Option<crate::types::PlatformValues>) -> Self {
129 self.platform = input;
130 self
131 }
132 pub fn get_platform(&self) -> &::std::option::Option<crate::types::PlatformValues> {
134 &self.platform
135 }
136 pub fn build(self) -> crate::types::CreateFleetInstance {
138 crate::types::CreateFleetInstance {
139 launch_template_and_overrides: self.launch_template_and_overrides,
140 lifecycle: self.lifecycle,
141 instance_ids: self.instance_ids,
142 instance_type: self.instance_type,
143 platform: self.platform,
144 }
145 }
146}