aws_sdk_ec2/operation/modify_spot_fleet_request/
_modify_spot_fleet_request_input.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct ModifySpotFleetRequestInput {
7 pub launch_template_configs: ::std::option::Option<::std::vec::Vec<crate::types::LaunchTemplateConfig>>,
9 pub on_demand_target_capacity: ::std::option::Option<i32>,
11 pub context: ::std::option::Option<::std::string::String>,
13 pub spot_fleet_request_id: ::std::option::Option<::std::string::String>,
15 pub target_capacity: ::std::option::Option<i32>,
17 pub excess_capacity_termination_policy: ::std::option::Option<crate::types::ExcessCapacityTerminationPolicy>,
20}
21impl ModifySpotFleetRequestInput {
22 pub fn launch_template_configs(&self) -> &[crate::types::LaunchTemplateConfig] {
26 self.launch_template_configs.as_deref().unwrap_or_default()
27 }
28 pub fn on_demand_target_capacity(&self) -> ::std::option::Option<i32> {
30 self.on_demand_target_capacity
31 }
32 pub fn context(&self) -> ::std::option::Option<&str> {
34 self.context.as_deref()
35 }
36 pub fn spot_fleet_request_id(&self) -> ::std::option::Option<&str> {
38 self.spot_fleet_request_id.as_deref()
39 }
40 pub fn target_capacity(&self) -> ::std::option::Option<i32> {
42 self.target_capacity
43 }
44 pub fn excess_capacity_termination_policy(&self) -> ::std::option::Option<&crate::types::ExcessCapacityTerminationPolicy> {
47 self.excess_capacity_termination_policy.as_ref()
48 }
49}
50impl ModifySpotFleetRequestInput {
51 pub fn builder() -> crate::operation::modify_spot_fleet_request::builders::ModifySpotFleetRequestInputBuilder {
53 crate::operation::modify_spot_fleet_request::builders::ModifySpotFleetRequestInputBuilder::default()
54 }
55}
56
57#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
59#[non_exhaustive]
60pub struct ModifySpotFleetRequestInputBuilder {
61 pub(crate) launch_template_configs: ::std::option::Option<::std::vec::Vec<crate::types::LaunchTemplateConfig>>,
62 pub(crate) on_demand_target_capacity: ::std::option::Option<i32>,
63 pub(crate) context: ::std::option::Option<::std::string::String>,
64 pub(crate) spot_fleet_request_id: ::std::option::Option<::std::string::String>,
65 pub(crate) target_capacity: ::std::option::Option<i32>,
66 pub(crate) excess_capacity_termination_policy: ::std::option::Option<crate::types::ExcessCapacityTerminationPolicy>,
67}
68impl ModifySpotFleetRequestInputBuilder {
69 pub fn launch_template_configs(mut self, input: crate::types::LaunchTemplateConfig) -> Self {
75 let mut v = self.launch_template_configs.unwrap_or_default();
76 v.push(input);
77 self.launch_template_configs = ::std::option::Option::Some(v);
78 self
79 }
80 pub fn set_launch_template_configs(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::LaunchTemplateConfig>>) -> Self {
82 self.launch_template_configs = input;
83 self
84 }
85 pub fn get_launch_template_configs(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::LaunchTemplateConfig>> {
87 &self.launch_template_configs
88 }
89 pub fn on_demand_target_capacity(mut self, input: i32) -> Self {
91 self.on_demand_target_capacity = ::std::option::Option::Some(input);
92 self
93 }
94 pub fn set_on_demand_target_capacity(mut self, input: ::std::option::Option<i32>) -> Self {
96 self.on_demand_target_capacity = input;
97 self
98 }
99 pub fn get_on_demand_target_capacity(&self) -> &::std::option::Option<i32> {
101 &self.on_demand_target_capacity
102 }
103 pub fn context(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
105 self.context = ::std::option::Option::Some(input.into());
106 self
107 }
108 pub fn set_context(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
110 self.context = input;
111 self
112 }
113 pub fn get_context(&self) -> &::std::option::Option<::std::string::String> {
115 &self.context
116 }
117 pub fn spot_fleet_request_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
120 self.spot_fleet_request_id = ::std::option::Option::Some(input.into());
121 self
122 }
123 pub fn set_spot_fleet_request_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
125 self.spot_fleet_request_id = input;
126 self
127 }
128 pub fn get_spot_fleet_request_id(&self) -> &::std::option::Option<::std::string::String> {
130 &self.spot_fleet_request_id
131 }
132 pub fn target_capacity(mut self, input: i32) -> Self {
134 self.target_capacity = ::std::option::Option::Some(input);
135 self
136 }
137 pub fn set_target_capacity(mut self, input: ::std::option::Option<i32>) -> Self {
139 self.target_capacity = input;
140 self
141 }
142 pub fn get_target_capacity(&self) -> &::std::option::Option<i32> {
144 &self.target_capacity
145 }
146 pub fn excess_capacity_termination_policy(mut self, input: crate::types::ExcessCapacityTerminationPolicy) -> Self {
149 self.excess_capacity_termination_policy = ::std::option::Option::Some(input);
150 self
151 }
152 pub fn set_excess_capacity_termination_policy(mut self, input: ::std::option::Option<crate::types::ExcessCapacityTerminationPolicy>) -> Self {
155 self.excess_capacity_termination_policy = input;
156 self
157 }
158 pub fn get_excess_capacity_termination_policy(&self) -> &::std::option::Option<crate::types::ExcessCapacityTerminationPolicy> {
161 &self.excess_capacity_termination_policy
162 }
163 pub fn build(
165 self,
166 ) -> ::std::result::Result<
167 crate::operation::modify_spot_fleet_request::ModifySpotFleetRequestInput,
168 ::aws_smithy_types::error::operation::BuildError,
169 > {
170 ::std::result::Result::Ok(crate::operation::modify_spot_fleet_request::ModifySpotFleetRequestInput {
171 launch_template_configs: self.launch_template_configs,
172 on_demand_target_capacity: self.on_demand_target_capacity,
173 context: self.context,
174 spot_fleet_request_id: self.spot_fleet_request_id,
175 target_capacity: self.target_capacity,
176 excess_capacity_termination_policy: self.excess_capacity_termination_policy,
177 })
178 }
179}