aws_sdk_personalize/types/_solution_version.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>An object that provides information about a specific version of a <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_Solution.html">Solution</a> in a Custom dataset group.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct SolutionVersion {
7 /// <p>The name of the solution version.</p>
8 pub name: ::std::option::Option<::std::string::String>,
9 /// <p>The ARN of the solution version.</p>
10 pub solution_version_arn: ::std::option::Option<::std::string::String>,
11 /// <p>The ARN of the solution.</p>
12 pub solution_arn: ::std::option::Option<::std::string::String>,
13 /// <p>Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default is <code>false</code>.</p>
14 pub perform_hpo: bool,
15 /// <p>When true, Amazon Personalize searches for the most optimal recipe according to the solution configuration. When false (the default), Amazon Personalize uses <code>recipeArn</code>.</p>
16 pub perform_auto_ml: bool,
17 /// <p>Whether the solution version should perform an incremental update. When set to true, the training will process only the data that has changed since the latest training, similar to when trainingMode is set to UPDATE. This can only be used with solution versions that use the User-Personalization recipe.</p>
18 pub perform_incremental_update: ::std::option::Option<bool>,
19 /// <p>The ARN of the recipe used in the solution.</p>
20 pub recipe_arn: ::std::option::Option<::std::string::String>,
21 /// <p>The event type (for example, 'click' or 'like') that is used for training the model.</p>
22 pub event_type: ::std::option::Option<::std::string::String>,
23 /// <p>The Amazon Resource Name (ARN) of the dataset group providing the training data.</p>
24 pub dataset_group_arn: ::std::option::Option<::std::string::String>,
25 /// <p>Describes the configuration properties for the solution.</p>
26 pub solution_config: ::std::option::Option<crate::types::SolutionConfig>,
27 /// <p>The time used to train the model. You are billed for the time it takes to train a model. This field is visible only after Amazon Personalize successfully trains a model.</p>
28 pub training_hours: ::std::option::Option<f64>,
29 /// <p>The scope of training to be performed when creating the solution version. A <code>FULL</code> training considers all of the data in your dataset group. An <code>UPDATE</code> processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use <code>UPDATE</code>.</p>
30 pub training_mode: ::std::option::Option<crate::types::TrainingMode>,
31 /// <p>If hyperparameter optimization was performed, contains the hyperparameter values of the best performing model.</p>
32 pub tuned_hpo_params: ::std::option::Option<crate::types::TunedHpoParams>,
33 /// <p>The status of the solution version.</p>
34 /// <p>A solution version can be in one of the following states:</p>
35 /// <ul>
36 /// <li>
37 /// <p>CREATE PENDING</p></li>
38 /// <li>
39 /// <p>CREATE IN_PROGRESS</p></li>
40 /// <li>
41 /// <p>ACTIVE</p></li>
42 /// <li>
43 /// <p>CREATE FAILED</p></li>
44 /// <li>
45 /// <p>CREATE STOPPING</p></li>
46 /// <li>
47 /// <p>CREATE STOPPED</p></li>
48 /// </ul>
49 pub status: ::std::option::Option<::std::string::String>,
50 /// <p>If training a solution version fails, the reason for the failure.</p>
51 pub failure_reason: ::std::option::Option<::std::string::String>,
52 /// <p>The date and time (in Unix time) that this version of the solution was created.</p>
53 pub creation_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
54 /// <p>The date and time (in Unix time) that the solution was last updated.</p>
55 pub last_updated_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
56 /// <p>Whether the solution version was created automatically or manually.</p>
57 pub training_type: ::std::option::Option<crate::types::TrainingType>,
58}
59impl SolutionVersion {
60 /// <p>The name of the solution version.</p>
61 pub fn name(&self) -> ::std::option::Option<&str> {
62 self.name.as_deref()
63 }
64 /// <p>The ARN of the solution version.</p>
65 pub fn solution_version_arn(&self) -> ::std::option::Option<&str> {
66 self.solution_version_arn.as_deref()
67 }
68 /// <p>The ARN of the solution.</p>
69 pub fn solution_arn(&self) -> ::std::option::Option<&str> {
70 self.solution_arn.as_deref()
71 }
72 /// <p>Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default is <code>false</code>.</p>
73 pub fn perform_hpo(&self) -> bool {
74 self.perform_hpo
75 }
76 /// <p>When true, Amazon Personalize searches for the most optimal recipe according to the solution configuration. When false (the default), Amazon Personalize uses <code>recipeArn</code>.</p>
77 pub fn perform_auto_ml(&self) -> bool {
78 self.perform_auto_ml
79 }
80 /// <p>Whether the solution version should perform an incremental update. When set to true, the training will process only the data that has changed since the latest training, similar to when trainingMode is set to UPDATE. This can only be used with solution versions that use the User-Personalization recipe.</p>
81 pub fn perform_incremental_update(&self) -> ::std::option::Option<bool> {
82 self.perform_incremental_update
83 }
84 /// <p>The ARN of the recipe used in the solution.</p>
85 pub fn recipe_arn(&self) -> ::std::option::Option<&str> {
86 self.recipe_arn.as_deref()
87 }
88 /// <p>The event type (for example, 'click' or 'like') that is used for training the model.</p>
89 pub fn event_type(&self) -> ::std::option::Option<&str> {
90 self.event_type.as_deref()
91 }
92 /// <p>The Amazon Resource Name (ARN) of the dataset group providing the training data.</p>
93 pub fn dataset_group_arn(&self) -> ::std::option::Option<&str> {
94 self.dataset_group_arn.as_deref()
95 }
96 /// <p>Describes the configuration properties for the solution.</p>
97 pub fn solution_config(&self) -> ::std::option::Option<&crate::types::SolutionConfig> {
98 self.solution_config.as_ref()
99 }
100 /// <p>The time used to train the model. You are billed for the time it takes to train a model. This field is visible only after Amazon Personalize successfully trains a model.</p>
101 pub fn training_hours(&self) -> ::std::option::Option<f64> {
102 self.training_hours
103 }
104 /// <p>The scope of training to be performed when creating the solution version. A <code>FULL</code> training considers all of the data in your dataset group. An <code>UPDATE</code> processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use <code>UPDATE</code>.</p>
105 pub fn training_mode(&self) -> ::std::option::Option<&crate::types::TrainingMode> {
106 self.training_mode.as_ref()
107 }
108 /// <p>If hyperparameter optimization was performed, contains the hyperparameter values of the best performing model.</p>
109 pub fn tuned_hpo_params(&self) -> ::std::option::Option<&crate::types::TunedHpoParams> {
110 self.tuned_hpo_params.as_ref()
111 }
112 /// <p>The status of the solution version.</p>
113 /// <p>A solution version can be in one of the following states:</p>
114 /// <ul>
115 /// <li>
116 /// <p>CREATE PENDING</p></li>
117 /// <li>
118 /// <p>CREATE IN_PROGRESS</p></li>
119 /// <li>
120 /// <p>ACTIVE</p></li>
121 /// <li>
122 /// <p>CREATE FAILED</p></li>
123 /// <li>
124 /// <p>CREATE STOPPING</p></li>
125 /// <li>
126 /// <p>CREATE STOPPED</p></li>
127 /// </ul>
128 pub fn status(&self) -> ::std::option::Option<&str> {
129 self.status.as_deref()
130 }
131 /// <p>If training a solution version fails, the reason for the failure.</p>
132 pub fn failure_reason(&self) -> ::std::option::Option<&str> {
133 self.failure_reason.as_deref()
134 }
135 /// <p>The date and time (in Unix time) that this version of the solution was created.</p>
136 pub fn creation_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
137 self.creation_date_time.as_ref()
138 }
139 /// <p>The date and time (in Unix time) that the solution was last updated.</p>
140 pub fn last_updated_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
141 self.last_updated_date_time.as_ref()
142 }
143 /// <p>Whether the solution version was created automatically or manually.</p>
144 pub fn training_type(&self) -> ::std::option::Option<&crate::types::TrainingType> {
145 self.training_type.as_ref()
146 }
147}
148impl SolutionVersion {
149 /// Creates a new builder-style object to manufacture [`SolutionVersion`](crate::types::SolutionVersion).
150 pub fn builder() -> crate::types::builders::SolutionVersionBuilder {
151 crate::types::builders::SolutionVersionBuilder::default()
152 }
153}
154
155/// A builder for [`SolutionVersion`](crate::types::SolutionVersion).
156#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
157#[non_exhaustive]
158pub struct SolutionVersionBuilder {
159 pub(crate) name: ::std::option::Option<::std::string::String>,
160 pub(crate) solution_version_arn: ::std::option::Option<::std::string::String>,
161 pub(crate) solution_arn: ::std::option::Option<::std::string::String>,
162 pub(crate) perform_hpo: ::std::option::Option<bool>,
163 pub(crate) perform_auto_ml: ::std::option::Option<bool>,
164 pub(crate) perform_incremental_update: ::std::option::Option<bool>,
165 pub(crate) recipe_arn: ::std::option::Option<::std::string::String>,
166 pub(crate) event_type: ::std::option::Option<::std::string::String>,
167 pub(crate) dataset_group_arn: ::std::option::Option<::std::string::String>,
168 pub(crate) solution_config: ::std::option::Option<crate::types::SolutionConfig>,
169 pub(crate) training_hours: ::std::option::Option<f64>,
170 pub(crate) training_mode: ::std::option::Option<crate::types::TrainingMode>,
171 pub(crate) tuned_hpo_params: ::std::option::Option<crate::types::TunedHpoParams>,
172 pub(crate) status: ::std::option::Option<::std::string::String>,
173 pub(crate) failure_reason: ::std::option::Option<::std::string::String>,
174 pub(crate) creation_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
175 pub(crate) last_updated_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
176 pub(crate) training_type: ::std::option::Option<crate::types::TrainingType>,
177}
178impl SolutionVersionBuilder {
179 /// <p>The name of the solution version.</p>
180 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
181 self.name = ::std::option::Option::Some(input.into());
182 self
183 }
184 /// <p>The name of the solution version.</p>
185 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
186 self.name = input;
187 self
188 }
189 /// <p>The name of the solution version.</p>
190 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
191 &self.name
192 }
193 /// <p>The ARN of the solution version.</p>
194 pub fn solution_version_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
195 self.solution_version_arn = ::std::option::Option::Some(input.into());
196 self
197 }
198 /// <p>The ARN of the solution version.</p>
199 pub fn set_solution_version_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
200 self.solution_version_arn = input;
201 self
202 }
203 /// <p>The ARN of the solution version.</p>
204 pub fn get_solution_version_arn(&self) -> &::std::option::Option<::std::string::String> {
205 &self.solution_version_arn
206 }
207 /// <p>The ARN of the solution.</p>
208 pub fn solution_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
209 self.solution_arn = ::std::option::Option::Some(input.into());
210 self
211 }
212 /// <p>The ARN of the solution.</p>
213 pub fn set_solution_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
214 self.solution_arn = input;
215 self
216 }
217 /// <p>The ARN of the solution.</p>
218 pub fn get_solution_arn(&self) -> &::std::option::Option<::std::string::String> {
219 &self.solution_arn
220 }
221 /// <p>Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default is <code>false</code>.</p>
222 pub fn perform_hpo(mut self, input: bool) -> Self {
223 self.perform_hpo = ::std::option::Option::Some(input);
224 self
225 }
226 /// <p>Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default is <code>false</code>.</p>
227 pub fn set_perform_hpo(mut self, input: ::std::option::Option<bool>) -> Self {
228 self.perform_hpo = input;
229 self
230 }
231 /// <p>Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default is <code>false</code>.</p>
232 pub fn get_perform_hpo(&self) -> &::std::option::Option<bool> {
233 &self.perform_hpo
234 }
235 /// <p>When true, Amazon Personalize searches for the most optimal recipe according to the solution configuration. When false (the default), Amazon Personalize uses <code>recipeArn</code>.</p>
236 pub fn perform_auto_ml(mut self, input: bool) -> Self {
237 self.perform_auto_ml = ::std::option::Option::Some(input);
238 self
239 }
240 /// <p>When true, Amazon Personalize searches for the most optimal recipe according to the solution configuration. When false (the default), Amazon Personalize uses <code>recipeArn</code>.</p>
241 pub fn set_perform_auto_ml(mut self, input: ::std::option::Option<bool>) -> Self {
242 self.perform_auto_ml = input;
243 self
244 }
245 /// <p>When true, Amazon Personalize searches for the most optimal recipe according to the solution configuration. When false (the default), Amazon Personalize uses <code>recipeArn</code>.</p>
246 pub fn get_perform_auto_ml(&self) -> &::std::option::Option<bool> {
247 &self.perform_auto_ml
248 }
249 /// <p>Whether the solution version should perform an incremental update. When set to true, the training will process only the data that has changed since the latest training, similar to when trainingMode is set to UPDATE. This can only be used with solution versions that use the User-Personalization recipe.</p>
250 pub fn perform_incremental_update(mut self, input: bool) -> Self {
251 self.perform_incremental_update = ::std::option::Option::Some(input);
252 self
253 }
254 /// <p>Whether the solution version should perform an incremental update. When set to true, the training will process only the data that has changed since the latest training, similar to when trainingMode is set to UPDATE. This can only be used with solution versions that use the User-Personalization recipe.</p>
255 pub fn set_perform_incremental_update(mut self, input: ::std::option::Option<bool>) -> Self {
256 self.perform_incremental_update = input;
257 self
258 }
259 /// <p>Whether the solution version should perform an incremental update. When set to true, the training will process only the data that has changed since the latest training, similar to when trainingMode is set to UPDATE. This can only be used with solution versions that use the User-Personalization recipe.</p>
260 pub fn get_perform_incremental_update(&self) -> &::std::option::Option<bool> {
261 &self.perform_incremental_update
262 }
263 /// <p>The ARN of the recipe used in the solution.</p>
264 pub fn recipe_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
265 self.recipe_arn = ::std::option::Option::Some(input.into());
266 self
267 }
268 /// <p>The ARN of the recipe used in the solution.</p>
269 pub fn set_recipe_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
270 self.recipe_arn = input;
271 self
272 }
273 /// <p>The ARN of the recipe used in the solution.</p>
274 pub fn get_recipe_arn(&self) -> &::std::option::Option<::std::string::String> {
275 &self.recipe_arn
276 }
277 /// <p>The event type (for example, 'click' or 'like') that is used for training the model.</p>
278 pub fn event_type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
279 self.event_type = ::std::option::Option::Some(input.into());
280 self
281 }
282 /// <p>The event type (for example, 'click' or 'like') that is used for training the model.</p>
283 pub fn set_event_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
284 self.event_type = input;
285 self
286 }
287 /// <p>The event type (for example, 'click' or 'like') that is used for training the model.</p>
288 pub fn get_event_type(&self) -> &::std::option::Option<::std::string::String> {
289 &self.event_type
290 }
291 /// <p>The Amazon Resource Name (ARN) of the dataset group providing the training data.</p>
292 pub fn dataset_group_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
293 self.dataset_group_arn = ::std::option::Option::Some(input.into());
294 self
295 }
296 /// <p>The Amazon Resource Name (ARN) of the dataset group providing the training data.</p>
297 pub fn set_dataset_group_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
298 self.dataset_group_arn = input;
299 self
300 }
301 /// <p>The Amazon Resource Name (ARN) of the dataset group providing the training data.</p>
302 pub fn get_dataset_group_arn(&self) -> &::std::option::Option<::std::string::String> {
303 &self.dataset_group_arn
304 }
305 /// <p>Describes the configuration properties for the solution.</p>
306 pub fn solution_config(mut self, input: crate::types::SolutionConfig) -> Self {
307 self.solution_config = ::std::option::Option::Some(input);
308 self
309 }
310 /// <p>Describes the configuration properties for the solution.</p>
311 pub fn set_solution_config(mut self, input: ::std::option::Option<crate::types::SolutionConfig>) -> Self {
312 self.solution_config = input;
313 self
314 }
315 /// <p>Describes the configuration properties for the solution.</p>
316 pub fn get_solution_config(&self) -> &::std::option::Option<crate::types::SolutionConfig> {
317 &self.solution_config
318 }
319 /// <p>The time used to train the model. You are billed for the time it takes to train a model. This field is visible only after Amazon Personalize successfully trains a model.</p>
320 pub fn training_hours(mut self, input: f64) -> Self {
321 self.training_hours = ::std::option::Option::Some(input);
322 self
323 }
324 /// <p>The time used to train the model. You are billed for the time it takes to train a model. This field is visible only after Amazon Personalize successfully trains a model.</p>
325 pub fn set_training_hours(mut self, input: ::std::option::Option<f64>) -> Self {
326 self.training_hours = input;
327 self
328 }
329 /// <p>The time used to train the model. You are billed for the time it takes to train a model. This field is visible only after Amazon Personalize successfully trains a model.</p>
330 pub fn get_training_hours(&self) -> &::std::option::Option<f64> {
331 &self.training_hours
332 }
333 /// <p>The scope of training to be performed when creating the solution version. A <code>FULL</code> training considers all of the data in your dataset group. An <code>UPDATE</code> processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use <code>UPDATE</code>.</p>
334 pub fn training_mode(mut self, input: crate::types::TrainingMode) -> Self {
335 self.training_mode = ::std::option::Option::Some(input);
336 self
337 }
338 /// <p>The scope of training to be performed when creating the solution version. A <code>FULL</code> training considers all of the data in your dataset group. An <code>UPDATE</code> processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use <code>UPDATE</code>.</p>
339 pub fn set_training_mode(mut self, input: ::std::option::Option<crate::types::TrainingMode>) -> Self {
340 self.training_mode = input;
341 self
342 }
343 /// <p>The scope of training to be performed when creating the solution version. A <code>FULL</code> training considers all of the data in your dataset group. An <code>UPDATE</code> processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use <code>UPDATE</code>.</p>
344 pub fn get_training_mode(&self) -> &::std::option::Option<crate::types::TrainingMode> {
345 &self.training_mode
346 }
347 /// <p>If hyperparameter optimization was performed, contains the hyperparameter values of the best performing model.</p>
348 pub fn tuned_hpo_params(mut self, input: crate::types::TunedHpoParams) -> Self {
349 self.tuned_hpo_params = ::std::option::Option::Some(input);
350 self
351 }
352 /// <p>If hyperparameter optimization was performed, contains the hyperparameter values of the best performing model.</p>
353 pub fn set_tuned_hpo_params(mut self, input: ::std::option::Option<crate::types::TunedHpoParams>) -> Self {
354 self.tuned_hpo_params = input;
355 self
356 }
357 /// <p>If hyperparameter optimization was performed, contains the hyperparameter values of the best performing model.</p>
358 pub fn get_tuned_hpo_params(&self) -> &::std::option::Option<crate::types::TunedHpoParams> {
359 &self.tuned_hpo_params
360 }
361 /// <p>The status of the solution version.</p>
362 /// <p>A solution version can be in one of the following states:</p>
363 /// <ul>
364 /// <li>
365 /// <p>CREATE PENDING</p></li>
366 /// <li>
367 /// <p>CREATE IN_PROGRESS</p></li>
368 /// <li>
369 /// <p>ACTIVE</p></li>
370 /// <li>
371 /// <p>CREATE FAILED</p></li>
372 /// <li>
373 /// <p>CREATE STOPPING</p></li>
374 /// <li>
375 /// <p>CREATE STOPPED</p></li>
376 /// </ul>
377 pub fn status(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
378 self.status = ::std::option::Option::Some(input.into());
379 self
380 }
381 /// <p>The status of the solution version.</p>
382 /// <p>A solution version can be in one of the following states:</p>
383 /// <ul>
384 /// <li>
385 /// <p>CREATE PENDING</p></li>
386 /// <li>
387 /// <p>CREATE IN_PROGRESS</p></li>
388 /// <li>
389 /// <p>ACTIVE</p></li>
390 /// <li>
391 /// <p>CREATE FAILED</p></li>
392 /// <li>
393 /// <p>CREATE STOPPING</p></li>
394 /// <li>
395 /// <p>CREATE STOPPED</p></li>
396 /// </ul>
397 pub fn set_status(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
398 self.status = input;
399 self
400 }
401 /// <p>The status of the solution version.</p>
402 /// <p>A solution version can be in one of the following states:</p>
403 /// <ul>
404 /// <li>
405 /// <p>CREATE PENDING</p></li>
406 /// <li>
407 /// <p>CREATE IN_PROGRESS</p></li>
408 /// <li>
409 /// <p>ACTIVE</p></li>
410 /// <li>
411 /// <p>CREATE FAILED</p></li>
412 /// <li>
413 /// <p>CREATE STOPPING</p></li>
414 /// <li>
415 /// <p>CREATE STOPPED</p></li>
416 /// </ul>
417 pub fn get_status(&self) -> &::std::option::Option<::std::string::String> {
418 &self.status
419 }
420 /// <p>If training a solution version fails, the reason for the failure.</p>
421 pub fn failure_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
422 self.failure_reason = ::std::option::Option::Some(input.into());
423 self
424 }
425 /// <p>If training a solution version fails, the reason for the failure.</p>
426 pub fn set_failure_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
427 self.failure_reason = input;
428 self
429 }
430 /// <p>If training a solution version fails, the reason for the failure.</p>
431 pub fn get_failure_reason(&self) -> &::std::option::Option<::std::string::String> {
432 &self.failure_reason
433 }
434 /// <p>The date and time (in Unix time) that this version of the solution was created.</p>
435 pub fn creation_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
436 self.creation_date_time = ::std::option::Option::Some(input);
437 self
438 }
439 /// <p>The date and time (in Unix time) that this version of the solution was created.</p>
440 pub fn set_creation_date_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
441 self.creation_date_time = input;
442 self
443 }
444 /// <p>The date and time (in Unix time) that this version of the solution was created.</p>
445 pub fn get_creation_date_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
446 &self.creation_date_time
447 }
448 /// <p>The date and time (in Unix time) that the solution was last updated.</p>
449 pub fn last_updated_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
450 self.last_updated_date_time = ::std::option::Option::Some(input);
451 self
452 }
453 /// <p>The date and time (in Unix time) that the solution was last updated.</p>
454 pub fn set_last_updated_date_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
455 self.last_updated_date_time = input;
456 self
457 }
458 /// <p>The date and time (in Unix time) that the solution was last updated.</p>
459 pub fn get_last_updated_date_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
460 &self.last_updated_date_time
461 }
462 /// <p>Whether the solution version was created automatically or manually.</p>
463 pub fn training_type(mut self, input: crate::types::TrainingType) -> Self {
464 self.training_type = ::std::option::Option::Some(input);
465 self
466 }
467 /// <p>Whether the solution version was created automatically or manually.</p>
468 pub fn set_training_type(mut self, input: ::std::option::Option<crate::types::TrainingType>) -> Self {
469 self.training_type = input;
470 self
471 }
472 /// <p>Whether the solution version was created automatically or manually.</p>
473 pub fn get_training_type(&self) -> &::std::option::Option<crate::types::TrainingType> {
474 &self.training_type
475 }
476 /// Consumes the builder and constructs a [`SolutionVersion`](crate::types::SolutionVersion).
477 pub fn build(self) -> crate::types::SolutionVersion {
478 crate::types::SolutionVersion {
479 name: self.name,
480 solution_version_arn: self.solution_version_arn,
481 solution_arn: self.solution_arn,
482 perform_hpo: self.perform_hpo.unwrap_or_default(),
483 perform_auto_ml: self.perform_auto_ml.unwrap_or_default(),
484 perform_incremental_update: self.perform_incremental_update,
485 recipe_arn: self.recipe_arn,
486 event_type: self.event_type,
487 dataset_group_arn: self.dataset_group_arn,
488 solution_config: self.solution_config,
489 training_hours: self.training_hours,
490 training_mode: self.training_mode,
491 tuned_hpo_params: self.tuned_hpo_params,
492 status: self.status,
493 failure_reason: self.failure_reason,
494 creation_date_time: self.creation_date_time,
495 last_updated_date_time: self.last_updated_date_time,
496 training_type: self.training_type,
497 }
498 }
499}