1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package robomaker
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/restjson"
14)
15
16const opBatchDeleteWorlds = "BatchDeleteWorlds"
17
18// BatchDeleteWorldsRequest generates a "aws/request.Request" representing the
19// client's request for the BatchDeleteWorlds operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See BatchDeleteWorlds for more information on using the BatchDeleteWorlds
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the BatchDeleteWorldsRequest method.
34//    req, resp := client.BatchDeleteWorldsRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/BatchDeleteWorlds
42func (c *RoboMaker) BatchDeleteWorldsRequest(input *BatchDeleteWorldsInput) (req *request.Request, output *BatchDeleteWorldsOutput) {
43	op := &request.Operation{
44		Name:       opBatchDeleteWorlds,
45		HTTPMethod: "POST",
46		HTTPPath:   "/batchDeleteWorlds",
47	}
48
49	if input == nil {
50		input = &BatchDeleteWorldsInput{}
51	}
52
53	output = &BatchDeleteWorldsOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// BatchDeleteWorlds API operation for AWS RoboMaker.
59//
60// Deletes one or more worlds in a batch operation.
61//
62// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
63// with awserr.Error's Code and Message methods to get detailed information about
64// the error.
65//
66// See the AWS API reference guide for AWS RoboMaker's
67// API operation BatchDeleteWorlds for usage and error information.
68//
69// Returned Error Types:
70//   * InvalidParameterException
71//   A parameter specified in a request is not valid, is unsupported, or cannot
72//   be used. The returned message provides an explanation of the error value.
73//
74//   * ThrottlingException
75//   AWS RoboMaker is temporarily unable to process the request. Try your call
76//   again.
77//
78//   * InternalServerException
79//   AWS RoboMaker experienced a service issue. Try your call again.
80//
81// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/BatchDeleteWorlds
82func (c *RoboMaker) BatchDeleteWorlds(input *BatchDeleteWorldsInput) (*BatchDeleteWorldsOutput, error) {
83	req, out := c.BatchDeleteWorldsRequest(input)
84	return out, req.Send()
85}
86
87// BatchDeleteWorldsWithContext is the same as BatchDeleteWorlds with the addition of
88// the ability to pass a context and additional request options.
89//
90// See BatchDeleteWorlds for details on how to use this API operation.
91//
92// The context must be non-nil and will be used for request cancellation. If
93// the context is nil a panic will occur. In the future the SDK may create
94// sub-contexts for http.Requests. See https://golang.org/pkg/context/
95// for more information on using Contexts.
96func (c *RoboMaker) BatchDeleteWorldsWithContext(ctx aws.Context, input *BatchDeleteWorldsInput, opts ...request.Option) (*BatchDeleteWorldsOutput, error) {
97	req, out := c.BatchDeleteWorldsRequest(input)
98	req.SetContext(ctx)
99	req.ApplyOptions(opts...)
100	return out, req.Send()
101}
102
103const opBatchDescribeSimulationJob = "BatchDescribeSimulationJob"
104
105// BatchDescribeSimulationJobRequest generates a "aws/request.Request" representing the
106// client's request for the BatchDescribeSimulationJob operation. The "output" return
107// value will be populated with the request's response once the request completes
108// successfully.
109//
110// Use "Send" method on the returned Request to send the API call to the service.
111// the "output" return value is not valid until after Send returns without error.
112//
113// See BatchDescribeSimulationJob for more information on using the BatchDescribeSimulationJob
114// API call, and error handling.
115//
116// This method is useful when you want to inject custom logic or configuration
117// into the SDK's request lifecycle. Such as custom headers, or retry logic.
118//
119//
120//    // Example sending a request using the BatchDescribeSimulationJobRequest method.
121//    req, resp := client.BatchDescribeSimulationJobRequest(params)
122//
123//    err := req.Send()
124//    if err == nil { // resp is now filled
125//        fmt.Println(resp)
126//    }
127//
128// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/BatchDescribeSimulationJob
129func (c *RoboMaker) BatchDescribeSimulationJobRequest(input *BatchDescribeSimulationJobInput) (req *request.Request, output *BatchDescribeSimulationJobOutput) {
130	op := &request.Operation{
131		Name:       opBatchDescribeSimulationJob,
132		HTTPMethod: "POST",
133		HTTPPath:   "/batchDescribeSimulationJob",
134	}
135
136	if input == nil {
137		input = &BatchDescribeSimulationJobInput{}
138	}
139
140	output = &BatchDescribeSimulationJobOutput{}
141	req = c.newRequest(op, input, output)
142	return
143}
144
145// BatchDescribeSimulationJob API operation for AWS RoboMaker.
146//
147// Describes one or more simulation jobs.
148//
149// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
150// with awserr.Error's Code and Message methods to get detailed information about
151// the error.
152//
153// See the AWS API reference guide for AWS RoboMaker's
154// API operation BatchDescribeSimulationJob for usage and error information.
155//
156// Returned Error Types:
157//   * ResourceNotFoundException
158//   The specified resource does not exist.
159//
160//   * InvalidParameterException
161//   A parameter specified in a request is not valid, is unsupported, or cannot
162//   be used. The returned message provides an explanation of the error value.
163//
164//   * InternalServerException
165//   AWS RoboMaker experienced a service issue. Try your call again.
166//
167//   * ThrottlingException
168//   AWS RoboMaker is temporarily unable to process the request. Try your call
169//   again.
170//
171// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/BatchDescribeSimulationJob
172func (c *RoboMaker) BatchDescribeSimulationJob(input *BatchDescribeSimulationJobInput) (*BatchDescribeSimulationJobOutput, error) {
173	req, out := c.BatchDescribeSimulationJobRequest(input)
174	return out, req.Send()
175}
176
177// BatchDescribeSimulationJobWithContext is the same as BatchDescribeSimulationJob with the addition of
178// the ability to pass a context and additional request options.
179//
180// See BatchDescribeSimulationJob for details on how to use this API operation.
181//
182// The context must be non-nil and will be used for request cancellation. If
183// the context is nil a panic will occur. In the future the SDK may create
184// sub-contexts for http.Requests. See https://golang.org/pkg/context/
185// for more information on using Contexts.
186func (c *RoboMaker) BatchDescribeSimulationJobWithContext(ctx aws.Context, input *BatchDescribeSimulationJobInput, opts ...request.Option) (*BatchDescribeSimulationJobOutput, error) {
187	req, out := c.BatchDescribeSimulationJobRequest(input)
188	req.SetContext(ctx)
189	req.ApplyOptions(opts...)
190	return out, req.Send()
191}
192
193const opCancelDeploymentJob = "CancelDeploymentJob"
194
195// CancelDeploymentJobRequest generates a "aws/request.Request" representing the
196// client's request for the CancelDeploymentJob operation. The "output" return
197// value will be populated with the request's response once the request completes
198// successfully.
199//
200// Use "Send" method on the returned Request to send the API call to the service.
201// the "output" return value is not valid until after Send returns without error.
202//
203// See CancelDeploymentJob for more information on using the CancelDeploymentJob
204// API call, and error handling.
205//
206// This method is useful when you want to inject custom logic or configuration
207// into the SDK's request lifecycle. Such as custom headers, or retry logic.
208//
209//
210//    // Example sending a request using the CancelDeploymentJobRequest method.
211//    req, resp := client.CancelDeploymentJobRequest(params)
212//
213//    err := req.Send()
214//    if err == nil { // resp is now filled
215//        fmt.Println(resp)
216//    }
217//
218// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelDeploymentJob
219func (c *RoboMaker) CancelDeploymentJobRequest(input *CancelDeploymentJobInput) (req *request.Request, output *CancelDeploymentJobOutput) {
220	op := &request.Operation{
221		Name:       opCancelDeploymentJob,
222		HTTPMethod: "POST",
223		HTTPPath:   "/cancelDeploymentJob",
224	}
225
226	if input == nil {
227		input = &CancelDeploymentJobInput{}
228	}
229
230	output = &CancelDeploymentJobOutput{}
231	req = c.newRequest(op, input, output)
232	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
233	return
234}
235
236// CancelDeploymentJob API operation for AWS RoboMaker.
237//
238// Cancels the specified deployment job.
239//
240// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
241// with awserr.Error's Code and Message methods to get detailed information about
242// the error.
243//
244// See the AWS API reference guide for AWS RoboMaker's
245// API operation CancelDeploymentJob for usage and error information.
246//
247// Returned Error Types:
248//   * ResourceNotFoundException
249//   The specified resource does not exist.
250//
251//   * InvalidParameterException
252//   A parameter specified in a request is not valid, is unsupported, or cannot
253//   be used. The returned message provides an explanation of the error value.
254//
255//   * InternalServerException
256//   AWS RoboMaker experienced a service issue. Try your call again.
257//
258//   * ThrottlingException
259//   AWS RoboMaker is temporarily unable to process the request. Try your call
260//   again.
261//
262// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelDeploymentJob
263func (c *RoboMaker) CancelDeploymentJob(input *CancelDeploymentJobInput) (*CancelDeploymentJobOutput, error) {
264	req, out := c.CancelDeploymentJobRequest(input)
265	return out, req.Send()
266}
267
268// CancelDeploymentJobWithContext is the same as CancelDeploymentJob with the addition of
269// the ability to pass a context and additional request options.
270//
271// See CancelDeploymentJob for details on how to use this API operation.
272//
273// The context must be non-nil and will be used for request cancellation. If
274// the context is nil a panic will occur. In the future the SDK may create
275// sub-contexts for http.Requests. See https://golang.org/pkg/context/
276// for more information on using Contexts.
277func (c *RoboMaker) CancelDeploymentJobWithContext(ctx aws.Context, input *CancelDeploymentJobInput, opts ...request.Option) (*CancelDeploymentJobOutput, error) {
278	req, out := c.CancelDeploymentJobRequest(input)
279	req.SetContext(ctx)
280	req.ApplyOptions(opts...)
281	return out, req.Send()
282}
283
284const opCancelSimulationJob = "CancelSimulationJob"
285
286// CancelSimulationJobRequest generates a "aws/request.Request" representing the
287// client's request for the CancelSimulationJob operation. The "output" return
288// value will be populated with the request's response once the request completes
289// successfully.
290//
291// Use "Send" method on the returned Request to send the API call to the service.
292// the "output" return value is not valid until after Send returns without error.
293//
294// See CancelSimulationJob for more information on using the CancelSimulationJob
295// API call, and error handling.
296//
297// This method is useful when you want to inject custom logic or configuration
298// into the SDK's request lifecycle. Such as custom headers, or retry logic.
299//
300//
301//    // Example sending a request using the CancelSimulationJobRequest method.
302//    req, resp := client.CancelSimulationJobRequest(params)
303//
304//    err := req.Send()
305//    if err == nil { // resp is now filled
306//        fmt.Println(resp)
307//    }
308//
309// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelSimulationJob
310func (c *RoboMaker) CancelSimulationJobRequest(input *CancelSimulationJobInput) (req *request.Request, output *CancelSimulationJobOutput) {
311	op := &request.Operation{
312		Name:       opCancelSimulationJob,
313		HTTPMethod: "POST",
314		HTTPPath:   "/cancelSimulationJob",
315	}
316
317	if input == nil {
318		input = &CancelSimulationJobInput{}
319	}
320
321	output = &CancelSimulationJobOutput{}
322	req = c.newRequest(op, input, output)
323	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
324	return
325}
326
327// CancelSimulationJob API operation for AWS RoboMaker.
328//
329// Cancels the specified simulation job.
330//
331// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
332// with awserr.Error's Code and Message methods to get detailed information about
333// the error.
334//
335// See the AWS API reference guide for AWS RoboMaker's
336// API operation CancelSimulationJob for usage and error information.
337//
338// Returned Error Types:
339//   * ResourceNotFoundException
340//   The specified resource does not exist.
341//
342//   * InvalidParameterException
343//   A parameter specified in a request is not valid, is unsupported, or cannot
344//   be used. The returned message provides an explanation of the error value.
345//
346//   * InternalServerException
347//   AWS RoboMaker experienced a service issue. Try your call again.
348//
349//   * ThrottlingException
350//   AWS RoboMaker is temporarily unable to process the request. Try your call
351//   again.
352//
353// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelSimulationJob
354func (c *RoboMaker) CancelSimulationJob(input *CancelSimulationJobInput) (*CancelSimulationJobOutput, error) {
355	req, out := c.CancelSimulationJobRequest(input)
356	return out, req.Send()
357}
358
359// CancelSimulationJobWithContext is the same as CancelSimulationJob with the addition of
360// the ability to pass a context and additional request options.
361//
362// See CancelSimulationJob for details on how to use this API operation.
363//
364// The context must be non-nil and will be used for request cancellation. If
365// the context is nil a panic will occur. In the future the SDK may create
366// sub-contexts for http.Requests. See https://golang.org/pkg/context/
367// for more information on using Contexts.
368func (c *RoboMaker) CancelSimulationJobWithContext(ctx aws.Context, input *CancelSimulationJobInput, opts ...request.Option) (*CancelSimulationJobOutput, error) {
369	req, out := c.CancelSimulationJobRequest(input)
370	req.SetContext(ctx)
371	req.ApplyOptions(opts...)
372	return out, req.Send()
373}
374
375const opCancelSimulationJobBatch = "CancelSimulationJobBatch"
376
377// CancelSimulationJobBatchRequest generates a "aws/request.Request" representing the
378// client's request for the CancelSimulationJobBatch operation. The "output" return
379// value will be populated with the request's response once the request completes
380// successfully.
381//
382// Use "Send" method on the returned Request to send the API call to the service.
383// the "output" return value is not valid until after Send returns without error.
384//
385// See CancelSimulationJobBatch for more information on using the CancelSimulationJobBatch
386// API call, and error handling.
387//
388// This method is useful when you want to inject custom logic or configuration
389// into the SDK's request lifecycle. Such as custom headers, or retry logic.
390//
391//
392//    // Example sending a request using the CancelSimulationJobBatchRequest method.
393//    req, resp := client.CancelSimulationJobBatchRequest(params)
394//
395//    err := req.Send()
396//    if err == nil { // resp is now filled
397//        fmt.Println(resp)
398//    }
399//
400// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelSimulationJobBatch
401func (c *RoboMaker) CancelSimulationJobBatchRequest(input *CancelSimulationJobBatchInput) (req *request.Request, output *CancelSimulationJobBatchOutput) {
402	op := &request.Operation{
403		Name:       opCancelSimulationJobBatch,
404		HTTPMethod: "POST",
405		HTTPPath:   "/cancelSimulationJobBatch",
406	}
407
408	if input == nil {
409		input = &CancelSimulationJobBatchInput{}
410	}
411
412	output = &CancelSimulationJobBatchOutput{}
413	req = c.newRequest(op, input, output)
414	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
415	return
416}
417
418// CancelSimulationJobBatch API operation for AWS RoboMaker.
419//
420// Cancels a simulation job batch. When you cancel a simulation job batch, you
421// are also cancelling all of the active simulation jobs created as part of
422// the batch.
423//
424// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
425// with awserr.Error's Code and Message methods to get detailed information about
426// the error.
427//
428// See the AWS API reference guide for AWS RoboMaker's
429// API operation CancelSimulationJobBatch for usage and error information.
430//
431// Returned Error Types:
432//   * ResourceNotFoundException
433//   The specified resource does not exist.
434//
435//   * InvalidParameterException
436//   A parameter specified in a request is not valid, is unsupported, or cannot
437//   be used. The returned message provides an explanation of the error value.
438//
439//   * InternalServerException
440//   AWS RoboMaker experienced a service issue. Try your call again.
441//
442//   * ThrottlingException
443//   AWS RoboMaker is temporarily unable to process the request. Try your call
444//   again.
445//
446// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelSimulationJobBatch
447func (c *RoboMaker) CancelSimulationJobBatch(input *CancelSimulationJobBatchInput) (*CancelSimulationJobBatchOutput, error) {
448	req, out := c.CancelSimulationJobBatchRequest(input)
449	return out, req.Send()
450}
451
452// CancelSimulationJobBatchWithContext is the same as CancelSimulationJobBatch with the addition of
453// the ability to pass a context and additional request options.
454//
455// See CancelSimulationJobBatch for details on how to use this API operation.
456//
457// The context must be non-nil and will be used for request cancellation. If
458// the context is nil a panic will occur. In the future the SDK may create
459// sub-contexts for http.Requests. See https://golang.org/pkg/context/
460// for more information on using Contexts.
461func (c *RoboMaker) CancelSimulationJobBatchWithContext(ctx aws.Context, input *CancelSimulationJobBatchInput, opts ...request.Option) (*CancelSimulationJobBatchOutput, error) {
462	req, out := c.CancelSimulationJobBatchRequest(input)
463	req.SetContext(ctx)
464	req.ApplyOptions(opts...)
465	return out, req.Send()
466}
467
468const opCancelWorldExportJob = "CancelWorldExportJob"
469
470// CancelWorldExportJobRequest generates a "aws/request.Request" representing the
471// client's request for the CancelWorldExportJob operation. The "output" return
472// value will be populated with the request's response once the request completes
473// successfully.
474//
475// Use "Send" method on the returned Request to send the API call to the service.
476// the "output" return value is not valid until after Send returns without error.
477//
478// See CancelWorldExportJob for more information on using the CancelWorldExportJob
479// API call, and error handling.
480//
481// This method is useful when you want to inject custom logic or configuration
482// into the SDK's request lifecycle. Such as custom headers, or retry logic.
483//
484//
485//    // Example sending a request using the CancelWorldExportJobRequest method.
486//    req, resp := client.CancelWorldExportJobRequest(params)
487//
488//    err := req.Send()
489//    if err == nil { // resp is now filled
490//        fmt.Println(resp)
491//    }
492//
493// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelWorldExportJob
494func (c *RoboMaker) CancelWorldExportJobRequest(input *CancelWorldExportJobInput) (req *request.Request, output *CancelWorldExportJobOutput) {
495	op := &request.Operation{
496		Name:       opCancelWorldExportJob,
497		HTTPMethod: "POST",
498		HTTPPath:   "/cancelWorldExportJob",
499	}
500
501	if input == nil {
502		input = &CancelWorldExportJobInput{}
503	}
504
505	output = &CancelWorldExportJobOutput{}
506	req = c.newRequest(op, input, output)
507	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
508	return
509}
510
511// CancelWorldExportJob API operation for AWS RoboMaker.
512//
513// Cancels the specified export job.
514//
515// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
516// with awserr.Error's Code and Message methods to get detailed information about
517// the error.
518//
519// See the AWS API reference guide for AWS RoboMaker's
520// API operation CancelWorldExportJob for usage and error information.
521//
522// Returned Error Types:
523//   * ResourceNotFoundException
524//   The specified resource does not exist.
525//
526//   * InvalidParameterException
527//   A parameter specified in a request is not valid, is unsupported, or cannot
528//   be used. The returned message provides an explanation of the error value.
529//
530//   * InternalServerException
531//   AWS RoboMaker experienced a service issue. Try your call again.
532//
533//   * ThrottlingException
534//   AWS RoboMaker is temporarily unable to process the request. Try your call
535//   again.
536//
537// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelWorldExportJob
538func (c *RoboMaker) CancelWorldExportJob(input *CancelWorldExportJobInput) (*CancelWorldExportJobOutput, error) {
539	req, out := c.CancelWorldExportJobRequest(input)
540	return out, req.Send()
541}
542
543// CancelWorldExportJobWithContext is the same as CancelWorldExportJob with the addition of
544// the ability to pass a context and additional request options.
545//
546// See CancelWorldExportJob for details on how to use this API operation.
547//
548// The context must be non-nil and will be used for request cancellation. If
549// the context is nil a panic will occur. In the future the SDK may create
550// sub-contexts for http.Requests. See https://golang.org/pkg/context/
551// for more information on using Contexts.
552func (c *RoboMaker) CancelWorldExportJobWithContext(ctx aws.Context, input *CancelWorldExportJobInput, opts ...request.Option) (*CancelWorldExportJobOutput, error) {
553	req, out := c.CancelWorldExportJobRequest(input)
554	req.SetContext(ctx)
555	req.ApplyOptions(opts...)
556	return out, req.Send()
557}
558
559const opCancelWorldGenerationJob = "CancelWorldGenerationJob"
560
561// CancelWorldGenerationJobRequest generates a "aws/request.Request" representing the
562// client's request for the CancelWorldGenerationJob operation. The "output" return
563// value will be populated with the request's response once the request completes
564// successfully.
565//
566// Use "Send" method on the returned Request to send the API call to the service.
567// the "output" return value is not valid until after Send returns without error.
568//
569// See CancelWorldGenerationJob for more information on using the CancelWorldGenerationJob
570// API call, and error handling.
571//
572// This method is useful when you want to inject custom logic or configuration
573// into the SDK's request lifecycle. Such as custom headers, or retry logic.
574//
575//
576//    // Example sending a request using the CancelWorldGenerationJobRequest method.
577//    req, resp := client.CancelWorldGenerationJobRequest(params)
578//
579//    err := req.Send()
580//    if err == nil { // resp is now filled
581//        fmt.Println(resp)
582//    }
583//
584// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelWorldGenerationJob
585func (c *RoboMaker) CancelWorldGenerationJobRequest(input *CancelWorldGenerationJobInput) (req *request.Request, output *CancelWorldGenerationJobOutput) {
586	op := &request.Operation{
587		Name:       opCancelWorldGenerationJob,
588		HTTPMethod: "POST",
589		HTTPPath:   "/cancelWorldGenerationJob",
590	}
591
592	if input == nil {
593		input = &CancelWorldGenerationJobInput{}
594	}
595
596	output = &CancelWorldGenerationJobOutput{}
597	req = c.newRequest(op, input, output)
598	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
599	return
600}
601
602// CancelWorldGenerationJob API operation for AWS RoboMaker.
603//
604// Cancels the specified world generator job.
605//
606// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
607// with awserr.Error's Code and Message methods to get detailed information about
608// the error.
609//
610// See the AWS API reference guide for AWS RoboMaker's
611// API operation CancelWorldGenerationJob for usage and error information.
612//
613// Returned Error Types:
614//   * ResourceNotFoundException
615//   The specified resource does not exist.
616//
617//   * InvalidParameterException
618//   A parameter specified in a request is not valid, is unsupported, or cannot
619//   be used. The returned message provides an explanation of the error value.
620//
621//   * InternalServerException
622//   AWS RoboMaker experienced a service issue. Try your call again.
623//
624//   * ThrottlingException
625//   AWS RoboMaker is temporarily unable to process the request. Try your call
626//   again.
627//
628// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CancelWorldGenerationJob
629func (c *RoboMaker) CancelWorldGenerationJob(input *CancelWorldGenerationJobInput) (*CancelWorldGenerationJobOutput, error) {
630	req, out := c.CancelWorldGenerationJobRequest(input)
631	return out, req.Send()
632}
633
634// CancelWorldGenerationJobWithContext is the same as CancelWorldGenerationJob with the addition of
635// the ability to pass a context and additional request options.
636//
637// See CancelWorldGenerationJob for details on how to use this API operation.
638//
639// The context must be non-nil and will be used for request cancellation. If
640// the context is nil a panic will occur. In the future the SDK may create
641// sub-contexts for http.Requests. See https://golang.org/pkg/context/
642// for more information on using Contexts.
643func (c *RoboMaker) CancelWorldGenerationJobWithContext(ctx aws.Context, input *CancelWorldGenerationJobInput, opts ...request.Option) (*CancelWorldGenerationJobOutput, error) {
644	req, out := c.CancelWorldGenerationJobRequest(input)
645	req.SetContext(ctx)
646	req.ApplyOptions(opts...)
647	return out, req.Send()
648}
649
650const opCreateDeploymentJob = "CreateDeploymentJob"
651
652// CreateDeploymentJobRequest generates a "aws/request.Request" representing the
653// client's request for the CreateDeploymentJob operation. The "output" return
654// value will be populated with the request's response once the request completes
655// successfully.
656//
657// Use "Send" method on the returned Request to send the API call to the service.
658// the "output" return value is not valid until after Send returns without error.
659//
660// See CreateDeploymentJob for more information on using the CreateDeploymentJob
661// API call, and error handling.
662//
663// This method is useful when you want to inject custom logic or configuration
664// into the SDK's request lifecycle. Such as custom headers, or retry logic.
665//
666//
667//    // Example sending a request using the CreateDeploymentJobRequest method.
668//    req, resp := client.CreateDeploymentJobRequest(params)
669//
670//    err := req.Send()
671//    if err == nil { // resp is now filled
672//        fmt.Println(resp)
673//    }
674//
675// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateDeploymentJob
676func (c *RoboMaker) CreateDeploymentJobRequest(input *CreateDeploymentJobInput) (req *request.Request, output *CreateDeploymentJobOutput) {
677	op := &request.Operation{
678		Name:       opCreateDeploymentJob,
679		HTTPMethod: "POST",
680		HTTPPath:   "/createDeploymentJob",
681	}
682
683	if input == nil {
684		input = &CreateDeploymentJobInput{}
685	}
686
687	output = &CreateDeploymentJobOutput{}
688	req = c.newRequest(op, input, output)
689	return
690}
691
692// CreateDeploymentJob API operation for AWS RoboMaker.
693//
694// Deploys a specific version of a robot application to robots in a fleet.
695//
696// The robot application must have a numbered applicationVersion for consistency
697// reasons. To create a new version, use CreateRobotApplicationVersion or see
698// Creating a Robot Application Version (https://docs.aws.amazon.com/robomaker/latest/dg/create-robot-application-version.html).
699//
700// After 90 days, deployment jobs expire and will be deleted. They will no longer
701// be accessible.
702//
703// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
704// with awserr.Error's Code and Message methods to get detailed information about
705// the error.
706//
707// See the AWS API reference guide for AWS RoboMaker's
708// API operation CreateDeploymentJob for usage and error information.
709//
710// Returned Error Types:
711//   * ResourceNotFoundException
712//   The specified resource does not exist.
713//
714//   * InvalidParameterException
715//   A parameter specified in a request is not valid, is unsupported, or cannot
716//   be used. The returned message provides an explanation of the error value.
717//
718//   * InternalServerException
719//   AWS RoboMaker experienced a service issue. Try your call again.
720//
721//   * ThrottlingException
722//   AWS RoboMaker is temporarily unable to process the request. Try your call
723//   again.
724//
725//   * LimitExceededException
726//   The requested resource exceeds the maximum number allowed, or the number
727//   of concurrent stream requests exceeds the maximum number allowed.
728//
729//   * ConcurrentDeploymentException
730//   The failure percentage threshold percentage was met.
731//
732//   * IdempotentParameterMismatchException
733//   The request uses the same client token as a previous, but non-identical request.
734//   Do not reuse a client token with different requests, unless the requests
735//   are identical.
736//
737// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateDeploymentJob
738func (c *RoboMaker) CreateDeploymentJob(input *CreateDeploymentJobInput) (*CreateDeploymentJobOutput, error) {
739	req, out := c.CreateDeploymentJobRequest(input)
740	return out, req.Send()
741}
742
743// CreateDeploymentJobWithContext is the same as CreateDeploymentJob with the addition of
744// the ability to pass a context and additional request options.
745//
746// See CreateDeploymentJob for details on how to use this API operation.
747//
748// The context must be non-nil and will be used for request cancellation. If
749// the context is nil a panic will occur. In the future the SDK may create
750// sub-contexts for http.Requests. See https://golang.org/pkg/context/
751// for more information on using Contexts.
752func (c *RoboMaker) CreateDeploymentJobWithContext(ctx aws.Context, input *CreateDeploymentJobInput, opts ...request.Option) (*CreateDeploymentJobOutput, error) {
753	req, out := c.CreateDeploymentJobRequest(input)
754	req.SetContext(ctx)
755	req.ApplyOptions(opts...)
756	return out, req.Send()
757}
758
759const opCreateFleet = "CreateFleet"
760
761// CreateFleetRequest generates a "aws/request.Request" representing the
762// client's request for the CreateFleet operation. The "output" return
763// value will be populated with the request's response once the request completes
764// successfully.
765//
766// Use "Send" method on the returned Request to send the API call to the service.
767// the "output" return value is not valid until after Send returns without error.
768//
769// See CreateFleet for more information on using the CreateFleet
770// API call, and error handling.
771//
772// This method is useful when you want to inject custom logic or configuration
773// into the SDK's request lifecycle. Such as custom headers, or retry logic.
774//
775//
776//    // Example sending a request using the CreateFleetRequest method.
777//    req, resp := client.CreateFleetRequest(params)
778//
779//    err := req.Send()
780//    if err == nil { // resp is now filled
781//        fmt.Println(resp)
782//    }
783//
784// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateFleet
785func (c *RoboMaker) CreateFleetRequest(input *CreateFleetInput) (req *request.Request, output *CreateFleetOutput) {
786	op := &request.Operation{
787		Name:       opCreateFleet,
788		HTTPMethod: "POST",
789		HTTPPath:   "/createFleet",
790	}
791
792	if input == nil {
793		input = &CreateFleetInput{}
794	}
795
796	output = &CreateFleetOutput{}
797	req = c.newRequest(op, input, output)
798	return
799}
800
801// CreateFleet API operation for AWS RoboMaker.
802//
803// Creates a fleet, a logical group of robots running the same robot application.
804//
805// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
806// with awserr.Error's Code and Message methods to get detailed information about
807// the error.
808//
809// See the AWS API reference guide for AWS RoboMaker's
810// API operation CreateFleet for usage and error information.
811//
812// Returned Error Types:
813//   * InvalidParameterException
814//   A parameter specified in a request is not valid, is unsupported, or cannot
815//   be used. The returned message provides an explanation of the error value.
816//
817//   * InternalServerException
818//   AWS RoboMaker experienced a service issue. Try your call again.
819//
820//   * ThrottlingException
821//   AWS RoboMaker is temporarily unable to process the request. Try your call
822//   again.
823//
824//   * LimitExceededException
825//   The requested resource exceeds the maximum number allowed, or the number
826//   of concurrent stream requests exceeds the maximum number allowed.
827//
828// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateFleet
829func (c *RoboMaker) CreateFleet(input *CreateFleetInput) (*CreateFleetOutput, error) {
830	req, out := c.CreateFleetRequest(input)
831	return out, req.Send()
832}
833
834// CreateFleetWithContext is the same as CreateFleet with the addition of
835// the ability to pass a context and additional request options.
836//
837// See CreateFleet for details on how to use this API operation.
838//
839// The context must be non-nil and will be used for request cancellation. If
840// the context is nil a panic will occur. In the future the SDK may create
841// sub-contexts for http.Requests. See https://golang.org/pkg/context/
842// for more information on using Contexts.
843func (c *RoboMaker) CreateFleetWithContext(ctx aws.Context, input *CreateFleetInput, opts ...request.Option) (*CreateFleetOutput, error) {
844	req, out := c.CreateFleetRequest(input)
845	req.SetContext(ctx)
846	req.ApplyOptions(opts...)
847	return out, req.Send()
848}
849
850const opCreateRobot = "CreateRobot"
851
852// CreateRobotRequest generates a "aws/request.Request" representing the
853// client's request for the CreateRobot operation. The "output" return
854// value will be populated with the request's response once the request completes
855// successfully.
856//
857// Use "Send" method on the returned Request to send the API call to the service.
858// the "output" return value is not valid until after Send returns without error.
859//
860// See CreateRobot for more information on using the CreateRobot
861// API call, and error handling.
862//
863// This method is useful when you want to inject custom logic or configuration
864// into the SDK's request lifecycle. Such as custom headers, or retry logic.
865//
866//
867//    // Example sending a request using the CreateRobotRequest method.
868//    req, resp := client.CreateRobotRequest(params)
869//
870//    err := req.Send()
871//    if err == nil { // resp is now filled
872//        fmt.Println(resp)
873//    }
874//
875// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateRobot
876func (c *RoboMaker) CreateRobotRequest(input *CreateRobotInput) (req *request.Request, output *CreateRobotOutput) {
877	op := &request.Operation{
878		Name:       opCreateRobot,
879		HTTPMethod: "POST",
880		HTTPPath:   "/createRobot",
881	}
882
883	if input == nil {
884		input = &CreateRobotInput{}
885	}
886
887	output = &CreateRobotOutput{}
888	req = c.newRequest(op, input, output)
889	return
890}
891
892// CreateRobot API operation for AWS RoboMaker.
893//
894// Creates a robot.
895//
896// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
897// with awserr.Error's Code and Message methods to get detailed information about
898// the error.
899//
900// See the AWS API reference guide for AWS RoboMaker's
901// API operation CreateRobot for usage and error information.
902//
903// Returned Error Types:
904//   * InvalidParameterException
905//   A parameter specified in a request is not valid, is unsupported, or cannot
906//   be used. The returned message provides an explanation of the error value.
907//
908//   * InternalServerException
909//   AWS RoboMaker experienced a service issue. Try your call again.
910//
911//   * ThrottlingException
912//   AWS RoboMaker is temporarily unable to process the request. Try your call
913//   again.
914//
915//   * LimitExceededException
916//   The requested resource exceeds the maximum number allowed, or the number
917//   of concurrent stream requests exceeds the maximum number allowed.
918//
919//   * ResourceAlreadyExistsException
920//   The specified resource already exists.
921//
922// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateRobot
923func (c *RoboMaker) CreateRobot(input *CreateRobotInput) (*CreateRobotOutput, error) {
924	req, out := c.CreateRobotRequest(input)
925	return out, req.Send()
926}
927
928// CreateRobotWithContext is the same as CreateRobot with the addition of
929// the ability to pass a context and additional request options.
930//
931// See CreateRobot for details on how to use this API operation.
932//
933// The context must be non-nil and will be used for request cancellation. If
934// the context is nil a panic will occur. In the future the SDK may create
935// sub-contexts for http.Requests. See https://golang.org/pkg/context/
936// for more information on using Contexts.
937func (c *RoboMaker) CreateRobotWithContext(ctx aws.Context, input *CreateRobotInput, opts ...request.Option) (*CreateRobotOutput, error) {
938	req, out := c.CreateRobotRequest(input)
939	req.SetContext(ctx)
940	req.ApplyOptions(opts...)
941	return out, req.Send()
942}
943
944const opCreateRobotApplication = "CreateRobotApplication"
945
946// CreateRobotApplicationRequest generates a "aws/request.Request" representing the
947// client's request for the CreateRobotApplication operation. The "output" return
948// value will be populated with the request's response once the request completes
949// successfully.
950//
951// Use "Send" method on the returned Request to send the API call to the service.
952// the "output" return value is not valid until after Send returns without error.
953//
954// See CreateRobotApplication for more information on using the CreateRobotApplication
955// API call, and error handling.
956//
957// This method is useful when you want to inject custom logic or configuration
958// into the SDK's request lifecycle. Such as custom headers, or retry logic.
959//
960//
961//    // Example sending a request using the CreateRobotApplicationRequest method.
962//    req, resp := client.CreateRobotApplicationRequest(params)
963//
964//    err := req.Send()
965//    if err == nil { // resp is now filled
966//        fmt.Println(resp)
967//    }
968//
969// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateRobotApplication
970func (c *RoboMaker) CreateRobotApplicationRequest(input *CreateRobotApplicationInput) (req *request.Request, output *CreateRobotApplicationOutput) {
971	op := &request.Operation{
972		Name:       opCreateRobotApplication,
973		HTTPMethod: "POST",
974		HTTPPath:   "/createRobotApplication",
975	}
976
977	if input == nil {
978		input = &CreateRobotApplicationInput{}
979	}
980
981	output = &CreateRobotApplicationOutput{}
982	req = c.newRequest(op, input, output)
983	return
984}
985
986// CreateRobotApplication API operation for AWS RoboMaker.
987//
988// Creates a robot application.
989//
990// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
991// with awserr.Error's Code and Message methods to get detailed information about
992// the error.
993//
994// See the AWS API reference guide for AWS RoboMaker's
995// API operation CreateRobotApplication for usage and error information.
996//
997// Returned Error Types:
998//   * InvalidParameterException
999//   A parameter specified in a request is not valid, is unsupported, or cannot
1000//   be used. The returned message provides an explanation of the error value.
1001//
1002//   * ResourceAlreadyExistsException
1003//   The specified resource already exists.
1004//
1005//   * LimitExceededException
1006//   The requested resource exceeds the maximum number allowed, or the number
1007//   of concurrent stream requests exceeds the maximum number allowed.
1008//
1009//   * ThrottlingException
1010//   AWS RoboMaker is temporarily unable to process the request. Try your call
1011//   again.
1012//
1013//   * InternalServerException
1014//   AWS RoboMaker experienced a service issue. Try your call again.
1015//
1016//   * IdempotentParameterMismatchException
1017//   The request uses the same client token as a previous, but non-identical request.
1018//   Do not reuse a client token with different requests, unless the requests
1019//   are identical.
1020//
1021// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateRobotApplication
1022func (c *RoboMaker) CreateRobotApplication(input *CreateRobotApplicationInput) (*CreateRobotApplicationOutput, error) {
1023	req, out := c.CreateRobotApplicationRequest(input)
1024	return out, req.Send()
1025}
1026
1027// CreateRobotApplicationWithContext is the same as CreateRobotApplication with the addition of
1028// the ability to pass a context and additional request options.
1029//
1030// See CreateRobotApplication for details on how to use this API operation.
1031//
1032// The context must be non-nil and will be used for request cancellation. If
1033// the context is nil a panic will occur. In the future the SDK may create
1034// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1035// for more information on using Contexts.
1036func (c *RoboMaker) CreateRobotApplicationWithContext(ctx aws.Context, input *CreateRobotApplicationInput, opts ...request.Option) (*CreateRobotApplicationOutput, error) {
1037	req, out := c.CreateRobotApplicationRequest(input)
1038	req.SetContext(ctx)
1039	req.ApplyOptions(opts...)
1040	return out, req.Send()
1041}
1042
1043const opCreateRobotApplicationVersion = "CreateRobotApplicationVersion"
1044
1045// CreateRobotApplicationVersionRequest generates a "aws/request.Request" representing the
1046// client's request for the CreateRobotApplicationVersion operation. The "output" return
1047// value will be populated with the request's response once the request completes
1048// successfully.
1049//
1050// Use "Send" method on the returned Request to send the API call to the service.
1051// the "output" return value is not valid until after Send returns without error.
1052//
1053// See CreateRobotApplicationVersion for more information on using the CreateRobotApplicationVersion
1054// API call, and error handling.
1055//
1056// This method is useful when you want to inject custom logic or configuration
1057// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1058//
1059//
1060//    // Example sending a request using the CreateRobotApplicationVersionRequest method.
1061//    req, resp := client.CreateRobotApplicationVersionRequest(params)
1062//
1063//    err := req.Send()
1064//    if err == nil { // resp is now filled
1065//        fmt.Println(resp)
1066//    }
1067//
1068// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateRobotApplicationVersion
1069func (c *RoboMaker) CreateRobotApplicationVersionRequest(input *CreateRobotApplicationVersionInput) (req *request.Request, output *CreateRobotApplicationVersionOutput) {
1070	op := &request.Operation{
1071		Name:       opCreateRobotApplicationVersion,
1072		HTTPMethod: "POST",
1073		HTTPPath:   "/createRobotApplicationVersion",
1074	}
1075
1076	if input == nil {
1077		input = &CreateRobotApplicationVersionInput{}
1078	}
1079
1080	output = &CreateRobotApplicationVersionOutput{}
1081	req = c.newRequest(op, input, output)
1082	return
1083}
1084
1085// CreateRobotApplicationVersion API operation for AWS RoboMaker.
1086//
1087// Creates a version of a robot application.
1088//
1089// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1090// with awserr.Error's Code and Message methods to get detailed information about
1091// the error.
1092//
1093// See the AWS API reference guide for AWS RoboMaker's
1094// API operation CreateRobotApplicationVersion for usage and error information.
1095//
1096// Returned Error Types:
1097//   * InvalidParameterException
1098//   A parameter specified in a request is not valid, is unsupported, or cannot
1099//   be used. The returned message provides an explanation of the error value.
1100//
1101//   * IdempotentParameterMismatchException
1102//   The request uses the same client token as a previous, but non-identical request.
1103//   Do not reuse a client token with different requests, unless the requests
1104//   are identical.
1105//
1106//   * LimitExceededException
1107//   The requested resource exceeds the maximum number allowed, or the number
1108//   of concurrent stream requests exceeds the maximum number allowed.
1109//
1110//   * ThrottlingException
1111//   AWS RoboMaker is temporarily unable to process the request. Try your call
1112//   again.
1113//
1114//   * InternalServerException
1115//   AWS RoboMaker experienced a service issue. Try your call again.
1116//
1117// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateRobotApplicationVersion
1118func (c *RoboMaker) CreateRobotApplicationVersion(input *CreateRobotApplicationVersionInput) (*CreateRobotApplicationVersionOutput, error) {
1119	req, out := c.CreateRobotApplicationVersionRequest(input)
1120	return out, req.Send()
1121}
1122
1123// CreateRobotApplicationVersionWithContext is the same as CreateRobotApplicationVersion with the addition of
1124// the ability to pass a context and additional request options.
1125//
1126// See CreateRobotApplicationVersion for details on how to use this API operation.
1127//
1128// The context must be non-nil and will be used for request cancellation. If
1129// the context is nil a panic will occur. In the future the SDK may create
1130// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1131// for more information on using Contexts.
1132func (c *RoboMaker) CreateRobotApplicationVersionWithContext(ctx aws.Context, input *CreateRobotApplicationVersionInput, opts ...request.Option) (*CreateRobotApplicationVersionOutput, error) {
1133	req, out := c.CreateRobotApplicationVersionRequest(input)
1134	req.SetContext(ctx)
1135	req.ApplyOptions(opts...)
1136	return out, req.Send()
1137}
1138
1139const opCreateSimulationApplication = "CreateSimulationApplication"
1140
1141// CreateSimulationApplicationRequest generates a "aws/request.Request" representing the
1142// client's request for the CreateSimulationApplication operation. The "output" return
1143// value will be populated with the request's response once the request completes
1144// successfully.
1145//
1146// Use "Send" method on the returned Request to send the API call to the service.
1147// the "output" return value is not valid until after Send returns without error.
1148//
1149// See CreateSimulationApplication for more information on using the CreateSimulationApplication
1150// API call, and error handling.
1151//
1152// This method is useful when you want to inject custom logic or configuration
1153// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1154//
1155//
1156//    // Example sending a request using the CreateSimulationApplicationRequest method.
1157//    req, resp := client.CreateSimulationApplicationRequest(params)
1158//
1159//    err := req.Send()
1160//    if err == nil { // resp is now filled
1161//        fmt.Println(resp)
1162//    }
1163//
1164// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateSimulationApplication
1165func (c *RoboMaker) CreateSimulationApplicationRequest(input *CreateSimulationApplicationInput) (req *request.Request, output *CreateSimulationApplicationOutput) {
1166	op := &request.Operation{
1167		Name:       opCreateSimulationApplication,
1168		HTTPMethod: "POST",
1169		HTTPPath:   "/createSimulationApplication",
1170	}
1171
1172	if input == nil {
1173		input = &CreateSimulationApplicationInput{}
1174	}
1175
1176	output = &CreateSimulationApplicationOutput{}
1177	req = c.newRequest(op, input, output)
1178	return
1179}
1180
1181// CreateSimulationApplication API operation for AWS RoboMaker.
1182//
1183// Creates a simulation application.
1184//
1185// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1186// with awserr.Error's Code and Message methods to get detailed information about
1187// the error.
1188//
1189// See the AWS API reference guide for AWS RoboMaker's
1190// API operation CreateSimulationApplication for usage and error information.
1191//
1192// Returned Error Types:
1193//   * InvalidParameterException
1194//   A parameter specified in a request is not valid, is unsupported, or cannot
1195//   be used. The returned message provides an explanation of the error value.
1196//
1197//   * ResourceAlreadyExistsException
1198//   The specified resource already exists.
1199//
1200//   * LimitExceededException
1201//   The requested resource exceeds the maximum number allowed, or the number
1202//   of concurrent stream requests exceeds the maximum number allowed.
1203//
1204//   * ThrottlingException
1205//   AWS RoboMaker is temporarily unable to process the request. Try your call
1206//   again.
1207//
1208//   * InternalServerException
1209//   AWS RoboMaker experienced a service issue. Try your call again.
1210//
1211//   * IdempotentParameterMismatchException
1212//   The request uses the same client token as a previous, but non-identical request.
1213//   Do not reuse a client token with different requests, unless the requests
1214//   are identical.
1215//
1216// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateSimulationApplication
1217func (c *RoboMaker) CreateSimulationApplication(input *CreateSimulationApplicationInput) (*CreateSimulationApplicationOutput, error) {
1218	req, out := c.CreateSimulationApplicationRequest(input)
1219	return out, req.Send()
1220}
1221
1222// CreateSimulationApplicationWithContext is the same as CreateSimulationApplication with the addition of
1223// the ability to pass a context and additional request options.
1224//
1225// See CreateSimulationApplication for details on how to use this API operation.
1226//
1227// The context must be non-nil and will be used for request cancellation. If
1228// the context is nil a panic will occur. In the future the SDK may create
1229// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1230// for more information on using Contexts.
1231func (c *RoboMaker) CreateSimulationApplicationWithContext(ctx aws.Context, input *CreateSimulationApplicationInput, opts ...request.Option) (*CreateSimulationApplicationOutput, error) {
1232	req, out := c.CreateSimulationApplicationRequest(input)
1233	req.SetContext(ctx)
1234	req.ApplyOptions(opts...)
1235	return out, req.Send()
1236}
1237
1238const opCreateSimulationApplicationVersion = "CreateSimulationApplicationVersion"
1239
1240// CreateSimulationApplicationVersionRequest generates a "aws/request.Request" representing the
1241// client's request for the CreateSimulationApplicationVersion operation. The "output" return
1242// value will be populated with the request's response once the request completes
1243// successfully.
1244//
1245// Use "Send" method on the returned Request to send the API call to the service.
1246// the "output" return value is not valid until after Send returns without error.
1247//
1248// See CreateSimulationApplicationVersion for more information on using the CreateSimulationApplicationVersion
1249// API call, and error handling.
1250//
1251// This method is useful when you want to inject custom logic or configuration
1252// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1253//
1254//
1255//    // Example sending a request using the CreateSimulationApplicationVersionRequest method.
1256//    req, resp := client.CreateSimulationApplicationVersionRequest(params)
1257//
1258//    err := req.Send()
1259//    if err == nil { // resp is now filled
1260//        fmt.Println(resp)
1261//    }
1262//
1263// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateSimulationApplicationVersion
1264func (c *RoboMaker) CreateSimulationApplicationVersionRequest(input *CreateSimulationApplicationVersionInput) (req *request.Request, output *CreateSimulationApplicationVersionOutput) {
1265	op := &request.Operation{
1266		Name:       opCreateSimulationApplicationVersion,
1267		HTTPMethod: "POST",
1268		HTTPPath:   "/createSimulationApplicationVersion",
1269	}
1270
1271	if input == nil {
1272		input = &CreateSimulationApplicationVersionInput{}
1273	}
1274
1275	output = &CreateSimulationApplicationVersionOutput{}
1276	req = c.newRequest(op, input, output)
1277	return
1278}
1279
1280// CreateSimulationApplicationVersion API operation for AWS RoboMaker.
1281//
1282// Creates a simulation application with a specific revision id.
1283//
1284// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1285// with awserr.Error's Code and Message methods to get detailed information about
1286// the error.
1287//
1288// See the AWS API reference guide for AWS RoboMaker's
1289// API operation CreateSimulationApplicationVersion for usage and error information.
1290//
1291// Returned Error Types:
1292//   * InvalidParameterException
1293//   A parameter specified in a request is not valid, is unsupported, or cannot
1294//   be used. The returned message provides an explanation of the error value.
1295//
1296//   * IdempotentParameterMismatchException
1297//   The request uses the same client token as a previous, but non-identical request.
1298//   Do not reuse a client token with different requests, unless the requests
1299//   are identical.
1300//
1301//   * LimitExceededException
1302//   The requested resource exceeds the maximum number allowed, or the number
1303//   of concurrent stream requests exceeds the maximum number allowed.
1304//
1305//   * ThrottlingException
1306//   AWS RoboMaker is temporarily unable to process the request. Try your call
1307//   again.
1308//
1309//   * InternalServerException
1310//   AWS RoboMaker experienced a service issue. Try your call again.
1311//
1312// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateSimulationApplicationVersion
1313func (c *RoboMaker) CreateSimulationApplicationVersion(input *CreateSimulationApplicationVersionInput) (*CreateSimulationApplicationVersionOutput, error) {
1314	req, out := c.CreateSimulationApplicationVersionRequest(input)
1315	return out, req.Send()
1316}
1317
1318// CreateSimulationApplicationVersionWithContext is the same as CreateSimulationApplicationVersion with the addition of
1319// the ability to pass a context and additional request options.
1320//
1321// See CreateSimulationApplicationVersion for details on how to use this API operation.
1322//
1323// The context must be non-nil and will be used for request cancellation. If
1324// the context is nil a panic will occur. In the future the SDK may create
1325// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1326// for more information on using Contexts.
1327func (c *RoboMaker) CreateSimulationApplicationVersionWithContext(ctx aws.Context, input *CreateSimulationApplicationVersionInput, opts ...request.Option) (*CreateSimulationApplicationVersionOutput, error) {
1328	req, out := c.CreateSimulationApplicationVersionRequest(input)
1329	req.SetContext(ctx)
1330	req.ApplyOptions(opts...)
1331	return out, req.Send()
1332}
1333
1334const opCreateSimulationJob = "CreateSimulationJob"
1335
1336// CreateSimulationJobRequest generates a "aws/request.Request" representing the
1337// client's request for the CreateSimulationJob operation. The "output" return
1338// value will be populated with the request's response once the request completes
1339// successfully.
1340//
1341// Use "Send" method on the returned Request to send the API call to the service.
1342// the "output" return value is not valid until after Send returns without error.
1343//
1344// See CreateSimulationJob for more information on using the CreateSimulationJob
1345// API call, and error handling.
1346//
1347// This method is useful when you want to inject custom logic or configuration
1348// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1349//
1350//
1351//    // Example sending a request using the CreateSimulationJobRequest method.
1352//    req, resp := client.CreateSimulationJobRequest(params)
1353//
1354//    err := req.Send()
1355//    if err == nil { // resp is now filled
1356//        fmt.Println(resp)
1357//    }
1358//
1359// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateSimulationJob
1360func (c *RoboMaker) CreateSimulationJobRequest(input *CreateSimulationJobInput) (req *request.Request, output *CreateSimulationJobOutput) {
1361	op := &request.Operation{
1362		Name:       opCreateSimulationJob,
1363		HTTPMethod: "POST",
1364		HTTPPath:   "/createSimulationJob",
1365	}
1366
1367	if input == nil {
1368		input = &CreateSimulationJobInput{}
1369	}
1370
1371	output = &CreateSimulationJobOutput{}
1372	req = c.newRequest(op, input, output)
1373	return
1374}
1375
1376// CreateSimulationJob API operation for AWS RoboMaker.
1377//
1378// Creates a simulation job.
1379//
1380// After 90 days, simulation jobs expire and will be deleted. They will no longer
1381// be accessible.
1382//
1383// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1384// with awserr.Error's Code and Message methods to get detailed information about
1385// the error.
1386//
1387// See the AWS API reference guide for AWS RoboMaker's
1388// API operation CreateSimulationJob for usage and error information.
1389//
1390// Returned Error Types:
1391//   * ResourceNotFoundException
1392//   The specified resource does not exist.
1393//
1394//   * InvalidParameterException
1395//   A parameter specified in a request is not valid, is unsupported, or cannot
1396//   be used. The returned message provides an explanation of the error value.
1397//
1398//   * InternalServerException
1399//   AWS RoboMaker experienced a service issue. Try your call again.
1400//
1401//   * ThrottlingException
1402//   AWS RoboMaker is temporarily unable to process the request. Try your call
1403//   again.
1404//
1405//   * LimitExceededException
1406//   The requested resource exceeds the maximum number allowed, or the number
1407//   of concurrent stream requests exceeds the maximum number allowed.
1408//
1409//   * IdempotentParameterMismatchException
1410//   The request uses the same client token as a previous, but non-identical request.
1411//   Do not reuse a client token with different requests, unless the requests
1412//   are identical.
1413//
1414//   * ServiceUnavailableException
1415//   The request has failed due to a temporary failure of the server.
1416//
1417// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateSimulationJob
1418func (c *RoboMaker) CreateSimulationJob(input *CreateSimulationJobInput) (*CreateSimulationJobOutput, error) {
1419	req, out := c.CreateSimulationJobRequest(input)
1420	return out, req.Send()
1421}
1422
1423// CreateSimulationJobWithContext is the same as CreateSimulationJob with the addition of
1424// the ability to pass a context and additional request options.
1425//
1426// See CreateSimulationJob for details on how to use this API operation.
1427//
1428// The context must be non-nil and will be used for request cancellation. If
1429// the context is nil a panic will occur. In the future the SDK may create
1430// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1431// for more information on using Contexts.
1432func (c *RoboMaker) CreateSimulationJobWithContext(ctx aws.Context, input *CreateSimulationJobInput, opts ...request.Option) (*CreateSimulationJobOutput, error) {
1433	req, out := c.CreateSimulationJobRequest(input)
1434	req.SetContext(ctx)
1435	req.ApplyOptions(opts...)
1436	return out, req.Send()
1437}
1438
1439const opCreateWorldExportJob = "CreateWorldExportJob"
1440
1441// CreateWorldExportJobRequest generates a "aws/request.Request" representing the
1442// client's request for the CreateWorldExportJob operation. The "output" return
1443// value will be populated with the request's response once the request completes
1444// successfully.
1445//
1446// Use "Send" method on the returned Request to send the API call to the service.
1447// the "output" return value is not valid until after Send returns without error.
1448//
1449// See CreateWorldExportJob for more information on using the CreateWorldExportJob
1450// API call, and error handling.
1451//
1452// This method is useful when you want to inject custom logic or configuration
1453// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1454//
1455//
1456//    // Example sending a request using the CreateWorldExportJobRequest method.
1457//    req, resp := client.CreateWorldExportJobRequest(params)
1458//
1459//    err := req.Send()
1460//    if err == nil { // resp is now filled
1461//        fmt.Println(resp)
1462//    }
1463//
1464// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateWorldExportJob
1465func (c *RoboMaker) CreateWorldExportJobRequest(input *CreateWorldExportJobInput) (req *request.Request, output *CreateWorldExportJobOutput) {
1466	op := &request.Operation{
1467		Name:       opCreateWorldExportJob,
1468		HTTPMethod: "POST",
1469		HTTPPath:   "/createWorldExportJob",
1470	}
1471
1472	if input == nil {
1473		input = &CreateWorldExportJobInput{}
1474	}
1475
1476	output = &CreateWorldExportJobOutput{}
1477	req = c.newRequest(op, input, output)
1478	return
1479}
1480
1481// CreateWorldExportJob API operation for AWS RoboMaker.
1482//
1483// Creates a world export job.
1484//
1485// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1486// with awserr.Error's Code and Message methods to get detailed information about
1487// the error.
1488//
1489// See the AWS API reference guide for AWS RoboMaker's
1490// API operation CreateWorldExportJob for usage and error information.
1491//
1492// Returned Error Types:
1493//   * ResourceNotFoundException
1494//   The specified resource does not exist.
1495//
1496//   * InvalidParameterException
1497//   A parameter specified in a request is not valid, is unsupported, or cannot
1498//   be used. The returned message provides an explanation of the error value.
1499//
1500//   * InternalServerException
1501//   AWS RoboMaker experienced a service issue. Try your call again.
1502//
1503//   * ThrottlingException
1504//   AWS RoboMaker is temporarily unable to process the request. Try your call
1505//   again.
1506//
1507//   * IdempotentParameterMismatchException
1508//   The request uses the same client token as a previous, but non-identical request.
1509//   Do not reuse a client token with different requests, unless the requests
1510//   are identical.
1511//
1512//   * ServiceUnavailableException
1513//   The request has failed due to a temporary failure of the server.
1514//
1515// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateWorldExportJob
1516func (c *RoboMaker) CreateWorldExportJob(input *CreateWorldExportJobInput) (*CreateWorldExportJobOutput, error) {
1517	req, out := c.CreateWorldExportJobRequest(input)
1518	return out, req.Send()
1519}
1520
1521// CreateWorldExportJobWithContext is the same as CreateWorldExportJob with the addition of
1522// the ability to pass a context and additional request options.
1523//
1524// See CreateWorldExportJob for details on how to use this API operation.
1525//
1526// The context must be non-nil and will be used for request cancellation. If
1527// the context is nil a panic will occur. In the future the SDK may create
1528// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1529// for more information on using Contexts.
1530func (c *RoboMaker) CreateWorldExportJobWithContext(ctx aws.Context, input *CreateWorldExportJobInput, opts ...request.Option) (*CreateWorldExportJobOutput, error) {
1531	req, out := c.CreateWorldExportJobRequest(input)
1532	req.SetContext(ctx)
1533	req.ApplyOptions(opts...)
1534	return out, req.Send()
1535}
1536
1537const opCreateWorldGenerationJob = "CreateWorldGenerationJob"
1538
1539// CreateWorldGenerationJobRequest generates a "aws/request.Request" representing the
1540// client's request for the CreateWorldGenerationJob operation. The "output" return
1541// value will be populated with the request's response once the request completes
1542// successfully.
1543//
1544// Use "Send" method on the returned Request to send the API call to the service.
1545// the "output" return value is not valid until after Send returns without error.
1546//
1547// See CreateWorldGenerationJob for more information on using the CreateWorldGenerationJob
1548// API call, and error handling.
1549//
1550// This method is useful when you want to inject custom logic or configuration
1551// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1552//
1553//
1554//    // Example sending a request using the CreateWorldGenerationJobRequest method.
1555//    req, resp := client.CreateWorldGenerationJobRequest(params)
1556//
1557//    err := req.Send()
1558//    if err == nil { // resp is now filled
1559//        fmt.Println(resp)
1560//    }
1561//
1562// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateWorldGenerationJob
1563func (c *RoboMaker) CreateWorldGenerationJobRequest(input *CreateWorldGenerationJobInput) (req *request.Request, output *CreateWorldGenerationJobOutput) {
1564	op := &request.Operation{
1565		Name:       opCreateWorldGenerationJob,
1566		HTTPMethod: "POST",
1567		HTTPPath:   "/createWorldGenerationJob",
1568	}
1569
1570	if input == nil {
1571		input = &CreateWorldGenerationJobInput{}
1572	}
1573
1574	output = &CreateWorldGenerationJobOutput{}
1575	req = c.newRequest(op, input, output)
1576	return
1577}
1578
1579// CreateWorldGenerationJob API operation for AWS RoboMaker.
1580//
1581// Creates worlds using the specified template.
1582//
1583// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1584// with awserr.Error's Code and Message methods to get detailed information about
1585// the error.
1586//
1587// See the AWS API reference guide for AWS RoboMaker's
1588// API operation CreateWorldGenerationJob for usage and error information.
1589//
1590// Returned Error Types:
1591//   * ResourceNotFoundException
1592//   The specified resource does not exist.
1593//
1594//   * InvalidParameterException
1595//   A parameter specified in a request is not valid, is unsupported, or cannot
1596//   be used. The returned message provides an explanation of the error value.
1597//
1598//   * InternalServerException
1599//   AWS RoboMaker experienced a service issue. Try your call again.
1600//
1601//   * ThrottlingException
1602//   AWS RoboMaker is temporarily unable to process the request. Try your call
1603//   again.
1604//
1605//   * LimitExceededException
1606//   The requested resource exceeds the maximum number allowed, or the number
1607//   of concurrent stream requests exceeds the maximum number allowed.
1608//
1609//   * IdempotentParameterMismatchException
1610//   The request uses the same client token as a previous, but non-identical request.
1611//   Do not reuse a client token with different requests, unless the requests
1612//   are identical.
1613//
1614//   * ServiceUnavailableException
1615//   The request has failed due to a temporary failure of the server.
1616//
1617// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateWorldGenerationJob
1618func (c *RoboMaker) CreateWorldGenerationJob(input *CreateWorldGenerationJobInput) (*CreateWorldGenerationJobOutput, error) {
1619	req, out := c.CreateWorldGenerationJobRequest(input)
1620	return out, req.Send()
1621}
1622
1623// CreateWorldGenerationJobWithContext is the same as CreateWorldGenerationJob with the addition of
1624// the ability to pass a context and additional request options.
1625//
1626// See CreateWorldGenerationJob for details on how to use this API operation.
1627//
1628// The context must be non-nil and will be used for request cancellation. If
1629// the context is nil a panic will occur. In the future the SDK may create
1630// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1631// for more information on using Contexts.
1632func (c *RoboMaker) CreateWorldGenerationJobWithContext(ctx aws.Context, input *CreateWorldGenerationJobInput, opts ...request.Option) (*CreateWorldGenerationJobOutput, error) {
1633	req, out := c.CreateWorldGenerationJobRequest(input)
1634	req.SetContext(ctx)
1635	req.ApplyOptions(opts...)
1636	return out, req.Send()
1637}
1638
1639const opCreateWorldTemplate = "CreateWorldTemplate"
1640
1641// CreateWorldTemplateRequest generates a "aws/request.Request" representing the
1642// client's request for the CreateWorldTemplate operation. The "output" return
1643// value will be populated with the request's response once the request completes
1644// successfully.
1645//
1646// Use "Send" method on the returned Request to send the API call to the service.
1647// the "output" return value is not valid until after Send returns without error.
1648//
1649// See CreateWorldTemplate for more information on using the CreateWorldTemplate
1650// API call, and error handling.
1651//
1652// This method is useful when you want to inject custom logic or configuration
1653// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1654//
1655//
1656//    // Example sending a request using the CreateWorldTemplateRequest method.
1657//    req, resp := client.CreateWorldTemplateRequest(params)
1658//
1659//    err := req.Send()
1660//    if err == nil { // resp is now filled
1661//        fmt.Println(resp)
1662//    }
1663//
1664// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateWorldTemplate
1665func (c *RoboMaker) CreateWorldTemplateRequest(input *CreateWorldTemplateInput) (req *request.Request, output *CreateWorldTemplateOutput) {
1666	op := &request.Operation{
1667		Name:       opCreateWorldTemplate,
1668		HTTPMethod: "POST",
1669		HTTPPath:   "/createWorldTemplate",
1670	}
1671
1672	if input == nil {
1673		input = &CreateWorldTemplateInput{}
1674	}
1675
1676	output = &CreateWorldTemplateOutput{}
1677	req = c.newRequest(op, input, output)
1678	return
1679}
1680
1681// CreateWorldTemplate API operation for AWS RoboMaker.
1682//
1683// Creates a world template.
1684//
1685// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1686// with awserr.Error's Code and Message methods to get detailed information about
1687// the error.
1688//
1689// See the AWS API reference guide for AWS RoboMaker's
1690// API operation CreateWorldTemplate for usage and error information.
1691//
1692// Returned Error Types:
1693//   * InvalidParameterException
1694//   A parameter specified in a request is not valid, is unsupported, or cannot
1695//   be used. The returned message provides an explanation of the error value.
1696//
1697//   * ResourceAlreadyExistsException
1698//   The specified resource already exists.
1699//
1700//   * ResourceNotFoundException
1701//   The specified resource does not exist.
1702//
1703//   * LimitExceededException
1704//   The requested resource exceeds the maximum number allowed, or the number
1705//   of concurrent stream requests exceeds the maximum number allowed.
1706//
1707//   * ThrottlingException
1708//   AWS RoboMaker is temporarily unable to process the request. Try your call
1709//   again.
1710//
1711//   * InternalServerException
1712//   AWS RoboMaker experienced a service issue. Try your call again.
1713//
1714// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/CreateWorldTemplate
1715func (c *RoboMaker) CreateWorldTemplate(input *CreateWorldTemplateInput) (*CreateWorldTemplateOutput, error) {
1716	req, out := c.CreateWorldTemplateRequest(input)
1717	return out, req.Send()
1718}
1719
1720// CreateWorldTemplateWithContext is the same as CreateWorldTemplate with the addition of
1721// the ability to pass a context and additional request options.
1722//
1723// See CreateWorldTemplate for details on how to use this API operation.
1724//
1725// The context must be non-nil and will be used for request cancellation. If
1726// the context is nil a panic will occur. In the future the SDK may create
1727// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1728// for more information on using Contexts.
1729func (c *RoboMaker) CreateWorldTemplateWithContext(ctx aws.Context, input *CreateWorldTemplateInput, opts ...request.Option) (*CreateWorldTemplateOutput, error) {
1730	req, out := c.CreateWorldTemplateRequest(input)
1731	req.SetContext(ctx)
1732	req.ApplyOptions(opts...)
1733	return out, req.Send()
1734}
1735
1736const opDeleteFleet = "DeleteFleet"
1737
1738// DeleteFleetRequest generates a "aws/request.Request" representing the
1739// client's request for the DeleteFleet operation. The "output" return
1740// value will be populated with the request's response once the request completes
1741// successfully.
1742//
1743// Use "Send" method on the returned Request to send the API call to the service.
1744// the "output" return value is not valid until after Send returns without error.
1745//
1746// See DeleteFleet for more information on using the DeleteFleet
1747// API call, and error handling.
1748//
1749// This method is useful when you want to inject custom logic or configuration
1750// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1751//
1752//
1753//    // Example sending a request using the DeleteFleetRequest method.
1754//    req, resp := client.DeleteFleetRequest(params)
1755//
1756//    err := req.Send()
1757//    if err == nil { // resp is now filled
1758//        fmt.Println(resp)
1759//    }
1760//
1761// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteFleet
1762func (c *RoboMaker) DeleteFleetRequest(input *DeleteFleetInput) (req *request.Request, output *DeleteFleetOutput) {
1763	op := &request.Operation{
1764		Name:       opDeleteFleet,
1765		HTTPMethod: "POST",
1766		HTTPPath:   "/deleteFleet",
1767	}
1768
1769	if input == nil {
1770		input = &DeleteFleetInput{}
1771	}
1772
1773	output = &DeleteFleetOutput{}
1774	req = c.newRequest(op, input, output)
1775	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1776	return
1777}
1778
1779// DeleteFleet API operation for AWS RoboMaker.
1780//
1781// Deletes a fleet.
1782//
1783// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1784// with awserr.Error's Code and Message methods to get detailed information about
1785// the error.
1786//
1787// See the AWS API reference guide for AWS RoboMaker's
1788// API operation DeleteFleet for usage and error information.
1789//
1790// Returned Error Types:
1791//   * InvalidParameterException
1792//   A parameter specified in a request is not valid, is unsupported, or cannot
1793//   be used. The returned message provides an explanation of the error value.
1794//
1795//   * InternalServerException
1796//   AWS RoboMaker experienced a service issue. Try your call again.
1797//
1798//   * ThrottlingException
1799//   AWS RoboMaker is temporarily unable to process the request. Try your call
1800//   again.
1801//
1802// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteFleet
1803func (c *RoboMaker) DeleteFleet(input *DeleteFleetInput) (*DeleteFleetOutput, error) {
1804	req, out := c.DeleteFleetRequest(input)
1805	return out, req.Send()
1806}
1807
1808// DeleteFleetWithContext is the same as DeleteFleet with the addition of
1809// the ability to pass a context and additional request options.
1810//
1811// See DeleteFleet for details on how to use this API operation.
1812//
1813// The context must be non-nil and will be used for request cancellation. If
1814// the context is nil a panic will occur. In the future the SDK may create
1815// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1816// for more information on using Contexts.
1817func (c *RoboMaker) DeleteFleetWithContext(ctx aws.Context, input *DeleteFleetInput, opts ...request.Option) (*DeleteFleetOutput, error) {
1818	req, out := c.DeleteFleetRequest(input)
1819	req.SetContext(ctx)
1820	req.ApplyOptions(opts...)
1821	return out, req.Send()
1822}
1823
1824const opDeleteRobot = "DeleteRobot"
1825
1826// DeleteRobotRequest generates a "aws/request.Request" representing the
1827// client's request for the DeleteRobot operation. The "output" return
1828// value will be populated with the request's response once the request completes
1829// successfully.
1830//
1831// Use "Send" method on the returned Request to send the API call to the service.
1832// the "output" return value is not valid until after Send returns without error.
1833//
1834// See DeleteRobot for more information on using the DeleteRobot
1835// API call, and error handling.
1836//
1837// This method is useful when you want to inject custom logic or configuration
1838// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1839//
1840//
1841//    // Example sending a request using the DeleteRobotRequest method.
1842//    req, resp := client.DeleteRobotRequest(params)
1843//
1844//    err := req.Send()
1845//    if err == nil { // resp is now filled
1846//        fmt.Println(resp)
1847//    }
1848//
1849// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteRobot
1850func (c *RoboMaker) DeleteRobotRequest(input *DeleteRobotInput) (req *request.Request, output *DeleteRobotOutput) {
1851	op := &request.Operation{
1852		Name:       opDeleteRobot,
1853		HTTPMethod: "POST",
1854		HTTPPath:   "/deleteRobot",
1855	}
1856
1857	if input == nil {
1858		input = &DeleteRobotInput{}
1859	}
1860
1861	output = &DeleteRobotOutput{}
1862	req = c.newRequest(op, input, output)
1863	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1864	return
1865}
1866
1867// DeleteRobot API operation for AWS RoboMaker.
1868//
1869// Deletes a robot.
1870//
1871// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1872// with awserr.Error's Code and Message methods to get detailed information about
1873// the error.
1874//
1875// See the AWS API reference guide for AWS RoboMaker's
1876// API operation DeleteRobot for usage and error information.
1877//
1878// Returned Error Types:
1879//   * InvalidParameterException
1880//   A parameter specified in a request is not valid, is unsupported, or cannot
1881//   be used. The returned message provides an explanation of the error value.
1882//
1883//   * InternalServerException
1884//   AWS RoboMaker experienced a service issue. Try your call again.
1885//
1886//   * ThrottlingException
1887//   AWS RoboMaker is temporarily unable to process the request. Try your call
1888//   again.
1889//
1890// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteRobot
1891func (c *RoboMaker) DeleteRobot(input *DeleteRobotInput) (*DeleteRobotOutput, error) {
1892	req, out := c.DeleteRobotRequest(input)
1893	return out, req.Send()
1894}
1895
1896// DeleteRobotWithContext is the same as DeleteRobot with the addition of
1897// the ability to pass a context and additional request options.
1898//
1899// See DeleteRobot for details on how to use this API operation.
1900//
1901// The context must be non-nil and will be used for request cancellation. If
1902// the context is nil a panic will occur. In the future the SDK may create
1903// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1904// for more information on using Contexts.
1905func (c *RoboMaker) DeleteRobotWithContext(ctx aws.Context, input *DeleteRobotInput, opts ...request.Option) (*DeleteRobotOutput, error) {
1906	req, out := c.DeleteRobotRequest(input)
1907	req.SetContext(ctx)
1908	req.ApplyOptions(opts...)
1909	return out, req.Send()
1910}
1911
1912const opDeleteRobotApplication = "DeleteRobotApplication"
1913
1914// DeleteRobotApplicationRequest generates a "aws/request.Request" representing the
1915// client's request for the DeleteRobotApplication operation. The "output" return
1916// value will be populated with the request's response once the request completes
1917// successfully.
1918//
1919// Use "Send" method on the returned Request to send the API call to the service.
1920// the "output" return value is not valid until after Send returns without error.
1921//
1922// See DeleteRobotApplication for more information on using the DeleteRobotApplication
1923// API call, and error handling.
1924//
1925// This method is useful when you want to inject custom logic or configuration
1926// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1927//
1928//
1929//    // Example sending a request using the DeleteRobotApplicationRequest method.
1930//    req, resp := client.DeleteRobotApplicationRequest(params)
1931//
1932//    err := req.Send()
1933//    if err == nil { // resp is now filled
1934//        fmt.Println(resp)
1935//    }
1936//
1937// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteRobotApplication
1938func (c *RoboMaker) DeleteRobotApplicationRequest(input *DeleteRobotApplicationInput) (req *request.Request, output *DeleteRobotApplicationOutput) {
1939	op := &request.Operation{
1940		Name:       opDeleteRobotApplication,
1941		HTTPMethod: "POST",
1942		HTTPPath:   "/deleteRobotApplication",
1943	}
1944
1945	if input == nil {
1946		input = &DeleteRobotApplicationInput{}
1947	}
1948
1949	output = &DeleteRobotApplicationOutput{}
1950	req = c.newRequest(op, input, output)
1951	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1952	return
1953}
1954
1955// DeleteRobotApplication API operation for AWS RoboMaker.
1956//
1957// Deletes a robot application.
1958//
1959// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1960// with awserr.Error's Code and Message methods to get detailed information about
1961// the error.
1962//
1963// See the AWS API reference guide for AWS RoboMaker's
1964// API operation DeleteRobotApplication for usage and error information.
1965//
1966// Returned Error Types:
1967//   * InvalidParameterException
1968//   A parameter specified in a request is not valid, is unsupported, or cannot
1969//   be used. The returned message provides an explanation of the error value.
1970//
1971//   * ThrottlingException
1972//   AWS RoboMaker is temporarily unable to process the request. Try your call
1973//   again.
1974//
1975//   * InternalServerException
1976//   AWS RoboMaker experienced a service issue. Try your call again.
1977//
1978// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteRobotApplication
1979func (c *RoboMaker) DeleteRobotApplication(input *DeleteRobotApplicationInput) (*DeleteRobotApplicationOutput, error) {
1980	req, out := c.DeleteRobotApplicationRequest(input)
1981	return out, req.Send()
1982}
1983
1984// DeleteRobotApplicationWithContext is the same as DeleteRobotApplication with the addition of
1985// the ability to pass a context and additional request options.
1986//
1987// See DeleteRobotApplication for details on how to use this API operation.
1988//
1989// The context must be non-nil and will be used for request cancellation. If
1990// the context is nil a panic will occur. In the future the SDK may create
1991// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1992// for more information on using Contexts.
1993func (c *RoboMaker) DeleteRobotApplicationWithContext(ctx aws.Context, input *DeleteRobotApplicationInput, opts ...request.Option) (*DeleteRobotApplicationOutput, error) {
1994	req, out := c.DeleteRobotApplicationRequest(input)
1995	req.SetContext(ctx)
1996	req.ApplyOptions(opts...)
1997	return out, req.Send()
1998}
1999
2000const opDeleteSimulationApplication = "DeleteSimulationApplication"
2001
2002// DeleteSimulationApplicationRequest generates a "aws/request.Request" representing the
2003// client's request for the DeleteSimulationApplication operation. The "output" return
2004// value will be populated with the request's response once the request completes
2005// successfully.
2006//
2007// Use "Send" method on the returned Request to send the API call to the service.
2008// the "output" return value is not valid until after Send returns without error.
2009//
2010// See DeleteSimulationApplication for more information on using the DeleteSimulationApplication
2011// API call, and error handling.
2012//
2013// This method is useful when you want to inject custom logic or configuration
2014// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2015//
2016//
2017//    // Example sending a request using the DeleteSimulationApplicationRequest method.
2018//    req, resp := client.DeleteSimulationApplicationRequest(params)
2019//
2020//    err := req.Send()
2021//    if err == nil { // resp is now filled
2022//        fmt.Println(resp)
2023//    }
2024//
2025// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteSimulationApplication
2026func (c *RoboMaker) DeleteSimulationApplicationRequest(input *DeleteSimulationApplicationInput) (req *request.Request, output *DeleteSimulationApplicationOutput) {
2027	op := &request.Operation{
2028		Name:       opDeleteSimulationApplication,
2029		HTTPMethod: "POST",
2030		HTTPPath:   "/deleteSimulationApplication",
2031	}
2032
2033	if input == nil {
2034		input = &DeleteSimulationApplicationInput{}
2035	}
2036
2037	output = &DeleteSimulationApplicationOutput{}
2038	req = c.newRequest(op, input, output)
2039	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2040	return
2041}
2042
2043// DeleteSimulationApplication API operation for AWS RoboMaker.
2044//
2045// Deletes a simulation application.
2046//
2047// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2048// with awserr.Error's Code and Message methods to get detailed information about
2049// the error.
2050//
2051// See the AWS API reference guide for AWS RoboMaker's
2052// API operation DeleteSimulationApplication for usage and error information.
2053//
2054// Returned Error Types:
2055//   * InvalidParameterException
2056//   A parameter specified in a request is not valid, is unsupported, or cannot
2057//   be used. The returned message provides an explanation of the error value.
2058//
2059//   * ThrottlingException
2060//   AWS RoboMaker is temporarily unable to process the request. Try your call
2061//   again.
2062//
2063//   * InternalServerException
2064//   AWS RoboMaker experienced a service issue. Try your call again.
2065//
2066// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteSimulationApplication
2067func (c *RoboMaker) DeleteSimulationApplication(input *DeleteSimulationApplicationInput) (*DeleteSimulationApplicationOutput, error) {
2068	req, out := c.DeleteSimulationApplicationRequest(input)
2069	return out, req.Send()
2070}
2071
2072// DeleteSimulationApplicationWithContext is the same as DeleteSimulationApplication with the addition of
2073// the ability to pass a context and additional request options.
2074//
2075// See DeleteSimulationApplication for details on how to use this API operation.
2076//
2077// The context must be non-nil and will be used for request cancellation. If
2078// the context is nil a panic will occur. In the future the SDK may create
2079// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2080// for more information on using Contexts.
2081func (c *RoboMaker) DeleteSimulationApplicationWithContext(ctx aws.Context, input *DeleteSimulationApplicationInput, opts ...request.Option) (*DeleteSimulationApplicationOutput, error) {
2082	req, out := c.DeleteSimulationApplicationRequest(input)
2083	req.SetContext(ctx)
2084	req.ApplyOptions(opts...)
2085	return out, req.Send()
2086}
2087
2088const opDeleteWorldTemplate = "DeleteWorldTemplate"
2089
2090// DeleteWorldTemplateRequest generates a "aws/request.Request" representing the
2091// client's request for the DeleteWorldTemplate operation. The "output" return
2092// value will be populated with the request's response once the request completes
2093// successfully.
2094//
2095// Use "Send" method on the returned Request to send the API call to the service.
2096// the "output" return value is not valid until after Send returns without error.
2097//
2098// See DeleteWorldTemplate for more information on using the DeleteWorldTemplate
2099// API call, and error handling.
2100//
2101// This method is useful when you want to inject custom logic or configuration
2102// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2103//
2104//
2105//    // Example sending a request using the DeleteWorldTemplateRequest method.
2106//    req, resp := client.DeleteWorldTemplateRequest(params)
2107//
2108//    err := req.Send()
2109//    if err == nil { // resp is now filled
2110//        fmt.Println(resp)
2111//    }
2112//
2113// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteWorldTemplate
2114func (c *RoboMaker) DeleteWorldTemplateRequest(input *DeleteWorldTemplateInput) (req *request.Request, output *DeleteWorldTemplateOutput) {
2115	op := &request.Operation{
2116		Name:       opDeleteWorldTemplate,
2117		HTTPMethod: "POST",
2118		HTTPPath:   "/deleteWorldTemplate",
2119	}
2120
2121	if input == nil {
2122		input = &DeleteWorldTemplateInput{}
2123	}
2124
2125	output = &DeleteWorldTemplateOutput{}
2126	req = c.newRequest(op, input, output)
2127	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2128	return
2129}
2130
2131// DeleteWorldTemplate API operation for AWS RoboMaker.
2132//
2133// Deletes a world template.
2134//
2135// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2136// with awserr.Error's Code and Message methods to get detailed information about
2137// the error.
2138//
2139// See the AWS API reference guide for AWS RoboMaker's
2140// API operation DeleteWorldTemplate for usage and error information.
2141//
2142// Returned Error Types:
2143//   * InvalidParameterException
2144//   A parameter specified in a request is not valid, is unsupported, or cannot
2145//   be used. The returned message provides an explanation of the error value.
2146//
2147//   * ResourceNotFoundException
2148//   The specified resource does not exist.
2149//
2150//   * ThrottlingException
2151//   AWS RoboMaker is temporarily unable to process the request. Try your call
2152//   again.
2153//
2154//   * InternalServerException
2155//   AWS RoboMaker experienced a service issue. Try your call again.
2156//
2157// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeleteWorldTemplate
2158func (c *RoboMaker) DeleteWorldTemplate(input *DeleteWorldTemplateInput) (*DeleteWorldTemplateOutput, error) {
2159	req, out := c.DeleteWorldTemplateRequest(input)
2160	return out, req.Send()
2161}
2162
2163// DeleteWorldTemplateWithContext is the same as DeleteWorldTemplate with the addition of
2164// the ability to pass a context and additional request options.
2165//
2166// See DeleteWorldTemplate for details on how to use this API operation.
2167//
2168// The context must be non-nil and will be used for request cancellation. If
2169// the context is nil a panic will occur. In the future the SDK may create
2170// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2171// for more information on using Contexts.
2172func (c *RoboMaker) DeleteWorldTemplateWithContext(ctx aws.Context, input *DeleteWorldTemplateInput, opts ...request.Option) (*DeleteWorldTemplateOutput, error) {
2173	req, out := c.DeleteWorldTemplateRequest(input)
2174	req.SetContext(ctx)
2175	req.ApplyOptions(opts...)
2176	return out, req.Send()
2177}
2178
2179const opDeregisterRobot = "DeregisterRobot"
2180
2181// DeregisterRobotRequest generates a "aws/request.Request" representing the
2182// client's request for the DeregisterRobot operation. The "output" return
2183// value will be populated with the request's response once the request completes
2184// successfully.
2185//
2186// Use "Send" method on the returned Request to send the API call to the service.
2187// the "output" return value is not valid until after Send returns without error.
2188//
2189// See DeregisterRobot for more information on using the DeregisterRobot
2190// API call, and error handling.
2191//
2192// This method is useful when you want to inject custom logic or configuration
2193// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2194//
2195//
2196//    // Example sending a request using the DeregisterRobotRequest method.
2197//    req, resp := client.DeregisterRobotRequest(params)
2198//
2199//    err := req.Send()
2200//    if err == nil { // resp is now filled
2201//        fmt.Println(resp)
2202//    }
2203//
2204// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeregisterRobot
2205func (c *RoboMaker) DeregisterRobotRequest(input *DeregisterRobotInput) (req *request.Request, output *DeregisterRobotOutput) {
2206	op := &request.Operation{
2207		Name:       opDeregisterRobot,
2208		HTTPMethod: "POST",
2209		HTTPPath:   "/deregisterRobot",
2210	}
2211
2212	if input == nil {
2213		input = &DeregisterRobotInput{}
2214	}
2215
2216	output = &DeregisterRobotOutput{}
2217	req = c.newRequest(op, input, output)
2218	return
2219}
2220
2221// DeregisterRobot API operation for AWS RoboMaker.
2222//
2223// Deregisters a robot.
2224//
2225// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2226// with awserr.Error's Code and Message methods to get detailed information about
2227// the error.
2228//
2229// See the AWS API reference guide for AWS RoboMaker's
2230// API operation DeregisterRobot for usage and error information.
2231//
2232// Returned Error Types:
2233//   * InvalidParameterException
2234//   A parameter specified in a request is not valid, is unsupported, or cannot
2235//   be used. The returned message provides an explanation of the error value.
2236//
2237//   * InternalServerException
2238//   AWS RoboMaker experienced a service issue. Try your call again.
2239//
2240//   * ThrottlingException
2241//   AWS RoboMaker is temporarily unable to process the request. Try your call
2242//   again.
2243//
2244//   * ResourceNotFoundException
2245//   The specified resource does not exist.
2246//
2247// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DeregisterRobot
2248func (c *RoboMaker) DeregisterRobot(input *DeregisterRobotInput) (*DeregisterRobotOutput, error) {
2249	req, out := c.DeregisterRobotRequest(input)
2250	return out, req.Send()
2251}
2252
2253// DeregisterRobotWithContext is the same as DeregisterRobot with the addition of
2254// the ability to pass a context and additional request options.
2255//
2256// See DeregisterRobot for details on how to use this API operation.
2257//
2258// The context must be non-nil and will be used for request cancellation. If
2259// the context is nil a panic will occur. In the future the SDK may create
2260// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2261// for more information on using Contexts.
2262func (c *RoboMaker) DeregisterRobotWithContext(ctx aws.Context, input *DeregisterRobotInput, opts ...request.Option) (*DeregisterRobotOutput, error) {
2263	req, out := c.DeregisterRobotRequest(input)
2264	req.SetContext(ctx)
2265	req.ApplyOptions(opts...)
2266	return out, req.Send()
2267}
2268
2269const opDescribeDeploymentJob = "DescribeDeploymentJob"
2270
2271// DescribeDeploymentJobRequest generates a "aws/request.Request" representing the
2272// client's request for the DescribeDeploymentJob operation. The "output" return
2273// value will be populated with the request's response once the request completes
2274// successfully.
2275//
2276// Use "Send" method on the returned Request to send the API call to the service.
2277// the "output" return value is not valid until after Send returns without error.
2278//
2279// See DescribeDeploymentJob for more information on using the DescribeDeploymentJob
2280// API call, and error handling.
2281//
2282// This method is useful when you want to inject custom logic or configuration
2283// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2284//
2285//
2286//    // Example sending a request using the DescribeDeploymentJobRequest method.
2287//    req, resp := client.DescribeDeploymentJobRequest(params)
2288//
2289//    err := req.Send()
2290//    if err == nil { // resp is now filled
2291//        fmt.Println(resp)
2292//    }
2293//
2294// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeDeploymentJob
2295func (c *RoboMaker) DescribeDeploymentJobRequest(input *DescribeDeploymentJobInput) (req *request.Request, output *DescribeDeploymentJobOutput) {
2296	op := &request.Operation{
2297		Name:       opDescribeDeploymentJob,
2298		HTTPMethod: "POST",
2299		HTTPPath:   "/describeDeploymentJob",
2300	}
2301
2302	if input == nil {
2303		input = &DescribeDeploymentJobInput{}
2304	}
2305
2306	output = &DescribeDeploymentJobOutput{}
2307	req = c.newRequest(op, input, output)
2308	return
2309}
2310
2311// DescribeDeploymentJob API operation for AWS RoboMaker.
2312//
2313// Describes a deployment job.
2314//
2315// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2316// with awserr.Error's Code and Message methods to get detailed information about
2317// the error.
2318//
2319// See the AWS API reference guide for AWS RoboMaker's
2320// API operation DescribeDeploymentJob for usage and error information.
2321//
2322// Returned Error Types:
2323//   * ResourceNotFoundException
2324//   The specified resource does not exist.
2325//
2326//   * InvalidParameterException
2327//   A parameter specified in a request is not valid, is unsupported, or cannot
2328//   be used. The returned message provides an explanation of the error value.
2329//
2330//   * InternalServerException
2331//   AWS RoboMaker experienced a service issue. Try your call again.
2332//
2333//   * ThrottlingException
2334//   AWS RoboMaker is temporarily unable to process the request. Try your call
2335//   again.
2336//
2337// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeDeploymentJob
2338func (c *RoboMaker) DescribeDeploymentJob(input *DescribeDeploymentJobInput) (*DescribeDeploymentJobOutput, error) {
2339	req, out := c.DescribeDeploymentJobRequest(input)
2340	return out, req.Send()
2341}
2342
2343// DescribeDeploymentJobWithContext is the same as DescribeDeploymentJob with the addition of
2344// the ability to pass a context and additional request options.
2345//
2346// See DescribeDeploymentJob for details on how to use this API operation.
2347//
2348// The context must be non-nil and will be used for request cancellation. If
2349// the context is nil a panic will occur. In the future the SDK may create
2350// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2351// for more information on using Contexts.
2352func (c *RoboMaker) DescribeDeploymentJobWithContext(ctx aws.Context, input *DescribeDeploymentJobInput, opts ...request.Option) (*DescribeDeploymentJobOutput, error) {
2353	req, out := c.DescribeDeploymentJobRequest(input)
2354	req.SetContext(ctx)
2355	req.ApplyOptions(opts...)
2356	return out, req.Send()
2357}
2358
2359const opDescribeFleet = "DescribeFleet"
2360
2361// DescribeFleetRequest generates a "aws/request.Request" representing the
2362// client's request for the DescribeFleet operation. The "output" return
2363// value will be populated with the request's response once the request completes
2364// successfully.
2365//
2366// Use "Send" method on the returned Request to send the API call to the service.
2367// the "output" return value is not valid until after Send returns without error.
2368//
2369// See DescribeFleet for more information on using the DescribeFleet
2370// API call, and error handling.
2371//
2372// This method is useful when you want to inject custom logic or configuration
2373// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2374//
2375//
2376//    // Example sending a request using the DescribeFleetRequest method.
2377//    req, resp := client.DescribeFleetRequest(params)
2378//
2379//    err := req.Send()
2380//    if err == nil { // resp is now filled
2381//        fmt.Println(resp)
2382//    }
2383//
2384// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeFleet
2385func (c *RoboMaker) DescribeFleetRequest(input *DescribeFleetInput) (req *request.Request, output *DescribeFleetOutput) {
2386	op := &request.Operation{
2387		Name:       opDescribeFleet,
2388		HTTPMethod: "POST",
2389		HTTPPath:   "/describeFleet",
2390	}
2391
2392	if input == nil {
2393		input = &DescribeFleetInput{}
2394	}
2395
2396	output = &DescribeFleetOutput{}
2397	req = c.newRequest(op, input, output)
2398	return
2399}
2400
2401// DescribeFleet API operation for AWS RoboMaker.
2402//
2403// Describes a fleet.
2404//
2405// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2406// with awserr.Error's Code and Message methods to get detailed information about
2407// the error.
2408//
2409// See the AWS API reference guide for AWS RoboMaker's
2410// API operation DescribeFleet for usage and error information.
2411//
2412// Returned Error Types:
2413//   * ResourceNotFoundException
2414//   The specified resource does not exist.
2415//
2416//   * InvalidParameterException
2417//   A parameter specified in a request is not valid, is unsupported, or cannot
2418//   be used. The returned message provides an explanation of the error value.
2419//
2420//   * InternalServerException
2421//   AWS RoboMaker experienced a service issue. Try your call again.
2422//
2423//   * ThrottlingException
2424//   AWS RoboMaker is temporarily unable to process the request. Try your call
2425//   again.
2426//
2427// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeFleet
2428func (c *RoboMaker) DescribeFleet(input *DescribeFleetInput) (*DescribeFleetOutput, error) {
2429	req, out := c.DescribeFleetRequest(input)
2430	return out, req.Send()
2431}
2432
2433// DescribeFleetWithContext is the same as DescribeFleet with the addition of
2434// the ability to pass a context and additional request options.
2435//
2436// See DescribeFleet for details on how to use this API operation.
2437//
2438// The context must be non-nil and will be used for request cancellation. If
2439// the context is nil a panic will occur. In the future the SDK may create
2440// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2441// for more information on using Contexts.
2442func (c *RoboMaker) DescribeFleetWithContext(ctx aws.Context, input *DescribeFleetInput, opts ...request.Option) (*DescribeFleetOutput, error) {
2443	req, out := c.DescribeFleetRequest(input)
2444	req.SetContext(ctx)
2445	req.ApplyOptions(opts...)
2446	return out, req.Send()
2447}
2448
2449const opDescribeRobot = "DescribeRobot"
2450
2451// DescribeRobotRequest generates a "aws/request.Request" representing the
2452// client's request for the DescribeRobot operation. The "output" return
2453// value will be populated with the request's response once the request completes
2454// successfully.
2455//
2456// Use "Send" method on the returned Request to send the API call to the service.
2457// the "output" return value is not valid until after Send returns without error.
2458//
2459// See DescribeRobot for more information on using the DescribeRobot
2460// API call, and error handling.
2461//
2462// This method is useful when you want to inject custom logic or configuration
2463// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2464//
2465//
2466//    // Example sending a request using the DescribeRobotRequest method.
2467//    req, resp := client.DescribeRobotRequest(params)
2468//
2469//    err := req.Send()
2470//    if err == nil { // resp is now filled
2471//        fmt.Println(resp)
2472//    }
2473//
2474// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeRobot
2475func (c *RoboMaker) DescribeRobotRequest(input *DescribeRobotInput) (req *request.Request, output *DescribeRobotOutput) {
2476	op := &request.Operation{
2477		Name:       opDescribeRobot,
2478		HTTPMethod: "POST",
2479		HTTPPath:   "/describeRobot",
2480	}
2481
2482	if input == nil {
2483		input = &DescribeRobotInput{}
2484	}
2485
2486	output = &DescribeRobotOutput{}
2487	req = c.newRequest(op, input, output)
2488	return
2489}
2490
2491// DescribeRobot API operation for AWS RoboMaker.
2492//
2493// Describes a robot.
2494//
2495// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2496// with awserr.Error's Code and Message methods to get detailed information about
2497// the error.
2498//
2499// See the AWS API reference guide for AWS RoboMaker's
2500// API operation DescribeRobot for usage and error information.
2501//
2502// Returned Error Types:
2503//   * ResourceNotFoundException
2504//   The specified resource does not exist.
2505//
2506//   * InvalidParameterException
2507//   A parameter specified in a request is not valid, is unsupported, or cannot
2508//   be used. The returned message provides an explanation of the error value.
2509//
2510//   * InternalServerException
2511//   AWS RoboMaker experienced a service issue. Try your call again.
2512//
2513//   * ThrottlingException
2514//   AWS RoboMaker is temporarily unable to process the request. Try your call
2515//   again.
2516//
2517// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeRobot
2518func (c *RoboMaker) DescribeRobot(input *DescribeRobotInput) (*DescribeRobotOutput, error) {
2519	req, out := c.DescribeRobotRequest(input)
2520	return out, req.Send()
2521}
2522
2523// DescribeRobotWithContext is the same as DescribeRobot with the addition of
2524// the ability to pass a context and additional request options.
2525//
2526// See DescribeRobot for details on how to use this API operation.
2527//
2528// The context must be non-nil and will be used for request cancellation. If
2529// the context is nil a panic will occur. In the future the SDK may create
2530// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2531// for more information on using Contexts.
2532func (c *RoboMaker) DescribeRobotWithContext(ctx aws.Context, input *DescribeRobotInput, opts ...request.Option) (*DescribeRobotOutput, error) {
2533	req, out := c.DescribeRobotRequest(input)
2534	req.SetContext(ctx)
2535	req.ApplyOptions(opts...)
2536	return out, req.Send()
2537}
2538
2539const opDescribeRobotApplication = "DescribeRobotApplication"
2540
2541// DescribeRobotApplicationRequest generates a "aws/request.Request" representing the
2542// client's request for the DescribeRobotApplication operation. The "output" return
2543// value will be populated with the request's response once the request completes
2544// successfully.
2545//
2546// Use "Send" method on the returned Request to send the API call to the service.
2547// the "output" return value is not valid until after Send returns without error.
2548//
2549// See DescribeRobotApplication for more information on using the DescribeRobotApplication
2550// API call, and error handling.
2551//
2552// This method is useful when you want to inject custom logic or configuration
2553// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2554//
2555//
2556//    // Example sending a request using the DescribeRobotApplicationRequest method.
2557//    req, resp := client.DescribeRobotApplicationRequest(params)
2558//
2559//    err := req.Send()
2560//    if err == nil { // resp is now filled
2561//        fmt.Println(resp)
2562//    }
2563//
2564// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeRobotApplication
2565func (c *RoboMaker) DescribeRobotApplicationRequest(input *DescribeRobotApplicationInput) (req *request.Request, output *DescribeRobotApplicationOutput) {
2566	op := &request.Operation{
2567		Name:       opDescribeRobotApplication,
2568		HTTPMethod: "POST",
2569		HTTPPath:   "/describeRobotApplication",
2570	}
2571
2572	if input == nil {
2573		input = &DescribeRobotApplicationInput{}
2574	}
2575
2576	output = &DescribeRobotApplicationOutput{}
2577	req = c.newRequest(op, input, output)
2578	return
2579}
2580
2581// DescribeRobotApplication API operation for AWS RoboMaker.
2582//
2583// Describes a robot application.
2584//
2585// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2586// with awserr.Error's Code and Message methods to get detailed information about
2587// the error.
2588//
2589// See the AWS API reference guide for AWS RoboMaker's
2590// API operation DescribeRobotApplication for usage and error information.
2591//
2592// Returned Error Types:
2593//   * InvalidParameterException
2594//   A parameter specified in a request is not valid, is unsupported, or cannot
2595//   be used. The returned message provides an explanation of the error value.
2596//
2597//   * ResourceNotFoundException
2598//   The specified resource does not exist.
2599//
2600//   * ThrottlingException
2601//   AWS RoboMaker is temporarily unable to process the request. Try your call
2602//   again.
2603//
2604//   * InternalServerException
2605//   AWS RoboMaker experienced a service issue. Try your call again.
2606//
2607// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeRobotApplication
2608func (c *RoboMaker) DescribeRobotApplication(input *DescribeRobotApplicationInput) (*DescribeRobotApplicationOutput, error) {
2609	req, out := c.DescribeRobotApplicationRequest(input)
2610	return out, req.Send()
2611}
2612
2613// DescribeRobotApplicationWithContext is the same as DescribeRobotApplication with the addition of
2614// the ability to pass a context and additional request options.
2615//
2616// See DescribeRobotApplication for details on how to use this API operation.
2617//
2618// The context must be non-nil and will be used for request cancellation. If
2619// the context is nil a panic will occur. In the future the SDK may create
2620// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2621// for more information on using Contexts.
2622func (c *RoboMaker) DescribeRobotApplicationWithContext(ctx aws.Context, input *DescribeRobotApplicationInput, opts ...request.Option) (*DescribeRobotApplicationOutput, error) {
2623	req, out := c.DescribeRobotApplicationRequest(input)
2624	req.SetContext(ctx)
2625	req.ApplyOptions(opts...)
2626	return out, req.Send()
2627}
2628
2629const opDescribeSimulationApplication = "DescribeSimulationApplication"
2630
2631// DescribeSimulationApplicationRequest generates a "aws/request.Request" representing the
2632// client's request for the DescribeSimulationApplication operation. The "output" return
2633// value will be populated with the request's response once the request completes
2634// successfully.
2635//
2636// Use "Send" method on the returned Request to send the API call to the service.
2637// the "output" return value is not valid until after Send returns without error.
2638//
2639// See DescribeSimulationApplication for more information on using the DescribeSimulationApplication
2640// API call, and error handling.
2641//
2642// This method is useful when you want to inject custom logic or configuration
2643// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2644//
2645//
2646//    // Example sending a request using the DescribeSimulationApplicationRequest method.
2647//    req, resp := client.DescribeSimulationApplicationRequest(params)
2648//
2649//    err := req.Send()
2650//    if err == nil { // resp is now filled
2651//        fmt.Println(resp)
2652//    }
2653//
2654// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeSimulationApplication
2655func (c *RoboMaker) DescribeSimulationApplicationRequest(input *DescribeSimulationApplicationInput) (req *request.Request, output *DescribeSimulationApplicationOutput) {
2656	op := &request.Operation{
2657		Name:       opDescribeSimulationApplication,
2658		HTTPMethod: "POST",
2659		HTTPPath:   "/describeSimulationApplication",
2660	}
2661
2662	if input == nil {
2663		input = &DescribeSimulationApplicationInput{}
2664	}
2665
2666	output = &DescribeSimulationApplicationOutput{}
2667	req = c.newRequest(op, input, output)
2668	return
2669}
2670
2671// DescribeSimulationApplication API operation for AWS RoboMaker.
2672//
2673// Describes a simulation application.
2674//
2675// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2676// with awserr.Error's Code and Message methods to get detailed information about
2677// the error.
2678//
2679// See the AWS API reference guide for AWS RoboMaker's
2680// API operation DescribeSimulationApplication for usage and error information.
2681//
2682// Returned Error Types:
2683//   * InvalidParameterException
2684//   A parameter specified in a request is not valid, is unsupported, or cannot
2685//   be used. The returned message provides an explanation of the error value.
2686//
2687//   * ResourceNotFoundException
2688//   The specified resource does not exist.
2689//
2690//   * ThrottlingException
2691//   AWS RoboMaker is temporarily unable to process the request. Try your call
2692//   again.
2693//
2694//   * InternalServerException
2695//   AWS RoboMaker experienced a service issue. Try your call again.
2696//
2697// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeSimulationApplication
2698func (c *RoboMaker) DescribeSimulationApplication(input *DescribeSimulationApplicationInput) (*DescribeSimulationApplicationOutput, error) {
2699	req, out := c.DescribeSimulationApplicationRequest(input)
2700	return out, req.Send()
2701}
2702
2703// DescribeSimulationApplicationWithContext is the same as DescribeSimulationApplication with the addition of
2704// the ability to pass a context and additional request options.
2705//
2706// See DescribeSimulationApplication for details on how to use this API operation.
2707//
2708// The context must be non-nil and will be used for request cancellation. If
2709// the context is nil a panic will occur. In the future the SDK may create
2710// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2711// for more information on using Contexts.
2712func (c *RoboMaker) DescribeSimulationApplicationWithContext(ctx aws.Context, input *DescribeSimulationApplicationInput, opts ...request.Option) (*DescribeSimulationApplicationOutput, error) {
2713	req, out := c.DescribeSimulationApplicationRequest(input)
2714	req.SetContext(ctx)
2715	req.ApplyOptions(opts...)
2716	return out, req.Send()
2717}
2718
2719const opDescribeSimulationJob = "DescribeSimulationJob"
2720
2721// DescribeSimulationJobRequest generates a "aws/request.Request" representing the
2722// client's request for the DescribeSimulationJob operation. The "output" return
2723// value will be populated with the request's response once the request completes
2724// successfully.
2725//
2726// Use "Send" method on the returned Request to send the API call to the service.
2727// the "output" return value is not valid until after Send returns without error.
2728//
2729// See DescribeSimulationJob for more information on using the DescribeSimulationJob
2730// API call, and error handling.
2731//
2732// This method is useful when you want to inject custom logic or configuration
2733// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2734//
2735//
2736//    // Example sending a request using the DescribeSimulationJobRequest method.
2737//    req, resp := client.DescribeSimulationJobRequest(params)
2738//
2739//    err := req.Send()
2740//    if err == nil { // resp is now filled
2741//        fmt.Println(resp)
2742//    }
2743//
2744// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeSimulationJob
2745func (c *RoboMaker) DescribeSimulationJobRequest(input *DescribeSimulationJobInput) (req *request.Request, output *DescribeSimulationJobOutput) {
2746	op := &request.Operation{
2747		Name:       opDescribeSimulationJob,
2748		HTTPMethod: "POST",
2749		HTTPPath:   "/describeSimulationJob",
2750	}
2751
2752	if input == nil {
2753		input = &DescribeSimulationJobInput{}
2754	}
2755
2756	output = &DescribeSimulationJobOutput{}
2757	req = c.newRequest(op, input, output)
2758	return
2759}
2760
2761// DescribeSimulationJob API operation for AWS RoboMaker.
2762//
2763// Describes a simulation job.
2764//
2765// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2766// with awserr.Error's Code and Message methods to get detailed information about
2767// the error.
2768//
2769// See the AWS API reference guide for AWS RoboMaker's
2770// API operation DescribeSimulationJob for usage and error information.
2771//
2772// Returned Error Types:
2773//   * ResourceNotFoundException
2774//   The specified resource does not exist.
2775//
2776//   * InvalidParameterException
2777//   A parameter specified in a request is not valid, is unsupported, or cannot
2778//   be used. The returned message provides an explanation of the error value.
2779//
2780//   * InternalServerException
2781//   AWS RoboMaker experienced a service issue. Try your call again.
2782//
2783//   * ThrottlingException
2784//   AWS RoboMaker is temporarily unable to process the request. Try your call
2785//   again.
2786//
2787// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeSimulationJob
2788func (c *RoboMaker) DescribeSimulationJob(input *DescribeSimulationJobInput) (*DescribeSimulationJobOutput, error) {
2789	req, out := c.DescribeSimulationJobRequest(input)
2790	return out, req.Send()
2791}
2792
2793// DescribeSimulationJobWithContext is the same as DescribeSimulationJob with the addition of
2794// the ability to pass a context and additional request options.
2795//
2796// See DescribeSimulationJob for details on how to use this API operation.
2797//
2798// The context must be non-nil and will be used for request cancellation. If
2799// the context is nil a panic will occur. In the future the SDK may create
2800// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2801// for more information on using Contexts.
2802func (c *RoboMaker) DescribeSimulationJobWithContext(ctx aws.Context, input *DescribeSimulationJobInput, opts ...request.Option) (*DescribeSimulationJobOutput, error) {
2803	req, out := c.DescribeSimulationJobRequest(input)
2804	req.SetContext(ctx)
2805	req.ApplyOptions(opts...)
2806	return out, req.Send()
2807}
2808
2809const opDescribeSimulationJobBatch = "DescribeSimulationJobBatch"
2810
2811// DescribeSimulationJobBatchRequest generates a "aws/request.Request" representing the
2812// client's request for the DescribeSimulationJobBatch operation. The "output" return
2813// value will be populated with the request's response once the request completes
2814// successfully.
2815//
2816// Use "Send" method on the returned Request to send the API call to the service.
2817// the "output" return value is not valid until after Send returns without error.
2818//
2819// See DescribeSimulationJobBatch for more information on using the DescribeSimulationJobBatch
2820// API call, and error handling.
2821//
2822// This method is useful when you want to inject custom logic or configuration
2823// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2824//
2825//
2826//    // Example sending a request using the DescribeSimulationJobBatchRequest method.
2827//    req, resp := client.DescribeSimulationJobBatchRequest(params)
2828//
2829//    err := req.Send()
2830//    if err == nil { // resp is now filled
2831//        fmt.Println(resp)
2832//    }
2833//
2834// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeSimulationJobBatch
2835func (c *RoboMaker) DescribeSimulationJobBatchRequest(input *DescribeSimulationJobBatchInput) (req *request.Request, output *DescribeSimulationJobBatchOutput) {
2836	op := &request.Operation{
2837		Name:       opDescribeSimulationJobBatch,
2838		HTTPMethod: "POST",
2839		HTTPPath:   "/describeSimulationJobBatch",
2840	}
2841
2842	if input == nil {
2843		input = &DescribeSimulationJobBatchInput{}
2844	}
2845
2846	output = &DescribeSimulationJobBatchOutput{}
2847	req = c.newRequest(op, input, output)
2848	return
2849}
2850
2851// DescribeSimulationJobBatch API operation for AWS RoboMaker.
2852//
2853// Describes a simulation job batch.
2854//
2855// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2856// with awserr.Error's Code and Message methods to get detailed information about
2857// the error.
2858//
2859// See the AWS API reference guide for AWS RoboMaker's
2860// API operation DescribeSimulationJobBatch for usage and error information.
2861//
2862// Returned Error Types:
2863//   * ResourceNotFoundException
2864//   The specified resource does not exist.
2865//
2866//   * InvalidParameterException
2867//   A parameter specified in a request is not valid, is unsupported, or cannot
2868//   be used. The returned message provides an explanation of the error value.
2869//
2870//   * InternalServerException
2871//   AWS RoboMaker experienced a service issue. Try your call again.
2872//
2873// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeSimulationJobBatch
2874func (c *RoboMaker) DescribeSimulationJobBatch(input *DescribeSimulationJobBatchInput) (*DescribeSimulationJobBatchOutput, error) {
2875	req, out := c.DescribeSimulationJobBatchRequest(input)
2876	return out, req.Send()
2877}
2878
2879// DescribeSimulationJobBatchWithContext is the same as DescribeSimulationJobBatch with the addition of
2880// the ability to pass a context and additional request options.
2881//
2882// See DescribeSimulationJobBatch for details on how to use this API operation.
2883//
2884// The context must be non-nil and will be used for request cancellation. If
2885// the context is nil a panic will occur. In the future the SDK may create
2886// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2887// for more information on using Contexts.
2888func (c *RoboMaker) DescribeSimulationJobBatchWithContext(ctx aws.Context, input *DescribeSimulationJobBatchInput, opts ...request.Option) (*DescribeSimulationJobBatchOutput, error) {
2889	req, out := c.DescribeSimulationJobBatchRequest(input)
2890	req.SetContext(ctx)
2891	req.ApplyOptions(opts...)
2892	return out, req.Send()
2893}
2894
2895const opDescribeWorld = "DescribeWorld"
2896
2897// DescribeWorldRequest generates a "aws/request.Request" representing the
2898// client's request for the DescribeWorld operation. The "output" return
2899// value will be populated with the request's response once the request completes
2900// successfully.
2901//
2902// Use "Send" method on the returned Request to send the API call to the service.
2903// the "output" return value is not valid until after Send returns without error.
2904//
2905// See DescribeWorld for more information on using the DescribeWorld
2906// API call, and error handling.
2907//
2908// This method is useful when you want to inject custom logic or configuration
2909// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2910//
2911//
2912//    // Example sending a request using the DescribeWorldRequest method.
2913//    req, resp := client.DescribeWorldRequest(params)
2914//
2915//    err := req.Send()
2916//    if err == nil { // resp is now filled
2917//        fmt.Println(resp)
2918//    }
2919//
2920// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorld
2921func (c *RoboMaker) DescribeWorldRequest(input *DescribeWorldInput) (req *request.Request, output *DescribeWorldOutput) {
2922	op := &request.Operation{
2923		Name:       opDescribeWorld,
2924		HTTPMethod: "POST",
2925		HTTPPath:   "/describeWorld",
2926	}
2927
2928	if input == nil {
2929		input = &DescribeWorldInput{}
2930	}
2931
2932	output = &DescribeWorldOutput{}
2933	req = c.newRequest(op, input, output)
2934	return
2935}
2936
2937// DescribeWorld API operation for AWS RoboMaker.
2938//
2939// Describes a world.
2940//
2941// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2942// with awserr.Error's Code and Message methods to get detailed information about
2943// the error.
2944//
2945// See the AWS API reference guide for AWS RoboMaker's
2946// API operation DescribeWorld for usage and error information.
2947//
2948// Returned Error Types:
2949//   * InvalidParameterException
2950//   A parameter specified in a request is not valid, is unsupported, or cannot
2951//   be used. The returned message provides an explanation of the error value.
2952//
2953//   * ResourceNotFoundException
2954//   The specified resource does not exist.
2955//
2956//   * ThrottlingException
2957//   AWS RoboMaker is temporarily unable to process the request. Try your call
2958//   again.
2959//
2960//   * InternalServerException
2961//   AWS RoboMaker experienced a service issue. Try your call again.
2962//
2963// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorld
2964func (c *RoboMaker) DescribeWorld(input *DescribeWorldInput) (*DescribeWorldOutput, error) {
2965	req, out := c.DescribeWorldRequest(input)
2966	return out, req.Send()
2967}
2968
2969// DescribeWorldWithContext is the same as DescribeWorld with the addition of
2970// the ability to pass a context and additional request options.
2971//
2972// See DescribeWorld for details on how to use this API operation.
2973//
2974// The context must be non-nil and will be used for request cancellation. If
2975// the context is nil a panic will occur. In the future the SDK may create
2976// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2977// for more information on using Contexts.
2978func (c *RoboMaker) DescribeWorldWithContext(ctx aws.Context, input *DescribeWorldInput, opts ...request.Option) (*DescribeWorldOutput, error) {
2979	req, out := c.DescribeWorldRequest(input)
2980	req.SetContext(ctx)
2981	req.ApplyOptions(opts...)
2982	return out, req.Send()
2983}
2984
2985const opDescribeWorldExportJob = "DescribeWorldExportJob"
2986
2987// DescribeWorldExportJobRequest generates a "aws/request.Request" representing the
2988// client's request for the DescribeWorldExportJob operation. The "output" return
2989// value will be populated with the request's response once the request completes
2990// successfully.
2991//
2992// Use "Send" method on the returned Request to send the API call to the service.
2993// the "output" return value is not valid until after Send returns without error.
2994//
2995// See DescribeWorldExportJob for more information on using the DescribeWorldExportJob
2996// API call, and error handling.
2997//
2998// This method is useful when you want to inject custom logic or configuration
2999// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3000//
3001//
3002//    // Example sending a request using the DescribeWorldExportJobRequest method.
3003//    req, resp := client.DescribeWorldExportJobRequest(params)
3004//
3005//    err := req.Send()
3006//    if err == nil { // resp is now filled
3007//        fmt.Println(resp)
3008//    }
3009//
3010// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorldExportJob
3011func (c *RoboMaker) DescribeWorldExportJobRequest(input *DescribeWorldExportJobInput) (req *request.Request, output *DescribeWorldExportJobOutput) {
3012	op := &request.Operation{
3013		Name:       opDescribeWorldExportJob,
3014		HTTPMethod: "POST",
3015		HTTPPath:   "/describeWorldExportJob",
3016	}
3017
3018	if input == nil {
3019		input = &DescribeWorldExportJobInput{}
3020	}
3021
3022	output = &DescribeWorldExportJobOutput{}
3023	req = c.newRequest(op, input, output)
3024	return
3025}
3026
3027// DescribeWorldExportJob API operation for AWS RoboMaker.
3028//
3029// Describes a world export job.
3030//
3031// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3032// with awserr.Error's Code and Message methods to get detailed information about
3033// the error.
3034//
3035// See the AWS API reference guide for AWS RoboMaker's
3036// API operation DescribeWorldExportJob for usage and error information.
3037//
3038// Returned Error Types:
3039//   * ResourceNotFoundException
3040//   The specified resource does not exist.
3041//
3042//   * InvalidParameterException
3043//   A parameter specified in a request is not valid, is unsupported, or cannot
3044//   be used. The returned message provides an explanation of the error value.
3045//
3046//   * InternalServerException
3047//   AWS RoboMaker experienced a service issue. Try your call again.
3048//
3049//   * ThrottlingException
3050//   AWS RoboMaker is temporarily unable to process the request. Try your call
3051//   again.
3052//
3053// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorldExportJob
3054func (c *RoboMaker) DescribeWorldExportJob(input *DescribeWorldExportJobInput) (*DescribeWorldExportJobOutput, error) {
3055	req, out := c.DescribeWorldExportJobRequest(input)
3056	return out, req.Send()
3057}
3058
3059// DescribeWorldExportJobWithContext is the same as DescribeWorldExportJob with the addition of
3060// the ability to pass a context and additional request options.
3061//
3062// See DescribeWorldExportJob for details on how to use this API operation.
3063//
3064// The context must be non-nil and will be used for request cancellation. If
3065// the context is nil a panic will occur. In the future the SDK may create
3066// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3067// for more information on using Contexts.
3068func (c *RoboMaker) DescribeWorldExportJobWithContext(ctx aws.Context, input *DescribeWorldExportJobInput, opts ...request.Option) (*DescribeWorldExportJobOutput, error) {
3069	req, out := c.DescribeWorldExportJobRequest(input)
3070	req.SetContext(ctx)
3071	req.ApplyOptions(opts...)
3072	return out, req.Send()
3073}
3074
3075const opDescribeWorldGenerationJob = "DescribeWorldGenerationJob"
3076
3077// DescribeWorldGenerationJobRequest generates a "aws/request.Request" representing the
3078// client's request for the DescribeWorldGenerationJob operation. The "output" return
3079// value will be populated with the request's response once the request completes
3080// successfully.
3081//
3082// Use "Send" method on the returned Request to send the API call to the service.
3083// the "output" return value is not valid until after Send returns without error.
3084//
3085// See DescribeWorldGenerationJob for more information on using the DescribeWorldGenerationJob
3086// API call, and error handling.
3087//
3088// This method is useful when you want to inject custom logic or configuration
3089// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3090//
3091//
3092//    // Example sending a request using the DescribeWorldGenerationJobRequest method.
3093//    req, resp := client.DescribeWorldGenerationJobRequest(params)
3094//
3095//    err := req.Send()
3096//    if err == nil { // resp is now filled
3097//        fmt.Println(resp)
3098//    }
3099//
3100// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorldGenerationJob
3101func (c *RoboMaker) DescribeWorldGenerationJobRequest(input *DescribeWorldGenerationJobInput) (req *request.Request, output *DescribeWorldGenerationJobOutput) {
3102	op := &request.Operation{
3103		Name:       opDescribeWorldGenerationJob,
3104		HTTPMethod: "POST",
3105		HTTPPath:   "/describeWorldGenerationJob",
3106	}
3107
3108	if input == nil {
3109		input = &DescribeWorldGenerationJobInput{}
3110	}
3111
3112	output = &DescribeWorldGenerationJobOutput{}
3113	req = c.newRequest(op, input, output)
3114	return
3115}
3116
3117// DescribeWorldGenerationJob API operation for AWS RoboMaker.
3118//
3119// Describes a world generation job.
3120//
3121// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3122// with awserr.Error's Code and Message methods to get detailed information about
3123// the error.
3124//
3125// See the AWS API reference guide for AWS RoboMaker's
3126// API operation DescribeWorldGenerationJob for usage and error information.
3127//
3128// Returned Error Types:
3129//   * ResourceNotFoundException
3130//   The specified resource does not exist.
3131//
3132//   * InvalidParameterException
3133//   A parameter specified in a request is not valid, is unsupported, or cannot
3134//   be used. The returned message provides an explanation of the error value.
3135//
3136//   * InternalServerException
3137//   AWS RoboMaker experienced a service issue. Try your call again.
3138//
3139//   * ThrottlingException
3140//   AWS RoboMaker is temporarily unable to process the request. Try your call
3141//   again.
3142//
3143// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorldGenerationJob
3144func (c *RoboMaker) DescribeWorldGenerationJob(input *DescribeWorldGenerationJobInput) (*DescribeWorldGenerationJobOutput, error) {
3145	req, out := c.DescribeWorldGenerationJobRequest(input)
3146	return out, req.Send()
3147}
3148
3149// DescribeWorldGenerationJobWithContext is the same as DescribeWorldGenerationJob with the addition of
3150// the ability to pass a context and additional request options.
3151//
3152// See DescribeWorldGenerationJob for details on how to use this API operation.
3153//
3154// The context must be non-nil and will be used for request cancellation. If
3155// the context is nil a panic will occur. In the future the SDK may create
3156// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3157// for more information on using Contexts.
3158func (c *RoboMaker) DescribeWorldGenerationJobWithContext(ctx aws.Context, input *DescribeWorldGenerationJobInput, opts ...request.Option) (*DescribeWorldGenerationJobOutput, error) {
3159	req, out := c.DescribeWorldGenerationJobRequest(input)
3160	req.SetContext(ctx)
3161	req.ApplyOptions(opts...)
3162	return out, req.Send()
3163}
3164
3165const opDescribeWorldTemplate = "DescribeWorldTemplate"
3166
3167// DescribeWorldTemplateRequest generates a "aws/request.Request" representing the
3168// client's request for the DescribeWorldTemplate operation. The "output" return
3169// value will be populated with the request's response once the request completes
3170// successfully.
3171//
3172// Use "Send" method on the returned Request to send the API call to the service.
3173// the "output" return value is not valid until after Send returns without error.
3174//
3175// See DescribeWorldTemplate for more information on using the DescribeWorldTemplate
3176// API call, and error handling.
3177//
3178// This method is useful when you want to inject custom logic or configuration
3179// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3180//
3181//
3182//    // Example sending a request using the DescribeWorldTemplateRequest method.
3183//    req, resp := client.DescribeWorldTemplateRequest(params)
3184//
3185//    err := req.Send()
3186//    if err == nil { // resp is now filled
3187//        fmt.Println(resp)
3188//    }
3189//
3190// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorldTemplate
3191func (c *RoboMaker) DescribeWorldTemplateRequest(input *DescribeWorldTemplateInput) (req *request.Request, output *DescribeWorldTemplateOutput) {
3192	op := &request.Operation{
3193		Name:       opDescribeWorldTemplate,
3194		HTTPMethod: "POST",
3195		HTTPPath:   "/describeWorldTemplate",
3196	}
3197
3198	if input == nil {
3199		input = &DescribeWorldTemplateInput{}
3200	}
3201
3202	output = &DescribeWorldTemplateOutput{}
3203	req = c.newRequest(op, input, output)
3204	return
3205}
3206
3207// DescribeWorldTemplate API operation for AWS RoboMaker.
3208//
3209// Describes a world template.
3210//
3211// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3212// with awserr.Error's Code and Message methods to get detailed information about
3213// the error.
3214//
3215// See the AWS API reference guide for AWS RoboMaker's
3216// API operation DescribeWorldTemplate for usage and error information.
3217//
3218// Returned Error Types:
3219//   * InvalidParameterException
3220//   A parameter specified in a request is not valid, is unsupported, or cannot
3221//   be used. The returned message provides an explanation of the error value.
3222//
3223//   * ResourceNotFoundException
3224//   The specified resource does not exist.
3225//
3226//   * ThrottlingException
3227//   AWS RoboMaker is temporarily unable to process the request. Try your call
3228//   again.
3229//
3230//   * InternalServerException
3231//   AWS RoboMaker experienced a service issue. Try your call again.
3232//
3233// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/DescribeWorldTemplate
3234func (c *RoboMaker) DescribeWorldTemplate(input *DescribeWorldTemplateInput) (*DescribeWorldTemplateOutput, error) {
3235	req, out := c.DescribeWorldTemplateRequest(input)
3236	return out, req.Send()
3237}
3238
3239// DescribeWorldTemplateWithContext is the same as DescribeWorldTemplate with the addition of
3240// the ability to pass a context and additional request options.
3241//
3242// See DescribeWorldTemplate for details on how to use this API operation.
3243//
3244// The context must be non-nil and will be used for request cancellation. If
3245// the context is nil a panic will occur. In the future the SDK may create
3246// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3247// for more information on using Contexts.
3248func (c *RoboMaker) DescribeWorldTemplateWithContext(ctx aws.Context, input *DescribeWorldTemplateInput, opts ...request.Option) (*DescribeWorldTemplateOutput, error) {
3249	req, out := c.DescribeWorldTemplateRequest(input)
3250	req.SetContext(ctx)
3251	req.ApplyOptions(opts...)
3252	return out, req.Send()
3253}
3254
3255const opGetWorldTemplateBody = "GetWorldTemplateBody"
3256
3257// GetWorldTemplateBodyRequest generates a "aws/request.Request" representing the
3258// client's request for the GetWorldTemplateBody operation. The "output" return
3259// value will be populated with the request's response once the request completes
3260// successfully.
3261//
3262// Use "Send" method on the returned Request to send the API call to the service.
3263// the "output" return value is not valid until after Send returns without error.
3264//
3265// See GetWorldTemplateBody for more information on using the GetWorldTemplateBody
3266// API call, and error handling.
3267//
3268// This method is useful when you want to inject custom logic or configuration
3269// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3270//
3271//
3272//    // Example sending a request using the GetWorldTemplateBodyRequest method.
3273//    req, resp := client.GetWorldTemplateBodyRequest(params)
3274//
3275//    err := req.Send()
3276//    if err == nil { // resp is now filled
3277//        fmt.Println(resp)
3278//    }
3279//
3280// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/GetWorldTemplateBody
3281func (c *RoboMaker) GetWorldTemplateBodyRequest(input *GetWorldTemplateBodyInput) (req *request.Request, output *GetWorldTemplateBodyOutput) {
3282	op := &request.Operation{
3283		Name:       opGetWorldTemplateBody,
3284		HTTPMethod: "POST",
3285		HTTPPath:   "/getWorldTemplateBody",
3286	}
3287
3288	if input == nil {
3289		input = &GetWorldTemplateBodyInput{}
3290	}
3291
3292	output = &GetWorldTemplateBodyOutput{}
3293	req = c.newRequest(op, input, output)
3294	return
3295}
3296
3297// GetWorldTemplateBody API operation for AWS RoboMaker.
3298//
3299// Gets the world template body.
3300//
3301// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3302// with awserr.Error's Code and Message methods to get detailed information about
3303// the error.
3304//
3305// See the AWS API reference guide for AWS RoboMaker's
3306// API operation GetWorldTemplateBody for usage and error information.
3307//
3308// Returned Error Types:
3309//   * InvalidParameterException
3310//   A parameter specified in a request is not valid, is unsupported, or cannot
3311//   be used. The returned message provides an explanation of the error value.
3312//
3313//   * ResourceNotFoundException
3314//   The specified resource does not exist.
3315//
3316//   * ThrottlingException
3317//   AWS RoboMaker is temporarily unable to process the request. Try your call
3318//   again.
3319//
3320//   * InternalServerException
3321//   AWS RoboMaker experienced a service issue. Try your call again.
3322//
3323// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/GetWorldTemplateBody
3324func (c *RoboMaker) GetWorldTemplateBody(input *GetWorldTemplateBodyInput) (*GetWorldTemplateBodyOutput, error) {
3325	req, out := c.GetWorldTemplateBodyRequest(input)
3326	return out, req.Send()
3327}
3328
3329// GetWorldTemplateBodyWithContext is the same as GetWorldTemplateBody with the addition of
3330// the ability to pass a context and additional request options.
3331//
3332// See GetWorldTemplateBody for details on how to use this API operation.
3333//
3334// The context must be non-nil and will be used for request cancellation. If
3335// the context is nil a panic will occur. In the future the SDK may create
3336// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3337// for more information on using Contexts.
3338func (c *RoboMaker) GetWorldTemplateBodyWithContext(ctx aws.Context, input *GetWorldTemplateBodyInput, opts ...request.Option) (*GetWorldTemplateBodyOutput, error) {
3339	req, out := c.GetWorldTemplateBodyRequest(input)
3340	req.SetContext(ctx)
3341	req.ApplyOptions(opts...)
3342	return out, req.Send()
3343}
3344
3345const opListDeploymentJobs = "ListDeploymentJobs"
3346
3347// ListDeploymentJobsRequest generates a "aws/request.Request" representing the
3348// client's request for the ListDeploymentJobs operation. The "output" return
3349// value will be populated with the request's response once the request completes
3350// successfully.
3351//
3352// Use "Send" method on the returned Request to send the API call to the service.
3353// the "output" return value is not valid until after Send returns without error.
3354//
3355// See ListDeploymentJobs for more information on using the ListDeploymentJobs
3356// API call, and error handling.
3357//
3358// This method is useful when you want to inject custom logic or configuration
3359// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3360//
3361//
3362//    // Example sending a request using the ListDeploymentJobsRequest method.
3363//    req, resp := client.ListDeploymentJobsRequest(params)
3364//
3365//    err := req.Send()
3366//    if err == nil { // resp is now filled
3367//        fmt.Println(resp)
3368//    }
3369//
3370// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListDeploymentJobs
3371func (c *RoboMaker) ListDeploymentJobsRequest(input *ListDeploymentJobsInput) (req *request.Request, output *ListDeploymentJobsOutput) {
3372	op := &request.Operation{
3373		Name:       opListDeploymentJobs,
3374		HTTPMethod: "POST",
3375		HTTPPath:   "/listDeploymentJobs",
3376		Paginator: &request.Paginator{
3377			InputTokens:     []string{"nextToken"},
3378			OutputTokens:    []string{"nextToken"},
3379			LimitToken:      "maxResults",
3380			TruncationToken: "",
3381		},
3382	}
3383
3384	if input == nil {
3385		input = &ListDeploymentJobsInput{}
3386	}
3387
3388	output = &ListDeploymentJobsOutput{}
3389	req = c.newRequest(op, input, output)
3390	return
3391}
3392
3393// ListDeploymentJobs API operation for AWS RoboMaker.
3394//
3395// Returns a list of deployment jobs for a fleet. You can optionally provide
3396// filters to retrieve specific deployment jobs.
3397//
3398// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3399// with awserr.Error's Code and Message methods to get detailed information about
3400// the error.
3401//
3402// See the AWS API reference guide for AWS RoboMaker's
3403// API operation ListDeploymentJobs for usage and error information.
3404//
3405// Returned Error Types:
3406//   * ResourceNotFoundException
3407//   The specified resource does not exist.
3408//
3409//   * InvalidParameterException
3410//   A parameter specified in a request is not valid, is unsupported, or cannot
3411//   be used. The returned message provides an explanation of the error value.
3412//
3413//   * InternalServerException
3414//   AWS RoboMaker experienced a service issue. Try your call again.
3415//
3416//   * ThrottlingException
3417//   AWS RoboMaker is temporarily unable to process the request. Try your call
3418//   again.
3419//
3420// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListDeploymentJobs
3421func (c *RoboMaker) ListDeploymentJobs(input *ListDeploymentJobsInput) (*ListDeploymentJobsOutput, error) {
3422	req, out := c.ListDeploymentJobsRequest(input)
3423	return out, req.Send()
3424}
3425
3426// ListDeploymentJobsWithContext is the same as ListDeploymentJobs with the addition of
3427// the ability to pass a context and additional request options.
3428//
3429// See ListDeploymentJobs for details on how to use this API operation.
3430//
3431// The context must be non-nil and will be used for request cancellation. If
3432// the context is nil a panic will occur. In the future the SDK may create
3433// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3434// for more information on using Contexts.
3435func (c *RoboMaker) ListDeploymentJobsWithContext(ctx aws.Context, input *ListDeploymentJobsInput, opts ...request.Option) (*ListDeploymentJobsOutput, error) {
3436	req, out := c.ListDeploymentJobsRequest(input)
3437	req.SetContext(ctx)
3438	req.ApplyOptions(opts...)
3439	return out, req.Send()
3440}
3441
3442// ListDeploymentJobsPages iterates over the pages of a ListDeploymentJobs operation,
3443// calling the "fn" function with the response data for each page. To stop
3444// iterating, return false from the fn function.
3445//
3446// See ListDeploymentJobs method for more information on how to use this operation.
3447//
3448// Note: This operation can generate multiple requests to a service.
3449//
3450//    // Example iterating over at most 3 pages of a ListDeploymentJobs operation.
3451//    pageNum := 0
3452//    err := client.ListDeploymentJobsPages(params,
3453//        func(page *robomaker.ListDeploymentJobsOutput, lastPage bool) bool {
3454//            pageNum++
3455//            fmt.Println(page)
3456//            return pageNum <= 3
3457//        })
3458//
3459func (c *RoboMaker) ListDeploymentJobsPages(input *ListDeploymentJobsInput, fn func(*ListDeploymentJobsOutput, bool) bool) error {
3460	return c.ListDeploymentJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3461}
3462
3463// ListDeploymentJobsPagesWithContext same as ListDeploymentJobsPages except
3464// it takes a Context and allows setting request options on the pages.
3465//
3466// The context must be non-nil and will be used for request cancellation. If
3467// the context is nil a panic will occur. In the future the SDK may create
3468// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3469// for more information on using Contexts.
3470func (c *RoboMaker) ListDeploymentJobsPagesWithContext(ctx aws.Context, input *ListDeploymentJobsInput, fn func(*ListDeploymentJobsOutput, bool) bool, opts ...request.Option) error {
3471	p := request.Pagination{
3472		NewRequest: func() (*request.Request, error) {
3473			var inCpy *ListDeploymentJobsInput
3474			if input != nil {
3475				tmp := *input
3476				inCpy = &tmp
3477			}
3478			req, _ := c.ListDeploymentJobsRequest(inCpy)
3479			req.SetContext(ctx)
3480			req.ApplyOptions(opts...)
3481			return req, nil
3482		},
3483	}
3484
3485	for p.Next() {
3486		if !fn(p.Page().(*ListDeploymentJobsOutput), !p.HasNextPage()) {
3487			break
3488		}
3489	}
3490
3491	return p.Err()
3492}
3493
3494const opListFleets = "ListFleets"
3495
3496// ListFleetsRequest generates a "aws/request.Request" representing the
3497// client's request for the ListFleets operation. The "output" return
3498// value will be populated with the request's response once the request completes
3499// successfully.
3500//
3501// Use "Send" method on the returned Request to send the API call to the service.
3502// the "output" return value is not valid until after Send returns without error.
3503//
3504// See ListFleets for more information on using the ListFleets
3505// API call, and error handling.
3506//
3507// This method is useful when you want to inject custom logic or configuration
3508// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3509//
3510//
3511//    // Example sending a request using the ListFleetsRequest method.
3512//    req, resp := client.ListFleetsRequest(params)
3513//
3514//    err := req.Send()
3515//    if err == nil { // resp is now filled
3516//        fmt.Println(resp)
3517//    }
3518//
3519// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListFleets
3520func (c *RoboMaker) ListFleetsRequest(input *ListFleetsInput) (req *request.Request, output *ListFleetsOutput) {
3521	op := &request.Operation{
3522		Name:       opListFleets,
3523		HTTPMethod: "POST",
3524		HTTPPath:   "/listFleets",
3525		Paginator: &request.Paginator{
3526			InputTokens:     []string{"nextToken"},
3527			OutputTokens:    []string{"nextToken"},
3528			LimitToken:      "maxResults",
3529			TruncationToken: "",
3530		},
3531	}
3532
3533	if input == nil {
3534		input = &ListFleetsInput{}
3535	}
3536
3537	output = &ListFleetsOutput{}
3538	req = c.newRequest(op, input, output)
3539	return
3540}
3541
3542// ListFleets API operation for AWS RoboMaker.
3543//
3544// Returns a list of fleets. You can optionally provide filters to retrieve
3545// specific fleets.
3546//
3547// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3548// with awserr.Error's Code and Message methods to get detailed information about
3549// the error.
3550//
3551// See the AWS API reference guide for AWS RoboMaker's
3552// API operation ListFleets for usage and error information.
3553//
3554// Returned Error Types:
3555//   * ResourceNotFoundException
3556//   The specified resource does not exist.
3557//
3558//   * InvalidParameterException
3559//   A parameter specified in a request is not valid, is unsupported, or cannot
3560//   be used. The returned message provides an explanation of the error value.
3561//
3562//   * InternalServerException
3563//   AWS RoboMaker experienced a service issue. Try your call again.
3564//
3565//   * ThrottlingException
3566//   AWS RoboMaker is temporarily unable to process the request. Try your call
3567//   again.
3568//
3569// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListFleets
3570func (c *RoboMaker) ListFleets(input *ListFleetsInput) (*ListFleetsOutput, error) {
3571	req, out := c.ListFleetsRequest(input)
3572	return out, req.Send()
3573}
3574
3575// ListFleetsWithContext is the same as ListFleets with the addition of
3576// the ability to pass a context and additional request options.
3577//
3578// See ListFleets for details on how to use this API operation.
3579//
3580// The context must be non-nil and will be used for request cancellation. If
3581// the context is nil a panic will occur. In the future the SDK may create
3582// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3583// for more information on using Contexts.
3584func (c *RoboMaker) ListFleetsWithContext(ctx aws.Context, input *ListFleetsInput, opts ...request.Option) (*ListFleetsOutput, error) {
3585	req, out := c.ListFleetsRequest(input)
3586	req.SetContext(ctx)
3587	req.ApplyOptions(opts...)
3588	return out, req.Send()
3589}
3590
3591// ListFleetsPages iterates over the pages of a ListFleets operation,
3592// calling the "fn" function with the response data for each page. To stop
3593// iterating, return false from the fn function.
3594//
3595// See ListFleets method for more information on how to use this operation.
3596//
3597// Note: This operation can generate multiple requests to a service.
3598//
3599//    // Example iterating over at most 3 pages of a ListFleets operation.
3600//    pageNum := 0
3601//    err := client.ListFleetsPages(params,
3602//        func(page *robomaker.ListFleetsOutput, lastPage bool) bool {
3603//            pageNum++
3604//            fmt.Println(page)
3605//            return pageNum <= 3
3606//        })
3607//
3608func (c *RoboMaker) ListFleetsPages(input *ListFleetsInput, fn func(*ListFleetsOutput, bool) bool) error {
3609	return c.ListFleetsPagesWithContext(aws.BackgroundContext(), input, fn)
3610}
3611
3612// ListFleetsPagesWithContext same as ListFleetsPages except
3613// it takes a Context and allows setting request options on the pages.
3614//
3615// The context must be non-nil and will be used for request cancellation. If
3616// the context is nil a panic will occur. In the future the SDK may create
3617// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3618// for more information on using Contexts.
3619func (c *RoboMaker) ListFleetsPagesWithContext(ctx aws.Context, input *ListFleetsInput, fn func(*ListFleetsOutput, bool) bool, opts ...request.Option) error {
3620	p := request.Pagination{
3621		NewRequest: func() (*request.Request, error) {
3622			var inCpy *ListFleetsInput
3623			if input != nil {
3624				tmp := *input
3625				inCpy = &tmp
3626			}
3627			req, _ := c.ListFleetsRequest(inCpy)
3628			req.SetContext(ctx)
3629			req.ApplyOptions(opts...)
3630			return req, nil
3631		},
3632	}
3633
3634	for p.Next() {
3635		if !fn(p.Page().(*ListFleetsOutput), !p.HasNextPage()) {
3636			break
3637		}
3638	}
3639
3640	return p.Err()
3641}
3642
3643const opListRobotApplications = "ListRobotApplications"
3644
3645// ListRobotApplicationsRequest generates a "aws/request.Request" representing the
3646// client's request for the ListRobotApplications operation. The "output" return
3647// value will be populated with the request's response once the request completes
3648// successfully.
3649//
3650// Use "Send" method on the returned Request to send the API call to the service.
3651// the "output" return value is not valid until after Send returns without error.
3652//
3653// See ListRobotApplications for more information on using the ListRobotApplications
3654// API call, and error handling.
3655//
3656// This method is useful when you want to inject custom logic or configuration
3657// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3658//
3659//
3660//    // Example sending a request using the ListRobotApplicationsRequest method.
3661//    req, resp := client.ListRobotApplicationsRequest(params)
3662//
3663//    err := req.Send()
3664//    if err == nil { // resp is now filled
3665//        fmt.Println(resp)
3666//    }
3667//
3668// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListRobotApplications
3669func (c *RoboMaker) ListRobotApplicationsRequest(input *ListRobotApplicationsInput) (req *request.Request, output *ListRobotApplicationsOutput) {
3670	op := &request.Operation{
3671		Name:       opListRobotApplications,
3672		HTTPMethod: "POST",
3673		HTTPPath:   "/listRobotApplications",
3674		Paginator: &request.Paginator{
3675			InputTokens:     []string{"nextToken"},
3676			OutputTokens:    []string{"nextToken"},
3677			LimitToken:      "maxResults",
3678			TruncationToken: "",
3679		},
3680	}
3681
3682	if input == nil {
3683		input = &ListRobotApplicationsInput{}
3684	}
3685
3686	output = &ListRobotApplicationsOutput{}
3687	req = c.newRequest(op, input, output)
3688	return
3689}
3690
3691// ListRobotApplications API operation for AWS RoboMaker.
3692//
3693// Returns a list of robot application. You can optionally provide filters to
3694// retrieve specific robot applications.
3695//
3696// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3697// with awserr.Error's Code and Message methods to get detailed information about
3698// the error.
3699//
3700// See the AWS API reference guide for AWS RoboMaker's
3701// API operation ListRobotApplications for usage and error information.
3702//
3703// Returned Error Types:
3704//   * InvalidParameterException
3705//   A parameter specified in a request is not valid, is unsupported, or cannot
3706//   be used. The returned message provides an explanation of the error value.
3707//
3708//   * ThrottlingException
3709//   AWS RoboMaker is temporarily unable to process the request. Try your call
3710//   again.
3711//
3712//   * InternalServerException
3713//   AWS RoboMaker experienced a service issue. Try your call again.
3714//
3715// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListRobotApplications
3716func (c *RoboMaker) ListRobotApplications(input *ListRobotApplicationsInput) (*ListRobotApplicationsOutput, error) {
3717	req, out := c.ListRobotApplicationsRequest(input)
3718	return out, req.Send()
3719}
3720
3721// ListRobotApplicationsWithContext is the same as ListRobotApplications with the addition of
3722// the ability to pass a context and additional request options.
3723//
3724// See ListRobotApplications for details on how to use this API operation.
3725//
3726// The context must be non-nil and will be used for request cancellation. If
3727// the context is nil a panic will occur. In the future the SDK may create
3728// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3729// for more information on using Contexts.
3730func (c *RoboMaker) ListRobotApplicationsWithContext(ctx aws.Context, input *ListRobotApplicationsInput, opts ...request.Option) (*ListRobotApplicationsOutput, error) {
3731	req, out := c.ListRobotApplicationsRequest(input)
3732	req.SetContext(ctx)
3733	req.ApplyOptions(opts...)
3734	return out, req.Send()
3735}
3736
3737// ListRobotApplicationsPages iterates over the pages of a ListRobotApplications operation,
3738// calling the "fn" function with the response data for each page. To stop
3739// iterating, return false from the fn function.
3740//
3741// See ListRobotApplications method for more information on how to use this operation.
3742//
3743// Note: This operation can generate multiple requests to a service.
3744//
3745//    // Example iterating over at most 3 pages of a ListRobotApplications operation.
3746//    pageNum := 0
3747//    err := client.ListRobotApplicationsPages(params,
3748//        func(page *robomaker.ListRobotApplicationsOutput, lastPage bool) bool {
3749//            pageNum++
3750//            fmt.Println(page)
3751//            return pageNum <= 3
3752//        })
3753//
3754func (c *RoboMaker) ListRobotApplicationsPages(input *ListRobotApplicationsInput, fn func(*ListRobotApplicationsOutput, bool) bool) error {
3755	return c.ListRobotApplicationsPagesWithContext(aws.BackgroundContext(), input, fn)
3756}
3757
3758// ListRobotApplicationsPagesWithContext same as ListRobotApplicationsPages except
3759// it takes a Context and allows setting request options on the pages.
3760//
3761// The context must be non-nil and will be used for request cancellation. If
3762// the context is nil a panic will occur. In the future the SDK may create
3763// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3764// for more information on using Contexts.
3765func (c *RoboMaker) ListRobotApplicationsPagesWithContext(ctx aws.Context, input *ListRobotApplicationsInput, fn func(*ListRobotApplicationsOutput, bool) bool, opts ...request.Option) error {
3766	p := request.Pagination{
3767		NewRequest: func() (*request.Request, error) {
3768			var inCpy *ListRobotApplicationsInput
3769			if input != nil {
3770				tmp := *input
3771				inCpy = &tmp
3772			}
3773			req, _ := c.ListRobotApplicationsRequest(inCpy)
3774			req.SetContext(ctx)
3775			req.ApplyOptions(opts...)
3776			return req, nil
3777		},
3778	}
3779
3780	for p.Next() {
3781		if !fn(p.Page().(*ListRobotApplicationsOutput), !p.HasNextPage()) {
3782			break
3783		}
3784	}
3785
3786	return p.Err()
3787}
3788
3789const opListRobots = "ListRobots"
3790
3791// ListRobotsRequest generates a "aws/request.Request" representing the
3792// client's request for the ListRobots operation. The "output" return
3793// value will be populated with the request's response once the request completes
3794// successfully.
3795//
3796// Use "Send" method on the returned Request to send the API call to the service.
3797// the "output" return value is not valid until after Send returns without error.
3798//
3799// See ListRobots for more information on using the ListRobots
3800// API call, and error handling.
3801//
3802// This method is useful when you want to inject custom logic or configuration
3803// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3804//
3805//
3806//    // Example sending a request using the ListRobotsRequest method.
3807//    req, resp := client.ListRobotsRequest(params)
3808//
3809//    err := req.Send()
3810//    if err == nil { // resp is now filled
3811//        fmt.Println(resp)
3812//    }
3813//
3814// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListRobots
3815func (c *RoboMaker) ListRobotsRequest(input *ListRobotsInput) (req *request.Request, output *ListRobotsOutput) {
3816	op := &request.Operation{
3817		Name:       opListRobots,
3818		HTTPMethod: "POST",
3819		HTTPPath:   "/listRobots",
3820		Paginator: &request.Paginator{
3821			InputTokens:     []string{"nextToken"},
3822			OutputTokens:    []string{"nextToken"},
3823			LimitToken:      "maxResults",
3824			TruncationToken: "",
3825		},
3826	}
3827
3828	if input == nil {
3829		input = &ListRobotsInput{}
3830	}
3831
3832	output = &ListRobotsOutput{}
3833	req = c.newRequest(op, input, output)
3834	return
3835}
3836
3837// ListRobots API operation for AWS RoboMaker.
3838//
3839// Returns a list of robots. You can optionally provide filters to retrieve
3840// specific robots.
3841//
3842// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3843// with awserr.Error's Code and Message methods to get detailed information about
3844// the error.
3845//
3846// See the AWS API reference guide for AWS RoboMaker's
3847// API operation ListRobots for usage and error information.
3848//
3849// Returned Error Types:
3850//   * ResourceNotFoundException
3851//   The specified resource does not exist.
3852//
3853//   * InvalidParameterException
3854//   A parameter specified in a request is not valid, is unsupported, or cannot
3855//   be used. The returned message provides an explanation of the error value.
3856//
3857//   * InternalServerException
3858//   AWS RoboMaker experienced a service issue. Try your call again.
3859//
3860//   * ThrottlingException
3861//   AWS RoboMaker is temporarily unable to process the request. Try your call
3862//   again.
3863//
3864// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListRobots
3865func (c *RoboMaker) ListRobots(input *ListRobotsInput) (*ListRobotsOutput, error) {
3866	req, out := c.ListRobotsRequest(input)
3867	return out, req.Send()
3868}
3869
3870// ListRobotsWithContext is the same as ListRobots with the addition of
3871// the ability to pass a context and additional request options.
3872//
3873// See ListRobots for details on how to use this API operation.
3874//
3875// The context must be non-nil and will be used for request cancellation. If
3876// the context is nil a panic will occur. In the future the SDK may create
3877// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3878// for more information on using Contexts.
3879func (c *RoboMaker) ListRobotsWithContext(ctx aws.Context, input *ListRobotsInput, opts ...request.Option) (*ListRobotsOutput, error) {
3880	req, out := c.ListRobotsRequest(input)
3881	req.SetContext(ctx)
3882	req.ApplyOptions(opts...)
3883	return out, req.Send()
3884}
3885
3886// ListRobotsPages iterates over the pages of a ListRobots operation,
3887// calling the "fn" function with the response data for each page. To stop
3888// iterating, return false from the fn function.
3889//
3890// See ListRobots method for more information on how to use this operation.
3891//
3892// Note: This operation can generate multiple requests to a service.
3893//
3894//    // Example iterating over at most 3 pages of a ListRobots operation.
3895//    pageNum := 0
3896//    err := client.ListRobotsPages(params,
3897//        func(page *robomaker.ListRobotsOutput, lastPage bool) bool {
3898//            pageNum++
3899//            fmt.Println(page)
3900//            return pageNum <= 3
3901//        })
3902//
3903func (c *RoboMaker) ListRobotsPages(input *ListRobotsInput, fn func(*ListRobotsOutput, bool) bool) error {
3904	return c.ListRobotsPagesWithContext(aws.BackgroundContext(), input, fn)
3905}
3906
3907// ListRobotsPagesWithContext same as ListRobotsPages except
3908// it takes a Context and allows setting request options on the pages.
3909//
3910// The context must be non-nil and will be used for request cancellation. If
3911// the context is nil a panic will occur. In the future the SDK may create
3912// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3913// for more information on using Contexts.
3914func (c *RoboMaker) ListRobotsPagesWithContext(ctx aws.Context, input *ListRobotsInput, fn func(*ListRobotsOutput, bool) bool, opts ...request.Option) error {
3915	p := request.Pagination{
3916		NewRequest: func() (*request.Request, error) {
3917			var inCpy *ListRobotsInput
3918			if input != nil {
3919				tmp := *input
3920				inCpy = &tmp
3921			}
3922			req, _ := c.ListRobotsRequest(inCpy)
3923			req.SetContext(ctx)
3924			req.ApplyOptions(opts...)
3925			return req, nil
3926		},
3927	}
3928
3929	for p.Next() {
3930		if !fn(p.Page().(*ListRobotsOutput), !p.HasNextPage()) {
3931			break
3932		}
3933	}
3934
3935	return p.Err()
3936}
3937
3938const opListSimulationApplications = "ListSimulationApplications"
3939
3940// ListSimulationApplicationsRequest generates a "aws/request.Request" representing the
3941// client's request for the ListSimulationApplications operation. The "output" return
3942// value will be populated with the request's response once the request completes
3943// successfully.
3944//
3945// Use "Send" method on the returned Request to send the API call to the service.
3946// the "output" return value is not valid until after Send returns without error.
3947//
3948// See ListSimulationApplications for more information on using the ListSimulationApplications
3949// API call, and error handling.
3950//
3951// This method is useful when you want to inject custom logic or configuration
3952// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3953//
3954//
3955//    // Example sending a request using the ListSimulationApplicationsRequest method.
3956//    req, resp := client.ListSimulationApplicationsRequest(params)
3957//
3958//    err := req.Send()
3959//    if err == nil { // resp is now filled
3960//        fmt.Println(resp)
3961//    }
3962//
3963// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListSimulationApplications
3964func (c *RoboMaker) ListSimulationApplicationsRequest(input *ListSimulationApplicationsInput) (req *request.Request, output *ListSimulationApplicationsOutput) {
3965	op := &request.Operation{
3966		Name:       opListSimulationApplications,
3967		HTTPMethod: "POST",
3968		HTTPPath:   "/listSimulationApplications",
3969		Paginator: &request.Paginator{
3970			InputTokens:     []string{"nextToken"},
3971			OutputTokens:    []string{"nextToken"},
3972			LimitToken:      "maxResults",
3973			TruncationToken: "",
3974		},
3975	}
3976
3977	if input == nil {
3978		input = &ListSimulationApplicationsInput{}
3979	}
3980
3981	output = &ListSimulationApplicationsOutput{}
3982	req = c.newRequest(op, input, output)
3983	return
3984}
3985
3986// ListSimulationApplications API operation for AWS RoboMaker.
3987//
3988// Returns a list of simulation applications. You can optionally provide filters
3989// to retrieve specific simulation applications.
3990//
3991// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3992// with awserr.Error's Code and Message methods to get detailed information about
3993// the error.
3994//
3995// See the AWS API reference guide for AWS RoboMaker's
3996// API operation ListSimulationApplications for usage and error information.
3997//
3998// Returned Error Types:
3999//   * InvalidParameterException
4000//   A parameter specified in a request is not valid, is unsupported, or cannot
4001//   be used. The returned message provides an explanation of the error value.
4002//
4003//   * ThrottlingException
4004//   AWS RoboMaker is temporarily unable to process the request. Try your call
4005//   again.
4006//
4007//   * InternalServerException
4008//   AWS RoboMaker experienced a service issue. Try your call again.
4009//
4010// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListSimulationApplications
4011func (c *RoboMaker) ListSimulationApplications(input *ListSimulationApplicationsInput) (*ListSimulationApplicationsOutput, error) {
4012	req, out := c.ListSimulationApplicationsRequest(input)
4013	return out, req.Send()
4014}
4015
4016// ListSimulationApplicationsWithContext is the same as ListSimulationApplications with the addition of
4017// the ability to pass a context and additional request options.
4018//
4019// See ListSimulationApplications for details on how to use this API operation.
4020//
4021// The context must be non-nil and will be used for request cancellation. If
4022// the context is nil a panic will occur. In the future the SDK may create
4023// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4024// for more information on using Contexts.
4025func (c *RoboMaker) ListSimulationApplicationsWithContext(ctx aws.Context, input *ListSimulationApplicationsInput, opts ...request.Option) (*ListSimulationApplicationsOutput, error) {
4026	req, out := c.ListSimulationApplicationsRequest(input)
4027	req.SetContext(ctx)
4028	req.ApplyOptions(opts...)
4029	return out, req.Send()
4030}
4031
4032// ListSimulationApplicationsPages iterates over the pages of a ListSimulationApplications operation,
4033// calling the "fn" function with the response data for each page. To stop
4034// iterating, return false from the fn function.
4035//
4036// See ListSimulationApplications method for more information on how to use this operation.
4037//
4038// Note: This operation can generate multiple requests to a service.
4039//
4040//    // Example iterating over at most 3 pages of a ListSimulationApplications operation.
4041//    pageNum := 0
4042//    err := client.ListSimulationApplicationsPages(params,
4043//        func(page *robomaker.ListSimulationApplicationsOutput, lastPage bool) bool {
4044//            pageNum++
4045//            fmt.Println(page)
4046//            return pageNum <= 3
4047//        })
4048//
4049func (c *RoboMaker) ListSimulationApplicationsPages(input *ListSimulationApplicationsInput, fn func(*ListSimulationApplicationsOutput, bool) bool) error {
4050	return c.ListSimulationApplicationsPagesWithContext(aws.BackgroundContext(), input, fn)
4051}
4052
4053// ListSimulationApplicationsPagesWithContext same as ListSimulationApplicationsPages except
4054// it takes a Context and allows setting request options on the pages.
4055//
4056// The context must be non-nil and will be used for request cancellation. If
4057// the context is nil a panic will occur. In the future the SDK may create
4058// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4059// for more information on using Contexts.
4060func (c *RoboMaker) ListSimulationApplicationsPagesWithContext(ctx aws.Context, input *ListSimulationApplicationsInput, fn func(*ListSimulationApplicationsOutput, bool) bool, opts ...request.Option) error {
4061	p := request.Pagination{
4062		NewRequest: func() (*request.Request, error) {
4063			var inCpy *ListSimulationApplicationsInput
4064			if input != nil {
4065				tmp := *input
4066				inCpy = &tmp
4067			}
4068			req, _ := c.ListSimulationApplicationsRequest(inCpy)
4069			req.SetContext(ctx)
4070			req.ApplyOptions(opts...)
4071			return req, nil
4072		},
4073	}
4074
4075	for p.Next() {
4076		if !fn(p.Page().(*ListSimulationApplicationsOutput), !p.HasNextPage()) {
4077			break
4078		}
4079	}
4080
4081	return p.Err()
4082}
4083
4084const opListSimulationJobBatches = "ListSimulationJobBatches"
4085
4086// ListSimulationJobBatchesRequest generates a "aws/request.Request" representing the
4087// client's request for the ListSimulationJobBatches operation. The "output" return
4088// value will be populated with the request's response once the request completes
4089// successfully.
4090//
4091// Use "Send" method on the returned Request to send the API call to the service.
4092// the "output" return value is not valid until after Send returns without error.
4093//
4094// See ListSimulationJobBatches for more information on using the ListSimulationJobBatches
4095// API call, and error handling.
4096//
4097// This method is useful when you want to inject custom logic or configuration
4098// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4099//
4100//
4101//    // Example sending a request using the ListSimulationJobBatchesRequest method.
4102//    req, resp := client.ListSimulationJobBatchesRequest(params)
4103//
4104//    err := req.Send()
4105//    if err == nil { // resp is now filled
4106//        fmt.Println(resp)
4107//    }
4108//
4109// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListSimulationJobBatches
4110func (c *RoboMaker) ListSimulationJobBatchesRequest(input *ListSimulationJobBatchesInput) (req *request.Request, output *ListSimulationJobBatchesOutput) {
4111	op := &request.Operation{
4112		Name:       opListSimulationJobBatches,
4113		HTTPMethod: "POST",
4114		HTTPPath:   "/listSimulationJobBatches",
4115		Paginator: &request.Paginator{
4116			InputTokens:     []string{"nextToken"},
4117			OutputTokens:    []string{"nextToken"},
4118			LimitToken:      "maxResults",
4119			TruncationToken: "",
4120		},
4121	}
4122
4123	if input == nil {
4124		input = &ListSimulationJobBatchesInput{}
4125	}
4126
4127	output = &ListSimulationJobBatchesOutput{}
4128	req = c.newRequest(op, input, output)
4129	return
4130}
4131
4132// ListSimulationJobBatches API operation for AWS RoboMaker.
4133//
4134// Returns a list simulation job batches. You can optionally provide filters
4135// to retrieve specific simulation batch jobs.
4136//
4137// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4138// with awserr.Error's Code and Message methods to get detailed information about
4139// the error.
4140//
4141// See the AWS API reference guide for AWS RoboMaker's
4142// API operation ListSimulationJobBatches for usage and error information.
4143//
4144// Returned Error Types:
4145//   * InvalidParameterException
4146//   A parameter specified in a request is not valid, is unsupported, or cannot
4147//   be used. The returned message provides an explanation of the error value.
4148//
4149//   * InternalServerException
4150//   AWS RoboMaker experienced a service issue. Try your call again.
4151//
4152// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListSimulationJobBatches
4153func (c *RoboMaker) ListSimulationJobBatches(input *ListSimulationJobBatchesInput) (*ListSimulationJobBatchesOutput, error) {
4154	req, out := c.ListSimulationJobBatchesRequest(input)
4155	return out, req.Send()
4156}
4157
4158// ListSimulationJobBatchesWithContext is the same as ListSimulationJobBatches with the addition of
4159// the ability to pass a context and additional request options.
4160//
4161// See ListSimulationJobBatches for details on how to use this API operation.
4162//
4163// The context must be non-nil and will be used for request cancellation. If
4164// the context is nil a panic will occur. In the future the SDK may create
4165// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4166// for more information on using Contexts.
4167func (c *RoboMaker) ListSimulationJobBatchesWithContext(ctx aws.Context, input *ListSimulationJobBatchesInput, opts ...request.Option) (*ListSimulationJobBatchesOutput, error) {
4168	req, out := c.ListSimulationJobBatchesRequest(input)
4169	req.SetContext(ctx)
4170	req.ApplyOptions(opts...)
4171	return out, req.Send()
4172}
4173
4174// ListSimulationJobBatchesPages iterates over the pages of a ListSimulationJobBatches operation,
4175// calling the "fn" function with the response data for each page. To stop
4176// iterating, return false from the fn function.
4177//
4178// See ListSimulationJobBatches method for more information on how to use this operation.
4179//
4180// Note: This operation can generate multiple requests to a service.
4181//
4182//    // Example iterating over at most 3 pages of a ListSimulationJobBatches operation.
4183//    pageNum := 0
4184//    err := client.ListSimulationJobBatchesPages(params,
4185//        func(page *robomaker.ListSimulationJobBatchesOutput, lastPage bool) bool {
4186//            pageNum++
4187//            fmt.Println(page)
4188//            return pageNum <= 3
4189//        })
4190//
4191func (c *RoboMaker) ListSimulationJobBatchesPages(input *ListSimulationJobBatchesInput, fn func(*ListSimulationJobBatchesOutput, bool) bool) error {
4192	return c.ListSimulationJobBatchesPagesWithContext(aws.BackgroundContext(), input, fn)
4193}
4194
4195// ListSimulationJobBatchesPagesWithContext same as ListSimulationJobBatchesPages except
4196// it takes a Context and allows setting request options on the pages.
4197//
4198// The context must be non-nil and will be used for request cancellation. If
4199// the context is nil a panic will occur. In the future the SDK may create
4200// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4201// for more information on using Contexts.
4202func (c *RoboMaker) ListSimulationJobBatchesPagesWithContext(ctx aws.Context, input *ListSimulationJobBatchesInput, fn func(*ListSimulationJobBatchesOutput, bool) bool, opts ...request.Option) error {
4203	p := request.Pagination{
4204		NewRequest: func() (*request.Request, error) {
4205			var inCpy *ListSimulationJobBatchesInput
4206			if input != nil {
4207				tmp := *input
4208				inCpy = &tmp
4209			}
4210			req, _ := c.ListSimulationJobBatchesRequest(inCpy)
4211			req.SetContext(ctx)
4212			req.ApplyOptions(opts...)
4213			return req, nil
4214		},
4215	}
4216
4217	for p.Next() {
4218		if !fn(p.Page().(*ListSimulationJobBatchesOutput), !p.HasNextPage()) {
4219			break
4220		}
4221	}
4222
4223	return p.Err()
4224}
4225
4226const opListSimulationJobs = "ListSimulationJobs"
4227
4228// ListSimulationJobsRequest generates a "aws/request.Request" representing the
4229// client's request for the ListSimulationJobs operation. The "output" return
4230// value will be populated with the request's response once the request completes
4231// successfully.
4232//
4233// Use "Send" method on the returned Request to send the API call to the service.
4234// the "output" return value is not valid until after Send returns without error.
4235//
4236// See ListSimulationJobs for more information on using the ListSimulationJobs
4237// API call, and error handling.
4238//
4239// This method is useful when you want to inject custom logic or configuration
4240// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4241//
4242//
4243//    // Example sending a request using the ListSimulationJobsRequest method.
4244//    req, resp := client.ListSimulationJobsRequest(params)
4245//
4246//    err := req.Send()
4247//    if err == nil { // resp is now filled
4248//        fmt.Println(resp)
4249//    }
4250//
4251// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListSimulationJobs
4252func (c *RoboMaker) ListSimulationJobsRequest(input *ListSimulationJobsInput) (req *request.Request, output *ListSimulationJobsOutput) {
4253	op := &request.Operation{
4254		Name:       opListSimulationJobs,
4255		HTTPMethod: "POST",
4256		HTTPPath:   "/listSimulationJobs",
4257		Paginator: &request.Paginator{
4258			InputTokens:     []string{"nextToken"},
4259			OutputTokens:    []string{"nextToken"},
4260			LimitToken:      "maxResults",
4261			TruncationToken: "",
4262		},
4263	}
4264
4265	if input == nil {
4266		input = &ListSimulationJobsInput{}
4267	}
4268
4269	output = &ListSimulationJobsOutput{}
4270	req = c.newRequest(op, input, output)
4271	return
4272}
4273
4274// ListSimulationJobs API operation for AWS RoboMaker.
4275//
4276// Returns a list of simulation jobs. You can optionally provide filters to
4277// retrieve specific simulation jobs.
4278//
4279// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4280// with awserr.Error's Code and Message methods to get detailed information about
4281// the error.
4282//
4283// See the AWS API reference guide for AWS RoboMaker's
4284// API operation ListSimulationJobs for usage and error information.
4285//
4286// Returned Error Types:
4287//   * InvalidParameterException
4288//   A parameter specified in a request is not valid, is unsupported, or cannot
4289//   be used. The returned message provides an explanation of the error value.
4290//
4291//   * InternalServerException
4292//   AWS RoboMaker experienced a service issue. Try your call again.
4293//
4294//   * ThrottlingException
4295//   AWS RoboMaker is temporarily unable to process the request. Try your call
4296//   again.
4297//
4298// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListSimulationJobs
4299func (c *RoboMaker) ListSimulationJobs(input *ListSimulationJobsInput) (*ListSimulationJobsOutput, error) {
4300	req, out := c.ListSimulationJobsRequest(input)
4301	return out, req.Send()
4302}
4303
4304// ListSimulationJobsWithContext is the same as ListSimulationJobs with the addition of
4305// the ability to pass a context and additional request options.
4306//
4307// See ListSimulationJobs for details on how to use this API operation.
4308//
4309// The context must be non-nil and will be used for request cancellation. If
4310// the context is nil a panic will occur. In the future the SDK may create
4311// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4312// for more information on using Contexts.
4313func (c *RoboMaker) ListSimulationJobsWithContext(ctx aws.Context, input *ListSimulationJobsInput, opts ...request.Option) (*ListSimulationJobsOutput, error) {
4314	req, out := c.ListSimulationJobsRequest(input)
4315	req.SetContext(ctx)
4316	req.ApplyOptions(opts...)
4317	return out, req.Send()
4318}
4319
4320// ListSimulationJobsPages iterates over the pages of a ListSimulationJobs operation,
4321// calling the "fn" function with the response data for each page. To stop
4322// iterating, return false from the fn function.
4323//
4324// See ListSimulationJobs method for more information on how to use this operation.
4325//
4326// Note: This operation can generate multiple requests to a service.
4327//
4328//    // Example iterating over at most 3 pages of a ListSimulationJobs operation.
4329//    pageNum := 0
4330//    err := client.ListSimulationJobsPages(params,
4331//        func(page *robomaker.ListSimulationJobsOutput, lastPage bool) bool {
4332//            pageNum++
4333//            fmt.Println(page)
4334//            return pageNum <= 3
4335//        })
4336//
4337func (c *RoboMaker) ListSimulationJobsPages(input *ListSimulationJobsInput, fn func(*ListSimulationJobsOutput, bool) bool) error {
4338	return c.ListSimulationJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4339}
4340
4341// ListSimulationJobsPagesWithContext same as ListSimulationJobsPages except
4342// it takes a Context and allows setting request options on the pages.
4343//
4344// The context must be non-nil and will be used for request cancellation. If
4345// the context is nil a panic will occur. In the future the SDK may create
4346// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4347// for more information on using Contexts.
4348func (c *RoboMaker) ListSimulationJobsPagesWithContext(ctx aws.Context, input *ListSimulationJobsInput, fn func(*ListSimulationJobsOutput, bool) bool, opts ...request.Option) error {
4349	p := request.Pagination{
4350		NewRequest: func() (*request.Request, error) {
4351			var inCpy *ListSimulationJobsInput
4352			if input != nil {
4353				tmp := *input
4354				inCpy = &tmp
4355			}
4356			req, _ := c.ListSimulationJobsRequest(inCpy)
4357			req.SetContext(ctx)
4358			req.ApplyOptions(opts...)
4359			return req, nil
4360		},
4361	}
4362
4363	for p.Next() {
4364		if !fn(p.Page().(*ListSimulationJobsOutput), !p.HasNextPage()) {
4365			break
4366		}
4367	}
4368
4369	return p.Err()
4370}
4371
4372const opListTagsForResource = "ListTagsForResource"
4373
4374// ListTagsForResourceRequest generates a "aws/request.Request" representing the
4375// client's request for the ListTagsForResource operation. The "output" return
4376// value will be populated with the request's response once the request completes
4377// successfully.
4378//
4379// Use "Send" method on the returned Request to send the API call to the service.
4380// the "output" return value is not valid until after Send returns without error.
4381//
4382// See ListTagsForResource for more information on using the ListTagsForResource
4383// API call, and error handling.
4384//
4385// This method is useful when you want to inject custom logic or configuration
4386// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4387//
4388//
4389//    // Example sending a request using the ListTagsForResourceRequest method.
4390//    req, resp := client.ListTagsForResourceRequest(params)
4391//
4392//    err := req.Send()
4393//    if err == nil { // resp is now filled
4394//        fmt.Println(resp)
4395//    }
4396//
4397// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListTagsForResource
4398func (c *RoboMaker) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
4399	op := &request.Operation{
4400		Name:       opListTagsForResource,
4401		HTTPMethod: "GET",
4402		HTTPPath:   "/tags/{resourceArn}",
4403	}
4404
4405	if input == nil {
4406		input = &ListTagsForResourceInput{}
4407	}
4408
4409	output = &ListTagsForResourceOutput{}
4410	req = c.newRequest(op, input, output)
4411	return
4412}
4413
4414// ListTagsForResource API operation for AWS RoboMaker.
4415//
4416// Lists all tags on a AWS RoboMaker resource.
4417//
4418// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4419// with awserr.Error's Code and Message methods to get detailed information about
4420// the error.
4421//
4422// See the AWS API reference guide for AWS RoboMaker's
4423// API operation ListTagsForResource for usage and error information.
4424//
4425// Returned Error Types:
4426//   * InternalServerException
4427//   AWS RoboMaker experienced a service issue. Try your call again.
4428//
4429//   * ResourceNotFoundException
4430//   The specified resource does not exist.
4431//
4432//   * InvalidParameterException
4433//   A parameter specified in a request is not valid, is unsupported, or cannot
4434//   be used. The returned message provides an explanation of the error value.
4435//
4436//   * ThrottlingException
4437//   AWS RoboMaker is temporarily unable to process the request. Try your call
4438//   again.
4439//
4440// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListTagsForResource
4441func (c *RoboMaker) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
4442	req, out := c.ListTagsForResourceRequest(input)
4443	return out, req.Send()
4444}
4445
4446// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
4447// the ability to pass a context and additional request options.
4448//
4449// See ListTagsForResource for details on how to use this API operation.
4450//
4451// The context must be non-nil and will be used for request cancellation. If
4452// the context is nil a panic will occur. In the future the SDK may create
4453// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4454// for more information on using Contexts.
4455func (c *RoboMaker) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
4456	req, out := c.ListTagsForResourceRequest(input)
4457	req.SetContext(ctx)
4458	req.ApplyOptions(opts...)
4459	return out, req.Send()
4460}
4461
4462const opListWorldExportJobs = "ListWorldExportJobs"
4463
4464// ListWorldExportJobsRequest generates a "aws/request.Request" representing the
4465// client's request for the ListWorldExportJobs operation. The "output" return
4466// value will be populated with the request's response once the request completes
4467// successfully.
4468//
4469// Use "Send" method on the returned Request to send the API call to the service.
4470// the "output" return value is not valid until after Send returns without error.
4471//
4472// See ListWorldExportJobs for more information on using the ListWorldExportJobs
4473// API call, and error handling.
4474//
4475// This method is useful when you want to inject custom logic or configuration
4476// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4477//
4478//
4479//    // Example sending a request using the ListWorldExportJobsRequest method.
4480//    req, resp := client.ListWorldExportJobsRequest(params)
4481//
4482//    err := req.Send()
4483//    if err == nil { // resp is now filled
4484//        fmt.Println(resp)
4485//    }
4486//
4487// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorldExportJobs
4488func (c *RoboMaker) ListWorldExportJobsRequest(input *ListWorldExportJobsInput) (req *request.Request, output *ListWorldExportJobsOutput) {
4489	op := &request.Operation{
4490		Name:       opListWorldExportJobs,
4491		HTTPMethod: "POST",
4492		HTTPPath:   "/listWorldExportJobs",
4493		Paginator: &request.Paginator{
4494			InputTokens:     []string{"nextToken"},
4495			OutputTokens:    []string{"nextToken"},
4496			LimitToken:      "maxResults",
4497			TruncationToken: "",
4498		},
4499	}
4500
4501	if input == nil {
4502		input = &ListWorldExportJobsInput{}
4503	}
4504
4505	output = &ListWorldExportJobsOutput{}
4506	req = c.newRequest(op, input, output)
4507	return
4508}
4509
4510// ListWorldExportJobs API operation for AWS RoboMaker.
4511//
4512// Lists world export jobs.
4513//
4514// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4515// with awserr.Error's Code and Message methods to get detailed information about
4516// the error.
4517//
4518// See the AWS API reference guide for AWS RoboMaker's
4519// API operation ListWorldExportJobs for usage and error information.
4520//
4521// Returned Error Types:
4522//   * InvalidParameterException
4523//   A parameter specified in a request is not valid, is unsupported, or cannot
4524//   be used. The returned message provides an explanation of the error value.
4525//
4526//   * InternalServerException
4527//   AWS RoboMaker experienced a service issue. Try your call again.
4528//
4529//   * ThrottlingException
4530//   AWS RoboMaker is temporarily unable to process the request. Try your call
4531//   again.
4532//
4533// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorldExportJobs
4534func (c *RoboMaker) ListWorldExportJobs(input *ListWorldExportJobsInput) (*ListWorldExportJobsOutput, error) {
4535	req, out := c.ListWorldExportJobsRequest(input)
4536	return out, req.Send()
4537}
4538
4539// ListWorldExportJobsWithContext is the same as ListWorldExportJobs with the addition of
4540// the ability to pass a context and additional request options.
4541//
4542// See ListWorldExportJobs for details on how to use this API operation.
4543//
4544// The context must be non-nil and will be used for request cancellation. If
4545// the context is nil a panic will occur. In the future the SDK may create
4546// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4547// for more information on using Contexts.
4548func (c *RoboMaker) ListWorldExportJobsWithContext(ctx aws.Context, input *ListWorldExportJobsInput, opts ...request.Option) (*ListWorldExportJobsOutput, error) {
4549	req, out := c.ListWorldExportJobsRequest(input)
4550	req.SetContext(ctx)
4551	req.ApplyOptions(opts...)
4552	return out, req.Send()
4553}
4554
4555// ListWorldExportJobsPages iterates over the pages of a ListWorldExportJobs operation,
4556// calling the "fn" function with the response data for each page. To stop
4557// iterating, return false from the fn function.
4558//
4559// See ListWorldExportJobs method for more information on how to use this operation.
4560//
4561// Note: This operation can generate multiple requests to a service.
4562//
4563//    // Example iterating over at most 3 pages of a ListWorldExportJobs operation.
4564//    pageNum := 0
4565//    err := client.ListWorldExportJobsPages(params,
4566//        func(page *robomaker.ListWorldExportJobsOutput, lastPage bool) bool {
4567//            pageNum++
4568//            fmt.Println(page)
4569//            return pageNum <= 3
4570//        })
4571//
4572func (c *RoboMaker) ListWorldExportJobsPages(input *ListWorldExportJobsInput, fn func(*ListWorldExportJobsOutput, bool) bool) error {
4573	return c.ListWorldExportJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4574}
4575
4576// ListWorldExportJobsPagesWithContext same as ListWorldExportJobsPages except
4577// it takes a Context and allows setting request options on the pages.
4578//
4579// The context must be non-nil and will be used for request cancellation. If
4580// the context is nil a panic will occur. In the future the SDK may create
4581// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4582// for more information on using Contexts.
4583func (c *RoboMaker) ListWorldExportJobsPagesWithContext(ctx aws.Context, input *ListWorldExportJobsInput, fn func(*ListWorldExportJobsOutput, bool) bool, opts ...request.Option) error {
4584	p := request.Pagination{
4585		NewRequest: func() (*request.Request, error) {
4586			var inCpy *ListWorldExportJobsInput
4587			if input != nil {
4588				tmp := *input
4589				inCpy = &tmp
4590			}
4591			req, _ := c.ListWorldExportJobsRequest(inCpy)
4592			req.SetContext(ctx)
4593			req.ApplyOptions(opts...)
4594			return req, nil
4595		},
4596	}
4597
4598	for p.Next() {
4599		if !fn(p.Page().(*ListWorldExportJobsOutput), !p.HasNextPage()) {
4600			break
4601		}
4602	}
4603
4604	return p.Err()
4605}
4606
4607const opListWorldGenerationJobs = "ListWorldGenerationJobs"
4608
4609// ListWorldGenerationJobsRequest generates a "aws/request.Request" representing the
4610// client's request for the ListWorldGenerationJobs operation. The "output" return
4611// value will be populated with the request's response once the request completes
4612// successfully.
4613//
4614// Use "Send" method on the returned Request to send the API call to the service.
4615// the "output" return value is not valid until after Send returns without error.
4616//
4617// See ListWorldGenerationJobs for more information on using the ListWorldGenerationJobs
4618// API call, and error handling.
4619//
4620// This method is useful when you want to inject custom logic or configuration
4621// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4622//
4623//
4624//    // Example sending a request using the ListWorldGenerationJobsRequest method.
4625//    req, resp := client.ListWorldGenerationJobsRequest(params)
4626//
4627//    err := req.Send()
4628//    if err == nil { // resp is now filled
4629//        fmt.Println(resp)
4630//    }
4631//
4632// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorldGenerationJobs
4633func (c *RoboMaker) ListWorldGenerationJobsRequest(input *ListWorldGenerationJobsInput) (req *request.Request, output *ListWorldGenerationJobsOutput) {
4634	op := &request.Operation{
4635		Name:       opListWorldGenerationJobs,
4636		HTTPMethod: "POST",
4637		HTTPPath:   "/listWorldGenerationJobs",
4638		Paginator: &request.Paginator{
4639			InputTokens:     []string{"nextToken"},
4640			OutputTokens:    []string{"nextToken"},
4641			LimitToken:      "maxResults",
4642			TruncationToken: "",
4643		},
4644	}
4645
4646	if input == nil {
4647		input = &ListWorldGenerationJobsInput{}
4648	}
4649
4650	output = &ListWorldGenerationJobsOutput{}
4651	req = c.newRequest(op, input, output)
4652	return
4653}
4654
4655// ListWorldGenerationJobs API operation for AWS RoboMaker.
4656//
4657// Lists world generator jobs.
4658//
4659// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4660// with awserr.Error's Code and Message methods to get detailed information about
4661// the error.
4662//
4663// See the AWS API reference guide for AWS RoboMaker's
4664// API operation ListWorldGenerationJobs for usage and error information.
4665//
4666// Returned Error Types:
4667//   * InvalidParameterException
4668//   A parameter specified in a request is not valid, is unsupported, or cannot
4669//   be used. The returned message provides an explanation of the error value.
4670//
4671//   * InternalServerException
4672//   AWS RoboMaker experienced a service issue. Try your call again.
4673//
4674//   * ThrottlingException
4675//   AWS RoboMaker is temporarily unable to process the request. Try your call
4676//   again.
4677//
4678// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorldGenerationJobs
4679func (c *RoboMaker) ListWorldGenerationJobs(input *ListWorldGenerationJobsInput) (*ListWorldGenerationJobsOutput, error) {
4680	req, out := c.ListWorldGenerationJobsRequest(input)
4681	return out, req.Send()
4682}
4683
4684// ListWorldGenerationJobsWithContext is the same as ListWorldGenerationJobs with the addition of
4685// the ability to pass a context and additional request options.
4686//
4687// See ListWorldGenerationJobs for details on how to use this API operation.
4688//
4689// The context must be non-nil and will be used for request cancellation. If
4690// the context is nil a panic will occur. In the future the SDK may create
4691// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4692// for more information on using Contexts.
4693func (c *RoboMaker) ListWorldGenerationJobsWithContext(ctx aws.Context, input *ListWorldGenerationJobsInput, opts ...request.Option) (*ListWorldGenerationJobsOutput, error) {
4694	req, out := c.ListWorldGenerationJobsRequest(input)
4695	req.SetContext(ctx)
4696	req.ApplyOptions(opts...)
4697	return out, req.Send()
4698}
4699
4700// ListWorldGenerationJobsPages iterates over the pages of a ListWorldGenerationJobs operation,
4701// calling the "fn" function with the response data for each page. To stop
4702// iterating, return false from the fn function.
4703//
4704// See ListWorldGenerationJobs method for more information on how to use this operation.
4705//
4706// Note: This operation can generate multiple requests to a service.
4707//
4708//    // Example iterating over at most 3 pages of a ListWorldGenerationJobs operation.
4709//    pageNum := 0
4710//    err := client.ListWorldGenerationJobsPages(params,
4711//        func(page *robomaker.ListWorldGenerationJobsOutput, lastPage bool) bool {
4712//            pageNum++
4713//            fmt.Println(page)
4714//            return pageNum <= 3
4715//        })
4716//
4717func (c *RoboMaker) ListWorldGenerationJobsPages(input *ListWorldGenerationJobsInput, fn func(*ListWorldGenerationJobsOutput, bool) bool) error {
4718	return c.ListWorldGenerationJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4719}
4720
4721// ListWorldGenerationJobsPagesWithContext same as ListWorldGenerationJobsPages except
4722// it takes a Context and allows setting request options on the pages.
4723//
4724// The context must be non-nil and will be used for request cancellation. If
4725// the context is nil a panic will occur. In the future the SDK may create
4726// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4727// for more information on using Contexts.
4728func (c *RoboMaker) ListWorldGenerationJobsPagesWithContext(ctx aws.Context, input *ListWorldGenerationJobsInput, fn func(*ListWorldGenerationJobsOutput, bool) bool, opts ...request.Option) error {
4729	p := request.Pagination{
4730		NewRequest: func() (*request.Request, error) {
4731			var inCpy *ListWorldGenerationJobsInput
4732			if input != nil {
4733				tmp := *input
4734				inCpy = &tmp
4735			}
4736			req, _ := c.ListWorldGenerationJobsRequest(inCpy)
4737			req.SetContext(ctx)
4738			req.ApplyOptions(opts...)
4739			return req, nil
4740		},
4741	}
4742
4743	for p.Next() {
4744		if !fn(p.Page().(*ListWorldGenerationJobsOutput), !p.HasNextPage()) {
4745			break
4746		}
4747	}
4748
4749	return p.Err()
4750}
4751
4752const opListWorldTemplates = "ListWorldTemplates"
4753
4754// ListWorldTemplatesRequest generates a "aws/request.Request" representing the
4755// client's request for the ListWorldTemplates operation. The "output" return
4756// value will be populated with the request's response once the request completes
4757// successfully.
4758//
4759// Use "Send" method on the returned Request to send the API call to the service.
4760// the "output" return value is not valid until after Send returns without error.
4761//
4762// See ListWorldTemplates for more information on using the ListWorldTemplates
4763// API call, and error handling.
4764//
4765// This method is useful when you want to inject custom logic or configuration
4766// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4767//
4768//
4769//    // Example sending a request using the ListWorldTemplatesRequest method.
4770//    req, resp := client.ListWorldTemplatesRequest(params)
4771//
4772//    err := req.Send()
4773//    if err == nil { // resp is now filled
4774//        fmt.Println(resp)
4775//    }
4776//
4777// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorldTemplates
4778func (c *RoboMaker) ListWorldTemplatesRequest(input *ListWorldTemplatesInput) (req *request.Request, output *ListWorldTemplatesOutput) {
4779	op := &request.Operation{
4780		Name:       opListWorldTemplates,
4781		HTTPMethod: "POST",
4782		HTTPPath:   "/listWorldTemplates",
4783		Paginator: &request.Paginator{
4784			InputTokens:     []string{"nextToken"},
4785			OutputTokens:    []string{"nextToken"},
4786			LimitToken:      "maxResults",
4787			TruncationToken: "",
4788		},
4789	}
4790
4791	if input == nil {
4792		input = &ListWorldTemplatesInput{}
4793	}
4794
4795	output = &ListWorldTemplatesOutput{}
4796	req = c.newRequest(op, input, output)
4797	return
4798}
4799
4800// ListWorldTemplates API operation for AWS RoboMaker.
4801//
4802// Lists world templates.
4803//
4804// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4805// with awserr.Error's Code and Message methods to get detailed information about
4806// the error.
4807//
4808// See the AWS API reference guide for AWS RoboMaker's
4809// API operation ListWorldTemplates for usage and error information.
4810//
4811// Returned Error Types:
4812//   * InvalidParameterException
4813//   A parameter specified in a request is not valid, is unsupported, or cannot
4814//   be used. The returned message provides an explanation of the error value.
4815//
4816//   * ThrottlingException
4817//   AWS RoboMaker is temporarily unable to process the request. Try your call
4818//   again.
4819//
4820//   * InternalServerException
4821//   AWS RoboMaker experienced a service issue. Try your call again.
4822//
4823// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorldTemplates
4824func (c *RoboMaker) ListWorldTemplates(input *ListWorldTemplatesInput) (*ListWorldTemplatesOutput, error) {
4825	req, out := c.ListWorldTemplatesRequest(input)
4826	return out, req.Send()
4827}
4828
4829// ListWorldTemplatesWithContext is the same as ListWorldTemplates with the addition of
4830// the ability to pass a context and additional request options.
4831//
4832// See ListWorldTemplates for details on how to use this API operation.
4833//
4834// The context must be non-nil and will be used for request cancellation. If
4835// the context is nil a panic will occur. In the future the SDK may create
4836// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4837// for more information on using Contexts.
4838func (c *RoboMaker) ListWorldTemplatesWithContext(ctx aws.Context, input *ListWorldTemplatesInput, opts ...request.Option) (*ListWorldTemplatesOutput, error) {
4839	req, out := c.ListWorldTemplatesRequest(input)
4840	req.SetContext(ctx)
4841	req.ApplyOptions(opts...)
4842	return out, req.Send()
4843}
4844
4845// ListWorldTemplatesPages iterates over the pages of a ListWorldTemplates operation,
4846// calling the "fn" function with the response data for each page. To stop
4847// iterating, return false from the fn function.
4848//
4849// See ListWorldTemplates method for more information on how to use this operation.
4850//
4851// Note: This operation can generate multiple requests to a service.
4852//
4853//    // Example iterating over at most 3 pages of a ListWorldTemplates operation.
4854//    pageNum := 0
4855//    err := client.ListWorldTemplatesPages(params,
4856//        func(page *robomaker.ListWorldTemplatesOutput, lastPage bool) bool {
4857//            pageNum++
4858//            fmt.Println(page)
4859//            return pageNum <= 3
4860//        })
4861//
4862func (c *RoboMaker) ListWorldTemplatesPages(input *ListWorldTemplatesInput, fn func(*ListWorldTemplatesOutput, bool) bool) error {
4863	return c.ListWorldTemplatesPagesWithContext(aws.BackgroundContext(), input, fn)
4864}
4865
4866// ListWorldTemplatesPagesWithContext same as ListWorldTemplatesPages except
4867// it takes a Context and allows setting request options on the pages.
4868//
4869// The context must be non-nil and will be used for request cancellation. If
4870// the context is nil a panic will occur. In the future the SDK may create
4871// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4872// for more information on using Contexts.
4873func (c *RoboMaker) ListWorldTemplatesPagesWithContext(ctx aws.Context, input *ListWorldTemplatesInput, fn func(*ListWorldTemplatesOutput, bool) bool, opts ...request.Option) error {
4874	p := request.Pagination{
4875		NewRequest: func() (*request.Request, error) {
4876			var inCpy *ListWorldTemplatesInput
4877			if input != nil {
4878				tmp := *input
4879				inCpy = &tmp
4880			}
4881			req, _ := c.ListWorldTemplatesRequest(inCpy)
4882			req.SetContext(ctx)
4883			req.ApplyOptions(opts...)
4884			return req, nil
4885		},
4886	}
4887
4888	for p.Next() {
4889		if !fn(p.Page().(*ListWorldTemplatesOutput), !p.HasNextPage()) {
4890			break
4891		}
4892	}
4893
4894	return p.Err()
4895}
4896
4897const opListWorlds = "ListWorlds"
4898
4899// ListWorldsRequest generates a "aws/request.Request" representing the
4900// client's request for the ListWorlds operation. The "output" return
4901// value will be populated with the request's response once the request completes
4902// successfully.
4903//
4904// Use "Send" method on the returned Request to send the API call to the service.
4905// the "output" return value is not valid until after Send returns without error.
4906//
4907// See ListWorlds for more information on using the ListWorlds
4908// API call, and error handling.
4909//
4910// This method is useful when you want to inject custom logic or configuration
4911// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4912//
4913//
4914//    // Example sending a request using the ListWorldsRequest method.
4915//    req, resp := client.ListWorldsRequest(params)
4916//
4917//    err := req.Send()
4918//    if err == nil { // resp is now filled
4919//        fmt.Println(resp)
4920//    }
4921//
4922// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorlds
4923func (c *RoboMaker) ListWorldsRequest(input *ListWorldsInput) (req *request.Request, output *ListWorldsOutput) {
4924	op := &request.Operation{
4925		Name:       opListWorlds,
4926		HTTPMethod: "POST",
4927		HTTPPath:   "/listWorlds",
4928		Paginator: &request.Paginator{
4929			InputTokens:     []string{"nextToken"},
4930			OutputTokens:    []string{"nextToken"},
4931			LimitToken:      "maxResults",
4932			TruncationToken: "",
4933		},
4934	}
4935
4936	if input == nil {
4937		input = &ListWorldsInput{}
4938	}
4939
4940	output = &ListWorldsOutput{}
4941	req = c.newRequest(op, input, output)
4942	return
4943}
4944
4945// ListWorlds API operation for AWS RoboMaker.
4946//
4947// Lists worlds.
4948//
4949// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4950// with awserr.Error's Code and Message methods to get detailed information about
4951// the error.
4952//
4953// See the AWS API reference guide for AWS RoboMaker's
4954// API operation ListWorlds for usage and error information.
4955//
4956// Returned Error Types:
4957//   * InvalidParameterException
4958//   A parameter specified in a request is not valid, is unsupported, or cannot
4959//   be used. The returned message provides an explanation of the error value.
4960//
4961//   * ThrottlingException
4962//   AWS RoboMaker is temporarily unable to process the request. Try your call
4963//   again.
4964//
4965//   * InternalServerException
4966//   AWS RoboMaker experienced a service issue. Try your call again.
4967//
4968// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/ListWorlds
4969func (c *RoboMaker) ListWorlds(input *ListWorldsInput) (*ListWorldsOutput, error) {
4970	req, out := c.ListWorldsRequest(input)
4971	return out, req.Send()
4972}
4973
4974// ListWorldsWithContext is the same as ListWorlds with the addition of
4975// the ability to pass a context and additional request options.
4976//
4977// See ListWorlds for details on how to use this API operation.
4978//
4979// The context must be non-nil and will be used for request cancellation. If
4980// the context is nil a panic will occur. In the future the SDK may create
4981// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4982// for more information on using Contexts.
4983func (c *RoboMaker) ListWorldsWithContext(ctx aws.Context, input *ListWorldsInput, opts ...request.Option) (*ListWorldsOutput, error) {
4984	req, out := c.ListWorldsRequest(input)
4985	req.SetContext(ctx)
4986	req.ApplyOptions(opts...)
4987	return out, req.Send()
4988}
4989
4990// ListWorldsPages iterates over the pages of a ListWorlds operation,
4991// calling the "fn" function with the response data for each page. To stop
4992// iterating, return false from the fn function.
4993//
4994// See ListWorlds method for more information on how to use this operation.
4995//
4996// Note: This operation can generate multiple requests to a service.
4997//
4998//    // Example iterating over at most 3 pages of a ListWorlds operation.
4999//    pageNum := 0
5000//    err := client.ListWorldsPages(params,
5001//        func(page *robomaker.ListWorldsOutput, lastPage bool) bool {
5002//            pageNum++
5003//            fmt.Println(page)
5004//            return pageNum <= 3
5005//        })
5006//
5007func (c *RoboMaker) ListWorldsPages(input *ListWorldsInput, fn func(*ListWorldsOutput, bool) bool) error {
5008	return c.ListWorldsPagesWithContext(aws.BackgroundContext(), input, fn)
5009}
5010
5011// ListWorldsPagesWithContext same as ListWorldsPages except
5012// it takes a Context and allows setting request options on the pages.
5013//
5014// The context must be non-nil and will be used for request cancellation. If
5015// the context is nil a panic will occur. In the future the SDK may create
5016// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5017// for more information on using Contexts.
5018func (c *RoboMaker) ListWorldsPagesWithContext(ctx aws.Context, input *ListWorldsInput, fn func(*ListWorldsOutput, bool) bool, opts ...request.Option) error {
5019	p := request.Pagination{
5020		NewRequest: func() (*request.Request, error) {
5021			var inCpy *ListWorldsInput
5022			if input != nil {
5023				tmp := *input
5024				inCpy = &tmp
5025			}
5026			req, _ := c.ListWorldsRequest(inCpy)
5027			req.SetContext(ctx)
5028			req.ApplyOptions(opts...)
5029			return req, nil
5030		},
5031	}
5032
5033	for p.Next() {
5034		if !fn(p.Page().(*ListWorldsOutput), !p.HasNextPage()) {
5035			break
5036		}
5037	}
5038
5039	return p.Err()
5040}
5041
5042const opRegisterRobot = "RegisterRobot"
5043
5044// RegisterRobotRequest generates a "aws/request.Request" representing the
5045// client's request for the RegisterRobot operation. The "output" return
5046// value will be populated with the request's response once the request completes
5047// successfully.
5048//
5049// Use "Send" method on the returned Request to send the API call to the service.
5050// the "output" return value is not valid until after Send returns without error.
5051//
5052// See RegisterRobot for more information on using the RegisterRobot
5053// API call, and error handling.
5054//
5055// This method is useful when you want to inject custom logic or configuration
5056// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5057//
5058//
5059//    // Example sending a request using the RegisterRobotRequest method.
5060//    req, resp := client.RegisterRobotRequest(params)
5061//
5062//    err := req.Send()
5063//    if err == nil { // resp is now filled
5064//        fmt.Println(resp)
5065//    }
5066//
5067// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/RegisterRobot
5068func (c *RoboMaker) RegisterRobotRequest(input *RegisterRobotInput) (req *request.Request, output *RegisterRobotOutput) {
5069	op := &request.Operation{
5070		Name:       opRegisterRobot,
5071		HTTPMethod: "POST",
5072		HTTPPath:   "/registerRobot",
5073	}
5074
5075	if input == nil {
5076		input = &RegisterRobotInput{}
5077	}
5078
5079	output = &RegisterRobotOutput{}
5080	req = c.newRequest(op, input, output)
5081	return
5082}
5083
5084// RegisterRobot API operation for AWS RoboMaker.
5085//
5086// Registers a robot with a fleet.
5087//
5088// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5089// with awserr.Error's Code and Message methods to get detailed information about
5090// the error.
5091//
5092// See the AWS API reference guide for AWS RoboMaker's
5093// API operation RegisterRobot for usage and error information.
5094//
5095// Returned Error Types:
5096//   * InvalidParameterException
5097//   A parameter specified in a request is not valid, is unsupported, or cannot
5098//   be used. The returned message provides an explanation of the error value.
5099//
5100//   * InternalServerException
5101//   AWS RoboMaker experienced a service issue. Try your call again.
5102//
5103//   * ThrottlingException
5104//   AWS RoboMaker is temporarily unable to process the request. Try your call
5105//   again.
5106//
5107//   * LimitExceededException
5108//   The requested resource exceeds the maximum number allowed, or the number
5109//   of concurrent stream requests exceeds the maximum number allowed.
5110//
5111//   * ResourceNotFoundException
5112//   The specified resource does not exist.
5113//
5114// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/RegisterRobot
5115func (c *RoboMaker) RegisterRobot(input *RegisterRobotInput) (*RegisterRobotOutput, error) {
5116	req, out := c.RegisterRobotRequest(input)
5117	return out, req.Send()
5118}
5119
5120// RegisterRobotWithContext is the same as RegisterRobot with the addition of
5121// the ability to pass a context and additional request options.
5122//
5123// See RegisterRobot for details on how to use this API operation.
5124//
5125// The context must be non-nil and will be used for request cancellation. If
5126// the context is nil a panic will occur. In the future the SDK may create
5127// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5128// for more information on using Contexts.
5129func (c *RoboMaker) RegisterRobotWithContext(ctx aws.Context, input *RegisterRobotInput, opts ...request.Option) (*RegisterRobotOutput, error) {
5130	req, out := c.RegisterRobotRequest(input)
5131	req.SetContext(ctx)
5132	req.ApplyOptions(opts...)
5133	return out, req.Send()
5134}
5135
5136const opRestartSimulationJob = "RestartSimulationJob"
5137
5138// RestartSimulationJobRequest generates a "aws/request.Request" representing the
5139// client's request for the RestartSimulationJob operation. The "output" return
5140// value will be populated with the request's response once the request completes
5141// successfully.
5142//
5143// Use "Send" method on the returned Request to send the API call to the service.
5144// the "output" return value is not valid until after Send returns without error.
5145//
5146// See RestartSimulationJob for more information on using the RestartSimulationJob
5147// API call, and error handling.
5148//
5149// This method is useful when you want to inject custom logic or configuration
5150// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5151//
5152//
5153//    // Example sending a request using the RestartSimulationJobRequest method.
5154//    req, resp := client.RestartSimulationJobRequest(params)
5155//
5156//    err := req.Send()
5157//    if err == nil { // resp is now filled
5158//        fmt.Println(resp)
5159//    }
5160//
5161// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/RestartSimulationJob
5162func (c *RoboMaker) RestartSimulationJobRequest(input *RestartSimulationJobInput) (req *request.Request, output *RestartSimulationJobOutput) {
5163	op := &request.Operation{
5164		Name:       opRestartSimulationJob,
5165		HTTPMethod: "POST",
5166		HTTPPath:   "/restartSimulationJob",
5167	}
5168
5169	if input == nil {
5170		input = &RestartSimulationJobInput{}
5171	}
5172
5173	output = &RestartSimulationJobOutput{}
5174	req = c.newRequest(op, input, output)
5175	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5176	return
5177}
5178
5179// RestartSimulationJob API operation for AWS RoboMaker.
5180//
5181// Restarts a running simulation job.
5182//
5183// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5184// with awserr.Error's Code and Message methods to get detailed information about
5185// the error.
5186//
5187// See the AWS API reference guide for AWS RoboMaker's
5188// API operation RestartSimulationJob for usage and error information.
5189//
5190// Returned Error Types:
5191//   * ResourceNotFoundException
5192//   The specified resource does not exist.
5193//
5194//   * ThrottlingException
5195//   AWS RoboMaker is temporarily unable to process the request. Try your call
5196//   again.
5197//
5198//   * LimitExceededException
5199//   The requested resource exceeds the maximum number allowed, or the number
5200//   of concurrent stream requests exceeds the maximum number allowed.
5201//
5202//   * InvalidParameterException
5203//   A parameter specified in a request is not valid, is unsupported, or cannot
5204//   be used. The returned message provides an explanation of the error value.
5205//
5206//   * InternalServerException
5207//   AWS RoboMaker experienced a service issue. Try your call again.
5208//
5209// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/RestartSimulationJob
5210func (c *RoboMaker) RestartSimulationJob(input *RestartSimulationJobInput) (*RestartSimulationJobOutput, error) {
5211	req, out := c.RestartSimulationJobRequest(input)
5212	return out, req.Send()
5213}
5214
5215// RestartSimulationJobWithContext is the same as RestartSimulationJob with the addition of
5216// the ability to pass a context and additional request options.
5217//
5218// See RestartSimulationJob for details on how to use this API operation.
5219//
5220// The context must be non-nil and will be used for request cancellation. If
5221// the context is nil a panic will occur. In the future the SDK may create
5222// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5223// for more information on using Contexts.
5224func (c *RoboMaker) RestartSimulationJobWithContext(ctx aws.Context, input *RestartSimulationJobInput, opts ...request.Option) (*RestartSimulationJobOutput, error) {
5225	req, out := c.RestartSimulationJobRequest(input)
5226	req.SetContext(ctx)
5227	req.ApplyOptions(opts...)
5228	return out, req.Send()
5229}
5230
5231const opStartSimulationJobBatch = "StartSimulationJobBatch"
5232
5233// StartSimulationJobBatchRequest generates a "aws/request.Request" representing the
5234// client's request for the StartSimulationJobBatch operation. The "output" return
5235// value will be populated with the request's response once the request completes
5236// successfully.
5237//
5238// Use "Send" method on the returned Request to send the API call to the service.
5239// the "output" return value is not valid until after Send returns without error.
5240//
5241// See StartSimulationJobBatch for more information on using the StartSimulationJobBatch
5242// API call, and error handling.
5243//
5244// This method is useful when you want to inject custom logic or configuration
5245// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5246//
5247//
5248//    // Example sending a request using the StartSimulationJobBatchRequest method.
5249//    req, resp := client.StartSimulationJobBatchRequest(params)
5250//
5251//    err := req.Send()
5252//    if err == nil { // resp is now filled
5253//        fmt.Println(resp)
5254//    }
5255//
5256// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/StartSimulationJobBatch
5257func (c *RoboMaker) StartSimulationJobBatchRequest(input *StartSimulationJobBatchInput) (req *request.Request, output *StartSimulationJobBatchOutput) {
5258	op := &request.Operation{
5259		Name:       opStartSimulationJobBatch,
5260		HTTPMethod: "POST",
5261		HTTPPath:   "/startSimulationJobBatch",
5262	}
5263
5264	if input == nil {
5265		input = &StartSimulationJobBatchInput{}
5266	}
5267
5268	output = &StartSimulationJobBatchOutput{}
5269	req = c.newRequest(op, input, output)
5270	return
5271}
5272
5273// StartSimulationJobBatch API operation for AWS RoboMaker.
5274//
5275// Starts a new simulation job batch. The batch is defined using one or more
5276// SimulationJobRequest objects.
5277//
5278// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5279// with awserr.Error's Code and Message methods to get detailed information about
5280// the error.
5281//
5282// See the AWS API reference guide for AWS RoboMaker's
5283// API operation StartSimulationJobBatch for usage and error information.
5284//
5285// Returned Error Types:
5286//   * InvalidParameterException
5287//   A parameter specified in a request is not valid, is unsupported, or cannot
5288//   be used. The returned message provides an explanation of the error value.
5289//
5290//   * LimitExceededException
5291//   The requested resource exceeds the maximum number allowed, or the number
5292//   of concurrent stream requests exceeds the maximum number allowed.
5293//
5294//   * ThrottlingException
5295//   AWS RoboMaker is temporarily unable to process the request. Try your call
5296//   again.
5297//
5298//   * IdempotentParameterMismatchException
5299//   The request uses the same client token as a previous, but non-identical request.
5300//   Do not reuse a client token with different requests, unless the requests
5301//   are identical.
5302//
5303//   * InternalServerException
5304//   AWS RoboMaker experienced a service issue. Try your call again.
5305//
5306// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/StartSimulationJobBatch
5307func (c *RoboMaker) StartSimulationJobBatch(input *StartSimulationJobBatchInput) (*StartSimulationJobBatchOutput, error) {
5308	req, out := c.StartSimulationJobBatchRequest(input)
5309	return out, req.Send()
5310}
5311
5312// StartSimulationJobBatchWithContext is the same as StartSimulationJobBatch with the addition of
5313// the ability to pass a context and additional request options.
5314//
5315// See StartSimulationJobBatch for details on how to use this API operation.
5316//
5317// The context must be non-nil and will be used for request cancellation. If
5318// the context is nil a panic will occur. In the future the SDK may create
5319// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5320// for more information on using Contexts.
5321func (c *RoboMaker) StartSimulationJobBatchWithContext(ctx aws.Context, input *StartSimulationJobBatchInput, opts ...request.Option) (*StartSimulationJobBatchOutput, error) {
5322	req, out := c.StartSimulationJobBatchRequest(input)
5323	req.SetContext(ctx)
5324	req.ApplyOptions(opts...)
5325	return out, req.Send()
5326}
5327
5328const opSyncDeploymentJob = "SyncDeploymentJob"
5329
5330// SyncDeploymentJobRequest generates a "aws/request.Request" representing the
5331// client's request for the SyncDeploymentJob operation. The "output" return
5332// value will be populated with the request's response once the request completes
5333// successfully.
5334//
5335// Use "Send" method on the returned Request to send the API call to the service.
5336// the "output" return value is not valid until after Send returns without error.
5337//
5338// See SyncDeploymentJob for more information on using the SyncDeploymentJob
5339// API call, and error handling.
5340//
5341// This method is useful when you want to inject custom logic or configuration
5342// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5343//
5344//
5345//    // Example sending a request using the SyncDeploymentJobRequest method.
5346//    req, resp := client.SyncDeploymentJobRequest(params)
5347//
5348//    err := req.Send()
5349//    if err == nil { // resp is now filled
5350//        fmt.Println(resp)
5351//    }
5352//
5353// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/SyncDeploymentJob
5354func (c *RoboMaker) SyncDeploymentJobRequest(input *SyncDeploymentJobInput) (req *request.Request, output *SyncDeploymentJobOutput) {
5355	op := &request.Operation{
5356		Name:       opSyncDeploymentJob,
5357		HTTPMethod: "POST",
5358		HTTPPath:   "/syncDeploymentJob",
5359	}
5360
5361	if input == nil {
5362		input = &SyncDeploymentJobInput{}
5363	}
5364
5365	output = &SyncDeploymentJobOutput{}
5366	req = c.newRequest(op, input, output)
5367	return
5368}
5369
5370// SyncDeploymentJob API operation for AWS RoboMaker.
5371//
5372// Syncrhonizes robots in a fleet to the latest deployment. This is helpful
5373// if robots were added after a deployment.
5374//
5375// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5376// with awserr.Error's Code and Message methods to get detailed information about
5377// the error.
5378//
5379// See the AWS API reference guide for AWS RoboMaker's
5380// API operation SyncDeploymentJob for usage and error information.
5381//
5382// Returned Error Types:
5383//   * ResourceNotFoundException
5384//   The specified resource does not exist.
5385//
5386//   * InvalidParameterException
5387//   A parameter specified in a request is not valid, is unsupported, or cannot
5388//   be used. The returned message provides an explanation of the error value.
5389//
5390//   * InternalServerException
5391//   AWS RoboMaker experienced a service issue. Try your call again.
5392//
5393//   * ThrottlingException
5394//   AWS RoboMaker is temporarily unable to process the request. Try your call
5395//   again.
5396//
5397//   * LimitExceededException
5398//   The requested resource exceeds the maximum number allowed, or the number
5399//   of concurrent stream requests exceeds the maximum number allowed.
5400//
5401//   * ConcurrentDeploymentException
5402//   The failure percentage threshold percentage was met.
5403//
5404//   * IdempotentParameterMismatchException
5405//   The request uses the same client token as a previous, but non-identical request.
5406//   Do not reuse a client token with different requests, unless the requests
5407//   are identical.
5408//
5409// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/SyncDeploymentJob
5410func (c *RoboMaker) SyncDeploymentJob(input *SyncDeploymentJobInput) (*SyncDeploymentJobOutput, error) {
5411	req, out := c.SyncDeploymentJobRequest(input)
5412	return out, req.Send()
5413}
5414
5415// SyncDeploymentJobWithContext is the same as SyncDeploymentJob with the addition of
5416// the ability to pass a context and additional request options.
5417//
5418// See SyncDeploymentJob for details on how to use this API operation.
5419//
5420// The context must be non-nil and will be used for request cancellation. If
5421// the context is nil a panic will occur. In the future the SDK may create
5422// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5423// for more information on using Contexts.
5424func (c *RoboMaker) SyncDeploymentJobWithContext(ctx aws.Context, input *SyncDeploymentJobInput, opts ...request.Option) (*SyncDeploymentJobOutput, error) {
5425	req, out := c.SyncDeploymentJobRequest(input)
5426	req.SetContext(ctx)
5427	req.ApplyOptions(opts...)
5428	return out, req.Send()
5429}
5430
5431const opTagResource = "TagResource"
5432
5433// TagResourceRequest generates a "aws/request.Request" representing the
5434// client's request for the TagResource operation. The "output" return
5435// value will be populated with the request's response once the request completes
5436// successfully.
5437//
5438// Use "Send" method on the returned Request to send the API call to the service.
5439// the "output" return value is not valid until after Send returns without error.
5440//
5441// See TagResource for more information on using the TagResource
5442// API call, and error handling.
5443//
5444// This method is useful when you want to inject custom logic or configuration
5445// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5446//
5447//
5448//    // Example sending a request using the TagResourceRequest method.
5449//    req, resp := client.TagResourceRequest(params)
5450//
5451//    err := req.Send()
5452//    if err == nil { // resp is now filled
5453//        fmt.Println(resp)
5454//    }
5455//
5456// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/TagResource
5457func (c *RoboMaker) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
5458	op := &request.Operation{
5459		Name:       opTagResource,
5460		HTTPMethod: "POST",
5461		HTTPPath:   "/tags/{resourceArn}",
5462	}
5463
5464	if input == nil {
5465		input = &TagResourceInput{}
5466	}
5467
5468	output = &TagResourceOutput{}
5469	req = c.newRequest(op, input, output)
5470	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5471	return
5472}
5473
5474// TagResource API operation for AWS RoboMaker.
5475//
5476// Adds or edits tags for a AWS RoboMaker resource.
5477//
5478// Each tag consists of a tag key and a tag value. Tag keys and tag values are
5479// both required, but tag values can be empty strings.
5480//
5481// For information about the rules that apply to tag keys and tag values, see
5482// User-Defined Tag Restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html)
5483// in the AWS Billing and Cost Management User Guide.
5484//
5485// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5486// with awserr.Error's Code and Message methods to get detailed information about
5487// the error.
5488//
5489// See the AWS API reference guide for AWS RoboMaker's
5490// API operation TagResource for usage and error information.
5491//
5492// Returned Error Types:
5493//   * InternalServerException
5494//   AWS RoboMaker experienced a service issue. Try your call again.
5495//
5496//   * ResourceNotFoundException
5497//   The specified resource does not exist.
5498//
5499//   * InvalidParameterException
5500//   A parameter specified in a request is not valid, is unsupported, or cannot
5501//   be used. The returned message provides an explanation of the error value.
5502//
5503//   * ThrottlingException
5504//   AWS RoboMaker is temporarily unable to process the request. Try your call
5505//   again.
5506//
5507// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/TagResource
5508func (c *RoboMaker) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
5509	req, out := c.TagResourceRequest(input)
5510	return out, req.Send()
5511}
5512
5513// TagResourceWithContext is the same as TagResource with the addition of
5514// the ability to pass a context and additional request options.
5515//
5516// See TagResource for details on how to use this API operation.
5517//
5518// The context must be non-nil and will be used for request cancellation. If
5519// the context is nil a panic will occur. In the future the SDK may create
5520// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5521// for more information on using Contexts.
5522func (c *RoboMaker) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
5523	req, out := c.TagResourceRequest(input)
5524	req.SetContext(ctx)
5525	req.ApplyOptions(opts...)
5526	return out, req.Send()
5527}
5528
5529const opUntagResource = "UntagResource"
5530
5531// UntagResourceRequest generates a "aws/request.Request" representing the
5532// client's request for the UntagResource operation. The "output" return
5533// value will be populated with the request's response once the request completes
5534// successfully.
5535//
5536// Use "Send" method on the returned Request to send the API call to the service.
5537// the "output" return value is not valid until after Send returns without error.
5538//
5539// See UntagResource for more information on using the UntagResource
5540// API call, and error handling.
5541//
5542// This method is useful when you want to inject custom logic or configuration
5543// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5544//
5545//
5546//    // Example sending a request using the UntagResourceRequest method.
5547//    req, resp := client.UntagResourceRequest(params)
5548//
5549//    err := req.Send()
5550//    if err == nil { // resp is now filled
5551//        fmt.Println(resp)
5552//    }
5553//
5554// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UntagResource
5555func (c *RoboMaker) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
5556	op := &request.Operation{
5557		Name:       opUntagResource,
5558		HTTPMethod: "DELETE",
5559		HTTPPath:   "/tags/{resourceArn}",
5560	}
5561
5562	if input == nil {
5563		input = &UntagResourceInput{}
5564	}
5565
5566	output = &UntagResourceOutput{}
5567	req = c.newRequest(op, input, output)
5568	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5569	return
5570}
5571
5572// UntagResource API operation for AWS RoboMaker.
5573//
5574// Removes the specified tags from the specified AWS RoboMaker resource.
5575//
5576// To remove a tag, specify the tag key. To change the tag value of an existing
5577// tag key, use TagResource (https://docs.aws.amazon.com/robomaker/latest/dg/API_TagResource.html).
5578//
5579// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5580// with awserr.Error's Code and Message methods to get detailed information about
5581// the error.
5582//
5583// See the AWS API reference guide for AWS RoboMaker's
5584// API operation UntagResource for usage and error information.
5585//
5586// Returned Error Types:
5587//   * InternalServerException
5588//   AWS RoboMaker experienced a service issue. Try your call again.
5589//
5590//   * ResourceNotFoundException
5591//   The specified resource does not exist.
5592//
5593//   * InvalidParameterException
5594//   A parameter specified in a request is not valid, is unsupported, or cannot
5595//   be used. The returned message provides an explanation of the error value.
5596//
5597//   * ThrottlingException
5598//   AWS RoboMaker is temporarily unable to process the request. Try your call
5599//   again.
5600//
5601// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UntagResource
5602func (c *RoboMaker) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
5603	req, out := c.UntagResourceRequest(input)
5604	return out, req.Send()
5605}
5606
5607// UntagResourceWithContext is the same as UntagResource with the addition of
5608// the ability to pass a context and additional request options.
5609//
5610// See UntagResource for details on how to use this API operation.
5611//
5612// The context must be non-nil and will be used for request cancellation. If
5613// the context is nil a panic will occur. In the future the SDK may create
5614// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5615// for more information on using Contexts.
5616func (c *RoboMaker) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
5617	req, out := c.UntagResourceRequest(input)
5618	req.SetContext(ctx)
5619	req.ApplyOptions(opts...)
5620	return out, req.Send()
5621}
5622
5623const opUpdateRobotApplication = "UpdateRobotApplication"
5624
5625// UpdateRobotApplicationRequest generates a "aws/request.Request" representing the
5626// client's request for the UpdateRobotApplication operation. The "output" return
5627// value will be populated with the request's response once the request completes
5628// successfully.
5629//
5630// Use "Send" method on the returned Request to send the API call to the service.
5631// the "output" return value is not valid until after Send returns without error.
5632//
5633// See UpdateRobotApplication for more information on using the UpdateRobotApplication
5634// API call, and error handling.
5635//
5636// This method is useful when you want to inject custom logic or configuration
5637// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5638//
5639//
5640//    // Example sending a request using the UpdateRobotApplicationRequest method.
5641//    req, resp := client.UpdateRobotApplicationRequest(params)
5642//
5643//    err := req.Send()
5644//    if err == nil { // resp is now filled
5645//        fmt.Println(resp)
5646//    }
5647//
5648// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UpdateRobotApplication
5649func (c *RoboMaker) UpdateRobotApplicationRequest(input *UpdateRobotApplicationInput) (req *request.Request, output *UpdateRobotApplicationOutput) {
5650	op := &request.Operation{
5651		Name:       opUpdateRobotApplication,
5652		HTTPMethod: "POST",
5653		HTTPPath:   "/updateRobotApplication",
5654	}
5655
5656	if input == nil {
5657		input = &UpdateRobotApplicationInput{}
5658	}
5659
5660	output = &UpdateRobotApplicationOutput{}
5661	req = c.newRequest(op, input, output)
5662	return
5663}
5664
5665// UpdateRobotApplication API operation for AWS RoboMaker.
5666//
5667// Updates a robot application.
5668//
5669// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5670// with awserr.Error's Code and Message methods to get detailed information about
5671// the error.
5672//
5673// See the AWS API reference guide for AWS RoboMaker's
5674// API operation UpdateRobotApplication for usage and error information.
5675//
5676// Returned Error Types:
5677//   * InvalidParameterException
5678//   A parameter specified in a request is not valid, is unsupported, or cannot
5679//   be used. The returned message provides an explanation of the error value.
5680//
5681//   * ResourceNotFoundException
5682//   The specified resource does not exist.
5683//
5684//   * LimitExceededException
5685//   The requested resource exceeds the maximum number allowed, or the number
5686//   of concurrent stream requests exceeds the maximum number allowed.
5687//
5688//   * ThrottlingException
5689//   AWS RoboMaker is temporarily unable to process the request. Try your call
5690//   again.
5691//
5692//   * InternalServerException
5693//   AWS RoboMaker experienced a service issue. Try your call again.
5694//
5695// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UpdateRobotApplication
5696func (c *RoboMaker) UpdateRobotApplication(input *UpdateRobotApplicationInput) (*UpdateRobotApplicationOutput, error) {
5697	req, out := c.UpdateRobotApplicationRequest(input)
5698	return out, req.Send()
5699}
5700
5701// UpdateRobotApplicationWithContext is the same as UpdateRobotApplication with the addition of
5702// the ability to pass a context and additional request options.
5703//
5704// See UpdateRobotApplication for details on how to use this API operation.
5705//
5706// The context must be non-nil and will be used for request cancellation. If
5707// the context is nil a panic will occur. In the future the SDK may create
5708// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5709// for more information on using Contexts.
5710func (c *RoboMaker) UpdateRobotApplicationWithContext(ctx aws.Context, input *UpdateRobotApplicationInput, opts ...request.Option) (*UpdateRobotApplicationOutput, error) {
5711	req, out := c.UpdateRobotApplicationRequest(input)
5712	req.SetContext(ctx)
5713	req.ApplyOptions(opts...)
5714	return out, req.Send()
5715}
5716
5717const opUpdateSimulationApplication = "UpdateSimulationApplication"
5718
5719// UpdateSimulationApplicationRequest generates a "aws/request.Request" representing the
5720// client's request for the UpdateSimulationApplication operation. The "output" return
5721// value will be populated with the request's response once the request completes
5722// successfully.
5723//
5724// Use "Send" method on the returned Request to send the API call to the service.
5725// the "output" return value is not valid until after Send returns without error.
5726//
5727// See UpdateSimulationApplication for more information on using the UpdateSimulationApplication
5728// API call, and error handling.
5729//
5730// This method is useful when you want to inject custom logic or configuration
5731// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5732//
5733//
5734//    // Example sending a request using the UpdateSimulationApplicationRequest method.
5735//    req, resp := client.UpdateSimulationApplicationRequest(params)
5736//
5737//    err := req.Send()
5738//    if err == nil { // resp is now filled
5739//        fmt.Println(resp)
5740//    }
5741//
5742// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UpdateSimulationApplication
5743func (c *RoboMaker) UpdateSimulationApplicationRequest(input *UpdateSimulationApplicationInput) (req *request.Request, output *UpdateSimulationApplicationOutput) {
5744	op := &request.Operation{
5745		Name:       opUpdateSimulationApplication,
5746		HTTPMethod: "POST",
5747		HTTPPath:   "/updateSimulationApplication",
5748	}
5749
5750	if input == nil {
5751		input = &UpdateSimulationApplicationInput{}
5752	}
5753
5754	output = &UpdateSimulationApplicationOutput{}
5755	req = c.newRequest(op, input, output)
5756	return
5757}
5758
5759// UpdateSimulationApplication API operation for AWS RoboMaker.
5760//
5761// Updates a simulation application.
5762//
5763// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5764// with awserr.Error's Code and Message methods to get detailed information about
5765// the error.
5766//
5767// See the AWS API reference guide for AWS RoboMaker's
5768// API operation UpdateSimulationApplication for usage and error information.
5769//
5770// Returned Error Types:
5771//   * InvalidParameterException
5772//   A parameter specified in a request is not valid, is unsupported, or cannot
5773//   be used. The returned message provides an explanation of the error value.
5774//
5775//   * ResourceNotFoundException
5776//   The specified resource does not exist.
5777//
5778//   * LimitExceededException
5779//   The requested resource exceeds the maximum number allowed, or the number
5780//   of concurrent stream requests exceeds the maximum number allowed.
5781//
5782//   * ThrottlingException
5783//   AWS RoboMaker is temporarily unable to process the request. Try your call
5784//   again.
5785//
5786//   * InternalServerException
5787//   AWS RoboMaker experienced a service issue. Try your call again.
5788//
5789// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UpdateSimulationApplication
5790func (c *RoboMaker) UpdateSimulationApplication(input *UpdateSimulationApplicationInput) (*UpdateSimulationApplicationOutput, error) {
5791	req, out := c.UpdateSimulationApplicationRequest(input)
5792	return out, req.Send()
5793}
5794
5795// UpdateSimulationApplicationWithContext is the same as UpdateSimulationApplication with the addition of
5796// the ability to pass a context and additional request options.
5797//
5798// See UpdateSimulationApplication for details on how to use this API operation.
5799//
5800// The context must be non-nil and will be used for request cancellation. If
5801// the context is nil a panic will occur. In the future the SDK may create
5802// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5803// for more information on using Contexts.
5804func (c *RoboMaker) UpdateSimulationApplicationWithContext(ctx aws.Context, input *UpdateSimulationApplicationInput, opts ...request.Option) (*UpdateSimulationApplicationOutput, error) {
5805	req, out := c.UpdateSimulationApplicationRequest(input)
5806	req.SetContext(ctx)
5807	req.ApplyOptions(opts...)
5808	return out, req.Send()
5809}
5810
5811const opUpdateWorldTemplate = "UpdateWorldTemplate"
5812
5813// UpdateWorldTemplateRequest generates a "aws/request.Request" representing the
5814// client's request for the UpdateWorldTemplate operation. The "output" return
5815// value will be populated with the request's response once the request completes
5816// successfully.
5817//
5818// Use "Send" method on the returned Request to send the API call to the service.
5819// the "output" return value is not valid until after Send returns without error.
5820//
5821// See UpdateWorldTemplate for more information on using the UpdateWorldTemplate
5822// API call, and error handling.
5823//
5824// This method is useful when you want to inject custom logic or configuration
5825// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5826//
5827//
5828//    // Example sending a request using the UpdateWorldTemplateRequest method.
5829//    req, resp := client.UpdateWorldTemplateRequest(params)
5830//
5831//    err := req.Send()
5832//    if err == nil { // resp is now filled
5833//        fmt.Println(resp)
5834//    }
5835//
5836// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UpdateWorldTemplate
5837func (c *RoboMaker) UpdateWorldTemplateRequest(input *UpdateWorldTemplateInput) (req *request.Request, output *UpdateWorldTemplateOutput) {
5838	op := &request.Operation{
5839		Name:       opUpdateWorldTemplate,
5840		HTTPMethod: "POST",
5841		HTTPPath:   "/updateWorldTemplate",
5842	}
5843
5844	if input == nil {
5845		input = &UpdateWorldTemplateInput{}
5846	}
5847
5848	output = &UpdateWorldTemplateOutput{}
5849	req = c.newRequest(op, input, output)
5850	return
5851}
5852
5853// UpdateWorldTemplate API operation for AWS RoboMaker.
5854//
5855// Updates a world template.
5856//
5857// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5858// with awserr.Error's Code and Message methods to get detailed information about
5859// the error.
5860//
5861// See the AWS API reference guide for AWS RoboMaker's
5862// API operation UpdateWorldTemplate for usage and error information.
5863//
5864// Returned Error Types:
5865//   * InvalidParameterException
5866//   A parameter specified in a request is not valid, is unsupported, or cannot
5867//   be used. The returned message provides an explanation of the error value.
5868//
5869//   * ResourceNotFoundException
5870//   The specified resource does not exist.
5871//
5872//   * ThrottlingException
5873//   AWS RoboMaker is temporarily unable to process the request. Try your call
5874//   again.
5875//
5876//   * InternalServerException
5877//   AWS RoboMaker experienced a service issue. Try your call again.
5878//
5879// See also, https://docs.aws.amazon.com/goto/WebAPI/robomaker-2018-06-29/UpdateWorldTemplate
5880func (c *RoboMaker) UpdateWorldTemplate(input *UpdateWorldTemplateInput) (*UpdateWorldTemplateOutput, error) {
5881	req, out := c.UpdateWorldTemplateRequest(input)
5882	return out, req.Send()
5883}
5884
5885// UpdateWorldTemplateWithContext is the same as UpdateWorldTemplate with the addition of
5886// the ability to pass a context and additional request options.
5887//
5888// See UpdateWorldTemplate for details on how to use this API operation.
5889//
5890// The context must be non-nil and will be used for request cancellation. If
5891// the context is nil a panic will occur. In the future the SDK may create
5892// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5893// for more information on using Contexts.
5894func (c *RoboMaker) UpdateWorldTemplateWithContext(ctx aws.Context, input *UpdateWorldTemplateInput, opts ...request.Option) (*UpdateWorldTemplateOutput, error) {
5895	req, out := c.UpdateWorldTemplateRequest(input)
5896	req.SetContext(ctx)
5897	req.ApplyOptions(opts...)
5898	return out, req.Send()
5899}
5900
5901type BatchDeleteWorldsInput struct {
5902	_ struct{} `type:"structure"`
5903
5904	// A list of Amazon Resource Names (arns) that correspond to worlds to delete.
5905	//
5906	// Worlds is a required field
5907	Worlds []*string `locationName:"worlds" min:"1" type:"list" required:"true"`
5908}
5909
5910// String returns the string representation
5911func (s BatchDeleteWorldsInput) String() string {
5912	return awsutil.Prettify(s)
5913}
5914
5915// GoString returns the string representation
5916func (s BatchDeleteWorldsInput) GoString() string {
5917	return s.String()
5918}
5919
5920// Validate inspects the fields of the type to determine if they are valid.
5921func (s *BatchDeleteWorldsInput) Validate() error {
5922	invalidParams := request.ErrInvalidParams{Context: "BatchDeleteWorldsInput"}
5923	if s.Worlds == nil {
5924		invalidParams.Add(request.NewErrParamRequired("Worlds"))
5925	}
5926	if s.Worlds != nil && len(s.Worlds) < 1 {
5927		invalidParams.Add(request.NewErrParamMinLen("Worlds", 1))
5928	}
5929
5930	if invalidParams.Len() > 0 {
5931		return invalidParams
5932	}
5933	return nil
5934}
5935
5936// SetWorlds sets the Worlds field's value.
5937func (s *BatchDeleteWorldsInput) SetWorlds(v []*string) *BatchDeleteWorldsInput {
5938	s.Worlds = v
5939	return s
5940}
5941
5942type BatchDeleteWorldsOutput struct {
5943	_ struct{} `type:"structure"`
5944
5945	// A list of unprocessed worlds associated with the call. These worlds were
5946	// not deleted.
5947	UnprocessedWorlds []*string `locationName:"unprocessedWorlds" min:"1" type:"list"`
5948}
5949
5950// String returns the string representation
5951func (s BatchDeleteWorldsOutput) String() string {
5952	return awsutil.Prettify(s)
5953}
5954
5955// GoString returns the string representation
5956func (s BatchDeleteWorldsOutput) GoString() string {
5957	return s.String()
5958}
5959
5960// SetUnprocessedWorlds sets the UnprocessedWorlds field's value.
5961func (s *BatchDeleteWorldsOutput) SetUnprocessedWorlds(v []*string) *BatchDeleteWorldsOutput {
5962	s.UnprocessedWorlds = v
5963	return s
5964}
5965
5966type BatchDescribeSimulationJobInput struct {
5967	_ struct{} `type:"structure"`
5968
5969	// A list of Amazon Resource Names (ARNs) of simulation jobs to describe.
5970	//
5971	// Jobs is a required field
5972	Jobs []*string `locationName:"jobs" min:"1" type:"list" required:"true"`
5973}
5974
5975// String returns the string representation
5976func (s BatchDescribeSimulationJobInput) String() string {
5977	return awsutil.Prettify(s)
5978}
5979
5980// GoString returns the string representation
5981func (s BatchDescribeSimulationJobInput) GoString() string {
5982	return s.String()
5983}
5984
5985// Validate inspects the fields of the type to determine if they are valid.
5986func (s *BatchDescribeSimulationJobInput) Validate() error {
5987	invalidParams := request.ErrInvalidParams{Context: "BatchDescribeSimulationJobInput"}
5988	if s.Jobs == nil {
5989		invalidParams.Add(request.NewErrParamRequired("Jobs"))
5990	}
5991	if s.Jobs != nil && len(s.Jobs) < 1 {
5992		invalidParams.Add(request.NewErrParamMinLen("Jobs", 1))
5993	}
5994
5995	if invalidParams.Len() > 0 {
5996		return invalidParams
5997	}
5998	return nil
5999}
6000
6001// SetJobs sets the Jobs field's value.
6002func (s *BatchDescribeSimulationJobInput) SetJobs(v []*string) *BatchDescribeSimulationJobInput {
6003	s.Jobs = v
6004	return s
6005}
6006
6007type BatchDescribeSimulationJobOutput struct {
6008	_ struct{} `type:"structure"`
6009
6010	// A list of simulation jobs.
6011	Jobs []*SimulationJob `locationName:"jobs" type:"list"`
6012
6013	// A list of unprocessed simulation job Amazon Resource Names (ARNs).
6014	UnprocessedJobs []*string `locationName:"unprocessedJobs" min:"1" type:"list"`
6015}
6016
6017// String returns the string representation
6018func (s BatchDescribeSimulationJobOutput) String() string {
6019	return awsutil.Prettify(s)
6020}
6021
6022// GoString returns the string representation
6023func (s BatchDescribeSimulationJobOutput) GoString() string {
6024	return s.String()
6025}
6026
6027// SetJobs sets the Jobs field's value.
6028func (s *BatchDescribeSimulationJobOutput) SetJobs(v []*SimulationJob) *BatchDescribeSimulationJobOutput {
6029	s.Jobs = v
6030	return s
6031}
6032
6033// SetUnprocessedJobs sets the UnprocessedJobs field's value.
6034func (s *BatchDescribeSimulationJobOutput) SetUnprocessedJobs(v []*string) *BatchDescribeSimulationJobOutput {
6035	s.UnprocessedJobs = v
6036	return s
6037}
6038
6039// Information about the batch policy.
6040type BatchPolicy struct {
6041	_ struct{} `type:"structure"`
6042
6043	// The number of active simulation jobs create as part of the batch that can
6044	// be in an active state at the same time.
6045	//
6046	// Active states include: Pending,Preparing, Running, Restarting, RunningFailed
6047	// and Terminating. All other states are terminal states.
6048	MaxConcurrency *int64 `locationName:"maxConcurrency" type:"integer"`
6049
6050	// The amount of time, in seconds, to wait for the batch to complete.
6051	//
6052	// If a batch times out, and there are pending requests that were failing due
6053	// to an internal failure (like InternalServiceError), they will be moved to
6054	// the failed list and the batch status will be Failed. If the pending requests
6055	// were failing for any other reason, the failed pending requests will be moved
6056	// to the failed list and the batch status will be TimedOut.
6057	TimeoutInSeconds *int64 `locationName:"timeoutInSeconds" type:"long"`
6058}
6059
6060// String returns the string representation
6061func (s BatchPolicy) String() string {
6062	return awsutil.Prettify(s)
6063}
6064
6065// GoString returns the string representation
6066func (s BatchPolicy) GoString() string {
6067	return s.String()
6068}
6069
6070// SetMaxConcurrency sets the MaxConcurrency field's value.
6071func (s *BatchPolicy) SetMaxConcurrency(v int64) *BatchPolicy {
6072	s.MaxConcurrency = &v
6073	return s
6074}
6075
6076// SetTimeoutInSeconds sets the TimeoutInSeconds field's value.
6077func (s *BatchPolicy) SetTimeoutInSeconds(v int64) *BatchPolicy {
6078	s.TimeoutInSeconds = &v
6079	return s
6080}
6081
6082type CancelDeploymentJobInput struct {
6083	_ struct{} `type:"structure"`
6084
6085	// The deployment job ARN to cancel.
6086	//
6087	// Job is a required field
6088	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
6089}
6090
6091// String returns the string representation
6092func (s CancelDeploymentJobInput) String() string {
6093	return awsutil.Prettify(s)
6094}
6095
6096// GoString returns the string representation
6097func (s CancelDeploymentJobInput) GoString() string {
6098	return s.String()
6099}
6100
6101// Validate inspects the fields of the type to determine if they are valid.
6102func (s *CancelDeploymentJobInput) Validate() error {
6103	invalidParams := request.ErrInvalidParams{Context: "CancelDeploymentJobInput"}
6104	if s.Job == nil {
6105		invalidParams.Add(request.NewErrParamRequired("Job"))
6106	}
6107	if s.Job != nil && len(*s.Job) < 1 {
6108		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
6109	}
6110
6111	if invalidParams.Len() > 0 {
6112		return invalidParams
6113	}
6114	return nil
6115}
6116
6117// SetJob sets the Job field's value.
6118func (s *CancelDeploymentJobInput) SetJob(v string) *CancelDeploymentJobInput {
6119	s.Job = &v
6120	return s
6121}
6122
6123type CancelDeploymentJobOutput struct {
6124	_ struct{} `type:"structure"`
6125}
6126
6127// String returns the string representation
6128func (s CancelDeploymentJobOutput) String() string {
6129	return awsutil.Prettify(s)
6130}
6131
6132// GoString returns the string representation
6133func (s CancelDeploymentJobOutput) GoString() string {
6134	return s.String()
6135}
6136
6137type CancelSimulationJobBatchInput struct {
6138	_ struct{} `type:"structure"`
6139
6140	// The id of the batch to cancel.
6141	//
6142	// Batch is a required field
6143	Batch *string `locationName:"batch" min:"1" type:"string" required:"true"`
6144}
6145
6146// String returns the string representation
6147func (s CancelSimulationJobBatchInput) String() string {
6148	return awsutil.Prettify(s)
6149}
6150
6151// GoString returns the string representation
6152func (s CancelSimulationJobBatchInput) GoString() string {
6153	return s.String()
6154}
6155
6156// Validate inspects the fields of the type to determine if they are valid.
6157func (s *CancelSimulationJobBatchInput) Validate() error {
6158	invalidParams := request.ErrInvalidParams{Context: "CancelSimulationJobBatchInput"}
6159	if s.Batch == nil {
6160		invalidParams.Add(request.NewErrParamRequired("Batch"))
6161	}
6162	if s.Batch != nil && len(*s.Batch) < 1 {
6163		invalidParams.Add(request.NewErrParamMinLen("Batch", 1))
6164	}
6165
6166	if invalidParams.Len() > 0 {
6167		return invalidParams
6168	}
6169	return nil
6170}
6171
6172// SetBatch sets the Batch field's value.
6173func (s *CancelSimulationJobBatchInput) SetBatch(v string) *CancelSimulationJobBatchInput {
6174	s.Batch = &v
6175	return s
6176}
6177
6178type CancelSimulationJobBatchOutput struct {
6179	_ struct{} `type:"structure"`
6180}
6181
6182// String returns the string representation
6183func (s CancelSimulationJobBatchOutput) String() string {
6184	return awsutil.Prettify(s)
6185}
6186
6187// GoString returns the string representation
6188func (s CancelSimulationJobBatchOutput) GoString() string {
6189	return s.String()
6190}
6191
6192type CancelSimulationJobInput struct {
6193	_ struct{} `type:"structure"`
6194
6195	// The simulation job ARN to cancel.
6196	//
6197	// Job is a required field
6198	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
6199}
6200
6201// String returns the string representation
6202func (s CancelSimulationJobInput) String() string {
6203	return awsutil.Prettify(s)
6204}
6205
6206// GoString returns the string representation
6207func (s CancelSimulationJobInput) GoString() string {
6208	return s.String()
6209}
6210
6211// Validate inspects the fields of the type to determine if they are valid.
6212func (s *CancelSimulationJobInput) Validate() error {
6213	invalidParams := request.ErrInvalidParams{Context: "CancelSimulationJobInput"}
6214	if s.Job == nil {
6215		invalidParams.Add(request.NewErrParamRequired("Job"))
6216	}
6217	if s.Job != nil && len(*s.Job) < 1 {
6218		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
6219	}
6220
6221	if invalidParams.Len() > 0 {
6222		return invalidParams
6223	}
6224	return nil
6225}
6226
6227// SetJob sets the Job field's value.
6228func (s *CancelSimulationJobInput) SetJob(v string) *CancelSimulationJobInput {
6229	s.Job = &v
6230	return s
6231}
6232
6233type CancelSimulationJobOutput struct {
6234	_ struct{} `type:"structure"`
6235}
6236
6237// String returns the string representation
6238func (s CancelSimulationJobOutput) String() string {
6239	return awsutil.Prettify(s)
6240}
6241
6242// GoString returns the string representation
6243func (s CancelSimulationJobOutput) GoString() string {
6244	return s.String()
6245}
6246
6247type CancelWorldExportJobInput struct {
6248	_ struct{} `type:"structure"`
6249
6250	// The Amazon Resource Name (arn) of the world export job to cancel.
6251	//
6252	// Job is a required field
6253	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
6254}
6255
6256// String returns the string representation
6257func (s CancelWorldExportJobInput) String() string {
6258	return awsutil.Prettify(s)
6259}
6260
6261// GoString returns the string representation
6262func (s CancelWorldExportJobInput) GoString() string {
6263	return s.String()
6264}
6265
6266// Validate inspects the fields of the type to determine if they are valid.
6267func (s *CancelWorldExportJobInput) Validate() error {
6268	invalidParams := request.ErrInvalidParams{Context: "CancelWorldExportJobInput"}
6269	if s.Job == nil {
6270		invalidParams.Add(request.NewErrParamRequired("Job"))
6271	}
6272	if s.Job != nil && len(*s.Job) < 1 {
6273		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
6274	}
6275
6276	if invalidParams.Len() > 0 {
6277		return invalidParams
6278	}
6279	return nil
6280}
6281
6282// SetJob sets the Job field's value.
6283func (s *CancelWorldExportJobInput) SetJob(v string) *CancelWorldExportJobInput {
6284	s.Job = &v
6285	return s
6286}
6287
6288type CancelWorldExportJobOutput struct {
6289	_ struct{} `type:"structure"`
6290}
6291
6292// String returns the string representation
6293func (s CancelWorldExportJobOutput) String() string {
6294	return awsutil.Prettify(s)
6295}
6296
6297// GoString returns the string representation
6298func (s CancelWorldExportJobOutput) GoString() string {
6299	return s.String()
6300}
6301
6302type CancelWorldGenerationJobInput struct {
6303	_ struct{} `type:"structure"`
6304
6305	// The Amazon Resource Name (arn) of the world generator job to cancel.
6306	//
6307	// Job is a required field
6308	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
6309}
6310
6311// String returns the string representation
6312func (s CancelWorldGenerationJobInput) String() string {
6313	return awsutil.Prettify(s)
6314}
6315
6316// GoString returns the string representation
6317func (s CancelWorldGenerationJobInput) GoString() string {
6318	return s.String()
6319}
6320
6321// Validate inspects the fields of the type to determine if they are valid.
6322func (s *CancelWorldGenerationJobInput) Validate() error {
6323	invalidParams := request.ErrInvalidParams{Context: "CancelWorldGenerationJobInput"}
6324	if s.Job == nil {
6325		invalidParams.Add(request.NewErrParamRequired("Job"))
6326	}
6327	if s.Job != nil && len(*s.Job) < 1 {
6328		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
6329	}
6330
6331	if invalidParams.Len() > 0 {
6332		return invalidParams
6333	}
6334	return nil
6335}
6336
6337// SetJob sets the Job field's value.
6338func (s *CancelWorldGenerationJobInput) SetJob(v string) *CancelWorldGenerationJobInput {
6339	s.Job = &v
6340	return s
6341}
6342
6343type CancelWorldGenerationJobOutput struct {
6344	_ struct{} `type:"structure"`
6345}
6346
6347// String returns the string representation
6348func (s CancelWorldGenerationJobOutput) String() string {
6349	return awsutil.Prettify(s)
6350}
6351
6352// GoString returns the string representation
6353func (s CancelWorldGenerationJobOutput) GoString() string {
6354	return s.String()
6355}
6356
6357// Compute information for the simulation job.
6358type Compute struct {
6359	_ struct{} `type:"structure"`
6360
6361	// The simulation unit limit. Your simulation is allocated CPU and memory proportional
6362	// to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB
6363	// of memory. You are only billed for the SU utilization you consume up to the
6364	// maximim value provided. The default is 15.
6365	SimulationUnitLimit *int64 `locationName:"simulationUnitLimit" min:"1" type:"integer"`
6366}
6367
6368// String returns the string representation
6369func (s Compute) String() string {
6370	return awsutil.Prettify(s)
6371}
6372
6373// GoString returns the string representation
6374func (s Compute) GoString() string {
6375	return s.String()
6376}
6377
6378// Validate inspects the fields of the type to determine if they are valid.
6379func (s *Compute) Validate() error {
6380	invalidParams := request.ErrInvalidParams{Context: "Compute"}
6381	if s.SimulationUnitLimit != nil && *s.SimulationUnitLimit < 1 {
6382		invalidParams.Add(request.NewErrParamMinValue("SimulationUnitLimit", 1))
6383	}
6384
6385	if invalidParams.Len() > 0 {
6386		return invalidParams
6387	}
6388	return nil
6389}
6390
6391// SetSimulationUnitLimit sets the SimulationUnitLimit field's value.
6392func (s *Compute) SetSimulationUnitLimit(v int64) *Compute {
6393	s.SimulationUnitLimit = &v
6394	return s
6395}
6396
6397// Compute information for the simulation job
6398type ComputeResponse struct {
6399	_ struct{} `type:"structure"`
6400
6401	// The simulation unit limit. Your simulation is allocated CPU and memory proportional
6402	// to the supplied simulation unit limit. A simulation unit is 1 vcpu and 2GB
6403	// of memory. You are only billed for the SU utilization you consume up to the
6404	// maximim value provided. The default is 15.
6405	SimulationUnitLimit *int64 `locationName:"simulationUnitLimit" min:"1" type:"integer"`
6406}
6407
6408// String returns the string representation
6409func (s ComputeResponse) String() string {
6410	return awsutil.Prettify(s)
6411}
6412
6413// GoString returns the string representation
6414func (s ComputeResponse) GoString() string {
6415	return s.String()
6416}
6417
6418// SetSimulationUnitLimit sets the SimulationUnitLimit field's value.
6419func (s *ComputeResponse) SetSimulationUnitLimit(v int64) *ComputeResponse {
6420	s.SimulationUnitLimit = &v
6421	return s
6422}
6423
6424// The failure percentage threshold percentage was met.
6425type ConcurrentDeploymentException struct {
6426	_            struct{}                  `type:"structure"`
6427	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6428
6429	Message_ *string `locationName:"message" type:"string"`
6430}
6431
6432// String returns the string representation
6433func (s ConcurrentDeploymentException) String() string {
6434	return awsutil.Prettify(s)
6435}
6436
6437// GoString returns the string representation
6438func (s ConcurrentDeploymentException) GoString() string {
6439	return s.String()
6440}
6441
6442func newErrorConcurrentDeploymentException(v protocol.ResponseMetadata) error {
6443	return &ConcurrentDeploymentException{
6444		RespMetadata: v,
6445	}
6446}
6447
6448// Code returns the exception type name.
6449func (s *ConcurrentDeploymentException) Code() string {
6450	return "ConcurrentDeploymentException"
6451}
6452
6453// Message returns the exception's message.
6454func (s *ConcurrentDeploymentException) Message() string {
6455	if s.Message_ != nil {
6456		return *s.Message_
6457	}
6458	return ""
6459}
6460
6461// OrigErr always returns nil, satisfies awserr.Error interface.
6462func (s *ConcurrentDeploymentException) OrigErr() error {
6463	return nil
6464}
6465
6466func (s *ConcurrentDeploymentException) Error() string {
6467	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6468}
6469
6470// Status code returns the HTTP status code for the request's response error.
6471func (s *ConcurrentDeploymentException) StatusCode() int {
6472	return s.RespMetadata.StatusCode
6473}
6474
6475// RequestID returns the service's response RequestID for request.
6476func (s *ConcurrentDeploymentException) RequestID() string {
6477	return s.RespMetadata.RequestID
6478}
6479
6480type CreateDeploymentJobInput struct {
6481	_ struct{} `type:"structure"`
6482
6483	// Unique, case-sensitive identifier that you provide to ensure the idempotency
6484	// of the request.
6485	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
6486
6487	// The deployment application configuration.
6488	//
6489	// DeploymentApplicationConfigs is a required field
6490	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list" required:"true"`
6491
6492	// The requested deployment configuration.
6493	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
6494
6495	// The Amazon Resource Name (ARN) of the fleet to deploy.
6496	//
6497	// Fleet is a required field
6498	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
6499
6500	// A map that contains tag keys and tag values that are attached to the deployment
6501	// job.
6502	Tags map[string]*string `locationName:"tags" type:"map"`
6503}
6504
6505// String returns the string representation
6506func (s CreateDeploymentJobInput) String() string {
6507	return awsutil.Prettify(s)
6508}
6509
6510// GoString returns the string representation
6511func (s CreateDeploymentJobInput) GoString() string {
6512	return s.String()
6513}
6514
6515// Validate inspects the fields of the type to determine if they are valid.
6516func (s *CreateDeploymentJobInput) Validate() error {
6517	invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentJobInput"}
6518	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
6519		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
6520	}
6521	if s.DeploymentApplicationConfigs == nil {
6522		invalidParams.Add(request.NewErrParamRequired("DeploymentApplicationConfigs"))
6523	}
6524	if s.DeploymentApplicationConfigs != nil && len(s.DeploymentApplicationConfigs) < 1 {
6525		invalidParams.Add(request.NewErrParamMinLen("DeploymentApplicationConfigs", 1))
6526	}
6527	if s.Fleet == nil {
6528		invalidParams.Add(request.NewErrParamRequired("Fleet"))
6529	}
6530	if s.Fleet != nil && len(*s.Fleet) < 1 {
6531		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
6532	}
6533	if s.DeploymentApplicationConfigs != nil {
6534		for i, v := range s.DeploymentApplicationConfigs {
6535			if v == nil {
6536				continue
6537			}
6538			if err := v.Validate(); err != nil {
6539				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DeploymentApplicationConfigs", i), err.(request.ErrInvalidParams))
6540			}
6541		}
6542	}
6543	if s.DeploymentConfig != nil {
6544		if err := s.DeploymentConfig.Validate(); err != nil {
6545			invalidParams.AddNested("DeploymentConfig", err.(request.ErrInvalidParams))
6546		}
6547	}
6548
6549	if invalidParams.Len() > 0 {
6550		return invalidParams
6551	}
6552	return nil
6553}
6554
6555// SetClientRequestToken sets the ClientRequestToken field's value.
6556func (s *CreateDeploymentJobInput) SetClientRequestToken(v string) *CreateDeploymentJobInput {
6557	s.ClientRequestToken = &v
6558	return s
6559}
6560
6561// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
6562func (s *CreateDeploymentJobInput) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *CreateDeploymentJobInput {
6563	s.DeploymentApplicationConfigs = v
6564	return s
6565}
6566
6567// SetDeploymentConfig sets the DeploymentConfig field's value.
6568func (s *CreateDeploymentJobInput) SetDeploymentConfig(v *DeploymentConfig) *CreateDeploymentJobInput {
6569	s.DeploymentConfig = v
6570	return s
6571}
6572
6573// SetFleet sets the Fleet field's value.
6574func (s *CreateDeploymentJobInput) SetFleet(v string) *CreateDeploymentJobInput {
6575	s.Fleet = &v
6576	return s
6577}
6578
6579// SetTags sets the Tags field's value.
6580func (s *CreateDeploymentJobInput) SetTags(v map[string]*string) *CreateDeploymentJobInput {
6581	s.Tags = v
6582	return s
6583}
6584
6585type CreateDeploymentJobOutput struct {
6586	_ struct{} `type:"structure"`
6587
6588	// The Amazon Resource Name (ARN) of the deployment job.
6589	Arn *string `locationName:"arn" min:"1" type:"string"`
6590
6591	// The time, in milliseconds since the epoch, when the fleet was created.
6592	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
6593
6594	// The deployment application configuration.
6595	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
6596
6597	// The deployment configuration.
6598	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
6599
6600	// The failure code of the simulation job if it failed:
6601	//
6602	// BadPermissionError
6603	//
6604	// AWS Greengrass requires a service-level role permission to access other services.
6605	// The role must include the AWSGreengrassResourceAccessRolePolicy managed policy
6606	// (https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy$jsonEditor).
6607	//
6608	// ExtractingBundleFailure
6609	//
6610	// The robot application could not be extracted from the bundle.
6611	//
6612	// FailureThresholdBreached
6613	//
6614	// The percentage of robots that could not be updated exceeded the percentage
6615	// set for the deployment.
6616	//
6617	// GreengrassDeploymentFailed
6618	//
6619	// The robot application could not be deployed to the robot.
6620	//
6621	// GreengrassGroupVersionDoesNotExist
6622	//
6623	// The AWS Greengrass group or version associated with a robot is missing.
6624	//
6625	// InternalServerError
6626	//
6627	// An internal error has occurred. Retry your request, but if the problem persists,
6628	// contact us with details.
6629	//
6630	// MissingRobotApplicationArchitecture
6631	//
6632	// The robot application does not have a source that matches the architecture
6633	// of the robot.
6634	//
6635	// MissingRobotDeploymentResource
6636	//
6637	// One or more of the resources specified for the robot application are missing.
6638	// For example, does the robot application have the correct launch package and
6639	// launch file?
6640	//
6641	// PostLaunchFileFailure
6642	//
6643	// The post-launch script failed.
6644	//
6645	// PreLaunchFileFailure
6646	//
6647	// The pre-launch script failed.
6648	//
6649	// ResourceNotFound
6650	//
6651	// One or more deployment resources are missing. For example, do robot application
6652	// source bundles still exist?
6653	//
6654	// RobotDeploymentNoResponse
6655	//
6656	// There is no response from the robot. It might not be powered on or connected
6657	// to the internet.
6658	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
6659
6660	// The failure reason of the deployment job if it failed.
6661	FailureReason *string `locationName:"failureReason" type:"string"`
6662
6663	// The target fleet for the deployment job.
6664	Fleet *string `locationName:"fleet" min:"1" type:"string"`
6665
6666	// The status of the deployment job.
6667	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
6668
6669	// The list of all tags added to the deployment job.
6670	Tags map[string]*string `locationName:"tags" type:"map"`
6671}
6672
6673// String returns the string representation
6674func (s CreateDeploymentJobOutput) String() string {
6675	return awsutil.Prettify(s)
6676}
6677
6678// GoString returns the string representation
6679func (s CreateDeploymentJobOutput) GoString() string {
6680	return s.String()
6681}
6682
6683// SetArn sets the Arn field's value.
6684func (s *CreateDeploymentJobOutput) SetArn(v string) *CreateDeploymentJobOutput {
6685	s.Arn = &v
6686	return s
6687}
6688
6689// SetCreatedAt sets the CreatedAt field's value.
6690func (s *CreateDeploymentJobOutput) SetCreatedAt(v time.Time) *CreateDeploymentJobOutput {
6691	s.CreatedAt = &v
6692	return s
6693}
6694
6695// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
6696func (s *CreateDeploymentJobOutput) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *CreateDeploymentJobOutput {
6697	s.DeploymentApplicationConfigs = v
6698	return s
6699}
6700
6701// SetDeploymentConfig sets the DeploymentConfig field's value.
6702func (s *CreateDeploymentJobOutput) SetDeploymentConfig(v *DeploymentConfig) *CreateDeploymentJobOutput {
6703	s.DeploymentConfig = v
6704	return s
6705}
6706
6707// SetFailureCode sets the FailureCode field's value.
6708func (s *CreateDeploymentJobOutput) SetFailureCode(v string) *CreateDeploymentJobOutput {
6709	s.FailureCode = &v
6710	return s
6711}
6712
6713// SetFailureReason sets the FailureReason field's value.
6714func (s *CreateDeploymentJobOutput) SetFailureReason(v string) *CreateDeploymentJobOutput {
6715	s.FailureReason = &v
6716	return s
6717}
6718
6719// SetFleet sets the Fleet field's value.
6720func (s *CreateDeploymentJobOutput) SetFleet(v string) *CreateDeploymentJobOutput {
6721	s.Fleet = &v
6722	return s
6723}
6724
6725// SetStatus sets the Status field's value.
6726func (s *CreateDeploymentJobOutput) SetStatus(v string) *CreateDeploymentJobOutput {
6727	s.Status = &v
6728	return s
6729}
6730
6731// SetTags sets the Tags field's value.
6732func (s *CreateDeploymentJobOutput) SetTags(v map[string]*string) *CreateDeploymentJobOutput {
6733	s.Tags = v
6734	return s
6735}
6736
6737type CreateFleetInput struct {
6738	_ struct{} `type:"structure"`
6739
6740	// The name of the fleet.
6741	//
6742	// Name is a required field
6743	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6744
6745	// A map that contains tag keys and tag values that are attached to the fleet.
6746	Tags map[string]*string `locationName:"tags" type:"map"`
6747}
6748
6749// String returns the string representation
6750func (s CreateFleetInput) String() string {
6751	return awsutil.Prettify(s)
6752}
6753
6754// GoString returns the string representation
6755func (s CreateFleetInput) GoString() string {
6756	return s.String()
6757}
6758
6759// Validate inspects the fields of the type to determine if they are valid.
6760func (s *CreateFleetInput) Validate() error {
6761	invalidParams := request.ErrInvalidParams{Context: "CreateFleetInput"}
6762	if s.Name == nil {
6763		invalidParams.Add(request.NewErrParamRequired("Name"))
6764	}
6765	if s.Name != nil && len(*s.Name) < 1 {
6766		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6767	}
6768
6769	if invalidParams.Len() > 0 {
6770		return invalidParams
6771	}
6772	return nil
6773}
6774
6775// SetName sets the Name field's value.
6776func (s *CreateFleetInput) SetName(v string) *CreateFleetInput {
6777	s.Name = &v
6778	return s
6779}
6780
6781// SetTags sets the Tags field's value.
6782func (s *CreateFleetInput) SetTags(v map[string]*string) *CreateFleetInput {
6783	s.Tags = v
6784	return s
6785}
6786
6787type CreateFleetOutput struct {
6788	_ struct{} `type:"structure"`
6789
6790	// The Amazon Resource Name (ARN) of the fleet.
6791	Arn *string `locationName:"arn" min:"1" type:"string"`
6792
6793	// The time, in milliseconds since the epoch, when the fleet was created.
6794	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
6795
6796	// The name of the fleet.
6797	Name *string `locationName:"name" min:"1" type:"string"`
6798
6799	// The list of all tags added to the fleet.
6800	Tags map[string]*string `locationName:"tags" type:"map"`
6801}
6802
6803// String returns the string representation
6804func (s CreateFleetOutput) String() string {
6805	return awsutil.Prettify(s)
6806}
6807
6808// GoString returns the string representation
6809func (s CreateFleetOutput) GoString() string {
6810	return s.String()
6811}
6812
6813// SetArn sets the Arn field's value.
6814func (s *CreateFleetOutput) SetArn(v string) *CreateFleetOutput {
6815	s.Arn = &v
6816	return s
6817}
6818
6819// SetCreatedAt sets the CreatedAt field's value.
6820func (s *CreateFleetOutput) SetCreatedAt(v time.Time) *CreateFleetOutput {
6821	s.CreatedAt = &v
6822	return s
6823}
6824
6825// SetName sets the Name field's value.
6826func (s *CreateFleetOutput) SetName(v string) *CreateFleetOutput {
6827	s.Name = &v
6828	return s
6829}
6830
6831// SetTags sets the Tags field's value.
6832func (s *CreateFleetOutput) SetTags(v map[string]*string) *CreateFleetOutput {
6833	s.Tags = v
6834	return s
6835}
6836
6837type CreateRobotApplicationInput struct {
6838	_ struct{} `type:"structure"`
6839
6840	// The name of the robot application.
6841	//
6842	// Name is a required field
6843	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6844
6845	// The robot software suite (ROS distribuition) used by the robot application.
6846	//
6847	// RobotSoftwareSuite is a required field
6848	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure" required:"true"`
6849
6850	// The sources of the robot application.
6851	//
6852	// Sources is a required field
6853	Sources []*SourceConfig `locationName:"sources" type:"list" required:"true"`
6854
6855	// A map that contains tag keys and tag values that are attached to the robot
6856	// application.
6857	Tags map[string]*string `locationName:"tags" type:"map"`
6858}
6859
6860// String returns the string representation
6861func (s CreateRobotApplicationInput) String() string {
6862	return awsutil.Prettify(s)
6863}
6864
6865// GoString returns the string representation
6866func (s CreateRobotApplicationInput) GoString() string {
6867	return s.String()
6868}
6869
6870// Validate inspects the fields of the type to determine if they are valid.
6871func (s *CreateRobotApplicationInput) Validate() error {
6872	invalidParams := request.ErrInvalidParams{Context: "CreateRobotApplicationInput"}
6873	if s.Name == nil {
6874		invalidParams.Add(request.NewErrParamRequired("Name"))
6875	}
6876	if s.Name != nil && len(*s.Name) < 1 {
6877		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6878	}
6879	if s.RobotSoftwareSuite == nil {
6880		invalidParams.Add(request.NewErrParamRequired("RobotSoftwareSuite"))
6881	}
6882	if s.Sources == nil {
6883		invalidParams.Add(request.NewErrParamRequired("Sources"))
6884	}
6885	if s.Sources != nil {
6886		for i, v := range s.Sources {
6887			if v == nil {
6888				continue
6889			}
6890			if err := v.Validate(); err != nil {
6891				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
6892			}
6893		}
6894	}
6895
6896	if invalidParams.Len() > 0 {
6897		return invalidParams
6898	}
6899	return nil
6900}
6901
6902// SetName sets the Name field's value.
6903func (s *CreateRobotApplicationInput) SetName(v string) *CreateRobotApplicationInput {
6904	s.Name = &v
6905	return s
6906}
6907
6908// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
6909func (s *CreateRobotApplicationInput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *CreateRobotApplicationInput {
6910	s.RobotSoftwareSuite = v
6911	return s
6912}
6913
6914// SetSources sets the Sources field's value.
6915func (s *CreateRobotApplicationInput) SetSources(v []*SourceConfig) *CreateRobotApplicationInput {
6916	s.Sources = v
6917	return s
6918}
6919
6920// SetTags sets the Tags field's value.
6921func (s *CreateRobotApplicationInput) SetTags(v map[string]*string) *CreateRobotApplicationInput {
6922	s.Tags = v
6923	return s
6924}
6925
6926type CreateRobotApplicationOutput struct {
6927	_ struct{} `type:"structure"`
6928
6929	// The Amazon Resource Name (ARN) of the robot application.
6930	Arn *string `locationName:"arn" min:"1" type:"string"`
6931
6932	// The time, in milliseconds since the epoch, when the robot application was
6933	// last updated.
6934	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
6935
6936	// The name of the robot application.
6937	Name *string `locationName:"name" min:"1" type:"string"`
6938
6939	// The revision id of the robot application.
6940	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
6941
6942	// The robot software suite (ROS distribution) used by the robot application.
6943	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
6944
6945	// The sources of the robot application.
6946	Sources []*Source `locationName:"sources" type:"list"`
6947
6948	// The list of all tags added to the robot application.
6949	Tags map[string]*string `locationName:"tags" type:"map"`
6950
6951	// The version of the robot application.
6952	Version *string `locationName:"version" min:"1" type:"string"`
6953}
6954
6955// String returns the string representation
6956func (s CreateRobotApplicationOutput) String() string {
6957	return awsutil.Prettify(s)
6958}
6959
6960// GoString returns the string representation
6961func (s CreateRobotApplicationOutput) GoString() string {
6962	return s.String()
6963}
6964
6965// SetArn sets the Arn field's value.
6966func (s *CreateRobotApplicationOutput) SetArn(v string) *CreateRobotApplicationOutput {
6967	s.Arn = &v
6968	return s
6969}
6970
6971// SetLastUpdatedAt sets the LastUpdatedAt field's value.
6972func (s *CreateRobotApplicationOutput) SetLastUpdatedAt(v time.Time) *CreateRobotApplicationOutput {
6973	s.LastUpdatedAt = &v
6974	return s
6975}
6976
6977// SetName sets the Name field's value.
6978func (s *CreateRobotApplicationOutput) SetName(v string) *CreateRobotApplicationOutput {
6979	s.Name = &v
6980	return s
6981}
6982
6983// SetRevisionId sets the RevisionId field's value.
6984func (s *CreateRobotApplicationOutput) SetRevisionId(v string) *CreateRobotApplicationOutput {
6985	s.RevisionId = &v
6986	return s
6987}
6988
6989// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
6990func (s *CreateRobotApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *CreateRobotApplicationOutput {
6991	s.RobotSoftwareSuite = v
6992	return s
6993}
6994
6995// SetSources sets the Sources field's value.
6996func (s *CreateRobotApplicationOutput) SetSources(v []*Source) *CreateRobotApplicationOutput {
6997	s.Sources = v
6998	return s
6999}
7000
7001// SetTags sets the Tags field's value.
7002func (s *CreateRobotApplicationOutput) SetTags(v map[string]*string) *CreateRobotApplicationOutput {
7003	s.Tags = v
7004	return s
7005}
7006
7007// SetVersion sets the Version field's value.
7008func (s *CreateRobotApplicationOutput) SetVersion(v string) *CreateRobotApplicationOutput {
7009	s.Version = &v
7010	return s
7011}
7012
7013type CreateRobotApplicationVersionInput struct {
7014	_ struct{} `type:"structure"`
7015
7016	// The application information for the robot application.
7017	//
7018	// Application is a required field
7019	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
7020
7021	// The current revision id for the robot application. If you provide a value
7022	// and it matches the latest revision ID, a new version will be created.
7023	CurrentRevisionId *string `locationName:"currentRevisionId" min:"1" type:"string"`
7024}
7025
7026// String returns the string representation
7027func (s CreateRobotApplicationVersionInput) String() string {
7028	return awsutil.Prettify(s)
7029}
7030
7031// GoString returns the string representation
7032func (s CreateRobotApplicationVersionInput) GoString() string {
7033	return s.String()
7034}
7035
7036// Validate inspects the fields of the type to determine if they are valid.
7037func (s *CreateRobotApplicationVersionInput) Validate() error {
7038	invalidParams := request.ErrInvalidParams{Context: "CreateRobotApplicationVersionInput"}
7039	if s.Application == nil {
7040		invalidParams.Add(request.NewErrParamRequired("Application"))
7041	}
7042	if s.Application != nil && len(*s.Application) < 1 {
7043		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
7044	}
7045	if s.CurrentRevisionId != nil && len(*s.CurrentRevisionId) < 1 {
7046		invalidParams.Add(request.NewErrParamMinLen("CurrentRevisionId", 1))
7047	}
7048
7049	if invalidParams.Len() > 0 {
7050		return invalidParams
7051	}
7052	return nil
7053}
7054
7055// SetApplication sets the Application field's value.
7056func (s *CreateRobotApplicationVersionInput) SetApplication(v string) *CreateRobotApplicationVersionInput {
7057	s.Application = &v
7058	return s
7059}
7060
7061// SetCurrentRevisionId sets the CurrentRevisionId field's value.
7062func (s *CreateRobotApplicationVersionInput) SetCurrentRevisionId(v string) *CreateRobotApplicationVersionInput {
7063	s.CurrentRevisionId = &v
7064	return s
7065}
7066
7067type CreateRobotApplicationVersionOutput struct {
7068	_ struct{} `type:"structure"`
7069
7070	// The Amazon Resource Name (ARN) of the robot application.
7071	Arn *string `locationName:"arn" min:"1" type:"string"`
7072
7073	// The time, in milliseconds since the epoch, when the robot application was
7074	// last updated.
7075	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
7076
7077	// The name of the robot application.
7078	Name *string `locationName:"name" min:"1" type:"string"`
7079
7080	// The revision id of the robot application.
7081	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
7082
7083	// The robot software suite (ROS distribution) used by the robot application.
7084	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
7085
7086	// The sources of the robot application.
7087	Sources []*Source `locationName:"sources" type:"list"`
7088
7089	// The version of the robot application.
7090	Version *string `locationName:"version" min:"1" type:"string"`
7091}
7092
7093// String returns the string representation
7094func (s CreateRobotApplicationVersionOutput) String() string {
7095	return awsutil.Prettify(s)
7096}
7097
7098// GoString returns the string representation
7099func (s CreateRobotApplicationVersionOutput) GoString() string {
7100	return s.String()
7101}
7102
7103// SetArn sets the Arn field's value.
7104func (s *CreateRobotApplicationVersionOutput) SetArn(v string) *CreateRobotApplicationVersionOutput {
7105	s.Arn = &v
7106	return s
7107}
7108
7109// SetLastUpdatedAt sets the LastUpdatedAt field's value.
7110func (s *CreateRobotApplicationVersionOutput) SetLastUpdatedAt(v time.Time) *CreateRobotApplicationVersionOutput {
7111	s.LastUpdatedAt = &v
7112	return s
7113}
7114
7115// SetName sets the Name field's value.
7116func (s *CreateRobotApplicationVersionOutput) SetName(v string) *CreateRobotApplicationVersionOutput {
7117	s.Name = &v
7118	return s
7119}
7120
7121// SetRevisionId sets the RevisionId field's value.
7122func (s *CreateRobotApplicationVersionOutput) SetRevisionId(v string) *CreateRobotApplicationVersionOutput {
7123	s.RevisionId = &v
7124	return s
7125}
7126
7127// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
7128func (s *CreateRobotApplicationVersionOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *CreateRobotApplicationVersionOutput {
7129	s.RobotSoftwareSuite = v
7130	return s
7131}
7132
7133// SetSources sets the Sources field's value.
7134func (s *CreateRobotApplicationVersionOutput) SetSources(v []*Source) *CreateRobotApplicationVersionOutput {
7135	s.Sources = v
7136	return s
7137}
7138
7139// SetVersion sets the Version field's value.
7140func (s *CreateRobotApplicationVersionOutput) SetVersion(v string) *CreateRobotApplicationVersionOutput {
7141	s.Version = &v
7142	return s
7143}
7144
7145type CreateRobotInput struct {
7146	_ struct{} `type:"structure"`
7147
7148	// The target architecture of the robot.
7149	//
7150	// Architecture is a required field
7151	Architecture *string `locationName:"architecture" type:"string" required:"true" enum:"Architecture"`
7152
7153	// The Greengrass group id.
7154	//
7155	// GreengrassGroupId is a required field
7156	GreengrassGroupId *string `locationName:"greengrassGroupId" min:"1" type:"string" required:"true"`
7157
7158	// The name for the robot.
7159	//
7160	// Name is a required field
7161	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
7162
7163	// A map that contains tag keys and tag values that are attached to the robot.
7164	Tags map[string]*string `locationName:"tags" type:"map"`
7165}
7166
7167// String returns the string representation
7168func (s CreateRobotInput) String() string {
7169	return awsutil.Prettify(s)
7170}
7171
7172// GoString returns the string representation
7173func (s CreateRobotInput) GoString() string {
7174	return s.String()
7175}
7176
7177// Validate inspects the fields of the type to determine if they are valid.
7178func (s *CreateRobotInput) Validate() error {
7179	invalidParams := request.ErrInvalidParams{Context: "CreateRobotInput"}
7180	if s.Architecture == nil {
7181		invalidParams.Add(request.NewErrParamRequired("Architecture"))
7182	}
7183	if s.GreengrassGroupId == nil {
7184		invalidParams.Add(request.NewErrParamRequired("GreengrassGroupId"))
7185	}
7186	if s.GreengrassGroupId != nil && len(*s.GreengrassGroupId) < 1 {
7187		invalidParams.Add(request.NewErrParamMinLen("GreengrassGroupId", 1))
7188	}
7189	if s.Name == nil {
7190		invalidParams.Add(request.NewErrParamRequired("Name"))
7191	}
7192	if s.Name != nil && len(*s.Name) < 1 {
7193		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7194	}
7195
7196	if invalidParams.Len() > 0 {
7197		return invalidParams
7198	}
7199	return nil
7200}
7201
7202// SetArchitecture sets the Architecture field's value.
7203func (s *CreateRobotInput) SetArchitecture(v string) *CreateRobotInput {
7204	s.Architecture = &v
7205	return s
7206}
7207
7208// SetGreengrassGroupId sets the GreengrassGroupId field's value.
7209func (s *CreateRobotInput) SetGreengrassGroupId(v string) *CreateRobotInput {
7210	s.GreengrassGroupId = &v
7211	return s
7212}
7213
7214// SetName sets the Name field's value.
7215func (s *CreateRobotInput) SetName(v string) *CreateRobotInput {
7216	s.Name = &v
7217	return s
7218}
7219
7220// SetTags sets the Tags field's value.
7221func (s *CreateRobotInput) SetTags(v map[string]*string) *CreateRobotInput {
7222	s.Tags = v
7223	return s
7224}
7225
7226type CreateRobotOutput struct {
7227	_ struct{} `type:"structure"`
7228
7229	// The target architecture of the robot.
7230	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
7231
7232	// The Amazon Resource Name (ARN) of the robot.
7233	Arn *string `locationName:"arn" min:"1" type:"string"`
7234
7235	// The time, in milliseconds since the epoch, when the robot was created.
7236	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
7237
7238	// The Amazon Resource Name (ARN) of the Greengrass group associated with the
7239	// robot.
7240	GreengrassGroupId *string `locationName:"greengrassGroupId" min:"1" type:"string"`
7241
7242	// The name of the robot.
7243	Name *string `locationName:"name" min:"1" type:"string"`
7244
7245	// The list of all tags added to the robot.
7246	Tags map[string]*string `locationName:"tags" type:"map"`
7247}
7248
7249// String returns the string representation
7250func (s CreateRobotOutput) String() string {
7251	return awsutil.Prettify(s)
7252}
7253
7254// GoString returns the string representation
7255func (s CreateRobotOutput) GoString() string {
7256	return s.String()
7257}
7258
7259// SetArchitecture sets the Architecture field's value.
7260func (s *CreateRobotOutput) SetArchitecture(v string) *CreateRobotOutput {
7261	s.Architecture = &v
7262	return s
7263}
7264
7265// SetArn sets the Arn field's value.
7266func (s *CreateRobotOutput) SetArn(v string) *CreateRobotOutput {
7267	s.Arn = &v
7268	return s
7269}
7270
7271// SetCreatedAt sets the CreatedAt field's value.
7272func (s *CreateRobotOutput) SetCreatedAt(v time.Time) *CreateRobotOutput {
7273	s.CreatedAt = &v
7274	return s
7275}
7276
7277// SetGreengrassGroupId sets the GreengrassGroupId field's value.
7278func (s *CreateRobotOutput) SetGreengrassGroupId(v string) *CreateRobotOutput {
7279	s.GreengrassGroupId = &v
7280	return s
7281}
7282
7283// SetName sets the Name field's value.
7284func (s *CreateRobotOutput) SetName(v string) *CreateRobotOutput {
7285	s.Name = &v
7286	return s
7287}
7288
7289// SetTags sets the Tags field's value.
7290func (s *CreateRobotOutput) SetTags(v map[string]*string) *CreateRobotOutput {
7291	s.Tags = v
7292	return s
7293}
7294
7295type CreateSimulationApplicationInput struct {
7296	_ struct{} `type:"structure"`
7297
7298	// The name of the simulation application.
7299	//
7300	// Name is a required field
7301	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
7302
7303	// The rendering engine for the simulation application.
7304	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
7305
7306	// The robot software suite (ROS distribution) used by the simulation application.
7307	//
7308	// RobotSoftwareSuite is a required field
7309	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure" required:"true"`
7310
7311	// The simulation software suite used by the simulation application.
7312	//
7313	// SimulationSoftwareSuite is a required field
7314	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure" required:"true"`
7315
7316	// The sources of the simulation application.
7317	//
7318	// Sources is a required field
7319	Sources []*SourceConfig `locationName:"sources" type:"list" required:"true"`
7320
7321	// A map that contains tag keys and tag values that are attached to the simulation
7322	// application.
7323	Tags map[string]*string `locationName:"tags" type:"map"`
7324}
7325
7326// String returns the string representation
7327func (s CreateSimulationApplicationInput) String() string {
7328	return awsutil.Prettify(s)
7329}
7330
7331// GoString returns the string representation
7332func (s CreateSimulationApplicationInput) GoString() string {
7333	return s.String()
7334}
7335
7336// Validate inspects the fields of the type to determine if they are valid.
7337func (s *CreateSimulationApplicationInput) Validate() error {
7338	invalidParams := request.ErrInvalidParams{Context: "CreateSimulationApplicationInput"}
7339	if s.Name == nil {
7340		invalidParams.Add(request.NewErrParamRequired("Name"))
7341	}
7342	if s.Name != nil && len(*s.Name) < 1 {
7343		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7344	}
7345	if s.RobotSoftwareSuite == nil {
7346		invalidParams.Add(request.NewErrParamRequired("RobotSoftwareSuite"))
7347	}
7348	if s.SimulationSoftwareSuite == nil {
7349		invalidParams.Add(request.NewErrParamRequired("SimulationSoftwareSuite"))
7350	}
7351	if s.Sources == nil {
7352		invalidParams.Add(request.NewErrParamRequired("Sources"))
7353	}
7354	if s.RenderingEngine != nil {
7355		if err := s.RenderingEngine.Validate(); err != nil {
7356			invalidParams.AddNested("RenderingEngine", err.(request.ErrInvalidParams))
7357		}
7358	}
7359	if s.Sources != nil {
7360		for i, v := range s.Sources {
7361			if v == nil {
7362				continue
7363			}
7364			if err := v.Validate(); err != nil {
7365				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
7366			}
7367		}
7368	}
7369
7370	if invalidParams.Len() > 0 {
7371		return invalidParams
7372	}
7373	return nil
7374}
7375
7376// SetName sets the Name field's value.
7377func (s *CreateSimulationApplicationInput) SetName(v string) *CreateSimulationApplicationInput {
7378	s.Name = &v
7379	return s
7380}
7381
7382// SetRenderingEngine sets the RenderingEngine field's value.
7383func (s *CreateSimulationApplicationInput) SetRenderingEngine(v *RenderingEngine) *CreateSimulationApplicationInput {
7384	s.RenderingEngine = v
7385	return s
7386}
7387
7388// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
7389func (s *CreateSimulationApplicationInput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *CreateSimulationApplicationInput {
7390	s.RobotSoftwareSuite = v
7391	return s
7392}
7393
7394// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
7395func (s *CreateSimulationApplicationInput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *CreateSimulationApplicationInput {
7396	s.SimulationSoftwareSuite = v
7397	return s
7398}
7399
7400// SetSources sets the Sources field's value.
7401func (s *CreateSimulationApplicationInput) SetSources(v []*SourceConfig) *CreateSimulationApplicationInput {
7402	s.Sources = v
7403	return s
7404}
7405
7406// SetTags sets the Tags field's value.
7407func (s *CreateSimulationApplicationInput) SetTags(v map[string]*string) *CreateSimulationApplicationInput {
7408	s.Tags = v
7409	return s
7410}
7411
7412type CreateSimulationApplicationOutput struct {
7413	_ struct{} `type:"structure"`
7414
7415	// The Amazon Resource Name (ARN) of the simulation application.
7416	Arn *string `locationName:"arn" min:"1" type:"string"`
7417
7418	// The time, in milliseconds since the epoch, when the simulation application
7419	// was last updated.
7420	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
7421
7422	// The name of the simulation application.
7423	Name *string `locationName:"name" min:"1" type:"string"`
7424
7425	// The rendering engine for the simulation application.
7426	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
7427
7428	// The revision id of the simulation application.
7429	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
7430
7431	// Information about the robot software suite (ROS distribution).
7432	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
7433
7434	// The simulation software suite used by the simulation application.
7435	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
7436
7437	// The sources of the simulation application.
7438	Sources []*Source `locationName:"sources" type:"list"`
7439
7440	// The list of all tags added to the simulation application.
7441	Tags map[string]*string `locationName:"tags" type:"map"`
7442
7443	// The version of the simulation application.
7444	Version *string `locationName:"version" min:"1" type:"string"`
7445}
7446
7447// String returns the string representation
7448func (s CreateSimulationApplicationOutput) String() string {
7449	return awsutil.Prettify(s)
7450}
7451
7452// GoString returns the string representation
7453func (s CreateSimulationApplicationOutput) GoString() string {
7454	return s.String()
7455}
7456
7457// SetArn sets the Arn field's value.
7458func (s *CreateSimulationApplicationOutput) SetArn(v string) *CreateSimulationApplicationOutput {
7459	s.Arn = &v
7460	return s
7461}
7462
7463// SetLastUpdatedAt sets the LastUpdatedAt field's value.
7464func (s *CreateSimulationApplicationOutput) SetLastUpdatedAt(v time.Time) *CreateSimulationApplicationOutput {
7465	s.LastUpdatedAt = &v
7466	return s
7467}
7468
7469// SetName sets the Name field's value.
7470func (s *CreateSimulationApplicationOutput) SetName(v string) *CreateSimulationApplicationOutput {
7471	s.Name = &v
7472	return s
7473}
7474
7475// SetRenderingEngine sets the RenderingEngine field's value.
7476func (s *CreateSimulationApplicationOutput) SetRenderingEngine(v *RenderingEngine) *CreateSimulationApplicationOutput {
7477	s.RenderingEngine = v
7478	return s
7479}
7480
7481// SetRevisionId sets the RevisionId field's value.
7482func (s *CreateSimulationApplicationOutput) SetRevisionId(v string) *CreateSimulationApplicationOutput {
7483	s.RevisionId = &v
7484	return s
7485}
7486
7487// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
7488func (s *CreateSimulationApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *CreateSimulationApplicationOutput {
7489	s.RobotSoftwareSuite = v
7490	return s
7491}
7492
7493// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
7494func (s *CreateSimulationApplicationOutput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *CreateSimulationApplicationOutput {
7495	s.SimulationSoftwareSuite = v
7496	return s
7497}
7498
7499// SetSources sets the Sources field's value.
7500func (s *CreateSimulationApplicationOutput) SetSources(v []*Source) *CreateSimulationApplicationOutput {
7501	s.Sources = v
7502	return s
7503}
7504
7505// SetTags sets the Tags field's value.
7506func (s *CreateSimulationApplicationOutput) SetTags(v map[string]*string) *CreateSimulationApplicationOutput {
7507	s.Tags = v
7508	return s
7509}
7510
7511// SetVersion sets the Version field's value.
7512func (s *CreateSimulationApplicationOutput) SetVersion(v string) *CreateSimulationApplicationOutput {
7513	s.Version = &v
7514	return s
7515}
7516
7517type CreateSimulationApplicationVersionInput struct {
7518	_ struct{} `type:"structure"`
7519
7520	// The application information for the simulation application.
7521	//
7522	// Application is a required field
7523	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
7524
7525	// The current revision id for the simulation application. If you provide a
7526	// value and it matches the latest revision ID, a new version will be created.
7527	CurrentRevisionId *string `locationName:"currentRevisionId" min:"1" type:"string"`
7528}
7529
7530// String returns the string representation
7531func (s CreateSimulationApplicationVersionInput) String() string {
7532	return awsutil.Prettify(s)
7533}
7534
7535// GoString returns the string representation
7536func (s CreateSimulationApplicationVersionInput) GoString() string {
7537	return s.String()
7538}
7539
7540// Validate inspects the fields of the type to determine if they are valid.
7541func (s *CreateSimulationApplicationVersionInput) Validate() error {
7542	invalidParams := request.ErrInvalidParams{Context: "CreateSimulationApplicationVersionInput"}
7543	if s.Application == nil {
7544		invalidParams.Add(request.NewErrParamRequired("Application"))
7545	}
7546	if s.Application != nil && len(*s.Application) < 1 {
7547		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
7548	}
7549	if s.CurrentRevisionId != nil && len(*s.CurrentRevisionId) < 1 {
7550		invalidParams.Add(request.NewErrParamMinLen("CurrentRevisionId", 1))
7551	}
7552
7553	if invalidParams.Len() > 0 {
7554		return invalidParams
7555	}
7556	return nil
7557}
7558
7559// SetApplication sets the Application field's value.
7560func (s *CreateSimulationApplicationVersionInput) SetApplication(v string) *CreateSimulationApplicationVersionInput {
7561	s.Application = &v
7562	return s
7563}
7564
7565// SetCurrentRevisionId sets the CurrentRevisionId field's value.
7566func (s *CreateSimulationApplicationVersionInput) SetCurrentRevisionId(v string) *CreateSimulationApplicationVersionInput {
7567	s.CurrentRevisionId = &v
7568	return s
7569}
7570
7571type CreateSimulationApplicationVersionOutput struct {
7572	_ struct{} `type:"structure"`
7573
7574	// The Amazon Resource Name (ARN) of the simulation application.
7575	Arn *string `locationName:"arn" min:"1" type:"string"`
7576
7577	// The time, in milliseconds since the epoch, when the simulation application
7578	// was last updated.
7579	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
7580
7581	// The name of the simulation application.
7582	Name *string `locationName:"name" min:"1" type:"string"`
7583
7584	// The rendering engine for the simulation application.
7585	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
7586
7587	// The revision ID of the simulation application.
7588	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
7589
7590	// Information about the robot software suite (ROS distribution).
7591	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
7592
7593	// The simulation software suite used by the simulation application.
7594	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
7595
7596	// The sources of the simulation application.
7597	Sources []*Source `locationName:"sources" type:"list"`
7598
7599	// The version of the simulation application.
7600	Version *string `locationName:"version" min:"1" type:"string"`
7601}
7602
7603// String returns the string representation
7604func (s CreateSimulationApplicationVersionOutput) String() string {
7605	return awsutil.Prettify(s)
7606}
7607
7608// GoString returns the string representation
7609func (s CreateSimulationApplicationVersionOutput) GoString() string {
7610	return s.String()
7611}
7612
7613// SetArn sets the Arn field's value.
7614func (s *CreateSimulationApplicationVersionOutput) SetArn(v string) *CreateSimulationApplicationVersionOutput {
7615	s.Arn = &v
7616	return s
7617}
7618
7619// SetLastUpdatedAt sets the LastUpdatedAt field's value.
7620func (s *CreateSimulationApplicationVersionOutput) SetLastUpdatedAt(v time.Time) *CreateSimulationApplicationVersionOutput {
7621	s.LastUpdatedAt = &v
7622	return s
7623}
7624
7625// SetName sets the Name field's value.
7626func (s *CreateSimulationApplicationVersionOutput) SetName(v string) *CreateSimulationApplicationVersionOutput {
7627	s.Name = &v
7628	return s
7629}
7630
7631// SetRenderingEngine sets the RenderingEngine field's value.
7632func (s *CreateSimulationApplicationVersionOutput) SetRenderingEngine(v *RenderingEngine) *CreateSimulationApplicationVersionOutput {
7633	s.RenderingEngine = v
7634	return s
7635}
7636
7637// SetRevisionId sets the RevisionId field's value.
7638func (s *CreateSimulationApplicationVersionOutput) SetRevisionId(v string) *CreateSimulationApplicationVersionOutput {
7639	s.RevisionId = &v
7640	return s
7641}
7642
7643// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
7644func (s *CreateSimulationApplicationVersionOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *CreateSimulationApplicationVersionOutput {
7645	s.RobotSoftwareSuite = v
7646	return s
7647}
7648
7649// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
7650func (s *CreateSimulationApplicationVersionOutput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *CreateSimulationApplicationVersionOutput {
7651	s.SimulationSoftwareSuite = v
7652	return s
7653}
7654
7655// SetSources sets the Sources field's value.
7656func (s *CreateSimulationApplicationVersionOutput) SetSources(v []*Source) *CreateSimulationApplicationVersionOutput {
7657	s.Sources = v
7658	return s
7659}
7660
7661// SetVersion sets the Version field's value.
7662func (s *CreateSimulationApplicationVersionOutput) SetVersion(v string) *CreateSimulationApplicationVersionOutput {
7663	s.Version = &v
7664	return s
7665}
7666
7667type CreateSimulationJobInput struct {
7668	_ struct{} `type:"structure"`
7669
7670	// Unique, case-sensitive identifier that you provide to ensure the idempotency
7671	// of the request.
7672	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
7673
7674	// Compute information for the simulation job.
7675	Compute *Compute `locationName:"compute" type:"structure"`
7676
7677	// Specify data sources to mount read-only files from S3 into your simulation.
7678	// These files are available under /opt/robomaker/datasources/data_source_name.
7679	//
7680	// There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig
7681	// objects.
7682	DataSources []*DataSourceConfig `locationName:"dataSources" min:"1" type:"list"`
7683
7684	// The failure behavior the simulation job.
7685	//
7686	// Continue
7687	//
7688	// Leaves the instance running for its maximum timeout duration after a 4XX
7689	// error code.
7690	//
7691	// Fail
7692	//
7693	// Stop the simulation job and terminate the instance.
7694	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
7695
7696	// The IAM role name that allows the simulation instance to call the AWS APIs
7697	// that are specified in its associated policies on your behalf. This is how
7698	// credentials are passed in to your simulation job.
7699	//
7700	// IamRole is a required field
7701	IamRole *string `locationName:"iamRole" min:"1" type:"string" required:"true"`
7702
7703	// The logging configuration.
7704	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
7705
7706	// The maximum simulation job duration in seconds (up to 14 days or 1,209,600
7707	// seconds. When maxJobDurationInSeconds is reached, the simulation job will
7708	// status will transition to Completed.
7709	//
7710	// MaxJobDurationInSeconds is a required field
7711	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long" required:"true"`
7712
7713	// Location for output files generated by the simulation job.
7714	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
7715
7716	// The robot application to use in the simulation job.
7717	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
7718
7719	// The simulation application to use in the simulation job.
7720	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
7721
7722	// A map that contains tag keys and tag values that are attached to the simulation
7723	// job.
7724	Tags map[string]*string `locationName:"tags" type:"map"`
7725
7726	// If your simulation job accesses resources in a VPC, you provide this parameter
7727	// identifying the list of security group IDs and subnet IDs. These must belong
7728	// to the same VPC. You must provide at least one security group and one subnet
7729	// ID.
7730	VpcConfig *VPCConfig `locationName:"vpcConfig" type:"structure"`
7731}
7732
7733// String returns the string representation
7734func (s CreateSimulationJobInput) String() string {
7735	return awsutil.Prettify(s)
7736}
7737
7738// GoString returns the string representation
7739func (s CreateSimulationJobInput) GoString() string {
7740	return s.String()
7741}
7742
7743// Validate inspects the fields of the type to determine if they are valid.
7744func (s *CreateSimulationJobInput) Validate() error {
7745	invalidParams := request.ErrInvalidParams{Context: "CreateSimulationJobInput"}
7746	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
7747		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
7748	}
7749	if s.DataSources != nil && len(s.DataSources) < 1 {
7750		invalidParams.Add(request.NewErrParamMinLen("DataSources", 1))
7751	}
7752	if s.IamRole == nil {
7753		invalidParams.Add(request.NewErrParamRequired("IamRole"))
7754	}
7755	if s.IamRole != nil && len(*s.IamRole) < 1 {
7756		invalidParams.Add(request.NewErrParamMinLen("IamRole", 1))
7757	}
7758	if s.MaxJobDurationInSeconds == nil {
7759		invalidParams.Add(request.NewErrParamRequired("MaxJobDurationInSeconds"))
7760	}
7761	if s.RobotApplications != nil && len(s.RobotApplications) < 1 {
7762		invalidParams.Add(request.NewErrParamMinLen("RobotApplications", 1))
7763	}
7764	if s.SimulationApplications != nil && len(s.SimulationApplications) < 1 {
7765		invalidParams.Add(request.NewErrParamMinLen("SimulationApplications", 1))
7766	}
7767	if s.Compute != nil {
7768		if err := s.Compute.Validate(); err != nil {
7769			invalidParams.AddNested("Compute", err.(request.ErrInvalidParams))
7770		}
7771	}
7772	if s.DataSources != nil {
7773		for i, v := range s.DataSources {
7774			if v == nil {
7775				continue
7776			}
7777			if err := v.Validate(); err != nil {
7778				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSources", i), err.(request.ErrInvalidParams))
7779			}
7780		}
7781	}
7782	if s.LoggingConfig != nil {
7783		if err := s.LoggingConfig.Validate(); err != nil {
7784			invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams))
7785		}
7786	}
7787	if s.OutputLocation != nil {
7788		if err := s.OutputLocation.Validate(); err != nil {
7789			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
7790		}
7791	}
7792	if s.RobotApplications != nil {
7793		for i, v := range s.RobotApplications {
7794			if v == nil {
7795				continue
7796			}
7797			if err := v.Validate(); err != nil {
7798				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RobotApplications", i), err.(request.ErrInvalidParams))
7799			}
7800		}
7801	}
7802	if s.SimulationApplications != nil {
7803		for i, v := range s.SimulationApplications {
7804			if v == nil {
7805				continue
7806			}
7807			if err := v.Validate(); err != nil {
7808				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SimulationApplications", i), err.(request.ErrInvalidParams))
7809			}
7810		}
7811	}
7812	if s.VpcConfig != nil {
7813		if err := s.VpcConfig.Validate(); err != nil {
7814			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
7815		}
7816	}
7817
7818	if invalidParams.Len() > 0 {
7819		return invalidParams
7820	}
7821	return nil
7822}
7823
7824// SetClientRequestToken sets the ClientRequestToken field's value.
7825func (s *CreateSimulationJobInput) SetClientRequestToken(v string) *CreateSimulationJobInput {
7826	s.ClientRequestToken = &v
7827	return s
7828}
7829
7830// SetCompute sets the Compute field's value.
7831func (s *CreateSimulationJobInput) SetCompute(v *Compute) *CreateSimulationJobInput {
7832	s.Compute = v
7833	return s
7834}
7835
7836// SetDataSources sets the DataSources field's value.
7837func (s *CreateSimulationJobInput) SetDataSources(v []*DataSourceConfig) *CreateSimulationJobInput {
7838	s.DataSources = v
7839	return s
7840}
7841
7842// SetFailureBehavior sets the FailureBehavior field's value.
7843func (s *CreateSimulationJobInput) SetFailureBehavior(v string) *CreateSimulationJobInput {
7844	s.FailureBehavior = &v
7845	return s
7846}
7847
7848// SetIamRole sets the IamRole field's value.
7849func (s *CreateSimulationJobInput) SetIamRole(v string) *CreateSimulationJobInput {
7850	s.IamRole = &v
7851	return s
7852}
7853
7854// SetLoggingConfig sets the LoggingConfig field's value.
7855func (s *CreateSimulationJobInput) SetLoggingConfig(v *LoggingConfig) *CreateSimulationJobInput {
7856	s.LoggingConfig = v
7857	return s
7858}
7859
7860// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
7861func (s *CreateSimulationJobInput) SetMaxJobDurationInSeconds(v int64) *CreateSimulationJobInput {
7862	s.MaxJobDurationInSeconds = &v
7863	return s
7864}
7865
7866// SetOutputLocation sets the OutputLocation field's value.
7867func (s *CreateSimulationJobInput) SetOutputLocation(v *OutputLocation) *CreateSimulationJobInput {
7868	s.OutputLocation = v
7869	return s
7870}
7871
7872// SetRobotApplications sets the RobotApplications field's value.
7873func (s *CreateSimulationJobInput) SetRobotApplications(v []*RobotApplicationConfig) *CreateSimulationJobInput {
7874	s.RobotApplications = v
7875	return s
7876}
7877
7878// SetSimulationApplications sets the SimulationApplications field's value.
7879func (s *CreateSimulationJobInput) SetSimulationApplications(v []*SimulationApplicationConfig) *CreateSimulationJobInput {
7880	s.SimulationApplications = v
7881	return s
7882}
7883
7884// SetTags sets the Tags field's value.
7885func (s *CreateSimulationJobInput) SetTags(v map[string]*string) *CreateSimulationJobInput {
7886	s.Tags = v
7887	return s
7888}
7889
7890// SetVpcConfig sets the VpcConfig field's value.
7891func (s *CreateSimulationJobInput) SetVpcConfig(v *VPCConfig) *CreateSimulationJobInput {
7892	s.VpcConfig = v
7893	return s
7894}
7895
7896type CreateSimulationJobOutput struct {
7897	_ struct{} `type:"structure"`
7898
7899	// The Amazon Resource Name (ARN) of the simulation job.
7900	Arn *string `locationName:"arn" min:"1" type:"string"`
7901
7902	// Unique, case-sensitive identifier that you provide to ensure the idempotency
7903	// of the request.
7904	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
7905
7906	// Compute information for the simulation job.
7907	Compute *ComputeResponse `locationName:"compute" type:"structure"`
7908
7909	// The data sources for the simulation job.
7910	DataSources []*DataSource `locationName:"dataSources" type:"list"`
7911
7912	// the failure behavior for the simulation job.
7913	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
7914
7915	// The failure code of the simulation job if it failed:
7916	//
7917	// InternalServiceError
7918	//
7919	// Internal service error.
7920	//
7921	// RobotApplicationCrash
7922	//
7923	// Robot application exited abnormally.
7924	//
7925	// SimulationApplicationCrash
7926	//
7927	// Simulation application exited abnormally.
7928	//
7929	// BadPermissionsRobotApplication
7930	//
7931	// Robot application bundle could not be downloaded.
7932	//
7933	// BadPermissionsSimulationApplication
7934	//
7935	// Simulation application bundle could not be downloaded.
7936	//
7937	// BadPermissionsS3Output
7938	//
7939	// Unable to publish outputs to customer-provided S3 bucket.
7940	//
7941	// BadPermissionsCloudwatchLogs
7942	//
7943	// Unable to publish logs to customer-provided CloudWatch Logs resource.
7944	//
7945	// SubnetIpLimitExceeded
7946	//
7947	// Subnet IP limit exceeded.
7948	//
7949	// ENILimitExceeded
7950	//
7951	// ENI limit exceeded.
7952	//
7953	// BadPermissionsUserCredentials
7954	//
7955	// Unable to use the Role provided.
7956	//
7957	// InvalidBundleRobotApplication
7958	//
7959	// Robot bundle cannot be extracted (invalid format, bundling error, or other
7960	// issue).
7961	//
7962	// InvalidBundleSimulationApplication
7963	//
7964	// Simulation bundle cannot be extracted (invalid format, bundling error, or
7965	// other issue).
7966	//
7967	// RobotApplicationVersionMismatchedEtag
7968	//
7969	// Etag for RobotApplication does not match value during version creation.
7970	//
7971	// SimulationApplicationVersionMismatchedEtag
7972	//
7973	// Etag for SimulationApplication does not match value during version creation.
7974	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
7975
7976	// The IAM role that allows the simulation job to call the AWS APIs that are
7977	// specified in its associated policies on your behalf.
7978	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
7979
7980	// The time, in milliseconds since the epoch, when the simulation job was last
7981	// started.
7982	LastStartedAt *time.Time `locationName:"lastStartedAt" type:"timestamp"`
7983
7984	// The time, in milliseconds since the epoch, when the simulation job was last
7985	// updated.
7986	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
7987
7988	// The logging configuration.
7989	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
7990
7991	// The maximum simulation job duration in seconds.
7992	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long"`
7993
7994	// Simulation job output files location.
7995	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
7996
7997	// The robot application used by the simulation job.
7998	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
7999
8000	// The simulation application used by the simulation job.
8001	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
8002
8003	// The simulation job execution duration in milliseconds.
8004	SimulationTimeMillis *int64 `locationName:"simulationTimeMillis" type:"long"`
8005
8006	// The status of the simulation job.
8007	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
8008
8009	// The list of all tags added to the simulation job.
8010	Tags map[string]*string `locationName:"tags" type:"map"`
8011
8012	// Information about the vpc configuration.
8013	VpcConfig *VPCConfigResponse `locationName:"vpcConfig" type:"structure"`
8014}
8015
8016// String returns the string representation
8017func (s CreateSimulationJobOutput) String() string {
8018	return awsutil.Prettify(s)
8019}
8020
8021// GoString returns the string representation
8022func (s CreateSimulationJobOutput) GoString() string {
8023	return s.String()
8024}
8025
8026// SetArn sets the Arn field's value.
8027func (s *CreateSimulationJobOutput) SetArn(v string) *CreateSimulationJobOutput {
8028	s.Arn = &v
8029	return s
8030}
8031
8032// SetClientRequestToken sets the ClientRequestToken field's value.
8033func (s *CreateSimulationJobOutput) SetClientRequestToken(v string) *CreateSimulationJobOutput {
8034	s.ClientRequestToken = &v
8035	return s
8036}
8037
8038// SetCompute sets the Compute field's value.
8039func (s *CreateSimulationJobOutput) SetCompute(v *ComputeResponse) *CreateSimulationJobOutput {
8040	s.Compute = v
8041	return s
8042}
8043
8044// SetDataSources sets the DataSources field's value.
8045func (s *CreateSimulationJobOutput) SetDataSources(v []*DataSource) *CreateSimulationJobOutput {
8046	s.DataSources = v
8047	return s
8048}
8049
8050// SetFailureBehavior sets the FailureBehavior field's value.
8051func (s *CreateSimulationJobOutput) SetFailureBehavior(v string) *CreateSimulationJobOutput {
8052	s.FailureBehavior = &v
8053	return s
8054}
8055
8056// SetFailureCode sets the FailureCode field's value.
8057func (s *CreateSimulationJobOutput) SetFailureCode(v string) *CreateSimulationJobOutput {
8058	s.FailureCode = &v
8059	return s
8060}
8061
8062// SetIamRole sets the IamRole field's value.
8063func (s *CreateSimulationJobOutput) SetIamRole(v string) *CreateSimulationJobOutput {
8064	s.IamRole = &v
8065	return s
8066}
8067
8068// SetLastStartedAt sets the LastStartedAt field's value.
8069func (s *CreateSimulationJobOutput) SetLastStartedAt(v time.Time) *CreateSimulationJobOutput {
8070	s.LastStartedAt = &v
8071	return s
8072}
8073
8074// SetLastUpdatedAt sets the LastUpdatedAt field's value.
8075func (s *CreateSimulationJobOutput) SetLastUpdatedAt(v time.Time) *CreateSimulationJobOutput {
8076	s.LastUpdatedAt = &v
8077	return s
8078}
8079
8080// SetLoggingConfig sets the LoggingConfig field's value.
8081func (s *CreateSimulationJobOutput) SetLoggingConfig(v *LoggingConfig) *CreateSimulationJobOutput {
8082	s.LoggingConfig = v
8083	return s
8084}
8085
8086// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
8087func (s *CreateSimulationJobOutput) SetMaxJobDurationInSeconds(v int64) *CreateSimulationJobOutput {
8088	s.MaxJobDurationInSeconds = &v
8089	return s
8090}
8091
8092// SetOutputLocation sets the OutputLocation field's value.
8093func (s *CreateSimulationJobOutput) SetOutputLocation(v *OutputLocation) *CreateSimulationJobOutput {
8094	s.OutputLocation = v
8095	return s
8096}
8097
8098// SetRobotApplications sets the RobotApplications field's value.
8099func (s *CreateSimulationJobOutput) SetRobotApplications(v []*RobotApplicationConfig) *CreateSimulationJobOutput {
8100	s.RobotApplications = v
8101	return s
8102}
8103
8104// SetSimulationApplications sets the SimulationApplications field's value.
8105func (s *CreateSimulationJobOutput) SetSimulationApplications(v []*SimulationApplicationConfig) *CreateSimulationJobOutput {
8106	s.SimulationApplications = v
8107	return s
8108}
8109
8110// SetSimulationTimeMillis sets the SimulationTimeMillis field's value.
8111func (s *CreateSimulationJobOutput) SetSimulationTimeMillis(v int64) *CreateSimulationJobOutput {
8112	s.SimulationTimeMillis = &v
8113	return s
8114}
8115
8116// SetStatus sets the Status field's value.
8117func (s *CreateSimulationJobOutput) SetStatus(v string) *CreateSimulationJobOutput {
8118	s.Status = &v
8119	return s
8120}
8121
8122// SetTags sets the Tags field's value.
8123func (s *CreateSimulationJobOutput) SetTags(v map[string]*string) *CreateSimulationJobOutput {
8124	s.Tags = v
8125	return s
8126}
8127
8128// SetVpcConfig sets the VpcConfig field's value.
8129func (s *CreateSimulationJobOutput) SetVpcConfig(v *VPCConfigResponse) *CreateSimulationJobOutput {
8130	s.VpcConfig = v
8131	return s
8132}
8133
8134type CreateWorldExportJobInput struct {
8135	_ struct{} `type:"structure"`
8136
8137	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8138	// of the request.
8139	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
8140
8141	// The IAM role that the world export process uses to access the Amazon S3 bucket
8142	// and put the export.
8143	//
8144	// IamRole is a required field
8145	IamRole *string `locationName:"iamRole" min:"1" type:"string" required:"true"`
8146
8147	// The output location.
8148	//
8149	// OutputLocation is a required field
8150	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure" required:"true"`
8151
8152	// A map that contains tag keys and tag values that are attached to the world
8153	// export job.
8154	Tags map[string]*string `locationName:"tags" type:"map"`
8155
8156	// A list of Amazon Resource Names (arns) that correspond to worlds to export.
8157	//
8158	// Worlds is a required field
8159	Worlds []*string `locationName:"worlds" min:"1" type:"list" required:"true"`
8160}
8161
8162// String returns the string representation
8163func (s CreateWorldExportJobInput) String() string {
8164	return awsutil.Prettify(s)
8165}
8166
8167// GoString returns the string representation
8168func (s CreateWorldExportJobInput) GoString() string {
8169	return s.String()
8170}
8171
8172// Validate inspects the fields of the type to determine if they are valid.
8173func (s *CreateWorldExportJobInput) Validate() error {
8174	invalidParams := request.ErrInvalidParams{Context: "CreateWorldExportJobInput"}
8175	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8176		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8177	}
8178	if s.IamRole == nil {
8179		invalidParams.Add(request.NewErrParamRequired("IamRole"))
8180	}
8181	if s.IamRole != nil && len(*s.IamRole) < 1 {
8182		invalidParams.Add(request.NewErrParamMinLen("IamRole", 1))
8183	}
8184	if s.OutputLocation == nil {
8185		invalidParams.Add(request.NewErrParamRequired("OutputLocation"))
8186	}
8187	if s.Worlds == nil {
8188		invalidParams.Add(request.NewErrParamRequired("Worlds"))
8189	}
8190	if s.Worlds != nil && len(s.Worlds) < 1 {
8191		invalidParams.Add(request.NewErrParamMinLen("Worlds", 1))
8192	}
8193	if s.OutputLocation != nil {
8194		if err := s.OutputLocation.Validate(); err != nil {
8195			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
8196		}
8197	}
8198
8199	if invalidParams.Len() > 0 {
8200		return invalidParams
8201	}
8202	return nil
8203}
8204
8205// SetClientRequestToken sets the ClientRequestToken field's value.
8206func (s *CreateWorldExportJobInput) SetClientRequestToken(v string) *CreateWorldExportJobInput {
8207	s.ClientRequestToken = &v
8208	return s
8209}
8210
8211// SetIamRole sets the IamRole field's value.
8212func (s *CreateWorldExportJobInput) SetIamRole(v string) *CreateWorldExportJobInput {
8213	s.IamRole = &v
8214	return s
8215}
8216
8217// SetOutputLocation sets the OutputLocation field's value.
8218func (s *CreateWorldExportJobInput) SetOutputLocation(v *OutputLocation) *CreateWorldExportJobInput {
8219	s.OutputLocation = v
8220	return s
8221}
8222
8223// SetTags sets the Tags field's value.
8224func (s *CreateWorldExportJobInput) SetTags(v map[string]*string) *CreateWorldExportJobInput {
8225	s.Tags = v
8226	return s
8227}
8228
8229// SetWorlds sets the Worlds field's value.
8230func (s *CreateWorldExportJobInput) SetWorlds(v []*string) *CreateWorldExportJobInput {
8231	s.Worlds = v
8232	return s
8233}
8234
8235type CreateWorldExportJobOutput struct {
8236	_ struct{} `type:"structure"`
8237
8238	// The Amazon Resource Name (ARN) of the world export job.
8239	Arn *string `locationName:"arn" min:"1" type:"string"`
8240
8241	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8242	// of the request.
8243	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8244
8245	// The time, in milliseconds since the epoch, when the world export job was
8246	// created.
8247	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
8248
8249	// The failure code of the world export job if it failed:
8250	//
8251	// InternalServiceError
8252	//
8253	// Internal service error.
8254	//
8255	// LimitExceeded
8256	//
8257	// The requested resource exceeds the maximum number allowed, or the number
8258	// of concurrent stream requests exceeds the maximum number allowed.
8259	//
8260	// ResourceNotFound
8261	//
8262	// The specified resource could not be found.
8263	//
8264	// RequestThrottled
8265	//
8266	// The request was throttled.
8267	//
8268	// InvalidInput
8269	//
8270	// An input parameter in the request is not valid.
8271	//
8272	// AllWorldGenerationFailed
8273	//
8274	// All of the worlds in the world generation job failed. This can happen if
8275	// your worldCount is greater than 50 or less than 1.
8276	//
8277	// For more information about troubleshooting WorldForge, see Troubleshooting
8278	// Simulation WorldForge (https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting-worldforge.html).
8279	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldExportJobErrorCode"`
8280
8281	// The IAM role that the world export process uses to access the Amazon S3 bucket
8282	// and put the export.
8283	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
8284
8285	// The output location.
8286	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
8287
8288	// The status of the world export job.
8289	//
8290	// Pending
8291	//
8292	// The world export job request is pending.
8293	//
8294	// Running
8295	//
8296	// The world export job is running.
8297	//
8298	// Completed
8299	//
8300	// The world export job completed.
8301	//
8302	// Failed
8303	//
8304	// The world export job failed. See failureCode for more information.
8305	//
8306	// Canceled
8307	//
8308	// The world export job was cancelled.
8309	//
8310	// Canceling
8311	//
8312	// The world export job is being cancelled.
8313	Status *string `locationName:"status" type:"string" enum:"WorldExportJobStatus"`
8314
8315	// A map that contains tag keys and tag values that are attached to the world
8316	// export job.
8317	Tags map[string]*string `locationName:"tags" type:"map"`
8318}
8319
8320// String returns the string representation
8321func (s CreateWorldExportJobOutput) String() string {
8322	return awsutil.Prettify(s)
8323}
8324
8325// GoString returns the string representation
8326func (s CreateWorldExportJobOutput) GoString() string {
8327	return s.String()
8328}
8329
8330// SetArn sets the Arn field's value.
8331func (s *CreateWorldExportJobOutput) SetArn(v string) *CreateWorldExportJobOutput {
8332	s.Arn = &v
8333	return s
8334}
8335
8336// SetClientRequestToken sets the ClientRequestToken field's value.
8337func (s *CreateWorldExportJobOutput) SetClientRequestToken(v string) *CreateWorldExportJobOutput {
8338	s.ClientRequestToken = &v
8339	return s
8340}
8341
8342// SetCreatedAt sets the CreatedAt field's value.
8343func (s *CreateWorldExportJobOutput) SetCreatedAt(v time.Time) *CreateWorldExportJobOutput {
8344	s.CreatedAt = &v
8345	return s
8346}
8347
8348// SetFailureCode sets the FailureCode field's value.
8349func (s *CreateWorldExportJobOutput) SetFailureCode(v string) *CreateWorldExportJobOutput {
8350	s.FailureCode = &v
8351	return s
8352}
8353
8354// SetIamRole sets the IamRole field's value.
8355func (s *CreateWorldExportJobOutput) SetIamRole(v string) *CreateWorldExportJobOutput {
8356	s.IamRole = &v
8357	return s
8358}
8359
8360// SetOutputLocation sets the OutputLocation field's value.
8361func (s *CreateWorldExportJobOutput) SetOutputLocation(v *OutputLocation) *CreateWorldExportJobOutput {
8362	s.OutputLocation = v
8363	return s
8364}
8365
8366// SetStatus sets the Status field's value.
8367func (s *CreateWorldExportJobOutput) SetStatus(v string) *CreateWorldExportJobOutput {
8368	s.Status = &v
8369	return s
8370}
8371
8372// SetTags sets the Tags field's value.
8373func (s *CreateWorldExportJobOutput) SetTags(v map[string]*string) *CreateWorldExportJobOutput {
8374	s.Tags = v
8375	return s
8376}
8377
8378type CreateWorldGenerationJobInput struct {
8379	_ struct{} `type:"structure"`
8380
8381	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8382	// of the request.
8383	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
8384
8385	// A map that contains tag keys and tag values that are attached to the world
8386	// generator job.
8387	Tags map[string]*string `locationName:"tags" type:"map"`
8388
8389	// The Amazon Resource Name (arn) of the world template describing the worlds
8390	// you want to create.
8391	//
8392	// Template is a required field
8393	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
8394
8395	// Information about the world count.
8396	//
8397	// WorldCount is a required field
8398	WorldCount *WorldCount `locationName:"worldCount" type:"structure" required:"true"`
8399
8400	// A map that contains tag keys and tag values that are attached to the generated
8401	// worlds.
8402	WorldTags map[string]*string `locationName:"worldTags" type:"map"`
8403}
8404
8405// String returns the string representation
8406func (s CreateWorldGenerationJobInput) String() string {
8407	return awsutil.Prettify(s)
8408}
8409
8410// GoString returns the string representation
8411func (s CreateWorldGenerationJobInput) GoString() string {
8412	return s.String()
8413}
8414
8415// Validate inspects the fields of the type to determine if they are valid.
8416func (s *CreateWorldGenerationJobInput) Validate() error {
8417	invalidParams := request.ErrInvalidParams{Context: "CreateWorldGenerationJobInput"}
8418	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8419		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8420	}
8421	if s.Template == nil {
8422		invalidParams.Add(request.NewErrParamRequired("Template"))
8423	}
8424	if s.Template != nil && len(*s.Template) < 1 {
8425		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
8426	}
8427	if s.WorldCount == nil {
8428		invalidParams.Add(request.NewErrParamRequired("WorldCount"))
8429	}
8430
8431	if invalidParams.Len() > 0 {
8432		return invalidParams
8433	}
8434	return nil
8435}
8436
8437// SetClientRequestToken sets the ClientRequestToken field's value.
8438func (s *CreateWorldGenerationJobInput) SetClientRequestToken(v string) *CreateWorldGenerationJobInput {
8439	s.ClientRequestToken = &v
8440	return s
8441}
8442
8443// SetTags sets the Tags field's value.
8444func (s *CreateWorldGenerationJobInput) SetTags(v map[string]*string) *CreateWorldGenerationJobInput {
8445	s.Tags = v
8446	return s
8447}
8448
8449// SetTemplate sets the Template field's value.
8450func (s *CreateWorldGenerationJobInput) SetTemplate(v string) *CreateWorldGenerationJobInput {
8451	s.Template = &v
8452	return s
8453}
8454
8455// SetWorldCount sets the WorldCount field's value.
8456func (s *CreateWorldGenerationJobInput) SetWorldCount(v *WorldCount) *CreateWorldGenerationJobInput {
8457	s.WorldCount = v
8458	return s
8459}
8460
8461// SetWorldTags sets the WorldTags field's value.
8462func (s *CreateWorldGenerationJobInput) SetWorldTags(v map[string]*string) *CreateWorldGenerationJobInput {
8463	s.WorldTags = v
8464	return s
8465}
8466
8467type CreateWorldGenerationJobOutput struct {
8468	_ struct{} `type:"structure"`
8469
8470	// The Amazon Resource Name (ARN) of the world generator job.
8471	Arn *string `locationName:"arn" min:"1" type:"string"`
8472
8473	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8474	// of the request.
8475	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8476
8477	// The time, in milliseconds since the epoch, when the world generator job was
8478	// created.
8479	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
8480
8481	// The failure code of the world generator job if it failed:
8482	//
8483	// InternalServiceError
8484	//
8485	// Internal service error.
8486	//
8487	// LimitExceeded
8488	//
8489	// The requested resource exceeds the maximum number allowed, or the number
8490	// of concurrent stream requests exceeds the maximum number allowed.
8491	//
8492	// ResourceNotFound
8493	//
8494	// The specified resource could not be found.
8495	//
8496	// RequestThrottled
8497	//
8498	// The request was throttled.
8499	//
8500	// InvalidInput
8501	//
8502	// An input parameter in the request is not valid.
8503	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldGenerationJobErrorCode"`
8504
8505	// The status of the world generator job.
8506	//
8507	// Pending
8508	//
8509	// The world generator job request is pending.
8510	//
8511	// Running
8512	//
8513	// The world generator job is running.
8514	//
8515	// Completed
8516	//
8517	// The world generator job completed.
8518	//
8519	// Failed
8520	//
8521	// The world generator job failed. See failureCode for more information.
8522	//
8523	// PartialFailed
8524	//
8525	// Some worlds did not generate.
8526	//
8527	// Canceled
8528	//
8529	// The world generator job was cancelled.
8530	//
8531	// Canceling
8532	//
8533	// The world generator job is being cancelled.
8534	Status *string `locationName:"status" type:"string" enum:"WorldGenerationJobStatus"`
8535
8536	// A map that contains tag keys and tag values that are attached to the world
8537	// generator job.
8538	Tags map[string]*string `locationName:"tags" type:"map"`
8539
8540	// The Amazon Resource Name (arn) of the world template.
8541	Template *string `locationName:"template" min:"1" type:"string"`
8542
8543	// Information about the world count.
8544	WorldCount *WorldCount `locationName:"worldCount" type:"structure"`
8545
8546	// A map that contains tag keys and tag values that are attached to the generated
8547	// worlds.
8548	WorldTags map[string]*string `locationName:"worldTags" type:"map"`
8549}
8550
8551// String returns the string representation
8552func (s CreateWorldGenerationJobOutput) String() string {
8553	return awsutil.Prettify(s)
8554}
8555
8556// GoString returns the string representation
8557func (s CreateWorldGenerationJobOutput) GoString() string {
8558	return s.String()
8559}
8560
8561// SetArn sets the Arn field's value.
8562func (s *CreateWorldGenerationJobOutput) SetArn(v string) *CreateWorldGenerationJobOutput {
8563	s.Arn = &v
8564	return s
8565}
8566
8567// SetClientRequestToken sets the ClientRequestToken field's value.
8568func (s *CreateWorldGenerationJobOutput) SetClientRequestToken(v string) *CreateWorldGenerationJobOutput {
8569	s.ClientRequestToken = &v
8570	return s
8571}
8572
8573// SetCreatedAt sets the CreatedAt field's value.
8574func (s *CreateWorldGenerationJobOutput) SetCreatedAt(v time.Time) *CreateWorldGenerationJobOutput {
8575	s.CreatedAt = &v
8576	return s
8577}
8578
8579// SetFailureCode sets the FailureCode field's value.
8580func (s *CreateWorldGenerationJobOutput) SetFailureCode(v string) *CreateWorldGenerationJobOutput {
8581	s.FailureCode = &v
8582	return s
8583}
8584
8585// SetStatus sets the Status field's value.
8586func (s *CreateWorldGenerationJobOutput) SetStatus(v string) *CreateWorldGenerationJobOutput {
8587	s.Status = &v
8588	return s
8589}
8590
8591// SetTags sets the Tags field's value.
8592func (s *CreateWorldGenerationJobOutput) SetTags(v map[string]*string) *CreateWorldGenerationJobOutput {
8593	s.Tags = v
8594	return s
8595}
8596
8597// SetTemplate sets the Template field's value.
8598func (s *CreateWorldGenerationJobOutput) SetTemplate(v string) *CreateWorldGenerationJobOutput {
8599	s.Template = &v
8600	return s
8601}
8602
8603// SetWorldCount sets the WorldCount field's value.
8604func (s *CreateWorldGenerationJobOutput) SetWorldCount(v *WorldCount) *CreateWorldGenerationJobOutput {
8605	s.WorldCount = v
8606	return s
8607}
8608
8609// SetWorldTags sets the WorldTags field's value.
8610func (s *CreateWorldGenerationJobOutput) SetWorldTags(v map[string]*string) *CreateWorldGenerationJobOutput {
8611	s.WorldTags = v
8612	return s
8613}
8614
8615type CreateWorldTemplateInput struct {
8616	_ struct{} `type:"structure"`
8617
8618	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8619	// of the request.
8620	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8621
8622	// The name of the world template.
8623	Name *string `locationName:"name" type:"string"`
8624
8625	// A map that contains tag keys and tag values that are attached to the world
8626	// template.
8627	Tags map[string]*string `locationName:"tags" type:"map"`
8628
8629	// The world template body.
8630	TemplateBody *string `locationName:"templateBody" min:"1" type:"string"`
8631
8632	// The location of the world template.
8633	TemplateLocation *TemplateLocation `locationName:"templateLocation" type:"structure"`
8634}
8635
8636// String returns the string representation
8637func (s CreateWorldTemplateInput) String() string {
8638	return awsutil.Prettify(s)
8639}
8640
8641// GoString returns the string representation
8642func (s CreateWorldTemplateInput) GoString() string {
8643	return s.String()
8644}
8645
8646// Validate inspects the fields of the type to determine if they are valid.
8647func (s *CreateWorldTemplateInput) Validate() error {
8648	invalidParams := request.ErrInvalidParams{Context: "CreateWorldTemplateInput"}
8649	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8650		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8651	}
8652	if s.TemplateBody != nil && len(*s.TemplateBody) < 1 {
8653		invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1))
8654	}
8655	if s.TemplateLocation != nil {
8656		if err := s.TemplateLocation.Validate(); err != nil {
8657			invalidParams.AddNested("TemplateLocation", err.(request.ErrInvalidParams))
8658		}
8659	}
8660
8661	if invalidParams.Len() > 0 {
8662		return invalidParams
8663	}
8664	return nil
8665}
8666
8667// SetClientRequestToken sets the ClientRequestToken field's value.
8668func (s *CreateWorldTemplateInput) SetClientRequestToken(v string) *CreateWorldTemplateInput {
8669	s.ClientRequestToken = &v
8670	return s
8671}
8672
8673// SetName sets the Name field's value.
8674func (s *CreateWorldTemplateInput) SetName(v string) *CreateWorldTemplateInput {
8675	s.Name = &v
8676	return s
8677}
8678
8679// SetTags sets the Tags field's value.
8680func (s *CreateWorldTemplateInput) SetTags(v map[string]*string) *CreateWorldTemplateInput {
8681	s.Tags = v
8682	return s
8683}
8684
8685// SetTemplateBody sets the TemplateBody field's value.
8686func (s *CreateWorldTemplateInput) SetTemplateBody(v string) *CreateWorldTemplateInput {
8687	s.TemplateBody = &v
8688	return s
8689}
8690
8691// SetTemplateLocation sets the TemplateLocation field's value.
8692func (s *CreateWorldTemplateInput) SetTemplateLocation(v *TemplateLocation) *CreateWorldTemplateInput {
8693	s.TemplateLocation = v
8694	return s
8695}
8696
8697type CreateWorldTemplateOutput struct {
8698	_ struct{} `type:"structure"`
8699
8700	// The Amazon Resource Name (ARN) of the world template.
8701	Arn *string `locationName:"arn" min:"1" type:"string"`
8702
8703	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8704	// of the request.
8705	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8706
8707	// The time, in milliseconds since the epoch, when the world template was created.
8708	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
8709
8710	// The name of the world template.
8711	Name *string `locationName:"name" type:"string"`
8712
8713	// A map that contains tag keys and tag values that are attached to the world
8714	// template.
8715	Tags map[string]*string `locationName:"tags" type:"map"`
8716}
8717
8718// String returns the string representation
8719func (s CreateWorldTemplateOutput) String() string {
8720	return awsutil.Prettify(s)
8721}
8722
8723// GoString returns the string representation
8724func (s CreateWorldTemplateOutput) GoString() string {
8725	return s.String()
8726}
8727
8728// SetArn sets the Arn field's value.
8729func (s *CreateWorldTemplateOutput) SetArn(v string) *CreateWorldTemplateOutput {
8730	s.Arn = &v
8731	return s
8732}
8733
8734// SetClientRequestToken sets the ClientRequestToken field's value.
8735func (s *CreateWorldTemplateOutput) SetClientRequestToken(v string) *CreateWorldTemplateOutput {
8736	s.ClientRequestToken = &v
8737	return s
8738}
8739
8740// SetCreatedAt sets the CreatedAt field's value.
8741func (s *CreateWorldTemplateOutput) SetCreatedAt(v time.Time) *CreateWorldTemplateOutput {
8742	s.CreatedAt = &v
8743	return s
8744}
8745
8746// SetName sets the Name field's value.
8747func (s *CreateWorldTemplateOutput) SetName(v string) *CreateWorldTemplateOutput {
8748	s.Name = &v
8749	return s
8750}
8751
8752// SetTags sets the Tags field's value.
8753func (s *CreateWorldTemplateOutput) SetTags(v map[string]*string) *CreateWorldTemplateOutput {
8754	s.Tags = v
8755	return s
8756}
8757
8758// Information about a data source.
8759type DataSource struct {
8760	_ struct{} `type:"structure"`
8761
8762	// The name of the data source.
8763	Name *string `locationName:"name" min:"1" type:"string"`
8764
8765	// The S3 bucket where the data files are located.
8766	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
8767
8768	// The list of S3 keys identifying the data source files.
8769	S3Keys []*S3KeyOutput `locationName:"s3Keys" type:"list"`
8770}
8771
8772// String returns the string representation
8773func (s DataSource) String() string {
8774	return awsutil.Prettify(s)
8775}
8776
8777// GoString returns the string representation
8778func (s DataSource) GoString() string {
8779	return s.String()
8780}
8781
8782// SetName sets the Name field's value.
8783func (s *DataSource) SetName(v string) *DataSource {
8784	s.Name = &v
8785	return s
8786}
8787
8788// SetS3Bucket sets the S3Bucket field's value.
8789func (s *DataSource) SetS3Bucket(v string) *DataSource {
8790	s.S3Bucket = &v
8791	return s
8792}
8793
8794// SetS3Keys sets the S3Keys field's value.
8795func (s *DataSource) SetS3Keys(v []*S3KeyOutput) *DataSource {
8796	s.S3Keys = v
8797	return s
8798}
8799
8800// Information about a data source.
8801type DataSourceConfig struct {
8802	_ struct{} `type:"structure"`
8803
8804	// The name of the data source.
8805	//
8806	// Name is a required field
8807	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8808
8809	// The S3 bucket where the data files are located.
8810	//
8811	// S3Bucket is a required field
8812	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string" required:"true"`
8813
8814	// The list of S3 keys identifying the data source files.
8815	//
8816	// S3Keys is a required field
8817	S3Keys []*string `locationName:"s3Keys" min:"1" type:"list" required:"true"`
8818}
8819
8820// String returns the string representation
8821func (s DataSourceConfig) String() string {
8822	return awsutil.Prettify(s)
8823}
8824
8825// GoString returns the string representation
8826func (s DataSourceConfig) GoString() string {
8827	return s.String()
8828}
8829
8830// Validate inspects the fields of the type to determine if they are valid.
8831func (s *DataSourceConfig) Validate() error {
8832	invalidParams := request.ErrInvalidParams{Context: "DataSourceConfig"}
8833	if s.Name == nil {
8834		invalidParams.Add(request.NewErrParamRequired("Name"))
8835	}
8836	if s.Name != nil && len(*s.Name) < 1 {
8837		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8838	}
8839	if s.S3Bucket == nil {
8840		invalidParams.Add(request.NewErrParamRequired("S3Bucket"))
8841	}
8842	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
8843		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
8844	}
8845	if s.S3Keys == nil {
8846		invalidParams.Add(request.NewErrParamRequired("S3Keys"))
8847	}
8848	if s.S3Keys != nil && len(s.S3Keys) < 1 {
8849		invalidParams.Add(request.NewErrParamMinLen("S3Keys", 1))
8850	}
8851
8852	if invalidParams.Len() > 0 {
8853		return invalidParams
8854	}
8855	return nil
8856}
8857
8858// SetName sets the Name field's value.
8859func (s *DataSourceConfig) SetName(v string) *DataSourceConfig {
8860	s.Name = &v
8861	return s
8862}
8863
8864// SetS3Bucket sets the S3Bucket field's value.
8865func (s *DataSourceConfig) SetS3Bucket(v string) *DataSourceConfig {
8866	s.S3Bucket = &v
8867	return s
8868}
8869
8870// SetS3Keys sets the S3Keys field's value.
8871func (s *DataSourceConfig) SetS3Keys(v []*string) *DataSourceConfig {
8872	s.S3Keys = v
8873	return s
8874}
8875
8876type DeleteFleetInput struct {
8877	_ struct{} `type:"structure"`
8878
8879	// The Amazon Resource Name (ARN) of the fleet.
8880	//
8881	// Fleet is a required field
8882	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
8883}
8884
8885// String returns the string representation
8886func (s DeleteFleetInput) String() string {
8887	return awsutil.Prettify(s)
8888}
8889
8890// GoString returns the string representation
8891func (s DeleteFleetInput) GoString() string {
8892	return s.String()
8893}
8894
8895// Validate inspects the fields of the type to determine if they are valid.
8896func (s *DeleteFleetInput) Validate() error {
8897	invalidParams := request.ErrInvalidParams{Context: "DeleteFleetInput"}
8898	if s.Fleet == nil {
8899		invalidParams.Add(request.NewErrParamRequired("Fleet"))
8900	}
8901	if s.Fleet != nil && len(*s.Fleet) < 1 {
8902		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
8903	}
8904
8905	if invalidParams.Len() > 0 {
8906		return invalidParams
8907	}
8908	return nil
8909}
8910
8911// SetFleet sets the Fleet field's value.
8912func (s *DeleteFleetInput) SetFleet(v string) *DeleteFleetInput {
8913	s.Fleet = &v
8914	return s
8915}
8916
8917type DeleteFleetOutput struct {
8918	_ struct{} `type:"structure"`
8919}
8920
8921// String returns the string representation
8922func (s DeleteFleetOutput) String() string {
8923	return awsutil.Prettify(s)
8924}
8925
8926// GoString returns the string representation
8927func (s DeleteFleetOutput) GoString() string {
8928	return s.String()
8929}
8930
8931type DeleteRobotApplicationInput struct {
8932	_ struct{} `type:"structure"`
8933
8934	// The Amazon Resource Name (ARN) of the the robot application.
8935	//
8936	// Application is a required field
8937	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
8938
8939	// The version of the robot application to delete.
8940	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
8941}
8942
8943// String returns the string representation
8944func (s DeleteRobotApplicationInput) String() string {
8945	return awsutil.Prettify(s)
8946}
8947
8948// GoString returns the string representation
8949func (s DeleteRobotApplicationInput) GoString() string {
8950	return s.String()
8951}
8952
8953// Validate inspects the fields of the type to determine if they are valid.
8954func (s *DeleteRobotApplicationInput) Validate() error {
8955	invalidParams := request.ErrInvalidParams{Context: "DeleteRobotApplicationInput"}
8956	if s.Application == nil {
8957		invalidParams.Add(request.NewErrParamRequired("Application"))
8958	}
8959	if s.Application != nil && len(*s.Application) < 1 {
8960		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
8961	}
8962	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
8963		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
8964	}
8965
8966	if invalidParams.Len() > 0 {
8967		return invalidParams
8968	}
8969	return nil
8970}
8971
8972// SetApplication sets the Application field's value.
8973func (s *DeleteRobotApplicationInput) SetApplication(v string) *DeleteRobotApplicationInput {
8974	s.Application = &v
8975	return s
8976}
8977
8978// SetApplicationVersion sets the ApplicationVersion field's value.
8979func (s *DeleteRobotApplicationInput) SetApplicationVersion(v string) *DeleteRobotApplicationInput {
8980	s.ApplicationVersion = &v
8981	return s
8982}
8983
8984type DeleteRobotApplicationOutput struct {
8985	_ struct{} `type:"structure"`
8986}
8987
8988// String returns the string representation
8989func (s DeleteRobotApplicationOutput) String() string {
8990	return awsutil.Prettify(s)
8991}
8992
8993// GoString returns the string representation
8994func (s DeleteRobotApplicationOutput) GoString() string {
8995	return s.String()
8996}
8997
8998type DeleteRobotInput struct {
8999	_ struct{} `type:"structure"`
9000
9001	// The Amazon Resource Name (ARN) of the robot.
9002	//
9003	// Robot is a required field
9004	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
9005}
9006
9007// String returns the string representation
9008func (s DeleteRobotInput) String() string {
9009	return awsutil.Prettify(s)
9010}
9011
9012// GoString returns the string representation
9013func (s DeleteRobotInput) GoString() string {
9014	return s.String()
9015}
9016
9017// Validate inspects the fields of the type to determine if they are valid.
9018func (s *DeleteRobotInput) Validate() error {
9019	invalidParams := request.ErrInvalidParams{Context: "DeleteRobotInput"}
9020	if s.Robot == nil {
9021		invalidParams.Add(request.NewErrParamRequired("Robot"))
9022	}
9023	if s.Robot != nil && len(*s.Robot) < 1 {
9024		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
9025	}
9026
9027	if invalidParams.Len() > 0 {
9028		return invalidParams
9029	}
9030	return nil
9031}
9032
9033// SetRobot sets the Robot field's value.
9034func (s *DeleteRobotInput) SetRobot(v string) *DeleteRobotInput {
9035	s.Robot = &v
9036	return s
9037}
9038
9039type DeleteRobotOutput struct {
9040	_ struct{} `type:"structure"`
9041}
9042
9043// String returns the string representation
9044func (s DeleteRobotOutput) String() string {
9045	return awsutil.Prettify(s)
9046}
9047
9048// GoString returns the string representation
9049func (s DeleteRobotOutput) GoString() string {
9050	return s.String()
9051}
9052
9053type DeleteSimulationApplicationInput struct {
9054	_ struct{} `type:"structure"`
9055
9056	// The application information for the simulation application to delete.
9057	//
9058	// Application is a required field
9059	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
9060
9061	// The version of the simulation application to delete.
9062	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
9063}
9064
9065// String returns the string representation
9066func (s DeleteSimulationApplicationInput) String() string {
9067	return awsutil.Prettify(s)
9068}
9069
9070// GoString returns the string representation
9071func (s DeleteSimulationApplicationInput) GoString() string {
9072	return s.String()
9073}
9074
9075// Validate inspects the fields of the type to determine if they are valid.
9076func (s *DeleteSimulationApplicationInput) Validate() error {
9077	invalidParams := request.ErrInvalidParams{Context: "DeleteSimulationApplicationInput"}
9078	if s.Application == nil {
9079		invalidParams.Add(request.NewErrParamRequired("Application"))
9080	}
9081	if s.Application != nil && len(*s.Application) < 1 {
9082		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
9083	}
9084	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
9085		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
9086	}
9087
9088	if invalidParams.Len() > 0 {
9089		return invalidParams
9090	}
9091	return nil
9092}
9093
9094// SetApplication sets the Application field's value.
9095func (s *DeleteSimulationApplicationInput) SetApplication(v string) *DeleteSimulationApplicationInput {
9096	s.Application = &v
9097	return s
9098}
9099
9100// SetApplicationVersion sets the ApplicationVersion field's value.
9101func (s *DeleteSimulationApplicationInput) SetApplicationVersion(v string) *DeleteSimulationApplicationInput {
9102	s.ApplicationVersion = &v
9103	return s
9104}
9105
9106type DeleteSimulationApplicationOutput struct {
9107	_ struct{} `type:"structure"`
9108}
9109
9110// String returns the string representation
9111func (s DeleteSimulationApplicationOutput) String() string {
9112	return awsutil.Prettify(s)
9113}
9114
9115// GoString returns the string representation
9116func (s DeleteSimulationApplicationOutput) GoString() string {
9117	return s.String()
9118}
9119
9120type DeleteWorldTemplateInput struct {
9121	_ struct{} `type:"structure"`
9122
9123	// The Amazon Resource Name (arn) of the world template you want to delete.
9124	//
9125	// Template is a required field
9126	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
9127}
9128
9129// String returns the string representation
9130func (s DeleteWorldTemplateInput) String() string {
9131	return awsutil.Prettify(s)
9132}
9133
9134// GoString returns the string representation
9135func (s DeleteWorldTemplateInput) GoString() string {
9136	return s.String()
9137}
9138
9139// Validate inspects the fields of the type to determine if they are valid.
9140func (s *DeleteWorldTemplateInput) Validate() error {
9141	invalidParams := request.ErrInvalidParams{Context: "DeleteWorldTemplateInput"}
9142	if s.Template == nil {
9143		invalidParams.Add(request.NewErrParamRequired("Template"))
9144	}
9145	if s.Template != nil && len(*s.Template) < 1 {
9146		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
9147	}
9148
9149	if invalidParams.Len() > 0 {
9150		return invalidParams
9151	}
9152	return nil
9153}
9154
9155// SetTemplate sets the Template field's value.
9156func (s *DeleteWorldTemplateInput) SetTemplate(v string) *DeleteWorldTemplateInput {
9157	s.Template = &v
9158	return s
9159}
9160
9161type DeleteWorldTemplateOutput struct {
9162	_ struct{} `type:"structure"`
9163}
9164
9165// String returns the string representation
9166func (s DeleteWorldTemplateOutput) String() string {
9167	return awsutil.Prettify(s)
9168}
9169
9170// GoString returns the string representation
9171func (s DeleteWorldTemplateOutput) GoString() string {
9172	return s.String()
9173}
9174
9175// Information about a deployment application configuration.
9176type DeploymentApplicationConfig struct {
9177	_ struct{} `type:"structure"`
9178
9179	// The Amazon Resource Name (ARN) of the robot application.
9180	//
9181	// Application is a required field
9182	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
9183
9184	// The version of the application.
9185	//
9186	// ApplicationVersion is a required field
9187	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string" required:"true"`
9188
9189	// The launch configuration.
9190	//
9191	// LaunchConfig is a required field
9192	LaunchConfig *DeploymentLaunchConfig `locationName:"launchConfig" type:"structure" required:"true"`
9193}
9194
9195// String returns the string representation
9196func (s DeploymentApplicationConfig) String() string {
9197	return awsutil.Prettify(s)
9198}
9199
9200// GoString returns the string representation
9201func (s DeploymentApplicationConfig) GoString() string {
9202	return s.String()
9203}
9204
9205// Validate inspects the fields of the type to determine if they are valid.
9206func (s *DeploymentApplicationConfig) Validate() error {
9207	invalidParams := request.ErrInvalidParams{Context: "DeploymentApplicationConfig"}
9208	if s.Application == nil {
9209		invalidParams.Add(request.NewErrParamRequired("Application"))
9210	}
9211	if s.Application != nil && len(*s.Application) < 1 {
9212		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
9213	}
9214	if s.ApplicationVersion == nil {
9215		invalidParams.Add(request.NewErrParamRequired("ApplicationVersion"))
9216	}
9217	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
9218		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
9219	}
9220	if s.LaunchConfig == nil {
9221		invalidParams.Add(request.NewErrParamRequired("LaunchConfig"))
9222	}
9223	if s.LaunchConfig != nil {
9224		if err := s.LaunchConfig.Validate(); err != nil {
9225			invalidParams.AddNested("LaunchConfig", err.(request.ErrInvalidParams))
9226		}
9227	}
9228
9229	if invalidParams.Len() > 0 {
9230		return invalidParams
9231	}
9232	return nil
9233}
9234
9235// SetApplication sets the Application field's value.
9236func (s *DeploymentApplicationConfig) SetApplication(v string) *DeploymentApplicationConfig {
9237	s.Application = &v
9238	return s
9239}
9240
9241// SetApplicationVersion sets the ApplicationVersion field's value.
9242func (s *DeploymentApplicationConfig) SetApplicationVersion(v string) *DeploymentApplicationConfig {
9243	s.ApplicationVersion = &v
9244	return s
9245}
9246
9247// SetLaunchConfig sets the LaunchConfig field's value.
9248func (s *DeploymentApplicationConfig) SetLaunchConfig(v *DeploymentLaunchConfig) *DeploymentApplicationConfig {
9249	s.LaunchConfig = v
9250	return s
9251}
9252
9253// Information about a deployment configuration.
9254type DeploymentConfig struct {
9255	_ struct{} `type:"structure"`
9256
9257	// The percentage of robots receiving the deployment at the same time.
9258	ConcurrentDeploymentPercentage *int64 `locationName:"concurrentDeploymentPercentage" min:"1" type:"integer"`
9259
9260	// The download condition file.
9261	DownloadConditionFile *S3Object `locationName:"downloadConditionFile" type:"structure"`
9262
9263	// The percentage of deployments that need to fail before stopping deployment.
9264	FailureThresholdPercentage *int64 `locationName:"failureThresholdPercentage" min:"1" type:"integer"`
9265
9266	// The amount of time, in seconds, to wait for deployment to a single robot
9267	// to complete. Choose a time between 1 minute and 7 days. The default is 5
9268	// hours.
9269	RobotDeploymentTimeoutInSeconds *int64 `locationName:"robotDeploymentTimeoutInSeconds" type:"long"`
9270}
9271
9272// String returns the string representation
9273func (s DeploymentConfig) String() string {
9274	return awsutil.Prettify(s)
9275}
9276
9277// GoString returns the string representation
9278func (s DeploymentConfig) GoString() string {
9279	return s.String()
9280}
9281
9282// Validate inspects the fields of the type to determine if they are valid.
9283func (s *DeploymentConfig) Validate() error {
9284	invalidParams := request.ErrInvalidParams{Context: "DeploymentConfig"}
9285	if s.ConcurrentDeploymentPercentage != nil && *s.ConcurrentDeploymentPercentage < 1 {
9286		invalidParams.Add(request.NewErrParamMinValue("ConcurrentDeploymentPercentage", 1))
9287	}
9288	if s.FailureThresholdPercentage != nil && *s.FailureThresholdPercentage < 1 {
9289		invalidParams.Add(request.NewErrParamMinValue("FailureThresholdPercentage", 1))
9290	}
9291	if s.DownloadConditionFile != nil {
9292		if err := s.DownloadConditionFile.Validate(); err != nil {
9293			invalidParams.AddNested("DownloadConditionFile", err.(request.ErrInvalidParams))
9294		}
9295	}
9296
9297	if invalidParams.Len() > 0 {
9298		return invalidParams
9299	}
9300	return nil
9301}
9302
9303// SetConcurrentDeploymentPercentage sets the ConcurrentDeploymentPercentage field's value.
9304func (s *DeploymentConfig) SetConcurrentDeploymentPercentage(v int64) *DeploymentConfig {
9305	s.ConcurrentDeploymentPercentage = &v
9306	return s
9307}
9308
9309// SetDownloadConditionFile sets the DownloadConditionFile field's value.
9310func (s *DeploymentConfig) SetDownloadConditionFile(v *S3Object) *DeploymentConfig {
9311	s.DownloadConditionFile = v
9312	return s
9313}
9314
9315// SetFailureThresholdPercentage sets the FailureThresholdPercentage field's value.
9316func (s *DeploymentConfig) SetFailureThresholdPercentage(v int64) *DeploymentConfig {
9317	s.FailureThresholdPercentage = &v
9318	return s
9319}
9320
9321// SetRobotDeploymentTimeoutInSeconds sets the RobotDeploymentTimeoutInSeconds field's value.
9322func (s *DeploymentConfig) SetRobotDeploymentTimeoutInSeconds(v int64) *DeploymentConfig {
9323	s.RobotDeploymentTimeoutInSeconds = &v
9324	return s
9325}
9326
9327// Information about a deployment job.
9328type DeploymentJob struct {
9329	_ struct{} `type:"structure"`
9330
9331	// The Amazon Resource Name (ARN) of the deployment job.
9332	Arn *string `locationName:"arn" min:"1" type:"string"`
9333
9334	// The time, in milliseconds since the epoch, when the deployment job was created.
9335	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
9336
9337	// The deployment application configuration.
9338	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
9339
9340	// The deployment configuration.
9341	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
9342
9343	// The deployment job failure code.
9344	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
9345
9346	// A short description of the reason why the deployment job failed.
9347	FailureReason *string `locationName:"failureReason" type:"string"`
9348
9349	// The Amazon Resource Name (ARN) of the fleet.
9350	Fleet *string `locationName:"fleet" min:"1" type:"string"`
9351
9352	// The status of the deployment job.
9353	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
9354}
9355
9356// String returns the string representation
9357func (s DeploymentJob) String() string {
9358	return awsutil.Prettify(s)
9359}
9360
9361// GoString returns the string representation
9362func (s DeploymentJob) GoString() string {
9363	return s.String()
9364}
9365
9366// SetArn sets the Arn field's value.
9367func (s *DeploymentJob) SetArn(v string) *DeploymentJob {
9368	s.Arn = &v
9369	return s
9370}
9371
9372// SetCreatedAt sets the CreatedAt field's value.
9373func (s *DeploymentJob) SetCreatedAt(v time.Time) *DeploymentJob {
9374	s.CreatedAt = &v
9375	return s
9376}
9377
9378// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
9379func (s *DeploymentJob) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *DeploymentJob {
9380	s.DeploymentApplicationConfigs = v
9381	return s
9382}
9383
9384// SetDeploymentConfig sets the DeploymentConfig field's value.
9385func (s *DeploymentJob) SetDeploymentConfig(v *DeploymentConfig) *DeploymentJob {
9386	s.DeploymentConfig = v
9387	return s
9388}
9389
9390// SetFailureCode sets the FailureCode field's value.
9391func (s *DeploymentJob) SetFailureCode(v string) *DeploymentJob {
9392	s.FailureCode = &v
9393	return s
9394}
9395
9396// SetFailureReason sets the FailureReason field's value.
9397func (s *DeploymentJob) SetFailureReason(v string) *DeploymentJob {
9398	s.FailureReason = &v
9399	return s
9400}
9401
9402// SetFleet sets the Fleet field's value.
9403func (s *DeploymentJob) SetFleet(v string) *DeploymentJob {
9404	s.Fleet = &v
9405	return s
9406}
9407
9408// SetStatus sets the Status field's value.
9409func (s *DeploymentJob) SetStatus(v string) *DeploymentJob {
9410	s.Status = &v
9411	return s
9412}
9413
9414// Configuration information for a deployment launch.
9415type DeploymentLaunchConfig struct {
9416	_ struct{} `type:"structure"`
9417
9418	// An array of key/value pairs specifying environment variables for the robot
9419	// application
9420	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
9421
9422	// The launch file name.
9423	//
9424	// LaunchFile is a required field
9425	LaunchFile *string `locationName:"launchFile" min:"1" type:"string" required:"true"`
9426
9427	// The package name.
9428	//
9429	// PackageName is a required field
9430	PackageName *string `locationName:"packageName" min:"1" type:"string" required:"true"`
9431
9432	// The deployment post-launch file. This file will be executed after the launch
9433	// file.
9434	PostLaunchFile *string `locationName:"postLaunchFile" min:"1" type:"string"`
9435
9436	// The deployment pre-launch file. This file will be executed prior to the launch
9437	// file.
9438	PreLaunchFile *string `locationName:"preLaunchFile" min:"1" type:"string"`
9439}
9440
9441// String returns the string representation
9442func (s DeploymentLaunchConfig) String() string {
9443	return awsutil.Prettify(s)
9444}
9445
9446// GoString returns the string representation
9447func (s DeploymentLaunchConfig) GoString() string {
9448	return s.String()
9449}
9450
9451// Validate inspects the fields of the type to determine if they are valid.
9452func (s *DeploymentLaunchConfig) Validate() error {
9453	invalidParams := request.ErrInvalidParams{Context: "DeploymentLaunchConfig"}
9454	if s.LaunchFile == nil {
9455		invalidParams.Add(request.NewErrParamRequired("LaunchFile"))
9456	}
9457	if s.LaunchFile != nil && len(*s.LaunchFile) < 1 {
9458		invalidParams.Add(request.NewErrParamMinLen("LaunchFile", 1))
9459	}
9460	if s.PackageName == nil {
9461		invalidParams.Add(request.NewErrParamRequired("PackageName"))
9462	}
9463	if s.PackageName != nil && len(*s.PackageName) < 1 {
9464		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
9465	}
9466	if s.PostLaunchFile != nil && len(*s.PostLaunchFile) < 1 {
9467		invalidParams.Add(request.NewErrParamMinLen("PostLaunchFile", 1))
9468	}
9469	if s.PreLaunchFile != nil && len(*s.PreLaunchFile) < 1 {
9470		invalidParams.Add(request.NewErrParamMinLen("PreLaunchFile", 1))
9471	}
9472
9473	if invalidParams.Len() > 0 {
9474		return invalidParams
9475	}
9476	return nil
9477}
9478
9479// SetEnvironmentVariables sets the EnvironmentVariables field's value.
9480func (s *DeploymentLaunchConfig) SetEnvironmentVariables(v map[string]*string) *DeploymentLaunchConfig {
9481	s.EnvironmentVariables = v
9482	return s
9483}
9484
9485// SetLaunchFile sets the LaunchFile field's value.
9486func (s *DeploymentLaunchConfig) SetLaunchFile(v string) *DeploymentLaunchConfig {
9487	s.LaunchFile = &v
9488	return s
9489}
9490
9491// SetPackageName sets the PackageName field's value.
9492func (s *DeploymentLaunchConfig) SetPackageName(v string) *DeploymentLaunchConfig {
9493	s.PackageName = &v
9494	return s
9495}
9496
9497// SetPostLaunchFile sets the PostLaunchFile field's value.
9498func (s *DeploymentLaunchConfig) SetPostLaunchFile(v string) *DeploymentLaunchConfig {
9499	s.PostLaunchFile = &v
9500	return s
9501}
9502
9503// SetPreLaunchFile sets the PreLaunchFile field's value.
9504func (s *DeploymentLaunchConfig) SetPreLaunchFile(v string) *DeploymentLaunchConfig {
9505	s.PreLaunchFile = &v
9506	return s
9507}
9508
9509type DeregisterRobotInput struct {
9510	_ struct{} `type:"structure"`
9511
9512	// The Amazon Resource Name (ARN) of the fleet.
9513	//
9514	// Fleet is a required field
9515	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
9516
9517	// The Amazon Resource Name (ARN) of the robot.
9518	//
9519	// Robot is a required field
9520	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
9521}
9522
9523// String returns the string representation
9524func (s DeregisterRobotInput) String() string {
9525	return awsutil.Prettify(s)
9526}
9527
9528// GoString returns the string representation
9529func (s DeregisterRobotInput) GoString() string {
9530	return s.String()
9531}
9532
9533// Validate inspects the fields of the type to determine if they are valid.
9534func (s *DeregisterRobotInput) Validate() error {
9535	invalidParams := request.ErrInvalidParams{Context: "DeregisterRobotInput"}
9536	if s.Fleet == nil {
9537		invalidParams.Add(request.NewErrParamRequired("Fleet"))
9538	}
9539	if s.Fleet != nil && len(*s.Fleet) < 1 {
9540		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
9541	}
9542	if s.Robot == nil {
9543		invalidParams.Add(request.NewErrParamRequired("Robot"))
9544	}
9545	if s.Robot != nil && len(*s.Robot) < 1 {
9546		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
9547	}
9548
9549	if invalidParams.Len() > 0 {
9550		return invalidParams
9551	}
9552	return nil
9553}
9554
9555// SetFleet sets the Fleet field's value.
9556func (s *DeregisterRobotInput) SetFleet(v string) *DeregisterRobotInput {
9557	s.Fleet = &v
9558	return s
9559}
9560
9561// SetRobot sets the Robot field's value.
9562func (s *DeregisterRobotInput) SetRobot(v string) *DeregisterRobotInput {
9563	s.Robot = &v
9564	return s
9565}
9566
9567type DeregisterRobotOutput struct {
9568	_ struct{} `type:"structure"`
9569
9570	// The Amazon Resource Name (ARN) of the fleet.
9571	Fleet *string `locationName:"fleet" min:"1" type:"string"`
9572
9573	// The Amazon Resource Name (ARN) of the robot.
9574	Robot *string `locationName:"robot" min:"1" type:"string"`
9575}
9576
9577// String returns the string representation
9578func (s DeregisterRobotOutput) String() string {
9579	return awsutil.Prettify(s)
9580}
9581
9582// GoString returns the string representation
9583func (s DeregisterRobotOutput) GoString() string {
9584	return s.String()
9585}
9586
9587// SetFleet sets the Fleet field's value.
9588func (s *DeregisterRobotOutput) SetFleet(v string) *DeregisterRobotOutput {
9589	s.Fleet = &v
9590	return s
9591}
9592
9593// SetRobot sets the Robot field's value.
9594func (s *DeregisterRobotOutput) SetRobot(v string) *DeregisterRobotOutput {
9595	s.Robot = &v
9596	return s
9597}
9598
9599type DescribeDeploymentJobInput struct {
9600	_ struct{} `type:"structure"`
9601
9602	// The Amazon Resource Name (ARN) of the deployment job.
9603	//
9604	// Job is a required field
9605	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
9606}
9607
9608// String returns the string representation
9609func (s DescribeDeploymentJobInput) String() string {
9610	return awsutil.Prettify(s)
9611}
9612
9613// GoString returns the string representation
9614func (s DescribeDeploymentJobInput) GoString() string {
9615	return s.String()
9616}
9617
9618// Validate inspects the fields of the type to determine if they are valid.
9619func (s *DescribeDeploymentJobInput) Validate() error {
9620	invalidParams := request.ErrInvalidParams{Context: "DescribeDeploymentJobInput"}
9621	if s.Job == nil {
9622		invalidParams.Add(request.NewErrParamRequired("Job"))
9623	}
9624	if s.Job != nil && len(*s.Job) < 1 {
9625		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
9626	}
9627
9628	if invalidParams.Len() > 0 {
9629		return invalidParams
9630	}
9631	return nil
9632}
9633
9634// SetJob sets the Job field's value.
9635func (s *DescribeDeploymentJobInput) SetJob(v string) *DescribeDeploymentJobInput {
9636	s.Job = &v
9637	return s
9638}
9639
9640type DescribeDeploymentJobOutput struct {
9641	_ struct{} `type:"structure"`
9642
9643	// The Amazon Resource Name (ARN) of the deployment job.
9644	Arn *string `locationName:"arn" min:"1" type:"string"`
9645
9646	// The time, in milliseconds since the epoch, when the deployment job was created.
9647	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
9648
9649	// The deployment application configuration.
9650	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
9651
9652	// The deployment configuration.
9653	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
9654
9655	// The deployment job failure code.
9656	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
9657
9658	// A short description of the reason why the deployment job failed.
9659	FailureReason *string `locationName:"failureReason" type:"string"`
9660
9661	// The Amazon Resource Name (ARN) of the fleet.
9662	Fleet *string `locationName:"fleet" min:"1" type:"string"`
9663
9664	// A list of robot deployment summaries.
9665	RobotDeploymentSummary []*RobotDeployment `locationName:"robotDeploymentSummary" type:"list"`
9666
9667	// The status of the deployment job.
9668	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
9669
9670	// The list of all tags added to the specified deployment job.
9671	Tags map[string]*string `locationName:"tags" type:"map"`
9672}
9673
9674// String returns the string representation
9675func (s DescribeDeploymentJobOutput) String() string {
9676	return awsutil.Prettify(s)
9677}
9678
9679// GoString returns the string representation
9680func (s DescribeDeploymentJobOutput) GoString() string {
9681	return s.String()
9682}
9683
9684// SetArn sets the Arn field's value.
9685func (s *DescribeDeploymentJobOutput) SetArn(v string) *DescribeDeploymentJobOutput {
9686	s.Arn = &v
9687	return s
9688}
9689
9690// SetCreatedAt sets the CreatedAt field's value.
9691func (s *DescribeDeploymentJobOutput) SetCreatedAt(v time.Time) *DescribeDeploymentJobOutput {
9692	s.CreatedAt = &v
9693	return s
9694}
9695
9696// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
9697func (s *DescribeDeploymentJobOutput) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *DescribeDeploymentJobOutput {
9698	s.DeploymentApplicationConfigs = v
9699	return s
9700}
9701
9702// SetDeploymentConfig sets the DeploymentConfig field's value.
9703func (s *DescribeDeploymentJobOutput) SetDeploymentConfig(v *DeploymentConfig) *DescribeDeploymentJobOutput {
9704	s.DeploymentConfig = v
9705	return s
9706}
9707
9708// SetFailureCode sets the FailureCode field's value.
9709func (s *DescribeDeploymentJobOutput) SetFailureCode(v string) *DescribeDeploymentJobOutput {
9710	s.FailureCode = &v
9711	return s
9712}
9713
9714// SetFailureReason sets the FailureReason field's value.
9715func (s *DescribeDeploymentJobOutput) SetFailureReason(v string) *DescribeDeploymentJobOutput {
9716	s.FailureReason = &v
9717	return s
9718}
9719
9720// SetFleet sets the Fleet field's value.
9721func (s *DescribeDeploymentJobOutput) SetFleet(v string) *DescribeDeploymentJobOutput {
9722	s.Fleet = &v
9723	return s
9724}
9725
9726// SetRobotDeploymentSummary sets the RobotDeploymentSummary field's value.
9727func (s *DescribeDeploymentJobOutput) SetRobotDeploymentSummary(v []*RobotDeployment) *DescribeDeploymentJobOutput {
9728	s.RobotDeploymentSummary = v
9729	return s
9730}
9731
9732// SetStatus sets the Status field's value.
9733func (s *DescribeDeploymentJobOutput) SetStatus(v string) *DescribeDeploymentJobOutput {
9734	s.Status = &v
9735	return s
9736}
9737
9738// SetTags sets the Tags field's value.
9739func (s *DescribeDeploymentJobOutput) SetTags(v map[string]*string) *DescribeDeploymentJobOutput {
9740	s.Tags = v
9741	return s
9742}
9743
9744type DescribeFleetInput struct {
9745	_ struct{} `type:"structure"`
9746
9747	// The Amazon Resource Name (ARN) of the fleet.
9748	//
9749	// Fleet is a required field
9750	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
9751}
9752
9753// String returns the string representation
9754func (s DescribeFleetInput) String() string {
9755	return awsutil.Prettify(s)
9756}
9757
9758// GoString returns the string representation
9759func (s DescribeFleetInput) GoString() string {
9760	return s.String()
9761}
9762
9763// Validate inspects the fields of the type to determine if they are valid.
9764func (s *DescribeFleetInput) Validate() error {
9765	invalidParams := request.ErrInvalidParams{Context: "DescribeFleetInput"}
9766	if s.Fleet == nil {
9767		invalidParams.Add(request.NewErrParamRequired("Fleet"))
9768	}
9769	if s.Fleet != nil && len(*s.Fleet) < 1 {
9770		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
9771	}
9772
9773	if invalidParams.Len() > 0 {
9774		return invalidParams
9775	}
9776	return nil
9777}
9778
9779// SetFleet sets the Fleet field's value.
9780func (s *DescribeFleetInput) SetFleet(v string) *DescribeFleetInput {
9781	s.Fleet = &v
9782	return s
9783}
9784
9785type DescribeFleetOutput struct {
9786	_ struct{} `type:"structure"`
9787
9788	// The Amazon Resource Name (ARN) of the fleet.
9789	Arn *string `locationName:"arn" min:"1" type:"string"`
9790
9791	// The time, in milliseconds since the epoch, when the fleet was created.
9792	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
9793
9794	// The Amazon Resource Name (ARN) of the last deployment job.
9795	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
9796
9797	// The status of the last deployment.
9798	LastDeploymentStatus *string `locationName:"lastDeploymentStatus" type:"string" enum:"DeploymentStatus"`
9799
9800	// The time of the last deployment.
9801	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
9802
9803	// The name of the fleet.
9804	Name *string `locationName:"name" min:"1" type:"string"`
9805
9806	// A list of robots.
9807	Robots []*Robot `locationName:"robots" type:"list"`
9808
9809	// The list of all tags added to the specified fleet.
9810	Tags map[string]*string `locationName:"tags" type:"map"`
9811}
9812
9813// String returns the string representation
9814func (s DescribeFleetOutput) String() string {
9815	return awsutil.Prettify(s)
9816}
9817
9818// GoString returns the string representation
9819func (s DescribeFleetOutput) GoString() string {
9820	return s.String()
9821}
9822
9823// SetArn sets the Arn field's value.
9824func (s *DescribeFleetOutput) SetArn(v string) *DescribeFleetOutput {
9825	s.Arn = &v
9826	return s
9827}
9828
9829// SetCreatedAt sets the CreatedAt field's value.
9830func (s *DescribeFleetOutput) SetCreatedAt(v time.Time) *DescribeFleetOutput {
9831	s.CreatedAt = &v
9832	return s
9833}
9834
9835// SetLastDeploymentJob sets the LastDeploymentJob field's value.
9836func (s *DescribeFleetOutput) SetLastDeploymentJob(v string) *DescribeFleetOutput {
9837	s.LastDeploymentJob = &v
9838	return s
9839}
9840
9841// SetLastDeploymentStatus sets the LastDeploymentStatus field's value.
9842func (s *DescribeFleetOutput) SetLastDeploymentStatus(v string) *DescribeFleetOutput {
9843	s.LastDeploymentStatus = &v
9844	return s
9845}
9846
9847// SetLastDeploymentTime sets the LastDeploymentTime field's value.
9848func (s *DescribeFleetOutput) SetLastDeploymentTime(v time.Time) *DescribeFleetOutput {
9849	s.LastDeploymentTime = &v
9850	return s
9851}
9852
9853// SetName sets the Name field's value.
9854func (s *DescribeFleetOutput) SetName(v string) *DescribeFleetOutput {
9855	s.Name = &v
9856	return s
9857}
9858
9859// SetRobots sets the Robots field's value.
9860func (s *DescribeFleetOutput) SetRobots(v []*Robot) *DescribeFleetOutput {
9861	s.Robots = v
9862	return s
9863}
9864
9865// SetTags sets the Tags field's value.
9866func (s *DescribeFleetOutput) SetTags(v map[string]*string) *DescribeFleetOutput {
9867	s.Tags = v
9868	return s
9869}
9870
9871type DescribeRobotApplicationInput struct {
9872	_ struct{} `type:"structure"`
9873
9874	// The Amazon Resource Name (ARN) of the robot application.
9875	//
9876	// Application is a required field
9877	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
9878
9879	// The version of the robot application to describe.
9880	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
9881}
9882
9883// String returns the string representation
9884func (s DescribeRobotApplicationInput) String() string {
9885	return awsutil.Prettify(s)
9886}
9887
9888// GoString returns the string representation
9889func (s DescribeRobotApplicationInput) GoString() string {
9890	return s.String()
9891}
9892
9893// Validate inspects the fields of the type to determine if they are valid.
9894func (s *DescribeRobotApplicationInput) Validate() error {
9895	invalidParams := request.ErrInvalidParams{Context: "DescribeRobotApplicationInput"}
9896	if s.Application == nil {
9897		invalidParams.Add(request.NewErrParamRequired("Application"))
9898	}
9899	if s.Application != nil && len(*s.Application) < 1 {
9900		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
9901	}
9902	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
9903		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
9904	}
9905
9906	if invalidParams.Len() > 0 {
9907		return invalidParams
9908	}
9909	return nil
9910}
9911
9912// SetApplication sets the Application field's value.
9913func (s *DescribeRobotApplicationInput) SetApplication(v string) *DescribeRobotApplicationInput {
9914	s.Application = &v
9915	return s
9916}
9917
9918// SetApplicationVersion sets the ApplicationVersion field's value.
9919func (s *DescribeRobotApplicationInput) SetApplicationVersion(v string) *DescribeRobotApplicationInput {
9920	s.ApplicationVersion = &v
9921	return s
9922}
9923
9924type DescribeRobotApplicationOutput struct {
9925	_ struct{} `type:"structure"`
9926
9927	// The Amazon Resource Name (ARN) of the robot application.
9928	Arn *string `locationName:"arn" min:"1" type:"string"`
9929
9930	// The time, in milliseconds since the epoch, when the robot application was
9931	// last updated.
9932	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
9933
9934	// The name of the robot application.
9935	Name *string `locationName:"name" min:"1" type:"string"`
9936
9937	// The revision id of the robot application.
9938	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
9939
9940	// The robot software suite (ROS distribution) used by the robot application.
9941	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
9942
9943	// The sources of the robot application.
9944	Sources []*Source `locationName:"sources" type:"list"`
9945
9946	// The list of all tags added to the specified robot application.
9947	Tags map[string]*string `locationName:"tags" type:"map"`
9948
9949	// The version of the robot application.
9950	Version *string `locationName:"version" min:"1" type:"string"`
9951}
9952
9953// String returns the string representation
9954func (s DescribeRobotApplicationOutput) String() string {
9955	return awsutil.Prettify(s)
9956}
9957
9958// GoString returns the string representation
9959func (s DescribeRobotApplicationOutput) GoString() string {
9960	return s.String()
9961}
9962
9963// SetArn sets the Arn field's value.
9964func (s *DescribeRobotApplicationOutput) SetArn(v string) *DescribeRobotApplicationOutput {
9965	s.Arn = &v
9966	return s
9967}
9968
9969// SetLastUpdatedAt sets the LastUpdatedAt field's value.
9970func (s *DescribeRobotApplicationOutput) SetLastUpdatedAt(v time.Time) *DescribeRobotApplicationOutput {
9971	s.LastUpdatedAt = &v
9972	return s
9973}
9974
9975// SetName sets the Name field's value.
9976func (s *DescribeRobotApplicationOutput) SetName(v string) *DescribeRobotApplicationOutput {
9977	s.Name = &v
9978	return s
9979}
9980
9981// SetRevisionId sets the RevisionId field's value.
9982func (s *DescribeRobotApplicationOutput) SetRevisionId(v string) *DescribeRobotApplicationOutput {
9983	s.RevisionId = &v
9984	return s
9985}
9986
9987// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
9988func (s *DescribeRobotApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *DescribeRobotApplicationOutput {
9989	s.RobotSoftwareSuite = v
9990	return s
9991}
9992
9993// SetSources sets the Sources field's value.
9994func (s *DescribeRobotApplicationOutput) SetSources(v []*Source) *DescribeRobotApplicationOutput {
9995	s.Sources = v
9996	return s
9997}
9998
9999// SetTags sets the Tags field's value.
10000func (s *DescribeRobotApplicationOutput) SetTags(v map[string]*string) *DescribeRobotApplicationOutput {
10001	s.Tags = v
10002	return s
10003}
10004
10005// SetVersion sets the Version field's value.
10006func (s *DescribeRobotApplicationOutput) SetVersion(v string) *DescribeRobotApplicationOutput {
10007	s.Version = &v
10008	return s
10009}
10010
10011type DescribeRobotInput struct {
10012	_ struct{} `type:"structure"`
10013
10014	// The Amazon Resource Name (ARN) of the robot to be described.
10015	//
10016	// Robot is a required field
10017	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
10018}
10019
10020// String returns the string representation
10021func (s DescribeRobotInput) String() string {
10022	return awsutil.Prettify(s)
10023}
10024
10025// GoString returns the string representation
10026func (s DescribeRobotInput) GoString() string {
10027	return s.String()
10028}
10029
10030// Validate inspects the fields of the type to determine if they are valid.
10031func (s *DescribeRobotInput) Validate() error {
10032	invalidParams := request.ErrInvalidParams{Context: "DescribeRobotInput"}
10033	if s.Robot == nil {
10034		invalidParams.Add(request.NewErrParamRequired("Robot"))
10035	}
10036	if s.Robot != nil && len(*s.Robot) < 1 {
10037		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
10038	}
10039
10040	if invalidParams.Len() > 0 {
10041		return invalidParams
10042	}
10043	return nil
10044}
10045
10046// SetRobot sets the Robot field's value.
10047func (s *DescribeRobotInput) SetRobot(v string) *DescribeRobotInput {
10048	s.Robot = &v
10049	return s
10050}
10051
10052type DescribeRobotOutput struct {
10053	_ struct{} `type:"structure"`
10054
10055	// The target architecture of the robot application.
10056	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
10057
10058	// The Amazon Resource Name (ARN) of the robot.
10059	Arn *string `locationName:"arn" min:"1" type:"string"`
10060
10061	// The time, in milliseconds since the epoch, when the robot was created.
10062	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
10063
10064	// The Amazon Resource Name (ARN) of the fleet.
10065	FleetArn *string `locationName:"fleetArn" min:"1" type:"string"`
10066
10067	// The Greengrass group id.
10068	GreengrassGroupId *string `locationName:"greengrassGroupId" min:"1" type:"string"`
10069
10070	// The Amazon Resource Name (ARN) of the last deployment job.
10071	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
10072
10073	// The time of the last deployment job.
10074	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
10075
10076	// The name of the robot.
10077	Name *string `locationName:"name" min:"1" type:"string"`
10078
10079	// The status of the fleet.
10080	Status *string `locationName:"status" type:"string" enum:"RobotStatus"`
10081
10082	// The list of all tags added to the specified robot.
10083	Tags map[string]*string `locationName:"tags" type:"map"`
10084}
10085
10086// String returns the string representation
10087func (s DescribeRobotOutput) String() string {
10088	return awsutil.Prettify(s)
10089}
10090
10091// GoString returns the string representation
10092func (s DescribeRobotOutput) GoString() string {
10093	return s.String()
10094}
10095
10096// SetArchitecture sets the Architecture field's value.
10097func (s *DescribeRobotOutput) SetArchitecture(v string) *DescribeRobotOutput {
10098	s.Architecture = &v
10099	return s
10100}
10101
10102// SetArn sets the Arn field's value.
10103func (s *DescribeRobotOutput) SetArn(v string) *DescribeRobotOutput {
10104	s.Arn = &v
10105	return s
10106}
10107
10108// SetCreatedAt sets the CreatedAt field's value.
10109func (s *DescribeRobotOutput) SetCreatedAt(v time.Time) *DescribeRobotOutput {
10110	s.CreatedAt = &v
10111	return s
10112}
10113
10114// SetFleetArn sets the FleetArn field's value.
10115func (s *DescribeRobotOutput) SetFleetArn(v string) *DescribeRobotOutput {
10116	s.FleetArn = &v
10117	return s
10118}
10119
10120// SetGreengrassGroupId sets the GreengrassGroupId field's value.
10121func (s *DescribeRobotOutput) SetGreengrassGroupId(v string) *DescribeRobotOutput {
10122	s.GreengrassGroupId = &v
10123	return s
10124}
10125
10126// SetLastDeploymentJob sets the LastDeploymentJob field's value.
10127func (s *DescribeRobotOutput) SetLastDeploymentJob(v string) *DescribeRobotOutput {
10128	s.LastDeploymentJob = &v
10129	return s
10130}
10131
10132// SetLastDeploymentTime sets the LastDeploymentTime field's value.
10133func (s *DescribeRobotOutput) SetLastDeploymentTime(v time.Time) *DescribeRobotOutput {
10134	s.LastDeploymentTime = &v
10135	return s
10136}
10137
10138// SetName sets the Name field's value.
10139func (s *DescribeRobotOutput) SetName(v string) *DescribeRobotOutput {
10140	s.Name = &v
10141	return s
10142}
10143
10144// SetStatus sets the Status field's value.
10145func (s *DescribeRobotOutput) SetStatus(v string) *DescribeRobotOutput {
10146	s.Status = &v
10147	return s
10148}
10149
10150// SetTags sets the Tags field's value.
10151func (s *DescribeRobotOutput) SetTags(v map[string]*string) *DescribeRobotOutput {
10152	s.Tags = v
10153	return s
10154}
10155
10156type DescribeSimulationApplicationInput struct {
10157	_ struct{} `type:"structure"`
10158
10159	// The application information for the simulation application.
10160	//
10161	// Application is a required field
10162	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
10163
10164	// The version of the simulation application to describe.
10165	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
10166}
10167
10168// String returns the string representation
10169func (s DescribeSimulationApplicationInput) String() string {
10170	return awsutil.Prettify(s)
10171}
10172
10173// GoString returns the string representation
10174func (s DescribeSimulationApplicationInput) GoString() string {
10175	return s.String()
10176}
10177
10178// Validate inspects the fields of the type to determine if they are valid.
10179func (s *DescribeSimulationApplicationInput) Validate() error {
10180	invalidParams := request.ErrInvalidParams{Context: "DescribeSimulationApplicationInput"}
10181	if s.Application == nil {
10182		invalidParams.Add(request.NewErrParamRequired("Application"))
10183	}
10184	if s.Application != nil && len(*s.Application) < 1 {
10185		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
10186	}
10187	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
10188		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
10189	}
10190
10191	if invalidParams.Len() > 0 {
10192		return invalidParams
10193	}
10194	return nil
10195}
10196
10197// SetApplication sets the Application field's value.
10198func (s *DescribeSimulationApplicationInput) SetApplication(v string) *DescribeSimulationApplicationInput {
10199	s.Application = &v
10200	return s
10201}
10202
10203// SetApplicationVersion sets the ApplicationVersion field's value.
10204func (s *DescribeSimulationApplicationInput) SetApplicationVersion(v string) *DescribeSimulationApplicationInput {
10205	s.ApplicationVersion = &v
10206	return s
10207}
10208
10209type DescribeSimulationApplicationOutput struct {
10210	_ struct{} `type:"structure"`
10211
10212	// The Amazon Resource Name (ARN) of the robot simulation application.
10213	Arn *string `locationName:"arn" min:"1" type:"string"`
10214
10215	// The time, in milliseconds since the epoch, when the simulation application
10216	// was last updated.
10217	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
10218
10219	// The name of the simulation application.
10220	Name *string `locationName:"name" min:"1" type:"string"`
10221
10222	// The rendering engine for the simulation application.
10223	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
10224
10225	// The revision id of the simulation application.
10226	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
10227
10228	// Information about the robot software suite (ROS distribution).
10229	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
10230
10231	// The simulation software suite used by the simulation application.
10232	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
10233
10234	// The sources of the simulation application.
10235	Sources []*Source `locationName:"sources" type:"list"`
10236
10237	// The list of all tags added to the specified simulation application.
10238	Tags map[string]*string `locationName:"tags" type:"map"`
10239
10240	// The version of the simulation application.
10241	Version *string `locationName:"version" min:"1" type:"string"`
10242}
10243
10244// String returns the string representation
10245func (s DescribeSimulationApplicationOutput) String() string {
10246	return awsutil.Prettify(s)
10247}
10248
10249// GoString returns the string representation
10250func (s DescribeSimulationApplicationOutput) GoString() string {
10251	return s.String()
10252}
10253
10254// SetArn sets the Arn field's value.
10255func (s *DescribeSimulationApplicationOutput) SetArn(v string) *DescribeSimulationApplicationOutput {
10256	s.Arn = &v
10257	return s
10258}
10259
10260// SetLastUpdatedAt sets the LastUpdatedAt field's value.
10261func (s *DescribeSimulationApplicationOutput) SetLastUpdatedAt(v time.Time) *DescribeSimulationApplicationOutput {
10262	s.LastUpdatedAt = &v
10263	return s
10264}
10265
10266// SetName sets the Name field's value.
10267func (s *DescribeSimulationApplicationOutput) SetName(v string) *DescribeSimulationApplicationOutput {
10268	s.Name = &v
10269	return s
10270}
10271
10272// SetRenderingEngine sets the RenderingEngine field's value.
10273func (s *DescribeSimulationApplicationOutput) SetRenderingEngine(v *RenderingEngine) *DescribeSimulationApplicationOutput {
10274	s.RenderingEngine = v
10275	return s
10276}
10277
10278// SetRevisionId sets the RevisionId field's value.
10279func (s *DescribeSimulationApplicationOutput) SetRevisionId(v string) *DescribeSimulationApplicationOutput {
10280	s.RevisionId = &v
10281	return s
10282}
10283
10284// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
10285func (s *DescribeSimulationApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *DescribeSimulationApplicationOutput {
10286	s.RobotSoftwareSuite = v
10287	return s
10288}
10289
10290// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
10291func (s *DescribeSimulationApplicationOutput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *DescribeSimulationApplicationOutput {
10292	s.SimulationSoftwareSuite = v
10293	return s
10294}
10295
10296// SetSources sets the Sources field's value.
10297func (s *DescribeSimulationApplicationOutput) SetSources(v []*Source) *DescribeSimulationApplicationOutput {
10298	s.Sources = v
10299	return s
10300}
10301
10302// SetTags sets the Tags field's value.
10303func (s *DescribeSimulationApplicationOutput) SetTags(v map[string]*string) *DescribeSimulationApplicationOutput {
10304	s.Tags = v
10305	return s
10306}
10307
10308// SetVersion sets the Version field's value.
10309func (s *DescribeSimulationApplicationOutput) SetVersion(v string) *DescribeSimulationApplicationOutput {
10310	s.Version = &v
10311	return s
10312}
10313
10314type DescribeSimulationJobBatchInput struct {
10315	_ struct{} `type:"structure"`
10316
10317	// The id of the batch to describe.
10318	//
10319	// Batch is a required field
10320	Batch *string `locationName:"batch" min:"1" type:"string" required:"true"`
10321}
10322
10323// String returns the string representation
10324func (s DescribeSimulationJobBatchInput) String() string {
10325	return awsutil.Prettify(s)
10326}
10327
10328// GoString returns the string representation
10329func (s DescribeSimulationJobBatchInput) GoString() string {
10330	return s.String()
10331}
10332
10333// Validate inspects the fields of the type to determine if they are valid.
10334func (s *DescribeSimulationJobBatchInput) Validate() error {
10335	invalidParams := request.ErrInvalidParams{Context: "DescribeSimulationJobBatchInput"}
10336	if s.Batch == nil {
10337		invalidParams.Add(request.NewErrParamRequired("Batch"))
10338	}
10339	if s.Batch != nil && len(*s.Batch) < 1 {
10340		invalidParams.Add(request.NewErrParamMinLen("Batch", 1))
10341	}
10342
10343	if invalidParams.Len() > 0 {
10344		return invalidParams
10345	}
10346	return nil
10347}
10348
10349// SetBatch sets the Batch field's value.
10350func (s *DescribeSimulationJobBatchInput) SetBatch(v string) *DescribeSimulationJobBatchInput {
10351	s.Batch = &v
10352	return s
10353}
10354
10355type DescribeSimulationJobBatchOutput struct {
10356	_ struct{} `type:"structure"`
10357
10358	// The Amazon Resource Name (ARN) of the batch.
10359	Arn *string `locationName:"arn" min:"1" type:"string"`
10360
10361	// The batch policy.
10362	BatchPolicy *BatchPolicy `locationName:"batchPolicy" type:"structure"`
10363
10364	// Unique, case-sensitive identifier that you provide to ensure the idempotency
10365	// of the request.
10366	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
10367
10368	// The time, in milliseconds since the epoch, when the simulation job batch
10369	// was created.
10370	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
10371
10372	// A list of created simulation job summaries.
10373	CreatedRequests []*SimulationJobSummary `locationName:"createdRequests" type:"list"`
10374
10375	// A list of failed create simulation job requests. The request failed to be
10376	// created into a simulation job. Failed requests do not have a simulation job
10377	// ID.
10378	FailedRequests []*FailedCreateSimulationJobRequest `locationName:"failedRequests" type:"list"`
10379
10380	// The failure code of the simulation job batch.
10381	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobBatchErrorCode"`
10382
10383	// The reason the simulation job batch failed.
10384	FailureReason *string `locationName:"failureReason" type:"string"`
10385
10386	// The time, in milliseconds since the epoch, when the simulation job batch
10387	// was last updated.
10388	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
10389
10390	// A list of pending simulation job requests. These requests have not yet been
10391	// created into simulation jobs.
10392	PendingRequests []*SimulationJobRequest `locationName:"pendingRequests" min:"1" type:"list"`
10393
10394	// The status of the batch.
10395	//
10396	// Pending
10397	//
10398	// The simulation job batch request is pending.
10399	//
10400	// InProgress
10401	//
10402	// The simulation job batch is in progress.
10403	//
10404	// Failed
10405	//
10406	// The simulation job batch failed. One or more simulation job requests could
10407	// not be completed due to an internal failure (like InternalServiceError).
10408	// See failureCode and failureReason for more information.
10409	//
10410	// Completed
10411	//
10412	// The simulation batch job completed. A batch is complete when (1) there are
10413	// no pending simulation job requests in the batch and none of the failed simulation
10414	// job requests are due to InternalServiceError and (2) when all created simulation
10415	// jobs have reached a terminal state (for example, Completed or Failed).
10416	//
10417	// Canceled
10418	//
10419	// The simulation batch job was cancelled.
10420	//
10421	// Canceling
10422	//
10423	// The simulation batch job is being cancelled.
10424	//
10425	// Completing
10426	//
10427	// The simulation batch job is completing.
10428	//
10429	// TimingOut
10430	//
10431	// The simulation job batch is timing out.
10432	//
10433	// If a batch timing out, and there are pending requests that were failing due
10434	// to an internal failure (like InternalServiceError), the batch status will
10435	// be Failed. If there are no such failing request, the batch status will be
10436	// TimedOut.
10437	//
10438	// TimedOut
10439	//
10440	// The simulation batch job timed out.
10441	Status *string `locationName:"status" type:"string" enum:"SimulationJobBatchStatus"`
10442
10443	// A map that contains tag keys and tag values that are attached to the simulation
10444	// job batch.
10445	Tags map[string]*string `locationName:"tags" type:"map"`
10446}
10447
10448// String returns the string representation
10449func (s DescribeSimulationJobBatchOutput) String() string {
10450	return awsutil.Prettify(s)
10451}
10452
10453// GoString returns the string representation
10454func (s DescribeSimulationJobBatchOutput) GoString() string {
10455	return s.String()
10456}
10457
10458// SetArn sets the Arn field's value.
10459func (s *DescribeSimulationJobBatchOutput) SetArn(v string) *DescribeSimulationJobBatchOutput {
10460	s.Arn = &v
10461	return s
10462}
10463
10464// SetBatchPolicy sets the BatchPolicy field's value.
10465func (s *DescribeSimulationJobBatchOutput) SetBatchPolicy(v *BatchPolicy) *DescribeSimulationJobBatchOutput {
10466	s.BatchPolicy = v
10467	return s
10468}
10469
10470// SetClientRequestToken sets the ClientRequestToken field's value.
10471func (s *DescribeSimulationJobBatchOutput) SetClientRequestToken(v string) *DescribeSimulationJobBatchOutput {
10472	s.ClientRequestToken = &v
10473	return s
10474}
10475
10476// SetCreatedAt sets the CreatedAt field's value.
10477func (s *DescribeSimulationJobBatchOutput) SetCreatedAt(v time.Time) *DescribeSimulationJobBatchOutput {
10478	s.CreatedAt = &v
10479	return s
10480}
10481
10482// SetCreatedRequests sets the CreatedRequests field's value.
10483func (s *DescribeSimulationJobBatchOutput) SetCreatedRequests(v []*SimulationJobSummary) *DescribeSimulationJobBatchOutput {
10484	s.CreatedRequests = v
10485	return s
10486}
10487
10488// SetFailedRequests sets the FailedRequests field's value.
10489func (s *DescribeSimulationJobBatchOutput) SetFailedRequests(v []*FailedCreateSimulationJobRequest) *DescribeSimulationJobBatchOutput {
10490	s.FailedRequests = v
10491	return s
10492}
10493
10494// SetFailureCode sets the FailureCode field's value.
10495func (s *DescribeSimulationJobBatchOutput) SetFailureCode(v string) *DescribeSimulationJobBatchOutput {
10496	s.FailureCode = &v
10497	return s
10498}
10499
10500// SetFailureReason sets the FailureReason field's value.
10501func (s *DescribeSimulationJobBatchOutput) SetFailureReason(v string) *DescribeSimulationJobBatchOutput {
10502	s.FailureReason = &v
10503	return s
10504}
10505
10506// SetLastUpdatedAt sets the LastUpdatedAt field's value.
10507func (s *DescribeSimulationJobBatchOutput) SetLastUpdatedAt(v time.Time) *DescribeSimulationJobBatchOutput {
10508	s.LastUpdatedAt = &v
10509	return s
10510}
10511
10512// SetPendingRequests sets the PendingRequests field's value.
10513func (s *DescribeSimulationJobBatchOutput) SetPendingRequests(v []*SimulationJobRequest) *DescribeSimulationJobBatchOutput {
10514	s.PendingRequests = v
10515	return s
10516}
10517
10518// SetStatus sets the Status field's value.
10519func (s *DescribeSimulationJobBatchOutput) SetStatus(v string) *DescribeSimulationJobBatchOutput {
10520	s.Status = &v
10521	return s
10522}
10523
10524// SetTags sets the Tags field's value.
10525func (s *DescribeSimulationJobBatchOutput) SetTags(v map[string]*string) *DescribeSimulationJobBatchOutput {
10526	s.Tags = v
10527	return s
10528}
10529
10530type DescribeSimulationJobInput struct {
10531	_ struct{} `type:"structure"`
10532
10533	// The Amazon Resource Name (ARN) of the simulation job to be described.
10534	//
10535	// Job is a required field
10536	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
10537}
10538
10539// String returns the string representation
10540func (s DescribeSimulationJobInput) String() string {
10541	return awsutil.Prettify(s)
10542}
10543
10544// GoString returns the string representation
10545func (s DescribeSimulationJobInput) GoString() string {
10546	return s.String()
10547}
10548
10549// Validate inspects the fields of the type to determine if they are valid.
10550func (s *DescribeSimulationJobInput) Validate() error {
10551	invalidParams := request.ErrInvalidParams{Context: "DescribeSimulationJobInput"}
10552	if s.Job == nil {
10553		invalidParams.Add(request.NewErrParamRequired("Job"))
10554	}
10555	if s.Job != nil && len(*s.Job) < 1 {
10556		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
10557	}
10558
10559	if invalidParams.Len() > 0 {
10560		return invalidParams
10561	}
10562	return nil
10563}
10564
10565// SetJob sets the Job field's value.
10566func (s *DescribeSimulationJobInput) SetJob(v string) *DescribeSimulationJobInput {
10567	s.Job = &v
10568	return s
10569}
10570
10571type DescribeSimulationJobOutput struct {
10572	_ struct{} `type:"structure"`
10573
10574	// The Amazon Resource Name (ARN) of the simulation job.
10575	Arn *string `locationName:"arn" min:"1" type:"string"`
10576
10577	// Unique, case-sensitive identifier that you provide to ensure the idempotency
10578	// of the request.
10579	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
10580
10581	// Compute information for the simulation job.
10582	Compute *ComputeResponse `locationName:"compute" type:"structure"`
10583
10584	// The data sources for the simulation job.
10585	DataSources []*DataSource `locationName:"dataSources" type:"list"`
10586
10587	// The failure behavior for the simulation job.
10588	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
10589
10590	// The failure code of the simulation job if it failed:
10591	//
10592	// InternalServiceError
10593	//
10594	// Internal service error.
10595	//
10596	// RobotApplicationCrash
10597	//
10598	// Robot application exited abnormally.
10599	//
10600	// SimulationApplicationCrash
10601	//
10602	// Simulation application exited abnormally.
10603	//
10604	// BadPermissionsRobotApplication
10605	//
10606	// Robot application bundle could not be downloaded.
10607	//
10608	// BadPermissionsSimulationApplication
10609	//
10610	// Simulation application bundle could not be downloaded.
10611	//
10612	// BadPermissionsS3Output
10613	//
10614	// Unable to publish outputs to customer-provided S3 bucket.
10615	//
10616	// BadPermissionsCloudwatchLogs
10617	//
10618	// Unable to publish logs to customer-provided CloudWatch Logs resource.
10619	//
10620	// SubnetIpLimitExceeded
10621	//
10622	// Subnet IP limit exceeded.
10623	//
10624	// ENILimitExceeded
10625	//
10626	// ENI limit exceeded.
10627	//
10628	// BadPermissionsUserCredentials
10629	//
10630	// Unable to use the Role provided.
10631	//
10632	// InvalidBundleRobotApplication
10633	//
10634	// Robot bundle cannot be extracted (invalid format, bundling error, or other
10635	// issue).
10636	//
10637	// InvalidBundleSimulationApplication
10638	//
10639	// Simulation bundle cannot be extracted (invalid format, bundling error, or
10640	// other issue).
10641	//
10642	// RobotApplicationVersionMismatchedEtag
10643	//
10644	// Etag for RobotApplication does not match value during version creation.
10645	//
10646	// SimulationApplicationVersionMismatchedEtag
10647	//
10648	// Etag for SimulationApplication does not match value during version creation.
10649	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
10650
10651	// Details about why the simulation job failed. For more information about troubleshooting,
10652	// see Troubleshooting (https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting.html).
10653	FailureReason *string `locationName:"failureReason" type:"string"`
10654
10655	// The IAM role that allows the simulation instance to call the AWS APIs that
10656	// are specified in its associated policies on your behalf.
10657	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
10658
10659	// The time, in milliseconds since the epoch, when the simulation job was last
10660	// started.
10661	LastStartedAt *time.Time `locationName:"lastStartedAt" type:"timestamp"`
10662
10663	// The time, in milliseconds since the epoch, when the simulation job was last
10664	// updated.
10665	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
10666
10667	// The logging configuration.
10668	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
10669
10670	// The maximum job duration in seconds. The value must be 8 days (691,200 seconds)
10671	// or less.
10672	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long"`
10673
10674	// The name of the simulation job.
10675	Name *string `locationName:"name" min:"1" type:"string"`
10676
10677	// The network interface information for the simulation job.
10678	NetworkInterface *NetworkInterface `locationName:"networkInterface" type:"structure"`
10679
10680	// Location for output files generated by the simulation job.
10681	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
10682
10683	// A list of robot applications.
10684	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
10685
10686	// A list of simulation applications.
10687	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
10688
10689	// The simulation job execution duration in milliseconds.
10690	SimulationTimeMillis *int64 `locationName:"simulationTimeMillis" type:"long"`
10691
10692	// The status of the simulation job.
10693	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
10694
10695	// The list of all tags added to the specified simulation job.
10696	Tags map[string]*string `locationName:"tags" type:"map"`
10697
10698	// The VPC configuration.
10699	VpcConfig *VPCConfigResponse `locationName:"vpcConfig" type:"structure"`
10700}
10701
10702// String returns the string representation
10703func (s DescribeSimulationJobOutput) String() string {
10704	return awsutil.Prettify(s)
10705}
10706
10707// GoString returns the string representation
10708func (s DescribeSimulationJobOutput) GoString() string {
10709	return s.String()
10710}
10711
10712// SetArn sets the Arn field's value.
10713func (s *DescribeSimulationJobOutput) SetArn(v string) *DescribeSimulationJobOutput {
10714	s.Arn = &v
10715	return s
10716}
10717
10718// SetClientRequestToken sets the ClientRequestToken field's value.
10719func (s *DescribeSimulationJobOutput) SetClientRequestToken(v string) *DescribeSimulationJobOutput {
10720	s.ClientRequestToken = &v
10721	return s
10722}
10723
10724// SetCompute sets the Compute field's value.
10725func (s *DescribeSimulationJobOutput) SetCompute(v *ComputeResponse) *DescribeSimulationJobOutput {
10726	s.Compute = v
10727	return s
10728}
10729
10730// SetDataSources sets the DataSources field's value.
10731func (s *DescribeSimulationJobOutput) SetDataSources(v []*DataSource) *DescribeSimulationJobOutput {
10732	s.DataSources = v
10733	return s
10734}
10735
10736// SetFailureBehavior sets the FailureBehavior field's value.
10737func (s *DescribeSimulationJobOutput) SetFailureBehavior(v string) *DescribeSimulationJobOutput {
10738	s.FailureBehavior = &v
10739	return s
10740}
10741
10742// SetFailureCode sets the FailureCode field's value.
10743func (s *DescribeSimulationJobOutput) SetFailureCode(v string) *DescribeSimulationJobOutput {
10744	s.FailureCode = &v
10745	return s
10746}
10747
10748// SetFailureReason sets the FailureReason field's value.
10749func (s *DescribeSimulationJobOutput) SetFailureReason(v string) *DescribeSimulationJobOutput {
10750	s.FailureReason = &v
10751	return s
10752}
10753
10754// SetIamRole sets the IamRole field's value.
10755func (s *DescribeSimulationJobOutput) SetIamRole(v string) *DescribeSimulationJobOutput {
10756	s.IamRole = &v
10757	return s
10758}
10759
10760// SetLastStartedAt sets the LastStartedAt field's value.
10761func (s *DescribeSimulationJobOutput) SetLastStartedAt(v time.Time) *DescribeSimulationJobOutput {
10762	s.LastStartedAt = &v
10763	return s
10764}
10765
10766// SetLastUpdatedAt sets the LastUpdatedAt field's value.
10767func (s *DescribeSimulationJobOutput) SetLastUpdatedAt(v time.Time) *DescribeSimulationJobOutput {
10768	s.LastUpdatedAt = &v
10769	return s
10770}
10771
10772// SetLoggingConfig sets the LoggingConfig field's value.
10773func (s *DescribeSimulationJobOutput) SetLoggingConfig(v *LoggingConfig) *DescribeSimulationJobOutput {
10774	s.LoggingConfig = v
10775	return s
10776}
10777
10778// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
10779func (s *DescribeSimulationJobOutput) SetMaxJobDurationInSeconds(v int64) *DescribeSimulationJobOutput {
10780	s.MaxJobDurationInSeconds = &v
10781	return s
10782}
10783
10784// SetName sets the Name field's value.
10785func (s *DescribeSimulationJobOutput) SetName(v string) *DescribeSimulationJobOutput {
10786	s.Name = &v
10787	return s
10788}
10789
10790// SetNetworkInterface sets the NetworkInterface field's value.
10791func (s *DescribeSimulationJobOutput) SetNetworkInterface(v *NetworkInterface) *DescribeSimulationJobOutput {
10792	s.NetworkInterface = v
10793	return s
10794}
10795
10796// SetOutputLocation sets the OutputLocation field's value.
10797func (s *DescribeSimulationJobOutput) SetOutputLocation(v *OutputLocation) *DescribeSimulationJobOutput {
10798	s.OutputLocation = v
10799	return s
10800}
10801
10802// SetRobotApplications sets the RobotApplications field's value.
10803func (s *DescribeSimulationJobOutput) SetRobotApplications(v []*RobotApplicationConfig) *DescribeSimulationJobOutput {
10804	s.RobotApplications = v
10805	return s
10806}
10807
10808// SetSimulationApplications sets the SimulationApplications field's value.
10809func (s *DescribeSimulationJobOutput) SetSimulationApplications(v []*SimulationApplicationConfig) *DescribeSimulationJobOutput {
10810	s.SimulationApplications = v
10811	return s
10812}
10813
10814// SetSimulationTimeMillis sets the SimulationTimeMillis field's value.
10815func (s *DescribeSimulationJobOutput) SetSimulationTimeMillis(v int64) *DescribeSimulationJobOutput {
10816	s.SimulationTimeMillis = &v
10817	return s
10818}
10819
10820// SetStatus sets the Status field's value.
10821func (s *DescribeSimulationJobOutput) SetStatus(v string) *DescribeSimulationJobOutput {
10822	s.Status = &v
10823	return s
10824}
10825
10826// SetTags sets the Tags field's value.
10827func (s *DescribeSimulationJobOutput) SetTags(v map[string]*string) *DescribeSimulationJobOutput {
10828	s.Tags = v
10829	return s
10830}
10831
10832// SetVpcConfig sets the VpcConfig field's value.
10833func (s *DescribeSimulationJobOutput) SetVpcConfig(v *VPCConfigResponse) *DescribeSimulationJobOutput {
10834	s.VpcConfig = v
10835	return s
10836}
10837
10838type DescribeWorldExportJobInput struct {
10839	_ struct{} `type:"structure"`
10840
10841	// The Amazon Resource Name (arn) of the world export job to describe.
10842	//
10843	// Job is a required field
10844	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
10845}
10846
10847// String returns the string representation
10848func (s DescribeWorldExportJobInput) String() string {
10849	return awsutil.Prettify(s)
10850}
10851
10852// GoString returns the string representation
10853func (s DescribeWorldExportJobInput) GoString() string {
10854	return s.String()
10855}
10856
10857// Validate inspects the fields of the type to determine if they are valid.
10858func (s *DescribeWorldExportJobInput) Validate() error {
10859	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldExportJobInput"}
10860	if s.Job == nil {
10861		invalidParams.Add(request.NewErrParamRequired("Job"))
10862	}
10863	if s.Job != nil && len(*s.Job) < 1 {
10864		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
10865	}
10866
10867	if invalidParams.Len() > 0 {
10868		return invalidParams
10869	}
10870	return nil
10871}
10872
10873// SetJob sets the Job field's value.
10874func (s *DescribeWorldExportJobInput) SetJob(v string) *DescribeWorldExportJobInput {
10875	s.Job = &v
10876	return s
10877}
10878
10879type DescribeWorldExportJobOutput struct {
10880	_ struct{} `type:"structure"`
10881
10882	// The Amazon Resource Name (ARN) of the world export job.
10883	Arn *string `locationName:"arn" min:"1" type:"string"`
10884
10885	// Unique, case-sensitive identifier that you provide to ensure the idempotency
10886	// of the request.
10887	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
10888
10889	// The time, in milliseconds since the epoch, when the world export job was
10890	// created.
10891	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
10892
10893	// The failure code of the world export job if it failed:
10894	//
10895	// InternalServiceError
10896	//
10897	// Internal service error.
10898	//
10899	// LimitExceeded
10900	//
10901	// The requested resource exceeds the maximum number allowed, or the number
10902	// of concurrent stream requests exceeds the maximum number allowed.
10903	//
10904	// ResourceNotFound
10905	//
10906	// The specified resource could not be found.
10907	//
10908	// RequestThrottled
10909	//
10910	// The request was throttled.
10911	//
10912	// InvalidInput
10913	//
10914	// An input parameter in the request is not valid.
10915	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldExportJobErrorCode"`
10916
10917	// The reason why the world export job failed.
10918	FailureReason *string `locationName:"failureReason" type:"string"`
10919
10920	// The IAM role that the world export process uses to access the Amazon S3 bucket
10921	// and put the export.
10922	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
10923
10924	// The output location.
10925	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
10926
10927	// The status of the world export job.
10928	//
10929	// Pending
10930	//
10931	// The world export job request is pending.
10932	//
10933	// Running
10934	//
10935	// The world export job is running.
10936	//
10937	// Completed
10938	//
10939	// The world export job completed.
10940	//
10941	// Failed
10942	//
10943	// The world export job failed. See failureCode and failureReason for more information.
10944	//
10945	// Canceled
10946	//
10947	// The world export job was cancelled.
10948	//
10949	// Canceling
10950	//
10951	// The world export job is being cancelled.
10952	Status *string `locationName:"status" type:"string" enum:"WorldExportJobStatus"`
10953
10954	// A map that contains tag keys and tag values that are attached to the world
10955	// export job.
10956	Tags map[string]*string `locationName:"tags" type:"map"`
10957
10958	// A list of Amazon Resource Names (arns) that correspond to worlds to be exported.
10959	Worlds []*string `locationName:"worlds" min:"1" type:"list"`
10960}
10961
10962// String returns the string representation
10963func (s DescribeWorldExportJobOutput) String() string {
10964	return awsutil.Prettify(s)
10965}
10966
10967// GoString returns the string representation
10968func (s DescribeWorldExportJobOutput) GoString() string {
10969	return s.String()
10970}
10971
10972// SetArn sets the Arn field's value.
10973func (s *DescribeWorldExportJobOutput) SetArn(v string) *DescribeWorldExportJobOutput {
10974	s.Arn = &v
10975	return s
10976}
10977
10978// SetClientRequestToken sets the ClientRequestToken field's value.
10979func (s *DescribeWorldExportJobOutput) SetClientRequestToken(v string) *DescribeWorldExportJobOutput {
10980	s.ClientRequestToken = &v
10981	return s
10982}
10983
10984// SetCreatedAt sets the CreatedAt field's value.
10985func (s *DescribeWorldExportJobOutput) SetCreatedAt(v time.Time) *DescribeWorldExportJobOutput {
10986	s.CreatedAt = &v
10987	return s
10988}
10989
10990// SetFailureCode sets the FailureCode field's value.
10991func (s *DescribeWorldExportJobOutput) SetFailureCode(v string) *DescribeWorldExportJobOutput {
10992	s.FailureCode = &v
10993	return s
10994}
10995
10996// SetFailureReason sets the FailureReason field's value.
10997func (s *DescribeWorldExportJobOutput) SetFailureReason(v string) *DescribeWorldExportJobOutput {
10998	s.FailureReason = &v
10999	return s
11000}
11001
11002// SetIamRole sets the IamRole field's value.
11003func (s *DescribeWorldExportJobOutput) SetIamRole(v string) *DescribeWorldExportJobOutput {
11004	s.IamRole = &v
11005	return s
11006}
11007
11008// SetOutputLocation sets the OutputLocation field's value.
11009func (s *DescribeWorldExportJobOutput) SetOutputLocation(v *OutputLocation) *DescribeWorldExportJobOutput {
11010	s.OutputLocation = v
11011	return s
11012}
11013
11014// SetStatus sets the Status field's value.
11015func (s *DescribeWorldExportJobOutput) SetStatus(v string) *DescribeWorldExportJobOutput {
11016	s.Status = &v
11017	return s
11018}
11019
11020// SetTags sets the Tags field's value.
11021func (s *DescribeWorldExportJobOutput) SetTags(v map[string]*string) *DescribeWorldExportJobOutput {
11022	s.Tags = v
11023	return s
11024}
11025
11026// SetWorlds sets the Worlds field's value.
11027func (s *DescribeWorldExportJobOutput) SetWorlds(v []*string) *DescribeWorldExportJobOutput {
11028	s.Worlds = v
11029	return s
11030}
11031
11032type DescribeWorldGenerationJobInput struct {
11033	_ struct{} `type:"structure"`
11034
11035	// The Amazon Resource Name (arn) of the world generation job to describe.
11036	//
11037	// Job is a required field
11038	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
11039}
11040
11041// String returns the string representation
11042func (s DescribeWorldGenerationJobInput) String() string {
11043	return awsutil.Prettify(s)
11044}
11045
11046// GoString returns the string representation
11047func (s DescribeWorldGenerationJobInput) GoString() string {
11048	return s.String()
11049}
11050
11051// Validate inspects the fields of the type to determine if they are valid.
11052func (s *DescribeWorldGenerationJobInput) Validate() error {
11053	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldGenerationJobInput"}
11054	if s.Job == nil {
11055		invalidParams.Add(request.NewErrParamRequired("Job"))
11056	}
11057	if s.Job != nil && len(*s.Job) < 1 {
11058		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
11059	}
11060
11061	if invalidParams.Len() > 0 {
11062		return invalidParams
11063	}
11064	return nil
11065}
11066
11067// SetJob sets the Job field's value.
11068func (s *DescribeWorldGenerationJobInput) SetJob(v string) *DescribeWorldGenerationJobInput {
11069	s.Job = &v
11070	return s
11071}
11072
11073type DescribeWorldGenerationJobOutput struct {
11074	_ struct{} `type:"structure"`
11075
11076	// The Amazon Resource Name (ARN) of the world generation job.
11077	Arn *string `locationName:"arn" min:"1" type:"string"`
11078
11079	// Unique, case-sensitive identifier that you provide to ensure the idempotency
11080	// of the request.
11081	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
11082
11083	// The time, in milliseconds since the epoch, when the world generation job
11084	// was created.
11085	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11086
11087	// The failure code of the world generation job if it failed:
11088	//
11089	// InternalServiceError
11090	//
11091	// Internal service error.
11092	//
11093	// LimitExceeded
11094	//
11095	// The requested resource exceeds the maximum number allowed, or the number
11096	// of concurrent stream requests exceeds the maximum number allowed.
11097	//
11098	// ResourceNotFound
11099	//
11100	// The specified resource could not be found.
11101	//
11102	// RequestThrottled
11103	//
11104	// The request was throttled.
11105	//
11106	// InvalidInput
11107	//
11108	// An input parameter in the request is not valid.
11109	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldGenerationJobErrorCode"`
11110
11111	// The reason why the world generation job failed.
11112	FailureReason *string `locationName:"failureReason" type:"string"`
11113
11114	// Summary information about finished worlds.
11115	FinishedWorldsSummary *FinishedWorldsSummary `locationName:"finishedWorldsSummary" type:"structure"`
11116
11117	// The status of the world generation job:
11118	//
11119	// Pending
11120	//
11121	// The world generation job request is pending.
11122	//
11123	// Running
11124	//
11125	// The world generation job is running.
11126	//
11127	// Completed
11128	//
11129	// The world generation job completed.
11130	//
11131	// Failed
11132	//
11133	// The world generation job failed. See failureCode for more information.
11134	//
11135	// PartialFailed
11136	//
11137	// Some worlds did not generate.
11138	//
11139	// Canceled
11140	//
11141	// The world generation job was cancelled.
11142	//
11143	// Canceling
11144	//
11145	// The world generation job is being cancelled.
11146	Status *string `locationName:"status" type:"string" enum:"WorldGenerationJobStatus"`
11147
11148	// A map that contains tag keys and tag values that are attached to the world
11149	// generation job.
11150	Tags map[string]*string `locationName:"tags" type:"map"`
11151
11152	// The Amazon Resource Name (arn) of the world template.
11153	Template *string `locationName:"template" min:"1" type:"string"`
11154
11155	// Information about the world count.
11156	WorldCount *WorldCount `locationName:"worldCount" type:"structure"`
11157
11158	// A map that contains tag keys and tag values that are attached to the generated
11159	// worlds.
11160	WorldTags map[string]*string `locationName:"worldTags" type:"map"`
11161}
11162
11163// String returns the string representation
11164func (s DescribeWorldGenerationJobOutput) String() string {
11165	return awsutil.Prettify(s)
11166}
11167
11168// GoString returns the string representation
11169func (s DescribeWorldGenerationJobOutput) GoString() string {
11170	return s.String()
11171}
11172
11173// SetArn sets the Arn field's value.
11174func (s *DescribeWorldGenerationJobOutput) SetArn(v string) *DescribeWorldGenerationJobOutput {
11175	s.Arn = &v
11176	return s
11177}
11178
11179// SetClientRequestToken sets the ClientRequestToken field's value.
11180func (s *DescribeWorldGenerationJobOutput) SetClientRequestToken(v string) *DescribeWorldGenerationJobOutput {
11181	s.ClientRequestToken = &v
11182	return s
11183}
11184
11185// SetCreatedAt sets the CreatedAt field's value.
11186func (s *DescribeWorldGenerationJobOutput) SetCreatedAt(v time.Time) *DescribeWorldGenerationJobOutput {
11187	s.CreatedAt = &v
11188	return s
11189}
11190
11191// SetFailureCode sets the FailureCode field's value.
11192func (s *DescribeWorldGenerationJobOutput) SetFailureCode(v string) *DescribeWorldGenerationJobOutput {
11193	s.FailureCode = &v
11194	return s
11195}
11196
11197// SetFailureReason sets the FailureReason field's value.
11198func (s *DescribeWorldGenerationJobOutput) SetFailureReason(v string) *DescribeWorldGenerationJobOutput {
11199	s.FailureReason = &v
11200	return s
11201}
11202
11203// SetFinishedWorldsSummary sets the FinishedWorldsSummary field's value.
11204func (s *DescribeWorldGenerationJobOutput) SetFinishedWorldsSummary(v *FinishedWorldsSummary) *DescribeWorldGenerationJobOutput {
11205	s.FinishedWorldsSummary = v
11206	return s
11207}
11208
11209// SetStatus sets the Status field's value.
11210func (s *DescribeWorldGenerationJobOutput) SetStatus(v string) *DescribeWorldGenerationJobOutput {
11211	s.Status = &v
11212	return s
11213}
11214
11215// SetTags sets the Tags field's value.
11216func (s *DescribeWorldGenerationJobOutput) SetTags(v map[string]*string) *DescribeWorldGenerationJobOutput {
11217	s.Tags = v
11218	return s
11219}
11220
11221// SetTemplate sets the Template field's value.
11222func (s *DescribeWorldGenerationJobOutput) SetTemplate(v string) *DescribeWorldGenerationJobOutput {
11223	s.Template = &v
11224	return s
11225}
11226
11227// SetWorldCount sets the WorldCount field's value.
11228func (s *DescribeWorldGenerationJobOutput) SetWorldCount(v *WorldCount) *DescribeWorldGenerationJobOutput {
11229	s.WorldCount = v
11230	return s
11231}
11232
11233// SetWorldTags sets the WorldTags field's value.
11234func (s *DescribeWorldGenerationJobOutput) SetWorldTags(v map[string]*string) *DescribeWorldGenerationJobOutput {
11235	s.WorldTags = v
11236	return s
11237}
11238
11239type DescribeWorldInput struct {
11240	_ struct{} `type:"structure"`
11241
11242	// The Amazon Resource Name (arn) of the world you want to describe.
11243	//
11244	// World is a required field
11245	World *string `locationName:"world" min:"1" type:"string" required:"true"`
11246}
11247
11248// String returns the string representation
11249func (s DescribeWorldInput) String() string {
11250	return awsutil.Prettify(s)
11251}
11252
11253// GoString returns the string representation
11254func (s DescribeWorldInput) GoString() string {
11255	return s.String()
11256}
11257
11258// Validate inspects the fields of the type to determine if they are valid.
11259func (s *DescribeWorldInput) Validate() error {
11260	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldInput"}
11261	if s.World == nil {
11262		invalidParams.Add(request.NewErrParamRequired("World"))
11263	}
11264	if s.World != nil && len(*s.World) < 1 {
11265		invalidParams.Add(request.NewErrParamMinLen("World", 1))
11266	}
11267
11268	if invalidParams.Len() > 0 {
11269		return invalidParams
11270	}
11271	return nil
11272}
11273
11274// SetWorld sets the World field's value.
11275func (s *DescribeWorldInput) SetWorld(v string) *DescribeWorldInput {
11276	s.World = &v
11277	return s
11278}
11279
11280type DescribeWorldOutput struct {
11281	_ struct{} `type:"structure"`
11282
11283	// The Amazon Resource Name (arn) of the world.
11284	Arn *string `locationName:"arn" min:"1" type:"string"`
11285
11286	// The time, in milliseconds since the epoch, when the world was created.
11287	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11288
11289	// The Amazon Resource Name (arn) of the world generation job that generated
11290	// the world.
11291	GenerationJob *string `locationName:"generationJob" min:"1" type:"string"`
11292
11293	// A map that contains tag keys and tag values that are attached to the world.
11294	Tags map[string]*string `locationName:"tags" type:"map"`
11295
11296	// The world template.
11297	Template *string `locationName:"template" min:"1" type:"string"`
11298
11299	// Returns the JSON formatted string that describes the contents of your world.
11300	WorldDescriptionBody *string `locationName:"worldDescriptionBody" min:"1" type:"string"`
11301}
11302
11303// String returns the string representation
11304func (s DescribeWorldOutput) String() string {
11305	return awsutil.Prettify(s)
11306}
11307
11308// GoString returns the string representation
11309func (s DescribeWorldOutput) GoString() string {
11310	return s.String()
11311}
11312
11313// SetArn sets the Arn field's value.
11314func (s *DescribeWorldOutput) SetArn(v string) *DescribeWorldOutput {
11315	s.Arn = &v
11316	return s
11317}
11318
11319// SetCreatedAt sets the CreatedAt field's value.
11320func (s *DescribeWorldOutput) SetCreatedAt(v time.Time) *DescribeWorldOutput {
11321	s.CreatedAt = &v
11322	return s
11323}
11324
11325// SetGenerationJob sets the GenerationJob field's value.
11326func (s *DescribeWorldOutput) SetGenerationJob(v string) *DescribeWorldOutput {
11327	s.GenerationJob = &v
11328	return s
11329}
11330
11331// SetTags sets the Tags field's value.
11332func (s *DescribeWorldOutput) SetTags(v map[string]*string) *DescribeWorldOutput {
11333	s.Tags = v
11334	return s
11335}
11336
11337// SetTemplate sets the Template field's value.
11338func (s *DescribeWorldOutput) SetTemplate(v string) *DescribeWorldOutput {
11339	s.Template = &v
11340	return s
11341}
11342
11343// SetWorldDescriptionBody sets the WorldDescriptionBody field's value.
11344func (s *DescribeWorldOutput) SetWorldDescriptionBody(v string) *DescribeWorldOutput {
11345	s.WorldDescriptionBody = &v
11346	return s
11347}
11348
11349type DescribeWorldTemplateInput struct {
11350	_ struct{} `type:"structure"`
11351
11352	// The Amazon Resource Name (arn) of the world template you want to describe.
11353	//
11354	// Template is a required field
11355	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
11356}
11357
11358// String returns the string representation
11359func (s DescribeWorldTemplateInput) String() string {
11360	return awsutil.Prettify(s)
11361}
11362
11363// GoString returns the string representation
11364func (s DescribeWorldTemplateInput) GoString() string {
11365	return s.String()
11366}
11367
11368// Validate inspects the fields of the type to determine if they are valid.
11369func (s *DescribeWorldTemplateInput) Validate() error {
11370	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldTemplateInput"}
11371	if s.Template == nil {
11372		invalidParams.Add(request.NewErrParamRequired("Template"))
11373	}
11374	if s.Template != nil && len(*s.Template) < 1 {
11375		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
11376	}
11377
11378	if invalidParams.Len() > 0 {
11379		return invalidParams
11380	}
11381	return nil
11382}
11383
11384// SetTemplate sets the Template field's value.
11385func (s *DescribeWorldTemplateInput) SetTemplate(v string) *DescribeWorldTemplateInput {
11386	s.Template = &v
11387	return s
11388}
11389
11390type DescribeWorldTemplateOutput struct {
11391	_ struct{} `type:"structure"`
11392
11393	// The Amazon Resource Name (ARN) of the world template.
11394	Arn *string `locationName:"arn" min:"1" type:"string"`
11395
11396	// Unique, case-sensitive identifier that you provide to ensure the idempotency
11397	// of the request.
11398	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
11399
11400	// The time, in milliseconds since the epoch, when the world template was created.
11401	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11402
11403	// The time, in milliseconds since the epoch, when the world template was last
11404	// updated.
11405	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
11406
11407	// The name of the world template.
11408	Name *string `locationName:"name" type:"string"`
11409
11410	// A map that contains tag keys and tag values that are attached to the world
11411	// template.
11412	Tags map[string]*string `locationName:"tags" type:"map"`
11413
11414	// The version of the world template that you're using.
11415	Version *string `locationName:"version" type:"string"`
11416}
11417
11418// String returns the string representation
11419func (s DescribeWorldTemplateOutput) String() string {
11420	return awsutil.Prettify(s)
11421}
11422
11423// GoString returns the string representation
11424func (s DescribeWorldTemplateOutput) GoString() string {
11425	return s.String()
11426}
11427
11428// SetArn sets the Arn field's value.
11429func (s *DescribeWorldTemplateOutput) SetArn(v string) *DescribeWorldTemplateOutput {
11430	s.Arn = &v
11431	return s
11432}
11433
11434// SetClientRequestToken sets the ClientRequestToken field's value.
11435func (s *DescribeWorldTemplateOutput) SetClientRequestToken(v string) *DescribeWorldTemplateOutput {
11436	s.ClientRequestToken = &v
11437	return s
11438}
11439
11440// SetCreatedAt sets the CreatedAt field's value.
11441func (s *DescribeWorldTemplateOutput) SetCreatedAt(v time.Time) *DescribeWorldTemplateOutput {
11442	s.CreatedAt = &v
11443	return s
11444}
11445
11446// SetLastUpdatedAt sets the LastUpdatedAt field's value.
11447func (s *DescribeWorldTemplateOutput) SetLastUpdatedAt(v time.Time) *DescribeWorldTemplateOutput {
11448	s.LastUpdatedAt = &v
11449	return s
11450}
11451
11452// SetName sets the Name field's value.
11453func (s *DescribeWorldTemplateOutput) SetName(v string) *DescribeWorldTemplateOutput {
11454	s.Name = &v
11455	return s
11456}
11457
11458// SetTags sets the Tags field's value.
11459func (s *DescribeWorldTemplateOutput) SetTags(v map[string]*string) *DescribeWorldTemplateOutput {
11460	s.Tags = v
11461	return s
11462}
11463
11464// SetVersion sets the Version field's value.
11465func (s *DescribeWorldTemplateOutput) SetVersion(v string) *DescribeWorldTemplateOutput {
11466	s.Version = &v
11467	return s
11468}
11469
11470// Information about a failed create simulation job request.
11471type FailedCreateSimulationJobRequest struct {
11472	_ struct{} `type:"structure"`
11473
11474	// The time, in milliseconds since the epoch, when the simulation job batch
11475	// failed.
11476	FailedAt *time.Time `locationName:"failedAt" type:"timestamp"`
11477
11478	// The failure code.
11479	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
11480
11481	// The failure reason of the simulation job request.
11482	FailureReason *string `locationName:"failureReason" type:"string"`
11483
11484	// The simulation job request.
11485	Request *SimulationJobRequest `locationName:"request" type:"structure"`
11486}
11487
11488// String returns the string representation
11489func (s FailedCreateSimulationJobRequest) String() string {
11490	return awsutil.Prettify(s)
11491}
11492
11493// GoString returns the string representation
11494func (s FailedCreateSimulationJobRequest) GoString() string {
11495	return s.String()
11496}
11497
11498// SetFailedAt sets the FailedAt field's value.
11499func (s *FailedCreateSimulationJobRequest) SetFailedAt(v time.Time) *FailedCreateSimulationJobRequest {
11500	s.FailedAt = &v
11501	return s
11502}
11503
11504// SetFailureCode sets the FailureCode field's value.
11505func (s *FailedCreateSimulationJobRequest) SetFailureCode(v string) *FailedCreateSimulationJobRequest {
11506	s.FailureCode = &v
11507	return s
11508}
11509
11510// SetFailureReason sets the FailureReason field's value.
11511func (s *FailedCreateSimulationJobRequest) SetFailureReason(v string) *FailedCreateSimulationJobRequest {
11512	s.FailureReason = &v
11513	return s
11514}
11515
11516// SetRequest sets the Request field's value.
11517func (s *FailedCreateSimulationJobRequest) SetRequest(v *SimulationJobRequest) *FailedCreateSimulationJobRequest {
11518	s.Request = v
11519	return s
11520}
11521
11522// Information about worlds that failed.
11523type FailureSummary struct {
11524	_ struct{} `type:"structure"`
11525
11526	// The worlds that failed.
11527	Failures []*WorldFailure `locationName:"failures" type:"list"`
11528
11529	// The total number of failures.
11530	TotalFailureCount *int64 `locationName:"totalFailureCount" type:"integer"`
11531}
11532
11533// String returns the string representation
11534func (s FailureSummary) String() string {
11535	return awsutil.Prettify(s)
11536}
11537
11538// GoString returns the string representation
11539func (s FailureSummary) GoString() string {
11540	return s.String()
11541}
11542
11543// SetFailures sets the Failures field's value.
11544func (s *FailureSummary) SetFailures(v []*WorldFailure) *FailureSummary {
11545	s.Failures = v
11546	return s
11547}
11548
11549// SetTotalFailureCount sets the TotalFailureCount field's value.
11550func (s *FailureSummary) SetTotalFailureCount(v int64) *FailureSummary {
11551	s.TotalFailureCount = &v
11552	return s
11553}
11554
11555// Information about a filter.
11556type Filter struct {
11557	_ struct{} `type:"structure"`
11558
11559	// The name of the filter.
11560	Name *string `locationName:"name" min:"1" type:"string"`
11561
11562	// A list of values.
11563	Values []*string `locationName:"values" min:"1" type:"list"`
11564}
11565
11566// String returns the string representation
11567func (s Filter) String() string {
11568	return awsutil.Prettify(s)
11569}
11570
11571// GoString returns the string representation
11572func (s Filter) GoString() string {
11573	return s.String()
11574}
11575
11576// Validate inspects the fields of the type to determine if they are valid.
11577func (s *Filter) Validate() error {
11578	invalidParams := request.ErrInvalidParams{Context: "Filter"}
11579	if s.Name != nil && len(*s.Name) < 1 {
11580		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
11581	}
11582	if s.Values != nil && len(s.Values) < 1 {
11583		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
11584	}
11585
11586	if invalidParams.Len() > 0 {
11587		return invalidParams
11588	}
11589	return nil
11590}
11591
11592// SetName sets the Name field's value.
11593func (s *Filter) SetName(v string) *Filter {
11594	s.Name = &v
11595	return s
11596}
11597
11598// SetValues sets the Values field's value.
11599func (s *Filter) SetValues(v []*string) *Filter {
11600	s.Values = v
11601	return s
11602}
11603
11604// Information about worlds that finished.
11605type FinishedWorldsSummary struct {
11606	_ struct{} `type:"structure"`
11607
11608	// Information about worlds that failed.
11609	FailureSummary *FailureSummary `locationName:"failureSummary" type:"structure"`
11610
11611	// The total number of finished worlds.
11612	FinishedCount *int64 `locationName:"finishedCount" type:"integer"`
11613
11614	// A list of worlds that succeeded.
11615	SucceededWorlds []*string `locationName:"succeededWorlds" min:"1" type:"list"`
11616}
11617
11618// String returns the string representation
11619func (s FinishedWorldsSummary) String() string {
11620	return awsutil.Prettify(s)
11621}
11622
11623// GoString returns the string representation
11624func (s FinishedWorldsSummary) GoString() string {
11625	return s.String()
11626}
11627
11628// SetFailureSummary sets the FailureSummary field's value.
11629func (s *FinishedWorldsSummary) SetFailureSummary(v *FailureSummary) *FinishedWorldsSummary {
11630	s.FailureSummary = v
11631	return s
11632}
11633
11634// SetFinishedCount sets the FinishedCount field's value.
11635func (s *FinishedWorldsSummary) SetFinishedCount(v int64) *FinishedWorldsSummary {
11636	s.FinishedCount = &v
11637	return s
11638}
11639
11640// SetSucceededWorlds sets the SucceededWorlds field's value.
11641func (s *FinishedWorldsSummary) SetSucceededWorlds(v []*string) *FinishedWorldsSummary {
11642	s.SucceededWorlds = v
11643	return s
11644}
11645
11646// Information about a fleet.
11647type Fleet struct {
11648	_ struct{} `type:"structure"`
11649
11650	// The Amazon Resource Name (ARN) of the fleet.
11651	Arn *string `locationName:"arn" min:"1" type:"string"`
11652
11653	// The time, in milliseconds since the epoch, when the fleet was created.
11654	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11655
11656	// The Amazon Resource Name (ARN) of the last deployment job.
11657	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
11658
11659	// The status of the last fleet deployment.
11660	LastDeploymentStatus *string `locationName:"lastDeploymentStatus" type:"string" enum:"DeploymentStatus"`
11661
11662	// The time of the last deployment.
11663	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
11664
11665	// The name of the fleet.
11666	Name *string `locationName:"name" min:"1" type:"string"`
11667}
11668
11669// String returns the string representation
11670func (s Fleet) String() string {
11671	return awsutil.Prettify(s)
11672}
11673
11674// GoString returns the string representation
11675func (s Fleet) GoString() string {
11676	return s.String()
11677}
11678
11679// SetArn sets the Arn field's value.
11680func (s *Fleet) SetArn(v string) *Fleet {
11681	s.Arn = &v
11682	return s
11683}
11684
11685// SetCreatedAt sets the CreatedAt field's value.
11686func (s *Fleet) SetCreatedAt(v time.Time) *Fleet {
11687	s.CreatedAt = &v
11688	return s
11689}
11690
11691// SetLastDeploymentJob sets the LastDeploymentJob field's value.
11692func (s *Fleet) SetLastDeploymentJob(v string) *Fleet {
11693	s.LastDeploymentJob = &v
11694	return s
11695}
11696
11697// SetLastDeploymentStatus sets the LastDeploymentStatus field's value.
11698func (s *Fleet) SetLastDeploymentStatus(v string) *Fleet {
11699	s.LastDeploymentStatus = &v
11700	return s
11701}
11702
11703// SetLastDeploymentTime sets the LastDeploymentTime field's value.
11704func (s *Fleet) SetLastDeploymentTime(v time.Time) *Fleet {
11705	s.LastDeploymentTime = &v
11706	return s
11707}
11708
11709// SetName sets the Name field's value.
11710func (s *Fleet) SetName(v string) *Fleet {
11711	s.Name = &v
11712	return s
11713}
11714
11715type GetWorldTemplateBodyInput struct {
11716	_ struct{} `type:"structure"`
11717
11718	// The Amazon Resource Name (arn) of the world generator job.
11719	GenerationJob *string `locationName:"generationJob" min:"1" type:"string"`
11720
11721	// The Amazon Resource Name (arn) of the world template.
11722	Template *string `locationName:"template" min:"1" type:"string"`
11723}
11724
11725// String returns the string representation
11726func (s GetWorldTemplateBodyInput) String() string {
11727	return awsutil.Prettify(s)
11728}
11729
11730// GoString returns the string representation
11731func (s GetWorldTemplateBodyInput) GoString() string {
11732	return s.String()
11733}
11734
11735// Validate inspects the fields of the type to determine if they are valid.
11736func (s *GetWorldTemplateBodyInput) Validate() error {
11737	invalidParams := request.ErrInvalidParams{Context: "GetWorldTemplateBodyInput"}
11738	if s.GenerationJob != nil && len(*s.GenerationJob) < 1 {
11739		invalidParams.Add(request.NewErrParamMinLen("GenerationJob", 1))
11740	}
11741	if s.Template != nil && len(*s.Template) < 1 {
11742		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
11743	}
11744
11745	if invalidParams.Len() > 0 {
11746		return invalidParams
11747	}
11748	return nil
11749}
11750
11751// SetGenerationJob sets the GenerationJob field's value.
11752func (s *GetWorldTemplateBodyInput) SetGenerationJob(v string) *GetWorldTemplateBodyInput {
11753	s.GenerationJob = &v
11754	return s
11755}
11756
11757// SetTemplate sets the Template field's value.
11758func (s *GetWorldTemplateBodyInput) SetTemplate(v string) *GetWorldTemplateBodyInput {
11759	s.Template = &v
11760	return s
11761}
11762
11763type GetWorldTemplateBodyOutput struct {
11764	_ struct{} `type:"structure"`
11765
11766	// The world template body.
11767	TemplateBody *string `locationName:"templateBody" min:"1" type:"string"`
11768}
11769
11770// String returns the string representation
11771func (s GetWorldTemplateBodyOutput) String() string {
11772	return awsutil.Prettify(s)
11773}
11774
11775// GoString returns the string representation
11776func (s GetWorldTemplateBodyOutput) GoString() string {
11777	return s.String()
11778}
11779
11780// SetTemplateBody sets the TemplateBody field's value.
11781func (s *GetWorldTemplateBodyOutput) SetTemplateBody(v string) *GetWorldTemplateBodyOutput {
11782	s.TemplateBody = &v
11783	return s
11784}
11785
11786// The request uses the same client token as a previous, but non-identical request.
11787// Do not reuse a client token with different requests, unless the requests
11788// are identical.
11789type IdempotentParameterMismatchException struct {
11790	_            struct{}                  `type:"structure"`
11791	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11792
11793	Message_ *string `locationName:"message" type:"string"`
11794}
11795
11796// String returns the string representation
11797func (s IdempotentParameterMismatchException) String() string {
11798	return awsutil.Prettify(s)
11799}
11800
11801// GoString returns the string representation
11802func (s IdempotentParameterMismatchException) GoString() string {
11803	return s.String()
11804}
11805
11806func newErrorIdempotentParameterMismatchException(v protocol.ResponseMetadata) error {
11807	return &IdempotentParameterMismatchException{
11808		RespMetadata: v,
11809	}
11810}
11811
11812// Code returns the exception type name.
11813func (s *IdempotentParameterMismatchException) Code() string {
11814	return "IdempotentParameterMismatchException"
11815}
11816
11817// Message returns the exception's message.
11818func (s *IdempotentParameterMismatchException) Message() string {
11819	if s.Message_ != nil {
11820		return *s.Message_
11821	}
11822	return ""
11823}
11824
11825// OrigErr always returns nil, satisfies awserr.Error interface.
11826func (s *IdempotentParameterMismatchException) OrigErr() error {
11827	return nil
11828}
11829
11830func (s *IdempotentParameterMismatchException) Error() string {
11831	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11832}
11833
11834// Status code returns the HTTP status code for the request's response error.
11835func (s *IdempotentParameterMismatchException) StatusCode() int {
11836	return s.RespMetadata.StatusCode
11837}
11838
11839// RequestID returns the service's response RequestID for request.
11840func (s *IdempotentParameterMismatchException) RequestID() string {
11841	return s.RespMetadata.RequestID
11842}
11843
11844// AWS RoboMaker experienced a service issue. Try your call again.
11845type InternalServerException struct {
11846	_            struct{}                  `type:"structure"`
11847	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11848
11849	Message_ *string `locationName:"message" type:"string"`
11850}
11851
11852// String returns the string representation
11853func (s InternalServerException) String() string {
11854	return awsutil.Prettify(s)
11855}
11856
11857// GoString returns the string representation
11858func (s InternalServerException) GoString() string {
11859	return s.String()
11860}
11861
11862func newErrorInternalServerException(v protocol.ResponseMetadata) error {
11863	return &InternalServerException{
11864		RespMetadata: v,
11865	}
11866}
11867
11868// Code returns the exception type name.
11869func (s *InternalServerException) Code() string {
11870	return "InternalServerException"
11871}
11872
11873// Message returns the exception's message.
11874func (s *InternalServerException) Message() string {
11875	if s.Message_ != nil {
11876		return *s.Message_
11877	}
11878	return ""
11879}
11880
11881// OrigErr always returns nil, satisfies awserr.Error interface.
11882func (s *InternalServerException) OrigErr() error {
11883	return nil
11884}
11885
11886func (s *InternalServerException) Error() string {
11887	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11888}
11889
11890// Status code returns the HTTP status code for the request's response error.
11891func (s *InternalServerException) StatusCode() int {
11892	return s.RespMetadata.StatusCode
11893}
11894
11895// RequestID returns the service's response RequestID for request.
11896func (s *InternalServerException) RequestID() string {
11897	return s.RespMetadata.RequestID
11898}
11899
11900// A parameter specified in a request is not valid, is unsupported, or cannot
11901// be used. The returned message provides an explanation of the error value.
11902type InvalidParameterException struct {
11903	_            struct{}                  `type:"structure"`
11904	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11905
11906	Message_ *string `locationName:"message" type:"string"`
11907}
11908
11909// String returns the string representation
11910func (s InvalidParameterException) String() string {
11911	return awsutil.Prettify(s)
11912}
11913
11914// GoString returns the string representation
11915func (s InvalidParameterException) GoString() string {
11916	return s.String()
11917}
11918
11919func newErrorInvalidParameterException(v protocol.ResponseMetadata) error {
11920	return &InvalidParameterException{
11921		RespMetadata: v,
11922	}
11923}
11924
11925// Code returns the exception type name.
11926func (s *InvalidParameterException) Code() string {
11927	return "InvalidParameterException"
11928}
11929
11930// Message returns the exception's message.
11931func (s *InvalidParameterException) Message() string {
11932	if s.Message_ != nil {
11933		return *s.Message_
11934	}
11935	return ""
11936}
11937
11938// OrigErr always returns nil, satisfies awserr.Error interface.
11939func (s *InvalidParameterException) OrigErr() error {
11940	return nil
11941}
11942
11943func (s *InvalidParameterException) Error() string {
11944	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11945}
11946
11947// Status code returns the HTTP status code for the request's response error.
11948func (s *InvalidParameterException) StatusCode() int {
11949	return s.RespMetadata.StatusCode
11950}
11951
11952// RequestID returns the service's response RequestID for request.
11953func (s *InvalidParameterException) RequestID() string {
11954	return s.RespMetadata.RequestID
11955}
11956
11957// Information about a launch configuration.
11958type LaunchConfig struct {
11959	_ struct{} `type:"structure"`
11960
11961	// The environment variables for the application launch.
11962	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
11963
11964	// The launch file name.
11965	//
11966	// LaunchFile is a required field
11967	LaunchFile *string `locationName:"launchFile" min:"1" type:"string" required:"true"`
11968
11969	// The package name.
11970	//
11971	// PackageName is a required field
11972	PackageName *string `locationName:"packageName" min:"1" type:"string" required:"true"`
11973
11974	// The port forwarding configuration.
11975	PortForwardingConfig *PortForwardingConfig `locationName:"portForwardingConfig" type:"structure"`
11976
11977	// Boolean indicating whether a streaming session will be configured for the
11978	// application. If True, AWS RoboMaker will configure a connection so you can
11979	// interact with your application as it is running in the simulation. You must
11980	// configure and launch the component. It must have a graphical user interface.
11981	StreamUI *bool `locationName:"streamUI" type:"boolean"`
11982}
11983
11984// String returns the string representation
11985func (s LaunchConfig) String() string {
11986	return awsutil.Prettify(s)
11987}
11988
11989// GoString returns the string representation
11990func (s LaunchConfig) GoString() string {
11991	return s.String()
11992}
11993
11994// Validate inspects the fields of the type to determine if they are valid.
11995func (s *LaunchConfig) Validate() error {
11996	invalidParams := request.ErrInvalidParams{Context: "LaunchConfig"}
11997	if s.LaunchFile == nil {
11998		invalidParams.Add(request.NewErrParamRequired("LaunchFile"))
11999	}
12000	if s.LaunchFile != nil && len(*s.LaunchFile) < 1 {
12001		invalidParams.Add(request.NewErrParamMinLen("LaunchFile", 1))
12002	}
12003	if s.PackageName == nil {
12004		invalidParams.Add(request.NewErrParamRequired("PackageName"))
12005	}
12006	if s.PackageName != nil && len(*s.PackageName) < 1 {
12007		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
12008	}
12009	if s.PortForwardingConfig != nil {
12010		if err := s.PortForwardingConfig.Validate(); err != nil {
12011			invalidParams.AddNested("PortForwardingConfig", err.(request.ErrInvalidParams))
12012		}
12013	}
12014
12015	if invalidParams.Len() > 0 {
12016		return invalidParams
12017	}
12018	return nil
12019}
12020
12021// SetEnvironmentVariables sets the EnvironmentVariables field's value.
12022func (s *LaunchConfig) SetEnvironmentVariables(v map[string]*string) *LaunchConfig {
12023	s.EnvironmentVariables = v
12024	return s
12025}
12026
12027// SetLaunchFile sets the LaunchFile field's value.
12028func (s *LaunchConfig) SetLaunchFile(v string) *LaunchConfig {
12029	s.LaunchFile = &v
12030	return s
12031}
12032
12033// SetPackageName sets the PackageName field's value.
12034func (s *LaunchConfig) SetPackageName(v string) *LaunchConfig {
12035	s.PackageName = &v
12036	return s
12037}
12038
12039// SetPortForwardingConfig sets the PortForwardingConfig field's value.
12040func (s *LaunchConfig) SetPortForwardingConfig(v *PortForwardingConfig) *LaunchConfig {
12041	s.PortForwardingConfig = v
12042	return s
12043}
12044
12045// SetStreamUI sets the StreamUI field's value.
12046func (s *LaunchConfig) SetStreamUI(v bool) *LaunchConfig {
12047	s.StreamUI = &v
12048	return s
12049}
12050
12051// The requested resource exceeds the maximum number allowed, or the number
12052// of concurrent stream requests exceeds the maximum number allowed.
12053type LimitExceededException struct {
12054	_            struct{}                  `type:"structure"`
12055	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12056
12057	Message_ *string `locationName:"message" type:"string"`
12058}
12059
12060// String returns the string representation
12061func (s LimitExceededException) String() string {
12062	return awsutil.Prettify(s)
12063}
12064
12065// GoString returns the string representation
12066func (s LimitExceededException) GoString() string {
12067	return s.String()
12068}
12069
12070func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
12071	return &LimitExceededException{
12072		RespMetadata: v,
12073	}
12074}
12075
12076// Code returns the exception type name.
12077func (s *LimitExceededException) Code() string {
12078	return "LimitExceededException"
12079}
12080
12081// Message returns the exception's message.
12082func (s *LimitExceededException) Message() string {
12083	if s.Message_ != nil {
12084		return *s.Message_
12085	}
12086	return ""
12087}
12088
12089// OrigErr always returns nil, satisfies awserr.Error interface.
12090func (s *LimitExceededException) OrigErr() error {
12091	return nil
12092}
12093
12094func (s *LimitExceededException) Error() string {
12095	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12096}
12097
12098// Status code returns the HTTP status code for the request's response error.
12099func (s *LimitExceededException) StatusCode() int {
12100	return s.RespMetadata.StatusCode
12101}
12102
12103// RequestID returns the service's response RequestID for request.
12104func (s *LimitExceededException) RequestID() string {
12105	return s.RespMetadata.RequestID
12106}
12107
12108type ListDeploymentJobsInput struct {
12109	_ struct{} `type:"structure"`
12110
12111	// Optional filters to limit results.
12112	//
12113	// The filter names status and fleetName are supported. When filtering, you
12114	// must use the complete value of the filtered item. You can use up to three
12115	// filters, but they must be for the same named item. For example, if you are
12116	// looking for items with the status InProgress or the status Pending.
12117	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12118
12119	// When this parameter is used, ListDeploymentJobs only returns maxResults results
12120	// in a single page along with a nextToken response element. The remaining results
12121	// of the initial request can be seen by sending another ListDeploymentJobs
12122	// request with the returned nextToken value. This value can be between 1 and
12123	// 200. If this parameter is not used, then ListDeploymentJobs returns up to
12124	// 200 results and a nextToken value if applicable.
12125	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12126
12127	// If the previous paginated request did not return all of the remaining results,
12128	// the response object's nextToken parameter value is set to a token. To retrieve
12129	// the next set of results, call ListDeploymentJobs again and assign that token
12130	// to the request object's nextToken parameter. If there are no remaining results,
12131	// the previous response object's NextToken parameter is set to null.
12132	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12133}
12134
12135// String returns the string representation
12136func (s ListDeploymentJobsInput) String() string {
12137	return awsutil.Prettify(s)
12138}
12139
12140// GoString returns the string representation
12141func (s ListDeploymentJobsInput) GoString() string {
12142	return s.String()
12143}
12144
12145// Validate inspects the fields of the type to determine if they are valid.
12146func (s *ListDeploymentJobsInput) Validate() error {
12147	invalidParams := request.ErrInvalidParams{Context: "ListDeploymentJobsInput"}
12148	if s.Filters != nil && len(s.Filters) < 1 {
12149		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12150	}
12151	if s.NextToken != nil && len(*s.NextToken) < 1 {
12152		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12153	}
12154	if s.Filters != nil {
12155		for i, v := range s.Filters {
12156			if v == nil {
12157				continue
12158			}
12159			if err := v.Validate(); err != nil {
12160				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12161			}
12162		}
12163	}
12164
12165	if invalidParams.Len() > 0 {
12166		return invalidParams
12167	}
12168	return nil
12169}
12170
12171// SetFilters sets the Filters field's value.
12172func (s *ListDeploymentJobsInput) SetFilters(v []*Filter) *ListDeploymentJobsInput {
12173	s.Filters = v
12174	return s
12175}
12176
12177// SetMaxResults sets the MaxResults field's value.
12178func (s *ListDeploymentJobsInput) SetMaxResults(v int64) *ListDeploymentJobsInput {
12179	s.MaxResults = &v
12180	return s
12181}
12182
12183// SetNextToken sets the NextToken field's value.
12184func (s *ListDeploymentJobsInput) SetNextToken(v string) *ListDeploymentJobsInput {
12185	s.NextToken = &v
12186	return s
12187}
12188
12189type ListDeploymentJobsOutput struct {
12190	_ struct{} `type:"structure"`
12191
12192	// A list of deployment jobs that meet the criteria of the request.
12193	DeploymentJobs []*DeploymentJob `locationName:"deploymentJobs" type:"list"`
12194
12195	// If the previous paginated request did not return all of the remaining results,
12196	// the response object's nextToken parameter value is set to a token. To retrieve
12197	// the next set of results, call ListDeploymentJobs again and assign that token
12198	// to the request object's nextToken parameter. If there are no remaining results,
12199	// the previous response object's NextToken parameter is set to null.
12200	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12201}
12202
12203// String returns the string representation
12204func (s ListDeploymentJobsOutput) String() string {
12205	return awsutil.Prettify(s)
12206}
12207
12208// GoString returns the string representation
12209func (s ListDeploymentJobsOutput) GoString() string {
12210	return s.String()
12211}
12212
12213// SetDeploymentJobs sets the DeploymentJobs field's value.
12214func (s *ListDeploymentJobsOutput) SetDeploymentJobs(v []*DeploymentJob) *ListDeploymentJobsOutput {
12215	s.DeploymentJobs = v
12216	return s
12217}
12218
12219// SetNextToken sets the NextToken field's value.
12220func (s *ListDeploymentJobsOutput) SetNextToken(v string) *ListDeploymentJobsOutput {
12221	s.NextToken = &v
12222	return s
12223}
12224
12225type ListFleetsInput struct {
12226	_ struct{} `type:"structure"`
12227
12228	// Optional filters to limit results.
12229	//
12230	// The filter name name is supported. When filtering, you must use the complete
12231	// value of the filtered item. You can use up to three filters.
12232	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12233
12234	// When this parameter is used, ListFleets only returns maxResults results in
12235	// a single page along with a nextToken response element. The remaining results
12236	// of the initial request can be seen by sending another ListFleets request
12237	// with the returned nextToken value. This value can be between 1 and 200. If
12238	// this parameter is not used, then ListFleets returns up to 200 results and
12239	// a nextToken value if applicable.
12240	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12241
12242	// If the previous paginated request did not return all of the remaining results,
12243	// the response object's nextToken parameter value is set to a token. To retrieve
12244	// the next set of results, call ListFleets again and assign that token to the
12245	// request object's nextToken parameter. If there are no remaining results,
12246	// the previous response object's NextToken parameter is set to null.
12247	//
12248	// This token should be treated as an opaque identifier that is only used to
12249	// retrieve the next items in a list and not for other programmatic purposes.
12250	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12251}
12252
12253// String returns the string representation
12254func (s ListFleetsInput) String() string {
12255	return awsutil.Prettify(s)
12256}
12257
12258// GoString returns the string representation
12259func (s ListFleetsInput) GoString() string {
12260	return s.String()
12261}
12262
12263// Validate inspects the fields of the type to determine if they are valid.
12264func (s *ListFleetsInput) Validate() error {
12265	invalidParams := request.ErrInvalidParams{Context: "ListFleetsInput"}
12266	if s.Filters != nil && len(s.Filters) < 1 {
12267		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12268	}
12269	if s.NextToken != nil && len(*s.NextToken) < 1 {
12270		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12271	}
12272	if s.Filters != nil {
12273		for i, v := range s.Filters {
12274			if v == nil {
12275				continue
12276			}
12277			if err := v.Validate(); err != nil {
12278				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12279			}
12280		}
12281	}
12282
12283	if invalidParams.Len() > 0 {
12284		return invalidParams
12285	}
12286	return nil
12287}
12288
12289// SetFilters sets the Filters field's value.
12290func (s *ListFleetsInput) SetFilters(v []*Filter) *ListFleetsInput {
12291	s.Filters = v
12292	return s
12293}
12294
12295// SetMaxResults sets the MaxResults field's value.
12296func (s *ListFleetsInput) SetMaxResults(v int64) *ListFleetsInput {
12297	s.MaxResults = &v
12298	return s
12299}
12300
12301// SetNextToken sets the NextToken field's value.
12302func (s *ListFleetsInput) SetNextToken(v string) *ListFleetsInput {
12303	s.NextToken = &v
12304	return s
12305}
12306
12307type ListFleetsOutput struct {
12308	_ struct{} `type:"structure"`
12309
12310	// A list of fleet details meeting the request criteria.
12311	FleetDetails []*Fleet `locationName:"fleetDetails" type:"list"`
12312
12313	// If the previous paginated request did not return all of the remaining results,
12314	// the response object's nextToken parameter value is set to a token. To retrieve
12315	// the next set of results, call ListFleets again and assign that token to the
12316	// request object's nextToken parameter. If there are no remaining results,
12317	// the previous response object's NextToken parameter is set to null.
12318	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12319}
12320
12321// String returns the string representation
12322func (s ListFleetsOutput) String() string {
12323	return awsutil.Prettify(s)
12324}
12325
12326// GoString returns the string representation
12327func (s ListFleetsOutput) GoString() string {
12328	return s.String()
12329}
12330
12331// SetFleetDetails sets the FleetDetails field's value.
12332func (s *ListFleetsOutput) SetFleetDetails(v []*Fleet) *ListFleetsOutput {
12333	s.FleetDetails = v
12334	return s
12335}
12336
12337// SetNextToken sets the NextToken field's value.
12338func (s *ListFleetsOutput) SetNextToken(v string) *ListFleetsOutput {
12339	s.NextToken = &v
12340	return s
12341}
12342
12343type ListRobotApplicationsInput struct {
12344	_ struct{} `type:"structure"`
12345
12346	// Optional filters to limit results.
12347	//
12348	// The filter name name is supported. When filtering, you must use the complete
12349	// value of the filtered item. You can use up to three filters.
12350	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12351
12352	// When this parameter is used, ListRobotApplications only returns maxResults
12353	// results in a single page along with a nextToken response element. The remaining
12354	// results of the initial request can be seen by sending another ListRobotApplications
12355	// request with the returned nextToken value. This value can be between 1 and
12356	// 100. If this parameter is not used, then ListRobotApplications returns up
12357	// to 100 results and a nextToken value if applicable.
12358	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12359
12360	// If the previous paginated request did not return all of the remaining results,
12361	// the response object's nextToken parameter value is set to a token. To retrieve
12362	// the next set of results, call ListRobotApplications again and assign that
12363	// token to the request object's nextToken parameter. If there are no remaining
12364	// results, the previous response object's NextToken parameter is set to null.
12365	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12366
12367	// The version qualifier of the robot application.
12368	VersionQualifier *string `locationName:"versionQualifier" min:"1" type:"string"`
12369}
12370
12371// String returns the string representation
12372func (s ListRobotApplicationsInput) String() string {
12373	return awsutil.Prettify(s)
12374}
12375
12376// GoString returns the string representation
12377func (s ListRobotApplicationsInput) GoString() string {
12378	return s.String()
12379}
12380
12381// Validate inspects the fields of the type to determine if they are valid.
12382func (s *ListRobotApplicationsInput) Validate() error {
12383	invalidParams := request.ErrInvalidParams{Context: "ListRobotApplicationsInput"}
12384	if s.Filters != nil && len(s.Filters) < 1 {
12385		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12386	}
12387	if s.NextToken != nil && len(*s.NextToken) < 1 {
12388		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12389	}
12390	if s.VersionQualifier != nil && len(*s.VersionQualifier) < 1 {
12391		invalidParams.Add(request.NewErrParamMinLen("VersionQualifier", 1))
12392	}
12393	if s.Filters != nil {
12394		for i, v := range s.Filters {
12395			if v == nil {
12396				continue
12397			}
12398			if err := v.Validate(); err != nil {
12399				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12400			}
12401		}
12402	}
12403
12404	if invalidParams.Len() > 0 {
12405		return invalidParams
12406	}
12407	return nil
12408}
12409
12410// SetFilters sets the Filters field's value.
12411func (s *ListRobotApplicationsInput) SetFilters(v []*Filter) *ListRobotApplicationsInput {
12412	s.Filters = v
12413	return s
12414}
12415
12416// SetMaxResults sets the MaxResults field's value.
12417func (s *ListRobotApplicationsInput) SetMaxResults(v int64) *ListRobotApplicationsInput {
12418	s.MaxResults = &v
12419	return s
12420}
12421
12422// SetNextToken sets the NextToken field's value.
12423func (s *ListRobotApplicationsInput) SetNextToken(v string) *ListRobotApplicationsInput {
12424	s.NextToken = &v
12425	return s
12426}
12427
12428// SetVersionQualifier sets the VersionQualifier field's value.
12429func (s *ListRobotApplicationsInput) SetVersionQualifier(v string) *ListRobotApplicationsInput {
12430	s.VersionQualifier = &v
12431	return s
12432}
12433
12434type ListRobotApplicationsOutput struct {
12435	_ struct{} `type:"structure"`
12436
12437	// If the previous paginated request did not return all of the remaining results,
12438	// the response object's nextToken parameter value is set to a token. To retrieve
12439	// the next set of results, call ListRobotApplications again and assign that
12440	// token to the request object's nextToken parameter. If there are no remaining
12441	// results, the previous response object's NextToken parameter is set to null.
12442	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12443
12444	// A list of robot application summaries that meet the criteria of the request.
12445	RobotApplicationSummaries []*RobotApplicationSummary `locationName:"robotApplicationSummaries" type:"list"`
12446}
12447
12448// String returns the string representation
12449func (s ListRobotApplicationsOutput) String() string {
12450	return awsutil.Prettify(s)
12451}
12452
12453// GoString returns the string representation
12454func (s ListRobotApplicationsOutput) GoString() string {
12455	return s.String()
12456}
12457
12458// SetNextToken sets the NextToken field's value.
12459func (s *ListRobotApplicationsOutput) SetNextToken(v string) *ListRobotApplicationsOutput {
12460	s.NextToken = &v
12461	return s
12462}
12463
12464// SetRobotApplicationSummaries sets the RobotApplicationSummaries field's value.
12465func (s *ListRobotApplicationsOutput) SetRobotApplicationSummaries(v []*RobotApplicationSummary) *ListRobotApplicationsOutput {
12466	s.RobotApplicationSummaries = v
12467	return s
12468}
12469
12470type ListRobotsInput struct {
12471	_ struct{} `type:"structure"`
12472
12473	// Optional filters to limit results.
12474	//
12475	// The filter names status and fleetName are supported. When filtering, you
12476	// must use the complete value of the filtered item. You can use up to three
12477	// filters, but they must be for the same named item. For example, if you are
12478	// looking for items with the status Registered or the status Available.
12479	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12480
12481	// When this parameter is used, ListRobots only returns maxResults results in
12482	// a single page along with a nextToken response element. The remaining results
12483	// of the initial request can be seen by sending another ListRobots request
12484	// with the returned nextToken value. This value can be between 1 and 200. If
12485	// this parameter is not used, then ListRobots returns up to 200 results and
12486	// a nextToken value if applicable.
12487	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12488
12489	// If the previous paginated request did not return all of the remaining results,
12490	// the response object's nextToken parameter value is set to a token. To retrieve
12491	// the next set of results, call ListRobots again and assign that token to the
12492	// request object's nextToken parameter. If there are no remaining results,
12493	// the previous response object's NextToken parameter is set to null.
12494	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12495}
12496
12497// String returns the string representation
12498func (s ListRobotsInput) String() string {
12499	return awsutil.Prettify(s)
12500}
12501
12502// GoString returns the string representation
12503func (s ListRobotsInput) GoString() string {
12504	return s.String()
12505}
12506
12507// Validate inspects the fields of the type to determine if they are valid.
12508func (s *ListRobotsInput) Validate() error {
12509	invalidParams := request.ErrInvalidParams{Context: "ListRobotsInput"}
12510	if s.Filters != nil && len(s.Filters) < 1 {
12511		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12512	}
12513	if s.NextToken != nil && len(*s.NextToken) < 1 {
12514		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12515	}
12516	if s.Filters != nil {
12517		for i, v := range s.Filters {
12518			if v == nil {
12519				continue
12520			}
12521			if err := v.Validate(); err != nil {
12522				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12523			}
12524		}
12525	}
12526
12527	if invalidParams.Len() > 0 {
12528		return invalidParams
12529	}
12530	return nil
12531}
12532
12533// SetFilters sets the Filters field's value.
12534func (s *ListRobotsInput) SetFilters(v []*Filter) *ListRobotsInput {
12535	s.Filters = v
12536	return s
12537}
12538
12539// SetMaxResults sets the MaxResults field's value.
12540func (s *ListRobotsInput) SetMaxResults(v int64) *ListRobotsInput {
12541	s.MaxResults = &v
12542	return s
12543}
12544
12545// SetNextToken sets the NextToken field's value.
12546func (s *ListRobotsInput) SetNextToken(v string) *ListRobotsInput {
12547	s.NextToken = &v
12548	return s
12549}
12550
12551type ListRobotsOutput struct {
12552	_ struct{} `type:"structure"`
12553
12554	// If the previous paginated request did not return all of the remaining results,
12555	// the response object's nextToken parameter value is set to a token. To retrieve
12556	// the next set of results, call ListRobots again and assign that token to the
12557	// request object's nextToken parameter. If there are no remaining results,
12558	// the previous response object's NextToken parameter is set to null.
12559	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12560
12561	// A list of robots that meet the criteria of the request.
12562	Robots []*Robot `locationName:"robots" type:"list"`
12563}
12564
12565// String returns the string representation
12566func (s ListRobotsOutput) String() string {
12567	return awsutil.Prettify(s)
12568}
12569
12570// GoString returns the string representation
12571func (s ListRobotsOutput) GoString() string {
12572	return s.String()
12573}
12574
12575// SetNextToken sets the NextToken field's value.
12576func (s *ListRobotsOutput) SetNextToken(v string) *ListRobotsOutput {
12577	s.NextToken = &v
12578	return s
12579}
12580
12581// SetRobots sets the Robots field's value.
12582func (s *ListRobotsOutput) SetRobots(v []*Robot) *ListRobotsOutput {
12583	s.Robots = v
12584	return s
12585}
12586
12587type ListSimulationApplicationsInput struct {
12588	_ struct{} `type:"structure"`
12589
12590	// Optional list of filters to limit results.
12591	//
12592	// The filter name name is supported. When filtering, you must use the complete
12593	// value of the filtered item. You can use up to three filters.
12594	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12595
12596	// When this parameter is used, ListSimulationApplications only returns maxResults
12597	// results in a single page along with a nextToken response element. The remaining
12598	// results of the initial request can be seen by sending another ListSimulationApplications
12599	// request with the returned nextToken value. This value can be between 1 and
12600	// 100. If this parameter is not used, then ListSimulationApplications returns
12601	// up to 100 results and a nextToken value if applicable.
12602	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12603
12604	// If the previous paginated request did not return all of the remaining results,
12605	// the response object's nextToken parameter value is set to a token. To retrieve
12606	// the next set of results, call ListSimulationApplications again and assign
12607	// that token to the request object's nextToken parameter. If there are no remaining
12608	// results, the previous response object's NextToken parameter is set to null.
12609	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12610
12611	// The version qualifier of the simulation application.
12612	VersionQualifier *string `locationName:"versionQualifier" min:"1" type:"string"`
12613}
12614
12615// String returns the string representation
12616func (s ListSimulationApplicationsInput) String() string {
12617	return awsutil.Prettify(s)
12618}
12619
12620// GoString returns the string representation
12621func (s ListSimulationApplicationsInput) GoString() string {
12622	return s.String()
12623}
12624
12625// Validate inspects the fields of the type to determine if they are valid.
12626func (s *ListSimulationApplicationsInput) Validate() error {
12627	invalidParams := request.ErrInvalidParams{Context: "ListSimulationApplicationsInput"}
12628	if s.Filters != nil && len(s.Filters) < 1 {
12629		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12630	}
12631	if s.NextToken != nil && len(*s.NextToken) < 1 {
12632		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12633	}
12634	if s.VersionQualifier != nil && len(*s.VersionQualifier) < 1 {
12635		invalidParams.Add(request.NewErrParamMinLen("VersionQualifier", 1))
12636	}
12637	if s.Filters != nil {
12638		for i, v := range s.Filters {
12639			if v == nil {
12640				continue
12641			}
12642			if err := v.Validate(); err != nil {
12643				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12644			}
12645		}
12646	}
12647
12648	if invalidParams.Len() > 0 {
12649		return invalidParams
12650	}
12651	return nil
12652}
12653
12654// SetFilters sets the Filters field's value.
12655func (s *ListSimulationApplicationsInput) SetFilters(v []*Filter) *ListSimulationApplicationsInput {
12656	s.Filters = v
12657	return s
12658}
12659
12660// SetMaxResults sets the MaxResults field's value.
12661func (s *ListSimulationApplicationsInput) SetMaxResults(v int64) *ListSimulationApplicationsInput {
12662	s.MaxResults = &v
12663	return s
12664}
12665
12666// SetNextToken sets the NextToken field's value.
12667func (s *ListSimulationApplicationsInput) SetNextToken(v string) *ListSimulationApplicationsInput {
12668	s.NextToken = &v
12669	return s
12670}
12671
12672// SetVersionQualifier sets the VersionQualifier field's value.
12673func (s *ListSimulationApplicationsInput) SetVersionQualifier(v string) *ListSimulationApplicationsInput {
12674	s.VersionQualifier = &v
12675	return s
12676}
12677
12678type ListSimulationApplicationsOutput struct {
12679	_ struct{} `type:"structure"`
12680
12681	// If the previous paginated request did not return all of the remaining results,
12682	// the response object's nextToken parameter value is set to a token. To retrieve
12683	// the next set of results, call ListSimulationApplications again and assign
12684	// that token to the request object's nextToken parameter. If there are no remaining
12685	// results, the previous response object's NextToken parameter is set to null.
12686	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12687
12688	// A list of simulation application summaries that meet the criteria of the
12689	// request.
12690	SimulationApplicationSummaries []*SimulationApplicationSummary `locationName:"simulationApplicationSummaries" type:"list"`
12691}
12692
12693// String returns the string representation
12694func (s ListSimulationApplicationsOutput) String() string {
12695	return awsutil.Prettify(s)
12696}
12697
12698// GoString returns the string representation
12699func (s ListSimulationApplicationsOutput) GoString() string {
12700	return s.String()
12701}
12702
12703// SetNextToken sets the NextToken field's value.
12704func (s *ListSimulationApplicationsOutput) SetNextToken(v string) *ListSimulationApplicationsOutput {
12705	s.NextToken = &v
12706	return s
12707}
12708
12709// SetSimulationApplicationSummaries sets the SimulationApplicationSummaries field's value.
12710func (s *ListSimulationApplicationsOutput) SetSimulationApplicationSummaries(v []*SimulationApplicationSummary) *ListSimulationApplicationsOutput {
12711	s.SimulationApplicationSummaries = v
12712	return s
12713}
12714
12715type ListSimulationJobBatchesInput struct {
12716	_ struct{} `type:"structure"`
12717
12718	// Optional filters to limit results.
12719	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12720
12721	// When this parameter is used, ListSimulationJobBatches only returns maxResults
12722	// results in a single page along with a nextToken response element. The remaining
12723	// results of the initial request can be seen by sending another ListSimulationJobBatches
12724	// request with the returned nextToken value.
12725	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12726
12727	// If the previous paginated request did not return all of the remaining results,
12728	// the response object's nextToken parameter value is set to a token. To retrieve
12729	// the next set of results, call ListSimulationJobBatches again and assign that
12730	// token to the request object's nextToken parameter. If there are no remaining
12731	// results, the previous response object's NextToken parameter is set to null.
12732	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12733}
12734
12735// String returns the string representation
12736func (s ListSimulationJobBatchesInput) String() string {
12737	return awsutil.Prettify(s)
12738}
12739
12740// GoString returns the string representation
12741func (s ListSimulationJobBatchesInput) GoString() string {
12742	return s.String()
12743}
12744
12745// Validate inspects the fields of the type to determine if they are valid.
12746func (s *ListSimulationJobBatchesInput) Validate() error {
12747	invalidParams := request.ErrInvalidParams{Context: "ListSimulationJobBatchesInput"}
12748	if s.Filters != nil && len(s.Filters) < 1 {
12749		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12750	}
12751	if s.NextToken != nil && len(*s.NextToken) < 1 {
12752		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12753	}
12754	if s.Filters != nil {
12755		for i, v := range s.Filters {
12756			if v == nil {
12757				continue
12758			}
12759			if err := v.Validate(); err != nil {
12760				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12761			}
12762		}
12763	}
12764
12765	if invalidParams.Len() > 0 {
12766		return invalidParams
12767	}
12768	return nil
12769}
12770
12771// SetFilters sets the Filters field's value.
12772func (s *ListSimulationJobBatchesInput) SetFilters(v []*Filter) *ListSimulationJobBatchesInput {
12773	s.Filters = v
12774	return s
12775}
12776
12777// SetMaxResults sets the MaxResults field's value.
12778func (s *ListSimulationJobBatchesInput) SetMaxResults(v int64) *ListSimulationJobBatchesInput {
12779	s.MaxResults = &v
12780	return s
12781}
12782
12783// SetNextToken sets the NextToken field's value.
12784func (s *ListSimulationJobBatchesInput) SetNextToken(v string) *ListSimulationJobBatchesInput {
12785	s.NextToken = &v
12786	return s
12787}
12788
12789type ListSimulationJobBatchesOutput struct {
12790	_ struct{} `type:"structure"`
12791
12792	// If the previous paginated request did not return all of the remaining results,
12793	// the response object's nextToken parameter value is set to a token. To retrieve
12794	// the next set of results, call ListSimulationJobBatches again and assign that
12795	// token to the request object's nextToken parameter. If there are no remaining
12796	// results, the previous response object's NextToken parameter is set to null.
12797	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12798
12799	// A list of simulation job batch summaries.
12800	SimulationJobBatchSummaries []*SimulationJobBatchSummary `locationName:"simulationJobBatchSummaries" type:"list"`
12801}
12802
12803// String returns the string representation
12804func (s ListSimulationJobBatchesOutput) String() string {
12805	return awsutil.Prettify(s)
12806}
12807
12808// GoString returns the string representation
12809func (s ListSimulationJobBatchesOutput) GoString() string {
12810	return s.String()
12811}
12812
12813// SetNextToken sets the NextToken field's value.
12814func (s *ListSimulationJobBatchesOutput) SetNextToken(v string) *ListSimulationJobBatchesOutput {
12815	s.NextToken = &v
12816	return s
12817}
12818
12819// SetSimulationJobBatchSummaries sets the SimulationJobBatchSummaries field's value.
12820func (s *ListSimulationJobBatchesOutput) SetSimulationJobBatchSummaries(v []*SimulationJobBatchSummary) *ListSimulationJobBatchesOutput {
12821	s.SimulationJobBatchSummaries = v
12822	return s
12823}
12824
12825type ListSimulationJobsInput struct {
12826	_ struct{} `type:"structure"`
12827
12828	// Optional filters to limit results.
12829	//
12830	// The filter names status and simulationApplicationName and robotApplicationName
12831	// are supported. When filtering, you must use the complete value of the filtered
12832	// item. You can use up to three filters, but they must be for the same named
12833	// item. For example, if you are looking for items with the status Preparing
12834	// or the status Running.
12835	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12836
12837	// When this parameter is used, ListSimulationJobs only returns maxResults results
12838	// in a single page along with a nextToken response element. The remaining results
12839	// of the initial request can be seen by sending another ListSimulationJobs
12840	// request with the returned nextToken value. This value can be between 1 and
12841	// 1000. If this parameter is not used, then ListSimulationJobs returns up to
12842	// 1000 results and a nextToken value if applicable.
12843	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12844
12845	// If the previous paginated request did not return all of the remaining results,
12846	// the response object's nextToken parameter value is set to a token. To retrieve
12847	// the next set of results, call ListSimulationJobs again and assign that token
12848	// to the request object's nextToken parameter. If there are no remaining results,
12849	// the previous response object's NextToken parameter is set to null.
12850	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12851}
12852
12853// String returns the string representation
12854func (s ListSimulationJobsInput) String() string {
12855	return awsutil.Prettify(s)
12856}
12857
12858// GoString returns the string representation
12859func (s ListSimulationJobsInput) GoString() string {
12860	return s.String()
12861}
12862
12863// Validate inspects the fields of the type to determine if they are valid.
12864func (s *ListSimulationJobsInput) Validate() error {
12865	invalidParams := request.ErrInvalidParams{Context: "ListSimulationJobsInput"}
12866	if s.Filters != nil && len(s.Filters) < 1 {
12867		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12868	}
12869	if s.NextToken != nil && len(*s.NextToken) < 1 {
12870		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12871	}
12872	if s.Filters != nil {
12873		for i, v := range s.Filters {
12874			if v == nil {
12875				continue
12876			}
12877			if err := v.Validate(); err != nil {
12878				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12879			}
12880		}
12881	}
12882
12883	if invalidParams.Len() > 0 {
12884		return invalidParams
12885	}
12886	return nil
12887}
12888
12889// SetFilters sets the Filters field's value.
12890func (s *ListSimulationJobsInput) SetFilters(v []*Filter) *ListSimulationJobsInput {
12891	s.Filters = v
12892	return s
12893}
12894
12895// SetMaxResults sets the MaxResults field's value.
12896func (s *ListSimulationJobsInput) SetMaxResults(v int64) *ListSimulationJobsInput {
12897	s.MaxResults = &v
12898	return s
12899}
12900
12901// SetNextToken sets the NextToken field's value.
12902func (s *ListSimulationJobsInput) SetNextToken(v string) *ListSimulationJobsInput {
12903	s.NextToken = &v
12904	return s
12905}
12906
12907type ListSimulationJobsOutput struct {
12908	_ struct{} `type:"structure"`
12909
12910	// If the previous paginated request did not return all of the remaining results,
12911	// the response object's nextToken parameter value is set to a token. To retrieve
12912	// the next set of results, call ListSimulationJobs again and assign that token
12913	// to the request object's nextToken parameter. If there are no remaining results,
12914	// the previous response object's NextToken parameter is set to null.
12915	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12916
12917	// A list of simulation job summaries that meet the criteria of the request.
12918	//
12919	// SimulationJobSummaries is a required field
12920	SimulationJobSummaries []*SimulationJobSummary `locationName:"simulationJobSummaries" type:"list" required:"true"`
12921}
12922
12923// String returns the string representation
12924func (s ListSimulationJobsOutput) String() string {
12925	return awsutil.Prettify(s)
12926}
12927
12928// GoString returns the string representation
12929func (s ListSimulationJobsOutput) GoString() string {
12930	return s.String()
12931}
12932
12933// SetNextToken sets the NextToken field's value.
12934func (s *ListSimulationJobsOutput) SetNextToken(v string) *ListSimulationJobsOutput {
12935	s.NextToken = &v
12936	return s
12937}
12938
12939// SetSimulationJobSummaries sets the SimulationJobSummaries field's value.
12940func (s *ListSimulationJobsOutput) SetSimulationJobSummaries(v []*SimulationJobSummary) *ListSimulationJobsOutput {
12941	s.SimulationJobSummaries = v
12942	return s
12943}
12944
12945type ListTagsForResourceInput struct {
12946	_ struct{} `type:"structure"`
12947
12948	// The AWS RoboMaker Amazon Resource Name (ARN) with tags to be listed.
12949	//
12950	// ResourceArn is a required field
12951	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
12952}
12953
12954// String returns the string representation
12955func (s ListTagsForResourceInput) String() string {
12956	return awsutil.Prettify(s)
12957}
12958
12959// GoString returns the string representation
12960func (s ListTagsForResourceInput) GoString() string {
12961	return s.String()
12962}
12963
12964// Validate inspects the fields of the type to determine if they are valid.
12965func (s *ListTagsForResourceInput) Validate() error {
12966	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
12967	if s.ResourceArn == nil {
12968		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
12969	}
12970	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
12971		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
12972	}
12973
12974	if invalidParams.Len() > 0 {
12975		return invalidParams
12976	}
12977	return nil
12978}
12979
12980// SetResourceArn sets the ResourceArn field's value.
12981func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
12982	s.ResourceArn = &v
12983	return s
12984}
12985
12986type ListTagsForResourceOutput struct {
12987	_ struct{} `type:"structure"`
12988
12989	// The list of all tags added to the specified resource.
12990	Tags map[string]*string `locationName:"tags" type:"map"`
12991}
12992
12993// String returns the string representation
12994func (s ListTagsForResourceOutput) String() string {
12995	return awsutil.Prettify(s)
12996}
12997
12998// GoString returns the string representation
12999func (s ListTagsForResourceOutput) GoString() string {
13000	return s.String()
13001}
13002
13003// SetTags sets the Tags field's value.
13004func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
13005	s.Tags = v
13006	return s
13007}
13008
13009type ListWorldExportJobsInput struct {
13010	_ struct{} `type:"structure"`
13011
13012	// Optional filters to limit results. You can use generationJobId and templateId.
13013	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
13014
13015	// When this parameter is used, ListWorldExportJobs only returns maxResults
13016	// results in a single page along with a nextToken response element. The remaining
13017	// results of the initial request can be seen by sending another ListWorldExportJobs
13018	// request with the returned nextToken value. This value can be between 1 and
13019	// 100. If this parameter is not used, then ListWorldExportJobs returns up to
13020	// 100 results and a nextToken value if applicable.
13021	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13022
13023	// If the previous paginated request did not return all of the remaining results,
13024	// the response object's nextToken parameter value is set to a token. To retrieve
13025	// the next set of results, call ListWorldExportJobs again and assign that token
13026	// to the request object's nextToken parameter. If there are no remaining results,
13027	// the previous response object's NextToken parameter is set to null.
13028	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13029}
13030
13031// String returns the string representation
13032func (s ListWorldExportJobsInput) String() string {
13033	return awsutil.Prettify(s)
13034}
13035
13036// GoString returns the string representation
13037func (s ListWorldExportJobsInput) GoString() string {
13038	return s.String()
13039}
13040
13041// Validate inspects the fields of the type to determine if they are valid.
13042func (s *ListWorldExportJobsInput) Validate() error {
13043	invalidParams := request.ErrInvalidParams{Context: "ListWorldExportJobsInput"}
13044	if s.Filters != nil && len(s.Filters) < 1 {
13045		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
13046	}
13047	if s.NextToken != nil && len(*s.NextToken) < 1 {
13048		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13049	}
13050	if s.Filters != nil {
13051		for i, v := range s.Filters {
13052			if v == nil {
13053				continue
13054			}
13055			if err := v.Validate(); err != nil {
13056				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13057			}
13058		}
13059	}
13060
13061	if invalidParams.Len() > 0 {
13062		return invalidParams
13063	}
13064	return nil
13065}
13066
13067// SetFilters sets the Filters field's value.
13068func (s *ListWorldExportJobsInput) SetFilters(v []*Filter) *ListWorldExportJobsInput {
13069	s.Filters = v
13070	return s
13071}
13072
13073// SetMaxResults sets the MaxResults field's value.
13074func (s *ListWorldExportJobsInput) SetMaxResults(v int64) *ListWorldExportJobsInput {
13075	s.MaxResults = &v
13076	return s
13077}
13078
13079// SetNextToken sets the NextToken field's value.
13080func (s *ListWorldExportJobsInput) SetNextToken(v string) *ListWorldExportJobsInput {
13081	s.NextToken = &v
13082	return s
13083}
13084
13085type ListWorldExportJobsOutput struct {
13086	_ struct{} `type:"structure"`
13087
13088	// If the previous paginated request did not return all of the remaining results,
13089	// the response object's nextToken parameter value is set to a token. To retrieve
13090	// the next set of results, call ListWorldExportJobsRequest again and assign
13091	// that token to the request object's nextToken parameter. If there are no remaining
13092	// results, the previous response object's NextToken parameter is set to null.
13093	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13094
13095	// Summary information for world export jobs.
13096	//
13097	// WorldExportJobSummaries is a required field
13098	WorldExportJobSummaries []*WorldExportJobSummary `locationName:"worldExportJobSummaries" type:"list" required:"true"`
13099}
13100
13101// String returns the string representation
13102func (s ListWorldExportJobsOutput) String() string {
13103	return awsutil.Prettify(s)
13104}
13105
13106// GoString returns the string representation
13107func (s ListWorldExportJobsOutput) GoString() string {
13108	return s.String()
13109}
13110
13111// SetNextToken sets the NextToken field's value.
13112func (s *ListWorldExportJobsOutput) SetNextToken(v string) *ListWorldExportJobsOutput {
13113	s.NextToken = &v
13114	return s
13115}
13116
13117// SetWorldExportJobSummaries sets the WorldExportJobSummaries field's value.
13118func (s *ListWorldExportJobsOutput) SetWorldExportJobSummaries(v []*WorldExportJobSummary) *ListWorldExportJobsOutput {
13119	s.WorldExportJobSummaries = v
13120	return s
13121}
13122
13123type ListWorldGenerationJobsInput struct {
13124	_ struct{} `type:"structure"`
13125
13126	// Optional filters to limit results. You can use status and templateId.
13127	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
13128
13129	// When this parameter is used, ListWorldGeneratorJobs only returns maxResults
13130	// results in a single page along with a nextToken response element. The remaining
13131	// results of the initial request can be seen by sending another ListWorldGeneratorJobs
13132	// request with the returned nextToken value. This value can be between 1 and
13133	// 100. If this parameter is not used, then ListWorldGeneratorJobs returns up
13134	// to 100 results and a nextToken value if applicable.
13135	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13136
13137	// If the previous paginated request did not return all of the remaining results,
13138	// the response object's nextToken parameter value is set to a token. To retrieve
13139	// the next set of results, call ListWorldGenerationJobsRequest again and assign
13140	// that token to the request object's nextToken parameter. If there are no remaining
13141	// results, the previous response object's NextToken parameter is set to null.
13142	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13143}
13144
13145// String returns the string representation
13146func (s ListWorldGenerationJobsInput) String() string {
13147	return awsutil.Prettify(s)
13148}
13149
13150// GoString returns the string representation
13151func (s ListWorldGenerationJobsInput) GoString() string {
13152	return s.String()
13153}
13154
13155// Validate inspects the fields of the type to determine if they are valid.
13156func (s *ListWorldGenerationJobsInput) Validate() error {
13157	invalidParams := request.ErrInvalidParams{Context: "ListWorldGenerationJobsInput"}
13158	if s.Filters != nil && len(s.Filters) < 1 {
13159		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
13160	}
13161	if s.NextToken != nil && len(*s.NextToken) < 1 {
13162		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13163	}
13164	if s.Filters != nil {
13165		for i, v := range s.Filters {
13166			if v == nil {
13167				continue
13168			}
13169			if err := v.Validate(); err != nil {
13170				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13171			}
13172		}
13173	}
13174
13175	if invalidParams.Len() > 0 {
13176		return invalidParams
13177	}
13178	return nil
13179}
13180
13181// SetFilters sets the Filters field's value.
13182func (s *ListWorldGenerationJobsInput) SetFilters(v []*Filter) *ListWorldGenerationJobsInput {
13183	s.Filters = v
13184	return s
13185}
13186
13187// SetMaxResults sets the MaxResults field's value.
13188func (s *ListWorldGenerationJobsInput) SetMaxResults(v int64) *ListWorldGenerationJobsInput {
13189	s.MaxResults = &v
13190	return s
13191}
13192
13193// SetNextToken sets the NextToken field's value.
13194func (s *ListWorldGenerationJobsInput) SetNextToken(v string) *ListWorldGenerationJobsInput {
13195	s.NextToken = &v
13196	return s
13197}
13198
13199type ListWorldGenerationJobsOutput struct {
13200	_ struct{} `type:"structure"`
13201
13202	// If the previous paginated request did not return all of the remaining results,
13203	// the response object's nextToken parameter value is set to a token. To retrieve
13204	// the next set of results, call ListWorldGeneratorJobsRequest again and assign
13205	// that token to the request object's nextToken parameter. If there are no remaining
13206	// results, the previous response object's NextToken parameter is set to null.
13207	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13208
13209	// Summary information for world generator jobs.
13210	//
13211	// WorldGenerationJobSummaries is a required field
13212	WorldGenerationJobSummaries []*WorldGenerationJobSummary `locationName:"worldGenerationJobSummaries" type:"list" required:"true"`
13213}
13214
13215// String returns the string representation
13216func (s ListWorldGenerationJobsOutput) String() string {
13217	return awsutil.Prettify(s)
13218}
13219
13220// GoString returns the string representation
13221func (s ListWorldGenerationJobsOutput) GoString() string {
13222	return s.String()
13223}
13224
13225// SetNextToken sets the NextToken field's value.
13226func (s *ListWorldGenerationJobsOutput) SetNextToken(v string) *ListWorldGenerationJobsOutput {
13227	s.NextToken = &v
13228	return s
13229}
13230
13231// SetWorldGenerationJobSummaries sets the WorldGenerationJobSummaries field's value.
13232func (s *ListWorldGenerationJobsOutput) SetWorldGenerationJobSummaries(v []*WorldGenerationJobSummary) *ListWorldGenerationJobsOutput {
13233	s.WorldGenerationJobSummaries = v
13234	return s
13235}
13236
13237type ListWorldTemplatesInput struct {
13238	_ struct{} `type:"structure"`
13239
13240	// When this parameter is used, ListWorldTemplates only returns maxResults results
13241	// in a single page along with a nextToken response element. The remaining results
13242	// of the initial request can be seen by sending another ListWorldTemplates
13243	// request with the returned nextToken value. This value can be between 1 and
13244	// 100. If this parameter is not used, then ListWorldTemplates returns up to
13245	// 100 results and a nextToken value if applicable.
13246	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13247
13248	// If the previous paginated request did not return all of the remaining results,
13249	// the response object's nextToken parameter value is set to a token. To retrieve
13250	// the next set of results, call ListWorldTemplates again and assign that token
13251	// to the request object's nextToken parameter. If there are no remaining results,
13252	// the previous response object's NextToken parameter is set to null.
13253	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13254}
13255
13256// String returns the string representation
13257func (s ListWorldTemplatesInput) String() string {
13258	return awsutil.Prettify(s)
13259}
13260
13261// GoString returns the string representation
13262func (s ListWorldTemplatesInput) GoString() string {
13263	return s.String()
13264}
13265
13266// Validate inspects the fields of the type to determine if they are valid.
13267func (s *ListWorldTemplatesInput) Validate() error {
13268	invalidParams := request.ErrInvalidParams{Context: "ListWorldTemplatesInput"}
13269	if s.NextToken != nil && len(*s.NextToken) < 1 {
13270		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13271	}
13272
13273	if invalidParams.Len() > 0 {
13274		return invalidParams
13275	}
13276	return nil
13277}
13278
13279// SetMaxResults sets the MaxResults field's value.
13280func (s *ListWorldTemplatesInput) SetMaxResults(v int64) *ListWorldTemplatesInput {
13281	s.MaxResults = &v
13282	return s
13283}
13284
13285// SetNextToken sets the NextToken field's value.
13286func (s *ListWorldTemplatesInput) SetNextToken(v string) *ListWorldTemplatesInput {
13287	s.NextToken = &v
13288	return s
13289}
13290
13291type ListWorldTemplatesOutput struct {
13292	_ struct{} `type:"structure"`
13293
13294	// If the previous paginated request did not return all of the remaining results,
13295	// the response object's nextToken parameter value is set to a token. To retrieve
13296	// the next set of results, call ListWorldTemplates again and assign that token
13297	// to the request object's nextToken parameter. If there are no remaining results,
13298	// the previous response object's NextToken parameter is set to null.
13299	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13300
13301	// Summary information for templates.
13302	TemplateSummaries []*TemplateSummary `locationName:"templateSummaries" type:"list"`
13303}
13304
13305// String returns the string representation
13306func (s ListWorldTemplatesOutput) String() string {
13307	return awsutil.Prettify(s)
13308}
13309
13310// GoString returns the string representation
13311func (s ListWorldTemplatesOutput) GoString() string {
13312	return s.String()
13313}
13314
13315// SetNextToken sets the NextToken field's value.
13316func (s *ListWorldTemplatesOutput) SetNextToken(v string) *ListWorldTemplatesOutput {
13317	s.NextToken = &v
13318	return s
13319}
13320
13321// SetTemplateSummaries sets the TemplateSummaries field's value.
13322func (s *ListWorldTemplatesOutput) SetTemplateSummaries(v []*TemplateSummary) *ListWorldTemplatesOutput {
13323	s.TemplateSummaries = v
13324	return s
13325}
13326
13327type ListWorldsInput struct {
13328	_ struct{} `type:"structure"`
13329
13330	// Optional filters to limit results. You can use status.
13331	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
13332
13333	// When this parameter is used, ListWorlds only returns maxResults results in
13334	// a single page along with a nextToken response element. The remaining results
13335	// of the initial request can be seen by sending another ListWorlds request
13336	// with the returned nextToken value. This value can be between 1 and 100. If
13337	// this parameter is not used, then ListWorlds returns up to 100 results and
13338	// a nextToken value if applicable.
13339	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13340
13341	// If the previous paginated request did not return all of the remaining results,
13342	// the response object's nextToken parameter value is set to a token. To retrieve
13343	// the next set of results, call ListWorlds again and assign that token to the
13344	// request object's nextToken parameter. If there are no remaining results,
13345	// the previous response object's NextToken parameter is set to null.
13346	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13347}
13348
13349// String returns the string representation
13350func (s ListWorldsInput) String() string {
13351	return awsutil.Prettify(s)
13352}
13353
13354// GoString returns the string representation
13355func (s ListWorldsInput) GoString() string {
13356	return s.String()
13357}
13358
13359// Validate inspects the fields of the type to determine if they are valid.
13360func (s *ListWorldsInput) Validate() error {
13361	invalidParams := request.ErrInvalidParams{Context: "ListWorldsInput"}
13362	if s.Filters != nil && len(s.Filters) < 1 {
13363		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
13364	}
13365	if s.NextToken != nil && len(*s.NextToken) < 1 {
13366		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13367	}
13368	if s.Filters != nil {
13369		for i, v := range s.Filters {
13370			if v == nil {
13371				continue
13372			}
13373			if err := v.Validate(); err != nil {
13374				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13375			}
13376		}
13377	}
13378
13379	if invalidParams.Len() > 0 {
13380		return invalidParams
13381	}
13382	return nil
13383}
13384
13385// SetFilters sets the Filters field's value.
13386func (s *ListWorldsInput) SetFilters(v []*Filter) *ListWorldsInput {
13387	s.Filters = v
13388	return s
13389}
13390
13391// SetMaxResults sets the MaxResults field's value.
13392func (s *ListWorldsInput) SetMaxResults(v int64) *ListWorldsInput {
13393	s.MaxResults = &v
13394	return s
13395}
13396
13397// SetNextToken sets the NextToken field's value.
13398func (s *ListWorldsInput) SetNextToken(v string) *ListWorldsInput {
13399	s.NextToken = &v
13400	return s
13401}
13402
13403type ListWorldsOutput struct {
13404	_ struct{} `type:"structure"`
13405
13406	// If the previous paginated request did not return all of the remaining results,
13407	// the response object's nextToken parameter value is set to a token. To retrieve
13408	// the next set of results, call ListWorlds again and assign that token to the
13409	// request object's nextToken parameter. If there are no remaining results,
13410	// the previous response object's NextToken parameter is set to null.
13411	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13412
13413	// Summary information for worlds.
13414	WorldSummaries []*WorldSummary `locationName:"worldSummaries" type:"list"`
13415}
13416
13417// String returns the string representation
13418func (s ListWorldsOutput) String() string {
13419	return awsutil.Prettify(s)
13420}
13421
13422// GoString returns the string representation
13423func (s ListWorldsOutput) GoString() string {
13424	return s.String()
13425}
13426
13427// SetNextToken sets the NextToken field's value.
13428func (s *ListWorldsOutput) SetNextToken(v string) *ListWorldsOutput {
13429	s.NextToken = &v
13430	return s
13431}
13432
13433// SetWorldSummaries sets the WorldSummaries field's value.
13434func (s *ListWorldsOutput) SetWorldSummaries(v []*WorldSummary) *ListWorldsOutput {
13435	s.WorldSummaries = v
13436	return s
13437}
13438
13439// The logging configuration.
13440type LoggingConfig struct {
13441	_ struct{} `type:"structure"`
13442
13443	// A boolean indicating whether to record all ROS topics.
13444	//
13445	// RecordAllRosTopics is a required field
13446	RecordAllRosTopics *bool `locationName:"recordAllRosTopics" type:"boolean" required:"true"`
13447}
13448
13449// String returns the string representation
13450func (s LoggingConfig) String() string {
13451	return awsutil.Prettify(s)
13452}
13453
13454// GoString returns the string representation
13455func (s LoggingConfig) GoString() string {
13456	return s.String()
13457}
13458
13459// Validate inspects the fields of the type to determine if they are valid.
13460func (s *LoggingConfig) Validate() error {
13461	invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"}
13462	if s.RecordAllRosTopics == nil {
13463		invalidParams.Add(request.NewErrParamRequired("RecordAllRosTopics"))
13464	}
13465
13466	if invalidParams.Len() > 0 {
13467		return invalidParams
13468	}
13469	return nil
13470}
13471
13472// SetRecordAllRosTopics sets the RecordAllRosTopics field's value.
13473func (s *LoggingConfig) SetRecordAllRosTopics(v bool) *LoggingConfig {
13474	s.RecordAllRosTopics = &v
13475	return s
13476}
13477
13478// Describes a network interface.
13479type NetworkInterface struct {
13480	_ struct{} `type:"structure"`
13481
13482	// The ID of the network interface.
13483	NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"`
13484
13485	// The IPv4 address of the network interface within the subnet.
13486	PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"`
13487
13488	// The IPv4 public address of the network interface.
13489	PublicIpAddress *string `locationName:"publicIpAddress" type:"string"`
13490}
13491
13492// String returns the string representation
13493func (s NetworkInterface) String() string {
13494	return awsutil.Prettify(s)
13495}
13496
13497// GoString returns the string representation
13498func (s NetworkInterface) GoString() string {
13499	return s.String()
13500}
13501
13502// SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
13503func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface {
13504	s.NetworkInterfaceId = &v
13505	return s
13506}
13507
13508// SetPrivateIpAddress sets the PrivateIpAddress field's value.
13509func (s *NetworkInterface) SetPrivateIpAddress(v string) *NetworkInterface {
13510	s.PrivateIpAddress = &v
13511	return s
13512}
13513
13514// SetPublicIpAddress sets the PublicIpAddress field's value.
13515func (s *NetworkInterface) SetPublicIpAddress(v string) *NetworkInterface {
13516	s.PublicIpAddress = &v
13517	return s
13518}
13519
13520// The output location.
13521type OutputLocation struct {
13522	_ struct{} `type:"structure"`
13523
13524	// The S3 bucket for output.
13525	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
13526
13527	// The S3 folder in the s3Bucket where output files will be placed.
13528	S3Prefix *string `locationName:"s3Prefix" min:"1" type:"string"`
13529}
13530
13531// String returns the string representation
13532func (s OutputLocation) String() string {
13533	return awsutil.Prettify(s)
13534}
13535
13536// GoString returns the string representation
13537func (s OutputLocation) GoString() string {
13538	return s.String()
13539}
13540
13541// Validate inspects the fields of the type to determine if they are valid.
13542func (s *OutputLocation) Validate() error {
13543	invalidParams := request.ErrInvalidParams{Context: "OutputLocation"}
13544	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
13545		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
13546	}
13547	if s.S3Prefix != nil && len(*s.S3Prefix) < 1 {
13548		invalidParams.Add(request.NewErrParamMinLen("S3Prefix", 1))
13549	}
13550
13551	if invalidParams.Len() > 0 {
13552		return invalidParams
13553	}
13554	return nil
13555}
13556
13557// SetS3Bucket sets the S3Bucket field's value.
13558func (s *OutputLocation) SetS3Bucket(v string) *OutputLocation {
13559	s.S3Bucket = &v
13560	return s
13561}
13562
13563// SetS3Prefix sets the S3Prefix field's value.
13564func (s *OutputLocation) SetS3Prefix(v string) *OutputLocation {
13565	s.S3Prefix = &v
13566	return s
13567}
13568
13569// Configuration information for port forwarding.
13570type PortForwardingConfig struct {
13571	_ struct{} `type:"structure"`
13572
13573	// The port mappings for the configuration.
13574	PortMappings []*PortMapping `locationName:"portMappings" type:"list"`
13575}
13576
13577// String returns the string representation
13578func (s PortForwardingConfig) String() string {
13579	return awsutil.Prettify(s)
13580}
13581
13582// GoString returns the string representation
13583func (s PortForwardingConfig) GoString() string {
13584	return s.String()
13585}
13586
13587// Validate inspects the fields of the type to determine if they are valid.
13588func (s *PortForwardingConfig) Validate() error {
13589	invalidParams := request.ErrInvalidParams{Context: "PortForwardingConfig"}
13590	if s.PortMappings != nil {
13591		for i, v := range s.PortMappings {
13592			if v == nil {
13593				continue
13594			}
13595			if err := v.Validate(); err != nil {
13596				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PortMappings", i), err.(request.ErrInvalidParams))
13597			}
13598		}
13599	}
13600
13601	if invalidParams.Len() > 0 {
13602		return invalidParams
13603	}
13604	return nil
13605}
13606
13607// SetPortMappings sets the PortMappings field's value.
13608func (s *PortForwardingConfig) SetPortMappings(v []*PortMapping) *PortForwardingConfig {
13609	s.PortMappings = v
13610	return s
13611}
13612
13613// An object representing a port mapping.
13614type PortMapping struct {
13615	_ struct{} `type:"structure"`
13616
13617	// The port number on the application.
13618	//
13619	// ApplicationPort is a required field
13620	ApplicationPort *int64 `locationName:"applicationPort" min:"1024" type:"integer" required:"true"`
13621
13622	// A Boolean indicating whether to enable this port mapping on public IP.
13623	EnableOnPublicIp *bool `locationName:"enableOnPublicIp" type:"boolean"`
13624
13625	// The port number on the simulation job instance to use as a remote connection
13626	// point.
13627	//
13628	// JobPort is a required field
13629	JobPort *int64 `locationName:"jobPort" min:"1" type:"integer" required:"true"`
13630}
13631
13632// String returns the string representation
13633func (s PortMapping) String() string {
13634	return awsutil.Prettify(s)
13635}
13636
13637// GoString returns the string representation
13638func (s PortMapping) GoString() string {
13639	return s.String()
13640}
13641
13642// Validate inspects the fields of the type to determine if they are valid.
13643func (s *PortMapping) Validate() error {
13644	invalidParams := request.ErrInvalidParams{Context: "PortMapping"}
13645	if s.ApplicationPort == nil {
13646		invalidParams.Add(request.NewErrParamRequired("ApplicationPort"))
13647	}
13648	if s.ApplicationPort != nil && *s.ApplicationPort < 1024 {
13649		invalidParams.Add(request.NewErrParamMinValue("ApplicationPort", 1024))
13650	}
13651	if s.JobPort == nil {
13652		invalidParams.Add(request.NewErrParamRequired("JobPort"))
13653	}
13654	if s.JobPort != nil && *s.JobPort < 1 {
13655		invalidParams.Add(request.NewErrParamMinValue("JobPort", 1))
13656	}
13657
13658	if invalidParams.Len() > 0 {
13659		return invalidParams
13660	}
13661	return nil
13662}
13663
13664// SetApplicationPort sets the ApplicationPort field's value.
13665func (s *PortMapping) SetApplicationPort(v int64) *PortMapping {
13666	s.ApplicationPort = &v
13667	return s
13668}
13669
13670// SetEnableOnPublicIp sets the EnableOnPublicIp field's value.
13671func (s *PortMapping) SetEnableOnPublicIp(v bool) *PortMapping {
13672	s.EnableOnPublicIp = &v
13673	return s
13674}
13675
13676// SetJobPort sets the JobPort field's value.
13677func (s *PortMapping) SetJobPort(v int64) *PortMapping {
13678	s.JobPort = &v
13679	return s
13680}
13681
13682// Information about the progress of a deployment job.
13683type ProgressDetail struct {
13684	_ struct{} `type:"structure"`
13685
13686	// The current progress status.
13687	//
13688	// Validating
13689	//
13690	// Validating the deployment.
13691	//
13692	// DownloadingExtracting
13693	//
13694	// Downloading and extracting the bundle on the robot.
13695	//
13696	// ExecutingPreLaunch
13697	//
13698	// Executing pre-launch script(s) if provided.
13699	//
13700	// Launching
13701	//
13702	// Launching the robot application.
13703	//
13704	// ExecutingPostLaunch
13705	//
13706	// Executing post-launch script(s) if provided.
13707	//
13708	// Finished
13709	//
13710	// Deployment is complete.
13711	CurrentProgress *string `locationName:"currentProgress" type:"string" enum:"RobotDeploymentStep"`
13712
13713	// Estimated amount of time in seconds remaining in the step. This currently
13714	// only applies to the Downloading/Extracting step of the deployment. It is
13715	// empty for other steps.
13716	EstimatedTimeRemainingSeconds *int64 `locationName:"estimatedTimeRemainingSeconds" type:"integer"`
13717
13718	// Precentage of the step that is done. This currently only applies to the Downloading/Extracting
13719	// step of the deployment. It is empty for other steps.
13720	PercentDone *float64 `locationName:"percentDone" type:"float"`
13721
13722	// The Amazon Resource Name (ARN) of the deployment job.
13723	TargetResource *string `locationName:"targetResource" type:"string"`
13724}
13725
13726// String returns the string representation
13727func (s ProgressDetail) String() string {
13728	return awsutil.Prettify(s)
13729}
13730
13731// GoString returns the string representation
13732func (s ProgressDetail) GoString() string {
13733	return s.String()
13734}
13735
13736// SetCurrentProgress sets the CurrentProgress field's value.
13737func (s *ProgressDetail) SetCurrentProgress(v string) *ProgressDetail {
13738	s.CurrentProgress = &v
13739	return s
13740}
13741
13742// SetEstimatedTimeRemainingSeconds sets the EstimatedTimeRemainingSeconds field's value.
13743func (s *ProgressDetail) SetEstimatedTimeRemainingSeconds(v int64) *ProgressDetail {
13744	s.EstimatedTimeRemainingSeconds = &v
13745	return s
13746}
13747
13748// SetPercentDone sets the PercentDone field's value.
13749func (s *ProgressDetail) SetPercentDone(v float64) *ProgressDetail {
13750	s.PercentDone = &v
13751	return s
13752}
13753
13754// SetTargetResource sets the TargetResource field's value.
13755func (s *ProgressDetail) SetTargetResource(v string) *ProgressDetail {
13756	s.TargetResource = &v
13757	return s
13758}
13759
13760type RegisterRobotInput struct {
13761	_ struct{} `type:"structure"`
13762
13763	// The Amazon Resource Name (ARN) of the fleet.
13764	//
13765	// Fleet is a required field
13766	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
13767
13768	// The Amazon Resource Name (ARN) of the robot.
13769	//
13770	// Robot is a required field
13771	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
13772}
13773
13774// String returns the string representation
13775func (s RegisterRobotInput) String() string {
13776	return awsutil.Prettify(s)
13777}
13778
13779// GoString returns the string representation
13780func (s RegisterRobotInput) GoString() string {
13781	return s.String()
13782}
13783
13784// Validate inspects the fields of the type to determine if they are valid.
13785func (s *RegisterRobotInput) Validate() error {
13786	invalidParams := request.ErrInvalidParams{Context: "RegisterRobotInput"}
13787	if s.Fleet == nil {
13788		invalidParams.Add(request.NewErrParamRequired("Fleet"))
13789	}
13790	if s.Fleet != nil && len(*s.Fleet) < 1 {
13791		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
13792	}
13793	if s.Robot == nil {
13794		invalidParams.Add(request.NewErrParamRequired("Robot"))
13795	}
13796	if s.Robot != nil && len(*s.Robot) < 1 {
13797		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
13798	}
13799
13800	if invalidParams.Len() > 0 {
13801		return invalidParams
13802	}
13803	return nil
13804}
13805
13806// SetFleet sets the Fleet field's value.
13807func (s *RegisterRobotInput) SetFleet(v string) *RegisterRobotInput {
13808	s.Fleet = &v
13809	return s
13810}
13811
13812// SetRobot sets the Robot field's value.
13813func (s *RegisterRobotInput) SetRobot(v string) *RegisterRobotInput {
13814	s.Robot = &v
13815	return s
13816}
13817
13818type RegisterRobotOutput struct {
13819	_ struct{} `type:"structure"`
13820
13821	// The Amazon Resource Name (ARN) of the fleet that the robot will join.
13822	Fleet *string `locationName:"fleet" min:"1" type:"string"`
13823
13824	// Information about the robot registration.
13825	Robot *string `locationName:"robot" min:"1" type:"string"`
13826}
13827
13828// String returns the string representation
13829func (s RegisterRobotOutput) String() string {
13830	return awsutil.Prettify(s)
13831}
13832
13833// GoString returns the string representation
13834func (s RegisterRobotOutput) GoString() string {
13835	return s.String()
13836}
13837
13838// SetFleet sets the Fleet field's value.
13839func (s *RegisterRobotOutput) SetFleet(v string) *RegisterRobotOutput {
13840	s.Fleet = &v
13841	return s
13842}
13843
13844// SetRobot sets the Robot field's value.
13845func (s *RegisterRobotOutput) SetRobot(v string) *RegisterRobotOutput {
13846	s.Robot = &v
13847	return s
13848}
13849
13850// Information about a rendering engine.
13851type RenderingEngine struct {
13852	_ struct{} `type:"structure"`
13853
13854	// The name of the rendering engine.
13855	Name *string `locationName:"name" type:"string" enum:"RenderingEngineType"`
13856
13857	// The version of the rendering engine.
13858	Version *string `locationName:"version" min:"1" type:"string"`
13859}
13860
13861// String returns the string representation
13862func (s RenderingEngine) String() string {
13863	return awsutil.Prettify(s)
13864}
13865
13866// GoString returns the string representation
13867func (s RenderingEngine) GoString() string {
13868	return s.String()
13869}
13870
13871// Validate inspects the fields of the type to determine if they are valid.
13872func (s *RenderingEngine) Validate() error {
13873	invalidParams := request.ErrInvalidParams{Context: "RenderingEngine"}
13874	if s.Version != nil && len(*s.Version) < 1 {
13875		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
13876	}
13877
13878	if invalidParams.Len() > 0 {
13879		return invalidParams
13880	}
13881	return nil
13882}
13883
13884// SetName sets the Name field's value.
13885func (s *RenderingEngine) SetName(v string) *RenderingEngine {
13886	s.Name = &v
13887	return s
13888}
13889
13890// SetVersion sets the Version field's value.
13891func (s *RenderingEngine) SetVersion(v string) *RenderingEngine {
13892	s.Version = &v
13893	return s
13894}
13895
13896// The specified resource already exists.
13897type ResourceAlreadyExistsException struct {
13898	_            struct{}                  `type:"structure"`
13899	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13900
13901	Message_ *string `locationName:"message" type:"string"`
13902}
13903
13904// String returns the string representation
13905func (s ResourceAlreadyExistsException) String() string {
13906	return awsutil.Prettify(s)
13907}
13908
13909// GoString returns the string representation
13910func (s ResourceAlreadyExistsException) GoString() string {
13911	return s.String()
13912}
13913
13914func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error {
13915	return &ResourceAlreadyExistsException{
13916		RespMetadata: v,
13917	}
13918}
13919
13920// Code returns the exception type name.
13921func (s *ResourceAlreadyExistsException) Code() string {
13922	return "ResourceAlreadyExistsException"
13923}
13924
13925// Message returns the exception's message.
13926func (s *ResourceAlreadyExistsException) Message() string {
13927	if s.Message_ != nil {
13928		return *s.Message_
13929	}
13930	return ""
13931}
13932
13933// OrigErr always returns nil, satisfies awserr.Error interface.
13934func (s *ResourceAlreadyExistsException) OrigErr() error {
13935	return nil
13936}
13937
13938func (s *ResourceAlreadyExistsException) Error() string {
13939	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13940}
13941
13942// Status code returns the HTTP status code for the request's response error.
13943func (s *ResourceAlreadyExistsException) StatusCode() int {
13944	return s.RespMetadata.StatusCode
13945}
13946
13947// RequestID returns the service's response RequestID for request.
13948func (s *ResourceAlreadyExistsException) RequestID() string {
13949	return s.RespMetadata.RequestID
13950}
13951
13952// The specified resource does not exist.
13953type ResourceNotFoundException struct {
13954	_            struct{}                  `type:"structure"`
13955	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13956
13957	Message_ *string `locationName:"message" type:"string"`
13958}
13959
13960// String returns the string representation
13961func (s ResourceNotFoundException) String() string {
13962	return awsutil.Prettify(s)
13963}
13964
13965// GoString returns the string representation
13966func (s ResourceNotFoundException) GoString() string {
13967	return s.String()
13968}
13969
13970func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
13971	return &ResourceNotFoundException{
13972		RespMetadata: v,
13973	}
13974}
13975
13976// Code returns the exception type name.
13977func (s *ResourceNotFoundException) Code() string {
13978	return "ResourceNotFoundException"
13979}
13980
13981// Message returns the exception's message.
13982func (s *ResourceNotFoundException) Message() string {
13983	if s.Message_ != nil {
13984		return *s.Message_
13985	}
13986	return ""
13987}
13988
13989// OrigErr always returns nil, satisfies awserr.Error interface.
13990func (s *ResourceNotFoundException) OrigErr() error {
13991	return nil
13992}
13993
13994func (s *ResourceNotFoundException) Error() string {
13995	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13996}
13997
13998// Status code returns the HTTP status code for the request's response error.
13999func (s *ResourceNotFoundException) StatusCode() int {
14000	return s.RespMetadata.StatusCode
14001}
14002
14003// RequestID returns the service's response RequestID for request.
14004func (s *ResourceNotFoundException) RequestID() string {
14005	return s.RespMetadata.RequestID
14006}
14007
14008type RestartSimulationJobInput struct {
14009	_ struct{} `type:"structure"`
14010
14011	// The Amazon Resource Name (ARN) of the simulation job.
14012	//
14013	// Job is a required field
14014	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
14015}
14016
14017// String returns the string representation
14018func (s RestartSimulationJobInput) String() string {
14019	return awsutil.Prettify(s)
14020}
14021
14022// GoString returns the string representation
14023func (s RestartSimulationJobInput) GoString() string {
14024	return s.String()
14025}
14026
14027// Validate inspects the fields of the type to determine if they are valid.
14028func (s *RestartSimulationJobInput) Validate() error {
14029	invalidParams := request.ErrInvalidParams{Context: "RestartSimulationJobInput"}
14030	if s.Job == nil {
14031		invalidParams.Add(request.NewErrParamRequired("Job"))
14032	}
14033	if s.Job != nil && len(*s.Job) < 1 {
14034		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
14035	}
14036
14037	if invalidParams.Len() > 0 {
14038		return invalidParams
14039	}
14040	return nil
14041}
14042
14043// SetJob sets the Job field's value.
14044func (s *RestartSimulationJobInput) SetJob(v string) *RestartSimulationJobInput {
14045	s.Job = &v
14046	return s
14047}
14048
14049type RestartSimulationJobOutput struct {
14050	_ struct{} `type:"structure"`
14051}
14052
14053// String returns the string representation
14054func (s RestartSimulationJobOutput) String() string {
14055	return awsutil.Prettify(s)
14056}
14057
14058// GoString returns the string representation
14059func (s RestartSimulationJobOutput) GoString() string {
14060	return s.String()
14061}
14062
14063// Information about a robot.
14064type Robot struct {
14065	_ struct{} `type:"structure"`
14066
14067	// The architecture of the robot.
14068	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
14069
14070	// The Amazon Resource Name (ARN) of the robot.
14071	Arn *string `locationName:"arn" min:"1" type:"string"`
14072
14073	// The time, in milliseconds since the epoch, when the robot was created.
14074	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
14075
14076	// The Amazon Resource Name (ARN) of the fleet.
14077	FleetArn *string `locationName:"fleetArn" min:"1" type:"string"`
14078
14079	// The Greengrass group associated with the robot.
14080	GreenGrassGroupId *string `locationName:"greenGrassGroupId" min:"1" type:"string"`
14081
14082	// The Amazon Resource Name (ARN) of the last deployment job.
14083	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
14084
14085	// The time of the last deployment.
14086	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
14087
14088	// The name of the robot.
14089	Name *string `locationName:"name" min:"1" type:"string"`
14090
14091	// The status of the robot.
14092	Status *string `locationName:"status" type:"string" enum:"RobotStatus"`
14093}
14094
14095// String returns the string representation
14096func (s Robot) String() string {
14097	return awsutil.Prettify(s)
14098}
14099
14100// GoString returns the string representation
14101func (s Robot) GoString() string {
14102	return s.String()
14103}
14104
14105// SetArchitecture sets the Architecture field's value.
14106func (s *Robot) SetArchitecture(v string) *Robot {
14107	s.Architecture = &v
14108	return s
14109}
14110
14111// SetArn sets the Arn field's value.
14112func (s *Robot) SetArn(v string) *Robot {
14113	s.Arn = &v
14114	return s
14115}
14116
14117// SetCreatedAt sets the CreatedAt field's value.
14118func (s *Robot) SetCreatedAt(v time.Time) *Robot {
14119	s.CreatedAt = &v
14120	return s
14121}
14122
14123// SetFleetArn sets the FleetArn field's value.
14124func (s *Robot) SetFleetArn(v string) *Robot {
14125	s.FleetArn = &v
14126	return s
14127}
14128
14129// SetGreenGrassGroupId sets the GreenGrassGroupId field's value.
14130func (s *Robot) SetGreenGrassGroupId(v string) *Robot {
14131	s.GreenGrassGroupId = &v
14132	return s
14133}
14134
14135// SetLastDeploymentJob sets the LastDeploymentJob field's value.
14136func (s *Robot) SetLastDeploymentJob(v string) *Robot {
14137	s.LastDeploymentJob = &v
14138	return s
14139}
14140
14141// SetLastDeploymentTime sets the LastDeploymentTime field's value.
14142func (s *Robot) SetLastDeploymentTime(v time.Time) *Robot {
14143	s.LastDeploymentTime = &v
14144	return s
14145}
14146
14147// SetName sets the Name field's value.
14148func (s *Robot) SetName(v string) *Robot {
14149	s.Name = &v
14150	return s
14151}
14152
14153// SetStatus sets the Status field's value.
14154func (s *Robot) SetStatus(v string) *Robot {
14155	s.Status = &v
14156	return s
14157}
14158
14159// Application configuration information for a robot.
14160type RobotApplicationConfig struct {
14161	_ struct{} `type:"structure"`
14162
14163	// The application information for the robot application.
14164	//
14165	// Application is a required field
14166	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
14167
14168	// The version of the robot application.
14169	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
14170
14171	// The launch configuration for the robot application.
14172	//
14173	// LaunchConfig is a required field
14174	LaunchConfig *LaunchConfig `locationName:"launchConfig" type:"structure" required:"true"`
14175
14176	// Information about tools configured for the robot application.
14177	Tools []*Tool `locationName:"tools" type:"list"`
14178
14179	// The upload configurations for the robot application.
14180	UploadConfigurations []*UploadConfiguration `locationName:"uploadConfigurations" type:"list"`
14181
14182	// A Boolean indicating whether to use default robot application tools. The
14183	// default tools are rviz, rqt, terminal and rosbag record. The default is False.
14184	UseDefaultTools *bool `locationName:"useDefaultTools" type:"boolean"`
14185
14186	// A Boolean indicating whether to use default upload configurations. By default,
14187	// .ros and .gazebo files are uploaded when the application terminates and all
14188	// ROS topics will be recorded.
14189	//
14190	// If you set this value, you must specify an outputLocation.
14191	UseDefaultUploadConfigurations *bool `locationName:"useDefaultUploadConfigurations" type:"boolean"`
14192}
14193
14194// String returns the string representation
14195func (s RobotApplicationConfig) String() string {
14196	return awsutil.Prettify(s)
14197}
14198
14199// GoString returns the string representation
14200func (s RobotApplicationConfig) GoString() string {
14201	return s.String()
14202}
14203
14204// Validate inspects the fields of the type to determine if they are valid.
14205func (s *RobotApplicationConfig) Validate() error {
14206	invalidParams := request.ErrInvalidParams{Context: "RobotApplicationConfig"}
14207	if s.Application == nil {
14208		invalidParams.Add(request.NewErrParamRequired("Application"))
14209	}
14210	if s.Application != nil && len(*s.Application) < 1 {
14211		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
14212	}
14213	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
14214		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
14215	}
14216	if s.LaunchConfig == nil {
14217		invalidParams.Add(request.NewErrParamRequired("LaunchConfig"))
14218	}
14219	if s.LaunchConfig != nil {
14220		if err := s.LaunchConfig.Validate(); err != nil {
14221			invalidParams.AddNested("LaunchConfig", err.(request.ErrInvalidParams))
14222		}
14223	}
14224	if s.Tools != nil {
14225		for i, v := range s.Tools {
14226			if v == nil {
14227				continue
14228			}
14229			if err := v.Validate(); err != nil {
14230				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tools", i), err.(request.ErrInvalidParams))
14231			}
14232		}
14233	}
14234	if s.UploadConfigurations != nil {
14235		for i, v := range s.UploadConfigurations {
14236			if v == nil {
14237				continue
14238			}
14239			if err := v.Validate(); err != nil {
14240				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UploadConfigurations", i), err.(request.ErrInvalidParams))
14241			}
14242		}
14243	}
14244
14245	if invalidParams.Len() > 0 {
14246		return invalidParams
14247	}
14248	return nil
14249}
14250
14251// SetApplication sets the Application field's value.
14252func (s *RobotApplicationConfig) SetApplication(v string) *RobotApplicationConfig {
14253	s.Application = &v
14254	return s
14255}
14256
14257// SetApplicationVersion sets the ApplicationVersion field's value.
14258func (s *RobotApplicationConfig) SetApplicationVersion(v string) *RobotApplicationConfig {
14259	s.ApplicationVersion = &v
14260	return s
14261}
14262
14263// SetLaunchConfig sets the LaunchConfig field's value.
14264func (s *RobotApplicationConfig) SetLaunchConfig(v *LaunchConfig) *RobotApplicationConfig {
14265	s.LaunchConfig = v
14266	return s
14267}
14268
14269// SetTools sets the Tools field's value.
14270func (s *RobotApplicationConfig) SetTools(v []*Tool) *RobotApplicationConfig {
14271	s.Tools = v
14272	return s
14273}
14274
14275// SetUploadConfigurations sets the UploadConfigurations field's value.
14276func (s *RobotApplicationConfig) SetUploadConfigurations(v []*UploadConfiguration) *RobotApplicationConfig {
14277	s.UploadConfigurations = v
14278	return s
14279}
14280
14281// SetUseDefaultTools sets the UseDefaultTools field's value.
14282func (s *RobotApplicationConfig) SetUseDefaultTools(v bool) *RobotApplicationConfig {
14283	s.UseDefaultTools = &v
14284	return s
14285}
14286
14287// SetUseDefaultUploadConfigurations sets the UseDefaultUploadConfigurations field's value.
14288func (s *RobotApplicationConfig) SetUseDefaultUploadConfigurations(v bool) *RobotApplicationConfig {
14289	s.UseDefaultUploadConfigurations = &v
14290	return s
14291}
14292
14293// Summary information for a robot application.
14294type RobotApplicationSummary struct {
14295	_ struct{} `type:"structure"`
14296
14297	// The Amazon Resource Name (ARN) of the robot.
14298	Arn *string `locationName:"arn" min:"1" type:"string"`
14299
14300	// The time, in milliseconds since the epoch, when the robot application was
14301	// last updated.
14302	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
14303
14304	// The name of the robot application.
14305	Name *string `locationName:"name" min:"1" type:"string"`
14306
14307	// Information about a robot software suite (ROS distribution).
14308	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
14309
14310	// The version of the robot application.
14311	Version *string `locationName:"version" min:"1" type:"string"`
14312}
14313
14314// String returns the string representation
14315func (s RobotApplicationSummary) String() string {
14316	return awsutil.Prettify(s)
14317}
14318
14319// GoString returns the string representation
14320func (s RobotApplicationSummary) GoString() string {
14321	return s.String()
14322}
14323
14324// SetArn sets the Arn field's value.
14325func (s *RobotApplicationSummary) SetArn(v string) *RobotApplicationSummary {
14326	s.Arn = &v
14327	return s
14328}
14329
14330// SetLastUpdatedAt sets the LastUpdatedAt field's value.
14331func (s *RobotApplicationSummary) SetLastUpdatedAt(v time.Time) *RobotApplicationSummary {
14332	s.LastUpdatedAt = &v
14333	return s
14334}
14335
14336// SetName sets the Name field's value.
14337func (s *RobotApplicationSummary) SetName(v string) *RobotApplicationSummary {
14338	s.Name = &v
14339	return s
14340}
14341
14342// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
14343func (s *RobotApplicationSummary) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *RobotApplicationSummary {
14344	s.RobotSoftwareSuite = v
14345	return s
14346}
14347
14348// SetVersion sets the Version field's value.
14349func (s *RobotApplicationSummary) SetVersion(v string) *RobotApplicationSummary {
14350	s.Version = &v
14351	return s
14352}
14353
14354// Information about a robot deployment.
14355type RobotDeployment struct {
14356	_ struct{} `type:"structure"`
14357
14358	// The robot deployment Amazon Resource Name (ARN).
14359	Arn *string `locationName:"arn" min:"1" type:"string"`
14360
14361	// The time, in milliseconds since the epoch, when the deployment finished.
14362	DeploymentFinishTime *time.Time `locationName:"deploymentFinishTime" type:"timestamp"`
14363
14364	// The time, in milliseconds since the epoch, when the deployment was started.
14365	DeploymentStartTime *time.Time `locationName:"deploymentStartTime" type:"timestamp"`
14366
14367	// The robot deployment failure code.
14368	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
14369
14370	// A short description of the reason why the robot deployment failed.
14371	FailureReason *string `locationName:"failureReason" type:"string"`
14372
14373	// Information about how the deployment is progressing.
14374	ProgressDetail *ProgressDetail `locationName:"progressDetail" type:"structure"`
14375
14376	// The status of the robot deployment.
14377	Status *string `locationName:"status" type:"string" enum:"RobotStatus"`
14378}
14379
14380// String returns the string representation
14381func (s RobotDeployment) String() string {
14382	return awsutil.Prettify(s)
14383}
14384
14385// GoString returns the string representation
14386func (s RobotDeployment) GoString() string {
14387	return s.String()
14388}
14389
14390// SetArn sets the Arn field's value.
14391func (s *RobotDeployment) SetArn(v string) *RobotDeployment {
14392	s.Arn = &v
14393	return s
14394}
14395
14396// SetDeploymentFinishTime sets the DeploymentFinishTime field's value.
14397func (s *RobotDeployment) SetDeploymentFinishTime(v time.Time) *RobotDeployment {
14398	s.DeploymentFinishTime = &v
14399	return s
14400}
14401
14402// SetDeploymentStartTime sets the DeploymentStartTime field's value.
14403func (s *RobotDeployment) SetDeploymentStartTime(v time.Time) *RobotDeployment {
14404	s.DeploymentStartTime = &v
14405	return s
14406}
14407
14408// SetFailureCode sets the FailureCode field's value.
14409func (s *RobotDeployment) SetFailureCode(v string) *RobotDeployment {
14410	s.FailureCode = &v
14411	return s
14412}
14413
14414// SetFailureReason sets the FailureReason field's value.
14415func (s *RobotDeployment) SetFailureReason(v string) *RobotDeployment {
14416	s.FailureReason = &v
14417	return s
14418}
14419
14420// SetProgressDetail sets the ProgressDetail field's value.
14421func (s *RobotDeployment) SetProgressDetail(v *ProgressDetail) *RobotDeployment {
14422	s.ProgressDetail = v
14423	return s
14424}
14425
14426// SetStatus sets the Status field's value.
14427func (s *RobotDeployment) SetStatus(v string) *RobotDeployment {
14428	s.Status = &v
14429	return s
14430}
14431
14432// Information about a robot software suite (ROS distribution).
14433type RobotSoftwareSuite struct {
14434	_ struct{} `type:"structure"`
14435
14436	// The name of the robot software suite (ROS distribution).
14437	Name *string `locationName:"name" type:"string" enum:"RobotSoftwareSuiteType"`
14438
14439	// The version of the robot software suite (ROS distribution).
14440	Version *string `locationName:"version" type:"string" enum:"RobotSoftwareSuiteVersionType"`
14441}
14442
14443// String returns the string representation
14444func (s RobotSoftwareSuite) String() string {
14445	return awsutil.Prettify(s)
14446}
14447
14448// GoString returns the string representation
14449func (s RobotSoftwareSuite) GoString() string {
14450	return s.String()
14451}
14452
14453// SetName sets the Name field's value.
14454func (s *RobotSoftwareSuite) SetName(v string) *RobotSoftwareSuite {
14455	s.Name = &v
14456	return s
14457}
14458
14459// SetVersion sets the Version field's value.
14460func (s *RobotSoftwareSuite) SetVersion(v string) *RobotSoftwareSuite {
14461	s.Version = &v
14462	return s
14463}
14464
14465// Information about S3 keys.
14466type S3KeyOutput struct {
14467	_ struct{} `type:"structure"`
14468
14469	// The etag for the object.
14470	Etag *string `locationName:"etag" type:"string"`
14471
14472	// The S3 key.
14473	S3Key *string `locationName:"s3Key" min:"1" type:"string"`
14474}
14475
14476// String returns the string representation
14477func (s S3KeyOutput) String() string {
14478	return awsutil.Prettify(s)
14479}
14480
14481// GoString returns the string representation
14482func (s S3KeyOutput) GoString() string {
14483	return s.String()
14484}
14485
14486// SetEtag sets the Etag field's value.
14487func (s *S3KeyOutput) SetEtag(v string) *S3KeyOutput {
14488	s.Etag = &v
14489	return s
14490}
14491
14492// SetS3Key sets the S3Key field's value.
14493func (s *S3KeyOutput) SetS3Key(v string) *S3KeyOutput {
14494	s.S3Key = &v
14495	return s
14496}
14497
14498// Information about an S3 object.
14499type S3Object struct {
14500	_ struct{} `type:"structure"`
14501
14502	// The bucket containing the object.
14503	//
14504	// Bucket is a required field
14505	Bucket *string `locationName:"bucket" min:"3" type:"string" required:"true"`
14506
14507	// The etag of the object.
14508	Etag *string `locationName:"etag" type:"string"`
14509
14510	// The key of the object.
14511	//
14512	// Key is a required field
14513	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
14514}
14515
14516// String returns the string representation
14517func (s S3Object) String() string {
14518	return awsutil.Prettify(s)
14519}
14520
14521// GoString returns the string representation
14522func (s S3Object) GoString() string {
14523	return s.String()
14524}
14525
14526// Validate inspects the fields of the type to determine if they are valid.
14527func (s *S3Object) Validate() error {
14528	invalidParams := request.ErrInvalidParams{Context: "S3Object"}
14529	if s.Bucket == nil {
14530		invalidParams.Add(request.NewErrParamRequired("Bucket"))
14531	}
14532	if s.Bucket != nil && len(*s.Bucket) < 3 {
14533		invalidParams.Add(request.NewErrParamMinLen("Bucket", 3))
14534	}
14535	if s.Key == nil {
14536		invalidParams.Add(request.NewErrParamRequired("Key"))
14537	}
14538	if s.Key != nil && len(*s.Key) < 1 {
14539		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
14540	}
14541
14542	if invalidParams.Len() > 0 {
14543		return invalidParams
14544	}
14545	return nil
14546}
14547
14548// SetBucket sets the Bucket field's value.
14549func (s *S3Object) SetBucket(v string) *S3Object {
14550	s.Bucket = &v
14551	return s
14552}
14553
14554// SetEtag sets the Etag field's value.
14555func (s *S3Object) SetEtag(v string) *S3Object {
14556	s.Etag = &v
14557	return s
14558}
14559
14560// SetKey sets the Key field's value.
14561func (s *S3Object) SetKey(v string) *S3Object {
14562	s.Key = &v
14563	return s
14564}
14565
14566// The request has failed due to a temporary failure of the server.
14567type ServiceUnavailableException struct {
14568	_            struct{}                  `type:"structure"`
14569	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14570
14571	Message_ *string `locationName:"message" type:"string"`
14572}
14573
14574// String returns the string representation
14575func (s ServiceUnavailableException) String() string {
14576	return awsutil.Prettify(s)
14577}
14578
14579// GoString returns the string representation
14580func (s ServiceUnavailableException) GoString() string {
14581	return s.String()
14582}
14583
14584func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error {
14585	return &ServiceUnavailableException{
14586		RespMetadata: v,
14587	}
14588}
14589
14590// Code returns the exception type name.
14591func (s *ServiceUnavailableException) Code() string {
14592	return "ServiceUnavailableException"
14593}
14594
14595// Message returns the exception's message.
14596func (s *ServiceUnavailableException) Message() string {
14597	if s.Message_ != nil {
14598		return *s.Message_
14599	}
14600	return ""
14601}
14602
14603// OrigErr always returns nil, satisfies awserr.Error interface.
14604func (s *ServiceUnavailableException) OrigErr() error {
14605	return nil
14606}
14607
14608func (s *ServiceUnavailableException) Error() string {
14609	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14610}
14611
14612// Status code returns the HTTP status code for the request's response error.
14613func (s *ServiceUnavailableException) StatusCode() int {
14614	return s.RespMetadata.StatusCode
14615}
14616
14617// RequestID returns the service's response RequestID for request.
14618func (s *ServiceUnavailableException) RequestID() string {
14619	return s.RespMetadata.RequestID
14620}
14621
14622// Information about a simulation application configuration.
14623type SimulationApplicationConfig struct {
14624	_ struct{} `type:"structure"`
14625
14626	// The application information for the simulation application.
14627	//
14628	// Application is a required field
14629	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
14630
14631	// The version of the simulation application.
14632	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
14633
14634	// The launch configuration for the simulation application.
14635	//
14636	// LaunchConfig is a required field
14637	LaunchConfig *LaunchConfig `locationName:"launchConfig" type:"structure" required:"true"`
14638
14639	// Information about tools configured for the simulation application.
14640	Tools []*Tool `locationName:"tools" type:"list"`
14641
14642	// Information about upload configurations for the simulation application.
14643	UploadConfigurations []*UploadConfiguration `locationName:"uploadConfigurations" type:"list"`
14644
14645	// A Boolean indicating whether to use default simulation application tools.
14646	// The default tools are rviz, rqt, terminal and rosbag record. The default
14647	// is False.
14648	UseDefaultTools *bool `locationName:"useDefaultTools" type:"boolean"`
14649
14650	// A Boolean indicating whether to use default upload configurations. By default,
14651	// .ros and .gazebo files are uploaded when the application terminates and all
14652	// ROS topics will be recorded.
14653	//
14654	// If you set this value, you must specify an outputLocation.
14655	UseDefaultUploadConfigurations *bool `locationName:"useDefaultUploadConfigurations" type:"boolean"`
14656
14657	// A list of world configurations.
14658	WorldConfigs []*WorldConfig `locationName:"worldConfigs" type:"list"`
14659}
14660
14661// String returns the string representation
14662func (s SimulationApplicationConfig) String() string {
14663	return awsutil.Prettify(s)
14664}
14665
14666// GoString returns the string representation
14667func (s SimulationApplicationConfig) GoString() string {
14668	return s.String()
14669}
14670
14671// Validate inspects the fields of the type to determine if they are valid.
14672func (s *SimulationApplicationConfig) Validate() error {
14673	invalidParams := request.ErrInvalidParams{Context: "SimulationApplicationConfig"}
14674	if s.Application == nil {
14675		invalidParams.Add(request.NewErrParamRequired("Application"))
14676	}
14677	if s.Application != nil && len(*s.Application) < 1 {
14678		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
14679	}
14680	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
14681		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
14682	}
14683	if s.LaunchConfig == nil {
14684		invalidParams.Add(request.NewErrParamRequired("LaunchConfig"))
14685	}
14686	if s.LaunchConfig != nil {
14687		if err := s.LaunchConfig.Validate(); err != nil {
14688			invalidParams.AddNested("LaunchConfig", err.(request.ErrInvalidParams))
14689		}
14690	}
14691	if s.Tools != nil {
14692		for i, v := range s.Tools {
14693			if v == nil {
14694				continue
14695			}
14696			if err := v.Validate(); err != nil {
14697				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tools", i), err.(request.ErrInvalidParams))
14698			}
14699		}
14700	}
14701	if s.UploadConfigurations != nil {
14702		for i, v := range s.UploadConfigurations {
14703			if v == nil {
14704				continue
14705			}
14706			if err := v.Validate(); err != nil {
14707				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UploadConfigurations", i), err.(request.ErrInvalidParams))
14708			}
14709		}
14710	}
14711	if s.WorldConfigs != nil {
14712		for i, v := range s.WorldConfigs {
14713			if v == nil {
14714				continue
14715			}
14716			if err := v.Validate(); err != nil {
14717				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WorldConfigs", i), err.(request.ErrInvalidParams))
14718			}
14719		}
14720	}
14721
14722	if invalidParams.Len() > 0 {
14723		return invalidParams
14724	}
14725	return nil
14726}
14727
14728// SetApplication sets the Application field's value.
14729func (s *SimulationApplicationConfig) SetApplication(v string) *SimulationApplicationConfig {
14730	s.Application = &v
14731	return s
14732}
14733
14734// SetApplicationVersion sets the ApplicationVersion field's value.
14735func (s *SimulationApplicationConfig) SetApplicationVersion(v string) *SimulationApplicationConfig {
14736	s.ApplicationVersion = &v
14737	return s
14738}
14739
14740// SetLaunchConfig sets the LaunchConfig field's value.
14741func (s *SimulationApplicationConfig) SetLaunchConfig(v *LaunchConfig) *SimulationApplicationConfig {
14742	s.LaunchConfig = v
14743	return s
14744}
14745
14746// SetTools sets the Tools field's value.
14747func (s *SimulationApplicationConfig) SetTools(v []*Tool) *SimulationApplicationConfig {
14748	s.Tools = v
14749	return s
14750}
14751
14752// SetUploadConfigurations sets the UploadConfigurations field's value.
14753func (s *SimulationApplicationConfig) SetUploadConfigurations(v []*UploadConfiguration) *SimulationApplicationConfig {
14754	s.UploadConfigurations = v
14755	return s
14756}
14757
14758// SetUseDefaultTools sets the UseDefaultTools field's value.
14759func (s *SimulationApplicationConfig) SetUseDefaultTools(v bool) *SimulationApplicationConfig {
14760	s.UseDefaultTools = &v
14761	return s
14762}
14763
14764// SetUseDefaultUploadConfigurations sets the UseDefaultUploadConfigurations field's value.
14765func (s *SimulationApplicationConfig) SetUseDefaultUploadConfigurations(v bool) *SimulationApplicationConfig {
14766	s.UseDefaultUploadConfigurations = &v
14767	return s
14768}
14769
14770// SetWorldConfigs sets the WorldConfigs field's value.
14771func (s *SimulationApplicationConfig) SetWorldConfigs(v []*WorldConfig) *SimulationApplicationConfig {
14772	s.WorldConfigs = v
14773	return s
14774}
14775
14776// Summary information for a simulation application.
14777type SimulationApplicationSummary struct {
14778	_ struct{} `type:"structure"`
14779
14780	// The Amazon Resource Name (ARN) of the simulation application.
14781	Arn *string `locationName:"arn" min:"1" type:"string"`
14782
14783	// The time, in milliseconds since the epoch, when the simulation application
14784	// was last updated.
14785	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
14786
14787	// The name of the simulation application.
14788	Name *string `locationName:"name" min:"1" type:"string"`
14789
14790	// Information about a robot software suite (ROS distribution).
14791	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
14792
14793	// Information about a simulation software suite.
14794	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
14795
14796	// The version of the simulation application.
14797	Version *string `locationName:"version" min:"1" type:"string"`
14798}
14799
14800// String returns the string representation
14801func (s SimulationApplicationSummary) String() string {
14802	return awsutil.Prettify(s)
14803}
14804
14805// GoString returns the string representation
14806func (s SimulationApplicationSummary) GoString() string {
14807	return s.String()
14808}
14809
14810// SetArn sets the Arn field's value.
14811func (s *SimulationApplicationSummary) SetArn(v string) *SimulationApplicationSummary {
14812	s.Arn = &v
14813	return s
14814}
14815
14816// SetLastUpdatedAt sets the LastUpdatedAt field's value.
14817func (s *SimulationApplicationSummary) SetLastUpdatedAt(v time.Time) *SimulationApplicationSummary {
14818	s.LastUpdatedAt = &v
14819	return s
14820}
14821
14822// SetName sets the Name field's value.
14823func (s *SimulationApplicationSummary) SetName(v string) *SimulationApplicationSummary {
14824	s.Name = &v
14825	return s
14826}
14827
14828// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
14829func (s *SimulationApplicationSummary) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *SimulationApplicationSummary {
14830	s.RobotSoftwareSuite = v
14831	return s
14832}
14833
14834// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
14835func (s *SimulationApplicationSummary) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *SimulationApplicationSummary {
14836	s.SimulationSoftwareSuite = v
14837	return s
14838}
14839
14840// SetVersion sets the Version field's value.
14841func (s *SimulationApplicationSummary) SetVersion(v string) *SimulationApplicationSummary {
14842	s.Version = &v
14843	return s
14844}
14845
14846// Information about a simulation job.
14847type SimulationJob struct {
14848	_ struct{} `type:"structure"`
14849
14850	// The Amazon Resource Name (ARN) of the simulation job.
14851	Arn *string `locationName:"arn" min:"1" type:"string"`
14852
14853	// A unique identifier for this SimulationJob request.
14854	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
14855
14856	// Compute information for the simulation job
14857	Compute *ComputeResponse `locationName:"compute" type:"structure"`
14858
14859	// The data sources for the simulation job.
14860	DataSources []*DataSource `locationName:"dataSources" type:"list"`
14861
14862	// The failure behavior the simulation job.
14863	//
14864	// Continue
14865	//
14866	// Leaves the host running for its maximum timeout duration after a 4XX error
14867	// code.
14868	//
14869	// Fail
14870	//
14871	// Stop the simulation job and terminate the instance.
14872	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
14873
14874	// The failure code of the simulation job if it failed.
14875	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
14876
14877	// The reason why the simulation job failed.
14878	FailureReason *string `locationName:"failureReason" type:"string"`
14879
14880	// The IAM role that allows the simulation instance to call the AWS APIs that
14881	// are specified in its associated policies on your behalf. This is how credentials
14882	// are passed in to your simulation job.
14883	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
14884
14885	// The time, in milliseconds since the epoch, when the simulation job was last
14886	// started.
14887	LastStartedAt *time.Time `locationName:"lastStartedAt" type:"timestamp"`
14888
14889	// The time, in milliseconds since the epoch, when the simulation job was last
14890	// updated.
14891	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
14892
14893	// The logging configuration.
14894	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
14895
14896	// The maximum simulation job duration in seconds. The value must be 8 days
14897	// (691,200 seconds) or less.
14898	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long"`
14899
14900	// The name of the simulation job.
14901	Name *string `locationName:"name" min:"1" type:"string"`
14902
14903	// Information about a network interface.
14904	NetworkInterface *NetworkInterface `locationName:"networkInterface" type:"structure"`
14905
14906	// Location for output files generated by the simulation job.
14907	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
14908
14909	// A list of robot applications.
14910	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
14911
14912	// A list of simulation applications.
14913	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
14914
14915	// The simulation job execution duration in milliseconds.
14916	SimulationTimeMillis *int64 `locationName:"simulationTimeMillis" type:"long"`
14917
14918	// Status of the simulation job.
14919	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
14920
14921	// A map that contains tag keys and tag values that are attached to the simulation
14922	// job.
14923	Tags map[string]*string `locationName:"tags" type:"map"`
14924
14925	// VPC configuration information.
14926	VpcConfig *VPCConfigResponse `locationName:"vpcConfig" type:"structure"`
14927}
14928
14929// String returns the string representation
14930func (s SimulationJob) String() string {
14931	return awsutil.Prettify(s)
14932}
14933
14934// GoString returns the string representation
14935func (s SimulationJob) GoString() string {
14936	return s.String()
14937}
14938
14939// SetArn sets the Arn field's value.
14940func (s *SimulationJob) SetArn(v string) *SimulationJob {
14941	s.Arn = &v
14942	return s
14943}
14944
14945// SetClientRequestToken sets the ClientRequestToken field's value.
14946func (s *SimulationJob) SetClientRequestToken(v string) *SimulationJob {
14947	s.ClientRequestToken = &v
14948	return s
14949}
14950
14951// SetCompute sets the Compute field's value.
14952func (s *SimulationJob) SetCompute(v *ComputeResponse) *SimulationJob {
14953	s.Compute = v
14954	return s
14955}
14956
14957// SetDataSources sets the DataSources field's value.
14958func (s *SimulationJob) SetDataSources(v []*DataSource) *SimulationJob {
14959	s.DataSources = v
14960	return s
14961}
14962
14963// SetFailureBehavior sets the FailureBehavior field's value.
14964func (s *SimulationJob) SetFailureBehavior(v string) *SimulationJob {
14965	s.FailureBehavior = &v
14966	return s
14967}
14968
14969// SetFailureCode sets the FailureCode field's value.
14970func (s *SimulationJob) SetFailureCode(v string) *SimulationJob {
14971	s.FailureCode = &v
14972	return s
14973}
14974
14975// SetFailureReason sets the FailureReason field's value.
14976func (s *SimulationJob) SetFailureReason(v string) *SimulationJob {
14977	s.FailureReason = &v
14978	return s
14979}
14980
14981// SetIamRole sets the IamRole field's value.
14982func (s *SimulationJob) SetIamRole(v string) *SimulationJob {
14983	s.IamRole = &v
14984	return s
14985}
14986
14987// SetLastStartedAt sets the LastStartedAt field's value.
14988func (s *SimulationJob) SetLastStartedAt(v time.Time) *SimulationJob {
14989	s.LastStartedAt = &v
14990	return s
14991}
14992
14993// SetLastUpdatedAt sets the LastUpdatedAt field's value.
14994func (s *SimulationJob) SetLastUpdatedAt(v time.Time) *SimulationJob {
14995	s.LastUpdatedAt = &v
14996	return s
14997}
14998
14999// SetLoggingConfig sets the LoggingConfig field's value.
15000func (s *SimulationJob) SetLoggingConfig(v *LoggingConfig) *SimulationJob {
15001	s.LoggingConfig = v
15002	return s
15003}
15004
15005// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
15006func (s *SimulationJob) SetMaxJobDurationInSeconds(v int64) *SimulationJob {
15007	s.MaxJobDurationInSeconds = &v
15008	return s
15009}
15010
15011// SetName sets the Name field's value.
15012func (s *SimulationJob) SetName(v string) *SimulationJob {
15013	s.Name = &v
15014	return s
15015}
15016
15017// SetNetworkInterface sets the NetworkInterface field's value.
15018func (s *SimulationJob) SetNetworkInterface(v *NetworkInterface) *SimulationJob {
15019	s.NetworkInterface = v
15020	return s
15021}
15022
15023// SetOutputLocation sets the OutputLocation field's value.
15024func (s *SimulationJob) SetOutputLocation(v *OutputLocation) *SimulationJob {
15025	s.OutputLocation = v
15026	return s
15027}
15028
15029// SetRobotApplications sets the RobotApplications field's value.
15030func (s *SimulationJob) SetRobotApplications(v []*RobotApplicationConfig) *SimulationJob {
15031	s.RobotApplications = v
15032	return s
15033}
15034
15035// SetSimulationApplications sets the SimulationApplications field's value.
15036func (s *SimulationJob) SetSimulationApplications(v []*SimulationApplicationConfig) *SimulationJob {
15037	s.SimulationApplications = v
15038	return s
15039}
15040
15041// SetSimulationTimeMillis sets the SimulationTimeMillis field's value.
15042func (s *SimulationJob) SetSimulationTimeMillis(v int64) *SimulationJob {
15043	s.SimulationTimeMillis = &v
15044	return s
15045}
15046
15047// SetStatus sets the Status field's value.
15048func (s *SimulationJob) SetStatus(v string) *SimulationJob {
15049	s.Status = &v
15050	return s
15051}
15052
15053// SetTags sets the Tags field's value.
15054func (s *SimulationJob) SetTags(v map[string]*string) *SimulationJob {
15055	s.Tags = v
15056	return s
15057}
15058
15059// SetVpcConfig sets the VpcConfig field's value.
15060func (s *SimulationJob) SetVpcConfig(v *VPCConfigResponse) *SimulationJob {
15061	s.VpcConfig = v
15062	return s
15063}
15064
15065// Information about a simulation job batch.
15066type SimulationJobBatchSummary struct {
15067	_ struct{} `type:"structure"`
15068
15069	// The Amazon Resource Name (ARN) of the batch.
15070	Arn *string `locationName:"arn" min:"1" type:"string"`
15071
15072	// The time, in milliseconds since the epoch, when the simulation job batch
15073	// was created.
15074	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
15075
15076	// The number of created simulation job requests.
15077	CreatedRequestCount *int64 `locationName:"createdRequestCount" type:"integer"`
15078
15079	// The number of failed simulation job requests.
15080	FailedRequestCount *int64 `locationName:"failedRequestCount" type:"integer"`
15081
15082	// The time, in milliseconds since the epoch, when the simulation job batch
15083	// was last updated.
15084	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
15085
15086	// The number of pending simulation job requests.
15087	PendingRequestCount *int64 `locationName:"pendingRequestCount" type:"integer"`
15088
15089	// The status of the simulation job batch.
15090	//
15091	// Pending
15092	//
15093	// The simulation job batch request is pending.
15094	//
15095	// InProgress
15096	//
15097	// The simulation job batch is in progress.
15098	//
15099	// Failed
15100	//
15101	// The simulation job batch failed. One or more simulation job requests could
15102	// not be completed due to an internal failure (like InternalServiceError).
15103	// See failureCode and failureReason for more information.
15104	//
15105	// Completed
15106	//
15107	// The simulation batch job completed. A batch is complete when (1) there are
15108	// no pending simulation job requests in the batch and none of the failed simulation
15109	// job requests are due to InternalServiceError and (2) when all created simulation
15110	// jobs have reached a terminal state (for example, Completed or Failed).
15111	//
15112	// Canceled
15113	//
15114	// The simulation batch job was cancelled.
15115	//
15116	// Canceling
15117	//
15118	// The simulation batch job is being cancelled.
15119	//
15120	// Completing
15121	//
15122	// The simulation batch job is completing.
15123	//
15124	// TimingOut
15125	//
15126	// The simulation job batch is timing out.
15127	//
15128	// If a batch timing out, and there are pending requests that were failing due
15129	// to an internal failure (like InternalServiceError), the batch status will
15130	// be Failed. If there are no such failing request, the batch status will be
15131	// TimedOut.
15132	//
15133	// TimedOut
15134	//
15135	// The simulation batch job timed out.
15136	Status *string `locationName:"status" type:"string" enum:"SimulationJobBatchStatus"`
15137}
15138
15139// String returns the string representation
15140func (s SimulationJobBatchSummary) String() string {
15141	return awsutil.Prettify(s)
15142}
15143
15144// GoString returns the string representation
15145func (s SimulationJobBatchSummary) GoString() string {
15146	return s.String()
15147}
15148
15149// SetArn sets the Arn field's value.
15150func (s *SimulationJobBatchSummary) SetArn(v string) *SimulationJobBatchSummary {
15151	s.Arn = &v
15152	return s
15153}
15154
15155// SetCreatedAt sets the CreatedAt field's value.
15156func (s *SimulationJobBatchSummary) SetCreatedAt(v time.Time) *SimulationJobBatchSummary {
15157	s.CreatedAt = &v
15158	return s
15159}
15160
15161// SetCreatedRequestCount sets the CreatedRequestCount field's value.
15162func (s *SimulationJobBatchSummary) SetCreatedRequestCount(v int64) *SimulationJobBatchSummary {
15163	s.CreatedRequestCount = &v
15164	return s
15165}
15166
15167// SetFailedRequestCount sets the FailedRequestCount field's value.
15168func (s *SimulationJobBatchSummary) SetFailedRequestCount(v int64) *SimulationJobBatchSummary {
15169	s.FailedRequestCount = &v
15170	return s
15171}
15172
15173// SetLastUpdatedAt sets the LastUpdatedAt field's value.
15174func (s *SimulationJobBatchSummary) SetLastUpdatedAt(v time.Time) *SimulationJobBatchSummary {
15175	s.LastUpdatedAt = &v
15176	return s
15177}
15178
15179// SetPendingRequestCount sets the PendingRequestCount field's value.
15180func (s *SimulationJobBatchSummary) SetPendingRequestCount(v int64) *SimulationJobBatchSummary {
15181	s.PendingRequestCount = &v
15182	return s
15183}
15184
15185// SetStatus sets the Status field's value.
15186func (s *SimulationJobBatchSummary) SetStatus(v string) *SimulationJobBatchSummary {
15187	s.Status = &v
15188	return s
15189}
15190
15191// Information about a simulation job request.
15192type SimulationJobRequest struct {
15193	_ struct{} `type:"structure"`
15194
15195	// Compute information for the simulation job
15196	Compute *Compute `locationName:"compute" type:"structure"`
15197
15198	// Specify data sources to mount read-only files from S3 into your simulation.
15199	// These files are available under /opt/robomaker/datasources/data_source_name.
15200	//
15201	// There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig
15202	// objects.
15203	DataSources []*DataSourceConfig `locationName:"dataSources" min:"1" type:"list"`
15204
15205	// The failure behavior the simulation job.
15206	//
15207	// Continue
15208	//
15209	// Leaves the host running for its maximum timeout duration after a 4XX error
15210	// code.
15211	//
15212	// Fail
15213	//
15214	// Stop the simulation job and terminate the instance.
15215	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
15216
15217	// The IAM role name that allows the simulation instance to call the AWS APIs
15218	// that are specified in its associated policies on your behalf. This is how
15219	// credentials are passed in to your simulation job.
15220	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
15221
15222	// The logging configuration.
15223	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
15224
15225	// The maximum simulation job duration in seconds. The value must be 8 days
15226	// (691,200 seconds) or less.
15227	//
15228	// MaxJobDurationInSeconds is a required field
15229	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long" required:"true"`
15230
15231	// The output location.
15232	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
15233
15234	// The robot applications to use in the simulation job.
15235	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
15236
15237	// The simulation applications to use in the simulation job.
15238	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
15239
15240	// A map that contains tag keys and tag values that are attached to the simulation
15241	// job request.
15242	Tags map[string]*string `locationName:"tags" type:"map"`
15243
15244	// A Boolean indicating whether to use default applications in the simulation
15245	// job. Default applications include Gazebo, rqt, rviz and terminal access.
15246	UseDefaultApplications *bool `locationName:"useDefaultApplications" type:"boolean"`
15247
15248	// If your simulation job accesses resources in a VPC, you provide this parameter
15249	// identifying the list of security group IDs and subnet IDs. These must belong
15250	// to the same VPC. You must provide at least one security group and two subnet
15251	// IDs.
15252	VpcConfig *VPCConfig `locationName:"vpcConfig" type:"structure"`
15253}
15254
15255// String returns the string representation
15256func (s SimulationJobRequest) String() string {
15257	return awsutil.Prettify(s)
15258}
15259
15260// GoString returns the string representation
15261func (s SimulationJobRequest) GoString() string {
15262	return s.String()
15263}
15264
15265// Validate inspects the fields of the type to determine if they are valid.
15266func (s *SimulationJobRequest) Validate() error {
15267	invalidParams := request.ErrInvalidParams{Context: "SimulationJobRequest"}
15268	if s.DataSources != nil && len(s.DataSources) < 1 {
15269		invalidParams.Add(request.NewErrParamMinLen("DataSources", 1))
15270	}
15271	if s.IamRole != nil && len(*s.IamRole) < 1 {
15272		invalidParams.Add(request.NewErrParamMinLen("IamRole", 1))
15273	}
15274	if s.MaxJobDurationInSeconds == nil {
15275		invalidParams.Add(request.NewErrParamRequired("MaxJobDurationInSeconds"))
15276	}
15277	if s.RobotApplications != nil && len(s.RobotApplications) < 1 {
15278		invalidParams.Add(request.NewErrParamMinLen("RobotApplications", 1))
15279	}
15280	if s.SimulationApplications != nil && len(s.SimulationApplications) < 1 {
15281		invalidParams.Add(request.NewErrParamMinLen("SimulationApplications", 1))
15282	}
15283	if s.Compute != nil {
15284		if err := s.Compute.Validate(); err != nil {
15285			invalidParams.AddNested("Compute", err.(request.ErrInvalidParams))
15286		}
15287	}
15288	if s.DataSources != nil {
15289		for i, v := range s.DataSources {
15290			if v == nil {
15291				continue
15292			}
15293			if err := v.Validate(); err != nil {
15294				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSources", i), err.(request.ErrInvalidParams))
15295			}
15296		}
15297	}
15298	if s.LoggingConfig != nil {
15299		if err := s.LoggingConfig.Validate(); err != nil {
15300			invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams))
15301		}
15302	}
15303	if s.OutputLocation != nil {
15304		if err := s.OutputLocation.Validate(); err != nil {
15305			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
15306		}
15307	}
15308	if s.RobotApplications != nil {
15309		for i, v := range s.RobotApplications {
15310			if v == nil {
15311				continue
15312			}
15313			if err := v.Validate(); err != nil {
15314				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RobotApplications", i), err.(request.ErrInvalidParams))
15315			}
15316		}
15317	}
15318	if s.SimulationApplications != nil {
15319		for i, v := range s.SimulationApplications {
15320			if v == nil {
15321				continue
15322			}
15323			if err := v.Validate(); err != nil {
15324				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SimulationApplications", i), err.(request.ErrInvalidParams))
15325			}
15326		}
15327	}
15328	if s.VpcConfig != nil {
15329		if err := s.VpcConfig.Validate(); err != nil {
15330			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
15331		}
15332	}
15333
15334	if invalidParams.Len() > 0 {
15335		return invalidParams
15336	}
15337	return nil
15338}
15339
15340// SetCompute sets the Compute field's value.
15341func (s *SimulationJobRequest) SetCompute(v *Compute) *SimulationJobRequest {
15342	s.Compute = v
15343	return s
15344}
15345
15346// SetDataSources sets the DataSources field's value.
15347func (s *SimulationJobRequest) SetDataSources(v []*DataSourceConfig) *SimulationJobRequest {
15348	s.DataSources = v
15349	return s
15350}
15351
15352// SetFailureBehavior sets the FailureBehavior field's value.
15353func (s *SimulationJobRequest) SetFailureBehavior(v string) *SimulationJobRequest {
15354	s.FailureBehavior = &v
15355	return s
15356}
15357
15358// SetIamRole sets the IamRole field's value.
15359func (s *SimulationJobRequest) SetIamRole(v string) *SimulationJobRequest {
15360	s.IamRole = &v
15361	return s
15362}
15363
15364// SetLoggingConfig sets the LoggingConfig field's value.
15365func (s *SimulationJobRequest) SetLoggingConfig(v *LoggingConfig) *SimulationJobRequest {
15366	s.LoggingConfig = v
15367	return s
15368}
15369
15370// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
15371func (s *SimulationJobRequest) SetMaxJobDurationInSeconds(v int64) *SimulationJobRequest {
15372	s.MaxJobDurationInSeconds = &v
15373	return s
15374}
15375
15376// SetOutputLocation sets the OutputLocation field's value.
15377func (s *SimulationJobRequest) SetOutputLocation(v *OutputLocation) *SimulationJobRequest {
15378	s.OutputLocation = v
15379	return s
15380}
15381
15382// SetRobotApplications sets the RobotApplications field's value.
15383func (s *SimulationJobRequest) SetRobotApplications(v []*RobotApplicationConfig) *SimulationJobRequest {
15384	s.RobotApplications = v
15385	return s
15386}
15387
15388// SetSimulationApplications sets the SimulationApplications field's value.
15389func (s *SimulationJobRequest) SetSimulationApplications(v []*SimulationApplicationConfig) *SimulationJobRequest {
15390	s.SimulationApplications = v
15391	return s
15392}
15393
15394// SetTags sets the Tags field's value.
15395func (s *SimulationJobRequest) SetTags(v map[string]*string) *SimulationJobRequest {
15396	s.Tags = v
15397	return s
15398}
15399
15400// SetUseDefaultApplications sets the UseDefaultApplications field's value.
15401func (s *SimulationJobRequest) SetUseDefaultApplications(v bool) *SimulationJobRequest {
15402	s.UseDefaultApplications = &v
15403	return s
15404}
15405
15406// SetVpcConfig sets the VpcConfig field's value.
15407func (s *SimulationJobRequest) SetVpcConfig(v *VPCConfig) *SimulationJobRequest {
15408	s.VpcConfig = v
15409	return s
15410}
15411
15412// Summary information for a simulation job.
15413type SimulationJobSummary struct {
15414	_ struct{} `type:"structure"`
15415
15416	// The Amazon Resource Name (ARN) of the simulation job.
15417	Arn *string `locationName:"arn" min:"1" type:"string"`
15418
15419	// The names of the data sources.
15420	DataSourceNames []*string `locationName:"dataSourceNames" type:"list"`
15421
15422	// The time, in milliseconds since the epoch, when the simulation job was last
15423	// updated.
15424	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
15425
15426	// The name of the simulation job.
15427	Name *string `locationName:"name" min:"1" type:"string"`
15428
15429	// A list of simulation job robot application names.
15430	RobotApplicationNames []*string `locationName:"robotApplicationNames" type:"list"`
15431
15432	// A list of simulation job simulation application names.
15433	SimulationApplicationNames []*string `locationName:"simulationApplicationNames" type:"list"`
15434
15435	// The status of the simulation job.
15436	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
15437}
15438
15439// String returns the string representation
15440func (s SimulationJobSummary) String() string {
15441	return awsutil.Prettify(s)
15442}
15443
15444// GoString returns the string representation
15445func (s SimulationJobSummary) GoString() string {
15446	return s.String()
15447}
15448
15449// SetArn sets the Arn field's value.
15450func (s *SimulationJobSummary) SetArn(v string) *SimulationJobSummary {
15451	s.Arn = &v
15452	return s
15453}
15454
15455// SetDataSourceNames sets the DataSourceNames field's value.
15456func (s *SimulationJobSummary) SetDataSourceNames(v []*string) *SimulationJobSummary {
15457	s.DataSourceNames = v
15458	return s
15459}
15460
15461// SetLastUpdatedAt sets the LastUpdatedAt field's value.
15462func (s *SimulationJobSummary) SetLastUpdatedAt(v time.Time) *SimulationJobSummary {
15463	s.LastUpdatedAt = &v
15464	return s
15465}
15466
15467// SetName sets the Name field's value.
15468func (s *SimulationJobSummary) SetName(v string) *SimulationJobSummary {
15469	s.Name = &v
15470	return s
15471}
15472
15473// SetRobotApplicationNames sets the RobotApplicationNames field's value.
15474func (s *SimulationJobSummary) SetRobotApplicationNames(v []*string) *SimulationJobSummary {
15475	s.RobotApplicationNames = v
15476	return s
15477}
15478
15479// SetSimulationApplicationNames sets the SimulationApplicationNames field's value.
15480func (s *SimulationJobSummary) SetSimulationApplicationNames(v []*string) *SimulationJobSummary {
15481	s.SimulationApplicationNames = v
15482	return s
15483}
15484
15485// SetStatus sets the Status field's value.
15486func (s *SimulationJobSummary) SetStatus(v string) *SimulationJobSummary {
15487	s.Status = &v
15488	return s
15489}
15490
15491// Information about a simulation software suite.
15492type SimulationSoftwareSuite struct {
15493	_ struct{} `type:"structure"`
15494
15495	// The name of the simulation software suite.
15496	Name *string `locationName:"name" type:"string" enum:"SimulationSoftwareSuiteType"`
15497
15498	// The version of the simulation software suite.
15499	Version *string `locationName:"version" type:"string"`
15500}
15501
15502// String returns the string representation
15503func (s SimulationSoftwareSuite) String() string {
15504	return awsutil.Prettify(s)
15505}
15506
15507// GoString returns the string representation
15508func (s SimulationSoftwareSuite) GoString() string {
15509	return s.String()
15510}
15511
15512// SetName sets the Name field's value.
15513func (s *SimulationSoftwareSuite) SetName(v string) *SimulationSoftwareSuite {
15514	s.Name = &v
15515	return s
15516}
15517
15518// SetVersion sets the Version field's value.
15519func (s *SimulationSoftwareSuite) SetVersion(v string) *SimulationSoftwareSuite {
15520	s.Version = &v
15521	return s
15522}
15523
15524// Information about a source.
15525type Source struct {
15526	_ struct{} `type:"structure"`
15527
15528	// The taget processor architecture for the application.
15529	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
15530
15531	// A hash of the object specified by s3Bucket and s3Key.
15532	Etag *string `locationName:"etag" type:"string"`
15533
15534	// The s3 bucket name.
15535	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
15536
15537	// The s3 object key.
15538	S3Key *string `locationName:"s3Key" min:"1" type:"string"`
15539}
15540
15541// String returns the string representation
15542func (s Source) String() string {
15543	return awsutil.Prettify(s)
15544}
15545
15546// GoString returns the string representation
15547func (s Source) GoString() string {
15548	return s.String()
15549}
15550
15551// SetArchitecture sets the Architecture field's value.
15552func (s *Source) SetArchitecture(v string) *Source {
15553	s.Architecture = &v
15554	return s
15555}
15556
15557// SetEtag sets the Etag field's value.
15558func (s *Source) SetEtag(v string) *Source {
15559	s.Etag = &v
15560	return s
15561}
15562
15563// SetS3Bucket sets the S3Bucket field's value.
15564func (s *Source) SetS3Bucket(v string) *Source {
15565	s.S3Bucket = &v
15566	return s
15567}
15568
15569// SetS3Key sets the S3Key field's value.
15570func (s *Source) SetS3Key(v string) *Source {
15571	s.S3Key = &v
15572	return s
15573}
15574
15575// Information about a source configuration.
15576type SourceConfig struct {
15577	_ struct{} `type:"structure"`
15578
15579	// The target processor architecture for the application.
15580	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
15581
15582	// The Amazon S3 bucket name.
15583	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
15584
15585	// The s3 object key.
15586	S3Key *string `locationName:"s3Key" min:"1" type:"string"`
15587}
15588
15589// String returns the string representation
15590func (s SourceConfig) String() string {
15591	return awsutil.Prettify(s)
15592}
15593
15594// GoString returns the string representation
15595func (s SourceConfig) GoString() string {
15596	return s.String()
15597}
15598
15599// Validate inspects the fields of the type to determine if they are valid.
15600func (s *SourceConfig) Validate() error {
15601	invalidParams := request.ErrInvalidParams{Context: "SourceConfig"}
15602	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
15603		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
15604	}
15605	if s.S3Key != nil && len(*s.S3Key) < 1 {
15606		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
15607	}
15608
15609	if invalidParams.Len() > 0 {
15610		return invalidParams
15611	}
15612	return nil
15613}
15614
15615// SetArchitecture sets the Architecture field's value.
15616func (s *SourceConfig) SetArchitecture(v string) *SourceConfig {
15617	s.Architecture = &v
15618	return s
15619}
15620
15621// SetS3Bucket sets the S3Bucket field's value.
15622func (s *SourceConfig) SetS3Bucket(v string) *SourceConfig {
15623	s.S3Bucket = &v
15624	return s
15625}
15626
15627// SetS3Key sets the S3Key field's value.
15628func (s *SourceConfig) SetS3Key(v string) *SourceConfig {
15629	s.S3Key = &v
15630	return s
15631}
15632
15633type StartSimulationJobBatchInput struct {
15634	_ struct{} `type:"structure"`
15635
15636	// The batch policy.
15637	BatchPolicy *BatchPolicy `locationName:"batchPolicy" type:"structure"`
15638
15639	// Unique, case-sensitive identifier that you provide to ensure the idempotency
15640	// of the request.
15641	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
15642
15643	// A list of simulation job requests to create in the batch.
15644	//
15645	// CreateSimulationJobRequests is a required field
15646	CreateSimulationJobRequests []*SimulationJobRequest `locationName:"createSimulationJobRequests" min:"1" type:"list" required:"true"`
15647
15648	// A map that contains tag keys and tag values that are attached to the deployment
15649	// job batch.
15650	Tags map[string]*string `locationName:"tags" type:"map"`
15651}
15652
15653// String returns the string representation
15654func (s StartSimulationJobBatchInput) String() string {
15655	return awsutil.Prettify(s)
15656}
15657
15658// GoString returns the string representation
15659func (s StartSimulationJobBatchInput) GoString() string {
15660	return s.String()
15661}
15662
15663// Validate inspects the fields of the type to determine if they are valid.
15664func (s *StartSimulationJobBatchInput) Validate() error {
15665	invalidParams := request.ErrInvalidParams{Context: "StartSimulationJobBatchInput"}
15666	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
15667		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
15668	}
15669	if s.CreateSimulationJobRequests == nil {
15670		invalidParams.Add(request.NewErrParamRequired("CreateSimulationJobRequests"))
15671	}
15672	if s.CreateSimulationJobRequests != nil && len(s.CreateSimulationJobRequests) < 1 {
15673		invalidParams.Add(request.NewErrParamMinLen("CreateSimulationJobRequests", 1))
15674	}
15675	if s.CreateSimulationJobRequests != nil {
15676		for i, v := range s.CreateSimulationJobRequests {
15677			if v == nil {
15678				continue
15679			}
15680			if err := v.Validate(); err != nil {
15681				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CreateSimulationJobRequests", i), err.(request.ErrInvalidParams))
15682			}
15683		}
15684	}
15685
15686	if invalidParams.Len() > 0 {
15687		return invalidParams
15688	}
15689	return nil
15690}
15691
15692// SetBatchPolicy sets the BatchPolicy field's value.
15693func (s *StartSimulationJobBatchInput) SetBatchPolicy(v *BatchPolicy) *StartSimulationJobBatchInput {
15694	s.BatchPolicy = v
15695	return s
15696}
15697
15698// SetClientRequestToken sets the ClientRequestToken field's value.
15699func (s *StartSimulationJobBatchInput) SetClientRequestToken(v string) *StartSimulationJobBatchInput {
15700	s.ClientRequestToken = &v
15701	return s
15702}
15703
15704// SetCreateSimulationJobRequests sets the CreateSimulationJobRequests field's value.
15705func (s *StartSimulationJobBatchInput) SetCreateSimulationJobRequests(v []*SimulationJobRequest) *StartSimulationJobBatchInput {
15706	s.CreateSimulationJobRequests = v
15707	return s
15708}
15709
15710// SetTags sets the Tags field's value.
15711func (s *StartSimulationJobBatchInput) SetTags(v map[string]*string) *StartSimulationJobBatchInput {
15712	s.Tags = v
15713	return s
15714}
15715
15716type StartSimulationJobBatchOutput struct {
15717	_ struct{} `type:"structure"`
15718
15719	// The Amazon Resource Name (arn) of the batch.
15720	Arn *string `locationName:"arn" min:"1" type:"string"`
15721
15722	// The batch policy.
15723	BatchPolicy *BatchPolicy `locationName:"batchPolicy" type:"structure"`
15724
15725	// Unique, case-sensitive identifier that you provide to ensure the idempotency
15726	// of the request.
15727	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
15728
15729	// The time, in milliseconds since the epoch, when the simulation job batch
15730	// was created.
15731	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
15732
15733	// A list of created simulation job request summaries.
15734	CreatedRequests []*SimulationJobSummary `locationName:"createdRequests" type:"list"`
15735
15736	// A list of failed simulation job requests. The request failed to be created
15737	// into a simulation job. Failed requests do not have a simulation job ID.
15738	FailedRequests []*FailedCreateSimulationJobRequest `locationName:"failedRequests" type:"list"`
15739
15740	// The failure code if the simulation job batch failed.
15741	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobBatchErrorCode"`
15742
15743	// The reason the simulation job batch failed.
15744	FailureReason *string `locationName:"failureReason" type:"string"`
15745
15746	// A list of pending simulation job requests. These requests have not yet been
15747	// created into simulation jobs.
15748	PendingRequests []*SimulationJobRequest `locationName:"pendingRequests" min:"1" type:"list"`
15749
15750	// The status of the simulation job batch.
15751	//
15752	// Pending
15753	//
15754	// The simulation job batch request is pending.
15755	//
15756	// InProgress
15757	//
15758	// The simulation job batch is in progress.
15759	//
15760	// Failed
15761	//
15762	// The simulation job batch failed. One or more simulation job requests could
15763	// not be completed due to an internal failure (like InternalServiceError).
15764	// See failureCode and failureReason for more information.
15765	//
15766	// Completed
15767	//
15768	// The simulation batch job completed. A batch is complete when (1) there are
15769	// no pending simulation job requests in the batch and none of the failed simulation
15770	// job requests are due to InternalServiceError and (2) when all created simulation
15771	// jobs have reached a terminal state (for example, Completed or Failed).
15772	//
15773	// Canceled
15774	//
15775	// The simulation batch job was cancelled.
15776	//
15777	// Canceling
15778	//
15779	// The simulation batch job is being cancelled.
15780	//
15781	// Completing
15782	//
15783	// The simulation batch job is completing.
15784	//
15785	// TimingOut
15786	//
15787	// The simulation job batch is timing out.
15788	//
15789	// If a batch timing out, and there are pending requests that were failing due
15790	// to an internal failure (like InternalServiceError), the batch status will
15791	// be Failed. If there are no such failing request, the batch status will be
15792	// TimedOut.
15793	//
15794	// TimedOut
15795	//
15796	// The simulation batch job timed out.
15797	Status *string `locationName:"status" type:"string" enum:"SimulationJobBatchStatus"`
15798
15799	// A map that contains tag keys and tag values that are attached to the deployment
15800	// job batch.
15801	Tags map[string]*string `locationName:"tags" type:"map"`
15802}
15803
15804// String returns the string representation
15805func (s StartSimulationJobBatchOutput) String() string {
15806	return awsutil.Prettify(s)
15807}
15808
15809// GoString returns the string representation
15810func (s StartSimulationJobBatchOutput) GoString() string {
15811	return s.String()
15812}
15813
15814// SetArn sets the Arn field's value.
15815func (s *StartSimulationJobBatchOutput) SetArn(v string) *StartSimulationJobBatchOutput {
15816	s.Arn = &v
15817	return s
15818}
15819
15820// SetBatchPolicy sets the BatchPolicy field's value.
15821func (s *StartSimulationJobBatchOutput) SetBatchPolicy(v *BatchPolicy) *StartSimulationJobBatchOutput {
15822	s.BatchPolicy = v
15823	return s
15824}
15825
15826// SetClientRequestToken sets the ClientRequestToken field's value.
15827func (s *StartSimulationJobBatchOutput) SetClientRequestToken(v string) *StartSimulationJobBatchOutput {
15828	s.ClientRequestToken = &v
15829	return s
15830}
15831
15832// SetCreatedAt sets the CreatedAt field's value.
15833func (s *StartSimulationJobBatchOutput) SetCreatedAt(v time.Time) *StartSimulationJobBatchOutput {
15834	s.CreatedAt = &v
15835	return s
15836}
15837
15838// SetCreatedRequests sets the CreatedRequests field's value.
15839func (s *StartSimulationJobBatchOutput) SetCreatedRequests(v []*SimulationJobSummary) *StartSimulationJobBatchOutput {
15840	s.CreatedRequests = v
15841	return s
15842}
15843
15844// SetFailedRequests sets the FailedRequests field's value.
15845func (s *StartSimulationJobBatchOutput) SetFailedRequests(v []*FailedCreateSimulationJobRequest) *StartSimulationJobBatchOutput {
15846	s.FailedRequests = v
15847	return s
15848}
15849
15850// SetFailureCode sets the FailureCode field's value.
15851func (s *StartSimulationJobBatchOutput) SetFailureCode(v string) *StartSimulationJobBatchOutput {
15852	s.FailureCode = &v
15853	return s
15854}
15855
15856// SetFailureReason sets the FailureReason field's value.
15857func (s *StartSimulationJobBatchOutput) SetFailureReason(v string) *StartSimulationJobBatchOutput {
15858	s.FailureReason = &v
15859	return s
15860}
15861
15862// SetPendingRequests sets the PendingRequests field's value.
15863func (s *StartSimulationJobBatchOutput) SetPendingRequests(v []*SimulationJobRequest) *StartSimulationJobBatchOutput {
15864	s.PendingRequests = v
15865	return s
15866}
15867
15868// SetStatus sets the Status field's value.
15869func (s *StartSimulationJobBatchOutput) SetStatus(v string) *StartSimulationJobBatchOutput {
15870	s.Status = &v
15871	return s
15872}
15873
15874// SetTags sets the Tags field's value.
15875func (s *StartSimulationJobBatchOutput) SetTags(v map[string]*string) *StartSimulationJobBatchOutput {
15876	s.Tags = v
15877	return s
15878}
15879
15880type SyncDeploymentJobInput struct {
15881	_ struct{} `type:"structure"`
15882
15883	// Unique, case-sensitive identifier that you provide to ensure the idempotency
15884	// of the request.
15885	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
15886
15887	// The target fleet for the synchronization.
15888	//
15889	// Fleet is a required field
15890	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
15891}
15892
15893// String returns the string representation
15894func (s SyncDeploymentJobInput) String() string {
15895	return awsutil.Prettify(s)
15896}
15897
15898// GoString returns the string representation
15899func (s SyncDeploymentJobInput) GoString() string {
15900	return s.String()
15901}
15902
15903// Validate inspects the fields of the type to determine if they are valid.
15904func (s *SyncDeploymentJobInput) Validate() error {
15905	invalidParams := request.ErrInvalidParams{Context: "SyncDeploymentJobInput"}
15906	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
15907		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
15908	}
15909	if s.Fleet == nil {
15910		invalidParams.Add(request.NewErrParamRequired("Fleet"))
15911	}
15912	if s.Fleet != nil && len(*s.Fleet) < 1 {
15913		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
15914	}
15915
15916	if invalidParams.Len() > 0 {
15917		return invalidParams
15918	}
15919	return nil
15920}
15921
15922// SetClientRequestToken sets the ClientRequestToken field's value.
15923func (s *SyncDeploymentJobInput) SetClientRequestToken(v string) *SyncDeploymentJobInput {
15924	s.ClientRequestToken = &v
15925	return s
15926}
15927
15928// SetFleet sets the Fleet field's value.
15929func (s *SyncDeploymentJobInput) SetFleet(v string) *SyncDeploymentJobInput {
15930	s.Fleet = &v
15931	return s
15932}
15933
15934type SyncDeploymentJobOutput struct {
15935	_ struct{} `type:"structure"`
15936
15937	// The Amazon Resource Name (ARN) of the synchronization request.
15938	Arn *string `locationName:"arn" min:"1" type:"string"`
15939
15940	// The time, in milliseconds since the epoch, when the fleet was created.
15941	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
15942
15943	// Information about the deployment application configurations.
15944	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
15945
15946	// Information about the deployment configuration.
15947	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
15948
15949	// The failure code if the job fails:
15950	//
15951	// InternalServiceError
15952	//
15953	// Internal service error.
15954	//
15955	// RobotApplicationCrash
15956	//
15957	// Robot application exited abnormally.
15958	//
15959	// SimulationApplicationCrash
15960	//
15961	// Simulation application exited abnormally.
15962	//
15963	// BadPermissionsRobotApplication
15964	//
15965	// Robot application bundle could not be downloaded.
15966	//
15967	// BadPermissionsSimulationApplication
15968	//
15969	// Simulation application bundle could not be downloaded.
15970	//
15971	// BadPermissionsS3Output
15972	//
15973	// Unable to publish outputs to customer-provided S3 bucket.
15974	//
15975	// BadPermissionsCloudwatchLogs
15976	//
15977	// Unable to publish logs to customer-provided CloudWatch Logs resource.
15978	//
15979	// SubnetIpLimitExceeded
15980	//
15981	// Subnet IP limit exceeded.
15982	//
15983	// ENILimitExceeded
15984	//
15985	// ENI limit exceeded.
15986	//
15987	// BadPermissionsUserCredentials
15988	//
15989	// Unable to use the Role provided.
15990	//
15991	// InvalidBundleRobotApplication
15992	//
15993	// Robot bundle cannot be extracted (invalid format, bundling error, or other
15994	// issue).
15995	//
15996	// InvalidBundleSimulationApplication
15997	//
15998	// Simulation bundle cannot be extracted (invalid format, bundling error, or
15999	// other issue).
16000	//
16001	// RobotApplicationVersionMismatchedEtag
16002	//
16003	// Etag for RobotApplication does not match value during version creation.
16004	//
16005	// SimulationApplicationVersionMismatchedEtag
16006	//
16007	// Etag for SimulationApplication does not match value during version creation.
16008	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
16009
16010	// The failure reason if the job fails.
16011	FailureReason *string `locationName:"failureReason" type:"string"`
16012
16013	// The Amazon Resource Name (ARN) of the fleet.
16014	Fleet *string `locationName:"fleet" min:"1" type:"string"`
16015
16016	// The status of the synchronization job.
16017	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
16018}
16019
16020// String returns the string representation
16021func (s SyncDeploymentJobOutput) String() string {
16022	return awsutil.Prettify(s)
16023}
16024
16025// GoString returns the string representation
16026func (s SyncDeploymentJobOutput) GoString() string {
16027	return s.String()
16028}
16029
16030// SetArn sets the Arn field's value.
16031func (s *SyncDeploymentJobOutput) SetArn(v string) *SyncDeploymentJobOutput {
16032	s.Arn = &v
16033	return s
16034}
16035
16036// SetCreatedAt sets the CreatedAt field's value.
16037func (s *SyncDeploymentJobOutput) SetCreatedAt(v time.Time) *SyncDeploymentJobOutput {
16038	s.CreatedAt = &v
16039	return s
16040}
16041
16042// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
16043func (s *SyncDeploymentJobOutput) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *SyncDeploymentJobOutput {
16044	s.DeploymentApplicationConfigs = v
16045	return s
16046}
16047
16048// SetDeploymentConfig sets the DeploymentConfig field's value.
16049func (s *SyncDeploymentJobOutput) SetDeploymentConfig(v *DeploymentConfig) *SyncDeploymentJobOutput {
16050	s.DeploymentConfig = v
16051	return s
16052}
16053
16054// SetFailureCode sets the FailureCode field's value.
16055func (s *SyncDeploymentJobOutput) SetFailureCode(v string) *SyncDeploymentJobOutput {
16056	s.FailureCode = &v
16057	return s
16058}
16059
16060// SetFailureReason sets the FailureReason field's value.
16061func (s *SyncDeploymentJobOutput) SetFailureReason(v string) *SyncDeploymentJobOutput {
16062	s.FailureReason = &v
16063	return s
16064}
16065
16066// SetFleet sets the Fleet field's value.
16067func (s *SyncDeploymentJobOutput) SetFleet(v string) *SyncDeploymentJobOutput {
16068	s.Fleet = &v
16069	return s
16070}
16071
16072// SetStatus sets the Status field's value.
16073func (s *SyncDeploymentJobOutput) SetStatus(v string) *SyncDeploymentJobOutput {
16074	s.Status = &v
16075	return s
16076}
16077
16078type TagResourceInput struct {
16079	_ struct{} `type:"structure"`
16080
16081	// The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are tagging.
16082	//
16083	// ResourceArn is a required field
16084	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
16085
16086	// A map that contains tag keys and tag values that are attached to the resource.
16087	//
16088	// Tags is a required field
16089	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
16090}
16091
16092// String returns the string representation
16093func (s TagResourceInput) String() string {
16094	return awsutil.Prettify(s)
16095}
16096
16097// GoString returns the string representation
16098func (s TagResourceInput) GoString() string {
16099	return s.String()
16100}
16101
16102// Validate inspects the fields of the type to determine if they are valid.
16103func (s *TagResourceInput) Validate() error {
16104	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
16105	if s.ResourceArn == nil {
16106		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
16107	}
16108	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
16109		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
16110	}
16111	if s.Tags == nil {
16112		invalidParams.Add(request.NewErrParamRequired("Tags"))
16113	}
16114
16115	if invalidParams.Len() > 0 {
16116		return invalidParams
16117	}
16118	return nil
16119}
16120
16121// SetResourceArn sets the ResourceArn field's value.
16122func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
16123	s.ResourceArn = &v
16124	return s
16125}
16126
16127// SetTags sets the Tags field's value.
16128func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
16129	s.Tags = v
16130	return s
16131}
16132
16133type TagResourceOutput struct {
16134	_ struct{} `type:"structure"`
16135}
16136
16137// String returns the string representation
16138func (s TagResourceOutput) String() string {
16139	return awsutil.Prettify(s)
16140}
16141
16142// GoString returns the string representation
16143func (s TagResourceOutput) GoString() string {
16144	return s.String()
16145}
16146
16147// Information about a template location.
16148type TemplateLocation struct {
16149	_ struct{} `type:"structure"`
16150
16151	// The Amazon S3 bucket name.
16152	//
16153	// S3Bucket is a required field
16154	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string" required:"true"`
16155
16156	// The list of S3 keys identifying the data source files.
16157	//
16158	// S3Key is a required field
16159	S3Key *string `locationName:"s3Key" min:"1" type:"string" required:"true"`
16160}
16161
16162// String returns the string representation
16163func (s TemplateLocation) String() string {
16164	return awsutil.Prettify(s)
16165}
16166
16167// GoString returns the string representation
16168func (s TemplateLocation) GoString() string {
16169	return s.String()
16170}
16171
16172// Validate inspects the fields of the type to determine if they are valid.
16173func (s *TemplateLocation) Validate() error {
16174	invalidParams := request.ErrInvalidParams{Context: "TemplateLocation"}
16175	if s.S3Bucket == nil {
16176		invalidParams.Add(request.NewErrParamRequired("S3Bucket"))
16177	}
16178	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
16179		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
16180	}
16181	if s.S3Key == nil {
16182		invalidParams.Add(request.NewErrParamRequired("S3Key"))
16183	}
16184	if s.S3Key != nil && len(*s.S3Key) < 1 {
16185		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
16186	}
16187
16188	if invalidParams.Len() > 0 {
16189		return invalidParams
16190	}
16191	return nil
16192}
16193
16194// SetS3Bucket sets the S3Bucket field's value.
16195func (s *TemplateLocation) SetS3Bucket(v string) *TemplateLocation {
16196	s.S3Bucket = &v
16197	return s
16198}
16199
16200// SetS3Key sets the S3Key field's value.
16201func (s *TemplateLocation) SetS3Key(v string) *TemplateLocation {
16202	s.S3Key = &v
16203	return s
16204}
16205
16206// Summary information for a template.
16207type TemplateSummary struct {
16208	_ struct{} `type:"structure"`
16209
16210	// The Amazon Resource Name (ARN) of the template.
16211	Arn *string `locationName:"arn" min:"1" type:"string"`
16212
16213	// The time, in milliseconds since the epoch, when the template was created.
16214	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
16215
16216	// The time, in milliseconds since the epoch, when the template was last updated.
16217	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16218
16219	// The name of the template.
16220	Name *string `locationName:"name" type:"string"`
16221
16222	// The version of the template that you're using.
16223	Version *string `locationName:"version" type:"string"`
16224}
16225
16226// String returns the string representation
16227func (s TemplateSummary) String() string {
16228	return awsutil.Prettify(s)
16229}
16230
16231// GoString returns the string representation
16232func (s TemplateSummary) GoString() string {
16233	return s.String()
16234}
16235
16236// SetArn sets the Arn field's value.
16237func (s *TemplateSummary) SetArn(v string) *TemplateSummary {
16238	s.Arn = &v
16239	return s
16240}
16241
16242// SetCreatedAt sets the CreatedAt field's value.
16243func (s *TemplateSummary) SetCreatedAt(v time.Time) *TemplateSummary {
16244	s.CreatedAt = &v
16245	return s
16246}
16247
16248// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16249func (s *TemplateSummary) SetLastUpdatedAt(v time.Time) *TemplateSummary {
16250	s.LastUpdatedAt = &v
16251	return s
16252}
16253
16254// SetName sets the Name field's value.
16255func (s *TemplateSummary) SetName(v string) *TemplateSummary {
16256	s.Name = &v
16257	return s
16258}
16259
16260// SetVersion sets the Version field's value.
16261func (s *TemplateSummary) SetVersion(v string) *TemplateSummary {
16262	s.Version = &v
16263	return s
16264}
16265
16266// AWS RoboMaker is temporarily unable to process the request. Try your call
16267// again.
16268type ThrottlingException struct {
16269	_            struct{}                  `type:"structure"`
16270	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16271
16272	Message_ *string `locationName:"message" type:"string"`
16273}
16274
16275// String returns the string representation
16276func (s ThrottlingException) String() string {
16277	return awsutil.Prettify(s)
16278}
16279
16280// GoString returns the string representation
16281func (s ThrottlingException) GoString() string {
16282	return s.String()
16283}
16284
16285func newErrorThrottlingException(v protocol.ResponseMetadata) error {
16286	return &ThrottlingException{
16287		RespMetadata: v,
16288	}
16289}
16290
16291// Code returns the exception type name.
16292func (s *ThrottlingException) Code() string {
16293	return "ThrottlingException"
16294}
16295
16296// Message returns the exception's message.
16297func (s *ThrottlingException) Message() string {
16298	if s.Message_ != nil {
16299		return *s.Message_
16300	}
16301	return ""
16302}
16303
16304// OrigErr always returns nil, satisfies awserr.Error interface.
16305func (s *ThrottlingException) OrigErr() error {
16306	return nil
16307}
16308
16309func (s *ThrottlingException) Error() string {
16310	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16311}
16312
16313// Status code returns the HTTP status code for the request's response error.
16314func (s *ThrottlingException) StatusCode() int {
16315	return s.RespMetadata.StatusCode
16316}
16317
16318// RequestID returns the service's response RequestID for request.
16319func (s *ThrottlingException) RequestID() string {
16320	return s.RespMetadata.RequestID
16321}
16322
16323// Information about a tool. Tools are used in a simulation job.
16324type Tool struct {
16325	_ struct{} `type:"structure"`
16326
16327	// Command-line arguments for the tool. It must include the tool executable
16328	// name.
16329	//
16330	// Command is a required field
16331	Command *string `locationName:"command" min:"1" type:"string" required:"true"`
16332
16333	// Exit behavior determines what happens when your tool quits running. RESTART
16334	// will cause your tool to be restarted. FAIL will cause your job to exit. The
16335	// default is RESTART.
16336	ExitBehavior *string `locationName:"exitBehavior" type:"string" enum:"ExitBehavior"`
16337
16338	// The name of the tool.
16339	//
16340	// Name is a required field
16341	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
16342
16343	// Boolean indicating whether logs will be recorded in CloudWatch for the tool.
16344	// The default is False.
16345	StreamOutputToCloudWatch *bool `locationName:"streamOutputToCloudWatch" type:"boolean"`
16346
16347	// Boolean indicating whether a streaming session will be configured for the
16348	// tool. If True, AWS RoboMaker will configure a connection so you can interact
16349	// with the tool as it is running in the simulation. It must have a graphical
16350	// user interface. The default is False.
16351	StreamUI *bool `locationName:"streamUI" type:"boolean"`
16352}
16353
16354// String returns the string representation
16355func (s Tool) String() string {
16356	return awsutil.Prettify(s)
16357}
16358
16359// GoString returns the string representation
16360func (s Tool) GoString() string {
16361	return s.String()
16362}
16363
16364// Validate inspects the fields of the type to determine if they are valid.
16365func (s *Tool) Validate() error {
16366	invalidParams := request.ErrInvalidParams{Context: "Tool"}
16367	if s.Command == nil {
16368		invalidParams.Add(request.NewErrParamRequired("Command"))
16369	}
16370	if s.Command != nil && len(*s.Command) < 1 {
16371		invalidParams.Add(request.NewErrParamMinLen("Command", 1))
16372	}
16373	if s.Name == nil {
16374		invalidParams.Add(request.NewErrParamRequired("Name"))
16375	}
16376	if s.Name != nil && len(*s.Name) < 1 {
16377		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
16378	}
16379
16380	if invalidParams.Len() > 0 {
16381		return invalidParams
16382	}
16383	return nil
16384}
16385
16386// SetCommand sets the Command field's value.
16387func (s *Tool) SetCommand(v string) *Tool {
16388	s.Command = &v
16389	return s
16390}
16391
16392// SetExitBehavior sets the ExitBehavior field's value.
16393func (s *Tool) SetExitBehavior(v string) *Tool {
16394	s.ExitBehavior = &v
16395	return s
16396}
16397
16398// SetName sets the Name field's value.
16399func (s *Tool) SetName(v string) *Tool {
16400	s.Name = &v
16401	return s
16402}
16403
16404// SetStreamOutputToCloudWatch sets the StreamOutputToCloudWatch field's value.
16405func (s *Tool) SetStreamOutputToCloudWatch(v bool) *Tool {
16406	s.StreamOutputToCloudWatch = &v
16407	return s
16408}
16409
16410// SetStreamUI sets the StreamUI field's value.
16411func (s *Tool) SetStreamUI(v bool) *Tool {
16412	s.StreamUI = &v
16413	return s
16414}
16415
16416type UntagResourceInput struct {
16417	_ struct{} `type:"structure"`
16418
16419	// The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are removing
16420	// tags.
16421	//
16422	// ResourceArn is a required field
16423	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
16424
16425	// A map that contains tag keys and tag values that will be unattached from
16426	// the resource.
16427	//
16428	// TagKeys is a required field
16429	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
16430}
16431
16432// String returns the string representation
16433func (s UntagResourceInput) String() string {
16434	return awsutil.Prettify(s)
16435}
16436
16437// GoString returns the string representation
16438func (s UntagResourceInput) GoString() string {
16439	return s.String()
16440}
16441
16442// Validate inspects the fields of the type to determine if they are valid.
16443func (s *UntagResourceInput) Validate() error {
16444	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
16445	if s.ResourceArn == nil {
16446		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
16447	}
16448	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
16449		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
16450	}
16451	if s.TagKeys == nil {
16452		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
16453	}
16454
16455	if invalidParams.Len() > 0 {
16456		return invalidParams
16457	}
16458	return nil
16459}
16460
16461// SetResourceArn sets the ResourceArn field's value.
16462func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
16463	s.ResourceArn = &v
16464	return s
16465}
16466
16467// SetTagKeys sets the TagKeys field's value.
16468func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
16469	s.TagKeys = v
16470	return s
16471}
16472
16473type UntagResourceOutput struct {
16474	_ struct{} `type:"structure"`
16475}
16476
16477// String returns the string representation
16478func (s UntagResourceOutput) String() string {
16479	return awsutil.Prettify(s)
16480}
16481
16482// GoString returns the string representation
16483func (s UntagResourceOutput) GoString() string {
16484	return s.String()
16485}
16486
16487type UpdateRobotApplicationInput struct {
16488	_ struct{} `type:"structure"`
16489
16490	// The application information for the robot application.
16491	//
16492	// Application is a required field
16493	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
16494
16495	// The revision id for the robot application.
16496	CurrentRevisionId *string `locationName:"currentRevisionId" min:"1" type:"string"`
16497
16498	// The robot software suite (ROS distribution) used by the robot application.
16499	//
16500	// RobotSoftwareSuite is a required field
16501	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure" required:"true"`
16502
16503	// The sources of the robot application.
16504	//
16505	// Sources is a required field
16506	Sources []*SourceConfig `locationName:"sources" type:"list" required:"true"`
16507}
16508
16509// String returns the string representation
16510func (s UpdateRobotApplicationInput) String() string {
16511	return awsutil.Prettify(s)
16512}
16513
16514// GoString returns the string representation
16515func (s UpdateRobotApplicationInput) GoString() string {
16516	return s.String()
16517}
16518
16519// Validate inspects the fields of the type to determine if they are valid.
16520func (s *UpdateRobotApplicationInput) Validate() error {
16521	invalidParams := request.ErrInvalidParams{Context: "UpdateRobotApplicationInput"}
16522	if s.Application == nil {
16523		invalidParams.Add(request.NewErrParamRequired("Application"))
16524	}
16525	if s.Application != nil && len(*s.Application) < 1 {
16526		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
16527	}
16528	if s.CurrentRevisionId != nil && len(*s.CurrentRevisionId) < 1 {
16529		invalidParams.Add(request.NewErrParamMinLen("CurrentRevisionId", 1))
16530	}
16531	if s.RobotSoftwareSuite == nil {
16532		invalidParams.Add(request.NewErrParamRequired("RobotSoftwareSuite"))
16533	}
16534	if s.Sources == nil {
16535		invalidParams.Add(request.NewErrParamRequired("Sources"))
16536	}
16537	if s.Sources != nil {
16538		for i, v := range s.Sources {
16539			if v == nil {
16540				continue
16541			}
16542			if err := v.Validate(); err != nil {
16543				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
16544			}
16545		}
16546	}
16547
16548	if invalidParams.Len() > 0 {
16549		return invalidParams
16550	}
16551	return nil
16552}
16553
16554// SetApplication sets the Application field's value.
16555func (s *UpdateRobotApplicationInput) SetApplication(v string) *UpdateRobotApplicationInput {
16556	s.Application = &v
16557	return s
16558}
16559
16560// SetCurrentRevisionId sets the CurrentRevisionId field's value.
16561func (s *UpdateRobotApplicationInput) SetCurrentRevisionId(v string) *UpdateRobotApplicationInput {
16562	s.CurrentRevisionId = &v
16563	return s
16564}
16565
16566// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16567func (s *UpdateRobotApplicationInput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateRobotApplicationInput {
16568	s.RobotSoftwareSuite = v
16569	return s
16570}
16571
16572// SetSources sets the Sources field's value.
16573func (s *UpdateRobotApplicationInput) SetSources(v []*SourceConfig) *UpdateRobotApplicationInput {
16574	s.Sources = v
16575	return s
16576}
16577
16578type UpdateRobotApplicationOutput struct {
16579	_ struct{} `type:"structure"`
16580
16581	// The Amazon Resource Name (ARN) of the updated robot application.
16582	Arn *string `locationName:"arn" min:"1" type:"string"`
16583
16584	// The time, in milliseconds since the epoch, when the robot application was
16585	// last updated.
16586	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16587
16588	// The name of the robot application.
16589	Name *string `locationName:"name" min:"1" type:"string"`
16590
16591	// The revision id of the robot application.
16592	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
16593
16594	// The robot software suite (ROS distribution) used by the robot application.
16595	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
16596
16597	// The sources of the robot application.
16598	Sources []*Source `locationName:"sources" type:"list"`
16599
16600	// The version of the robot application.
16601	Version *string `locationName:"version" min:"1" type:"string"`
16602}
16603
16604// String returns the string representation
16605func (s UpdateRobotApplicationOutput) String() string {
16606	return awsutil.Prettify(s)
16607}
16608
16609// GoString returns the string representation
16610func (s UpdateRobotApplicationOutput) GoString() string {
16611	return s.String()
16612}
16613
16614// SetArn sets the Arn field's value.
16615func (s *UpdateRobotApplicationOutput) SetArn(v string) *UpdateRobotApplicationOutput {
16616	s.Arn = &v
16617	return s
16618}
16619
16620// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16621func (s *UpdateRobotApplicationOutput) SetLastUpdatedAt(v time.Time) *UpdateRobotApplicationOutput {
16622	s.LastUpdatedAt = &v
16623	return s
16624}
16625
16626// SetName sets the Name field's value.
16627func (s *UpdateRobotApplicationOutput) SetName(v string) *UpdateRobotApplicationOutput {
16628	s.Name = &v
16629	return s
16630}
16631
16632// SetRevisionId sets the RevisionId field's value.
16633func (s *UpdateRobotApplicationOutput) SetRevisionId(v string) *UpdateRobotApplicationOutput {
16634	s.RevisionId = &v
16635	return s
16636}
16637
16638// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16639func (s *UpdateRobotApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateRobotApplicationOutput {
16640	s.RobotSoftwareSuite = v
16641	return s
16642}
16643
16644// SetSources sets the Sources field's value.
16645func (s *UpdateRobotApplicationOutput) SetSources(v []*Source) *UpdateRobotApplicationOutput {
16646	s.Sources = v
16647	return s
16648}
16649
16650// SetVersion sets the Version field's value.
16651func (s *UpdateRobotApplicationOutput) SetVersion(v string) *UpdateRobotApplicationOutput {
16652	s.Version = &v
16653	return s
16654}
16655
16656type UpdateSimulationApplicationInput struct {
16657	_ struct{} `type:"structure"`
16658
16659	// The application information for the simulation application.
16660	//
16661	// Application is a required field
16662	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
16663
16664	// The revision id for the robot application.
16665	CurrentRevisionId *string `locationName:"currentRevisionId" min:"1" type:"string"`
16666
16667	// The rendering engine for the simulation application.
16668	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
16669
16670	// Information about the robot software suite (ROS distribution).
16671	//
16672	// RobotSoftwareSuite is a required field
16673	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure" required:"true"`
16674
16675	// The simulation software suite used by the simulation application.
16676	//
16677	// SimulationSoftwareSuite is a required field
16678	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure" required:"true"`
16679
16680	// The sources of the simulation application.
16681	//
16682	// Sources is a required field
16683	Sources []*SourceConfig `locationName:"sources" type:"list" required:"true"`
16684}
16685
16686// String returns the string representation
16687func (s UpdateSimulationApplicationInput) String() string {
16688	return awsutil.Prettify(s)
16689}
16690
16691// GoString returns the string representation
16692func (s UpdateSimulationApplicationInput) GoString() string {
16693	return s.String()
16694}
16695
16696// Validate inspects the fields of the type to determine if they are valid.
16697func (s *UpdateSimulationApplicationInput) Validate() error {
16698	invalidParams := request.ErrInvalidParams{Context: "UpdateSimulationApplicationInput"}
16699	if s.Application == nil {
16700		invalidParams.Add(request.NewErrParamRequired("Application"))
16701	}
16702	if s.Application != nil && len(*s.Application) < 1 {
16703		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
16704	}
16705	if s.CurrentRevisionId != nil && len(*s.CurrentRevisionId) < 1 {
16706		invalidParams.Add(request.NewErrParamMinLen("CurrentRevisionId", 1))
16707	}
16708	if s.RobotSoftwareSuite == nil {
16709		invalidParams.Add(request.NewErrParamRequired("RobotSoftwareSuite"))
16710	}
16711	if s.SimulationSoftwareSuite == nil {
16712		invalidParams.Add(request.NewErrParamRequired("SimulationSoftwareSuite"))
16713	}
16714	if s.Sources == nil {
16715		invalidParams.Add(request.NewErrParamRequired("Sources"))
16716	}
16717	if s.RenderingEngine != nil {
16718		if err := s.RenderingEngine.Validate(); err != nil {
16719			invalidParams.AddNested("RenderingEngine", err.(request.ErrInvalidParams))
16720		}
16721	}
16722	if s.Sources != nil {
16723		for i, v := range s.Sources {
16724			if v == nil {
16725				continue
16726			}
16727			if err := v.Validate(); err != nil {
16728				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
16729			}
16730		}
16731	}
16732
16733	if invalidParams.Len() > 0 {
16734		return invalidParams
16735	}
16736	return nil
16737}
16738
16739// SetApplication sets the Application field's value.
16740func (s *UpdateSimulationApplicationInput) SetApplication(v string) *UpdateSimulationApplicationInput {
16741	s.Application = &v
16742	return s
16743}
16744
16745// SetCurrentRevisionId sets the CurrentRevisionId field's value.
16746func (s *UpdateSimulationApplicationInput) SetCurrentRevisionId(v string) *UpdateSimulationApplicationInput {
16747	s.CurrentRevisionId = &v
16748	return s
16749}
16750
16751// SetRenderingEngine sets the RenderingEngine field's value.
16752func (s *UpdateSimulationApplicationInput) SetRenderingEngine(v *RenderingEngine) *UpdateSimulationApplicationInput {
16753	s.RenderingEngine = v
16754	return s
16755}
16756
16757// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16758func (s *UpdateSimulationApplicationInput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateSimulationApplicationInput {
16759	s.RobotSoftwareSuite = v
16760	return s
16761}
16762
16763// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
16764func (s *UpdateSimulationApplicationInput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *UpdateSimulationApplicationInput {
16765	s.SimulationSoftwareSuite = v
16766	return s
16767}
16768
16769// SetSources sets the Sources field's value.
16770func (s *UpdateSimulationApplicationInput) SetSources(v []*SourceConfig) *UpdateSimulationApplicationInput {
16771	s.Sources = v
16772	return s
16773}
16774
16775type UpdateSimulationApplicationOutput struct {
16776	_ struct{} `type:"structure"`
16777
16778	// The Amazon Resource Name (ARN) of the updated simulation application.
16779	Arn *string `locationName:"arn" min:"1" type:"string"`
16780
16781	// The time, in milliseconds since the epoch, when the simulation application
16782	// was last updated.
16783	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16784
16785	// The name of the simulation application.
16786	Name *string `locationName:"name" min:"1" type:"string"`
16787
16788	// The rendering engine for the simulation application.
16789	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
16790
16791	// The revision id of the simulation application.
16792	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
16793
16794	// Information about the robot software suite (ROS distribution).
16795	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
16796
16797	// The simulation software suite used by the simulation application.
16798	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
16799
16800	// The sources of the simulation application.
16801	Sources []*Source `locationName:"sources" type:"list"`
16802
16803	// The version of the robot application.
16804	Version *string `locationName:"version" min:"1" type:"string"`
16805}
16806
16807// String returns the string representation
16808func (s UpdateSimulationApplicationOutput) String() string {
16809	return awsutil.Prettify(s)
16810}
16811
16812// GoString returns the string representation
16813func (s UpdateSimulationApplicationOutput) GoString() string {
16814	return s.String()
16815}
16816
16817// SetArn sets the Arn field's value.
16818func (s *UpdateSimulationApplicationOutput) SetArn(v string) *UpdateSimulationApplicationOutput {
16819	s.Arn = &v
16820	return s
16821}
16822
16823// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16824func (s *UpdateSimulationApplicationOutput) SetLastUpdatedAt(v time.Time) *UpdateSimulationApplicationOutput {
16825	s.LastUpdatedAt = &v
16826	return s
16827}
16828
16829// SetName sets the Name field's value.
16830func (s *UpdateSimulationApplicationOutput) SetName(v string) *UpdateSimulationApplicationOutput {
16831	s.Name = &v
16832	return s
16833}
16834
16835// SetRenderingEngine sets the RenderingEngine field's value.
16836func (s *UpdateSimulationApplicationOutput) SetRenderingEngine(v *RenderingEngine) *UpdateSimulationApplicationOutput {
16837	s.RenderingEngine = v
16838	return s
16839}
16840
16841// SetRevisionId sets the RevisionId field's value.
16842func (s *UpdateSimulationApplicationOutput) SetRevisionId(v string) *UpdateSimulationApplicationOutput {
16843	s.RevisionId = &v
16844	return s
16845}
16846
16847// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16848func (s *UpdateSimulationApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateSimulationApplicationOutput {
16849	s.RobotSoftwareSuite = v
16850	return s
16851}
16852
16853// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
16854func (s *UpdateSimulationApplicationOutput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *UpdateSimulationApplicationOutput {
16855	s.SimulationSoftwareSuite = v
16856	return s
16857}
16858
16859// SetSources sets the Sources field's value.
16860func (s *UpdateSimulationApplicationOutput) SetSources(v []*Source) *UpdateSimulationApplicationOutput {
16861	s.Sources = v
16862	return s
16863}
16864
16865// SetVersion sets the Version field's value.
16866func (s *UpdateSimulationApplicationOutput) SetVersion(v string) *UpdateSimulationApplicationOutput {
16867	s.Version = &v
16868	return s
16869}
16870
16871type UpdateWorldTemplateInput struct {
16872	_ struct{} `type:"structure"`
16873
16874	// The name of the template.
16875	Name *string `locationName:"name" type:"string"`
16876
16877	// The Amazon Resource Name (arn) of the world template to update.
16878	//
16879	// Template is a required field
16880	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
16881
16882	// The world template body.
16883	TemplateBody *string `locationName:"templateBody" min:"1" type:"string"`
16884
16885	// The location of the world template.
16886	TemplateLocation *TemplateLocation `locationName:"templateLocation" type:"structure"`
16887}
16888
16889// String returns the string representation
16890func (s UpdateWorldTemplateInput) String() string {
16891	return awsutil.Prettify(s)
16892}
16893
16894// GoString returns the string representation
16895func (s UpdateWorldTemplateInput) GoString() string {
16896	return s.String()
16897}
16898
16899// Validate inspects the fields of the type to determine if they are valid.
16900func (s *UpdateWorldTemplateInput) Validate() error {
16901	invalidParams := request.ErrInvalidParams{Context: "UpdateWorldTemplateInput"}
16902	if s.Template == nil {
16903		invalidParams.Add(request.NewErrParamRequired("Template"))
16904	}
16905	if s.Template != nil && len(*s.Template) < 1 {
16906		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
16907	}
16908	if s.TemplateBody != nil && len(*s.TemplateBody) < 1 {
16909		invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1))
16910	}
16911	if s.TemplateLocation != nil {
16912		if err := s.TemplateLocation.Validate(); err != nil {
16913			invalidParams.AddNested("TemplateLocation", err.(request.ErrInvalidParams))
16914		}
16915	}
16916
16917	if invalidParams.Len() > 0 {
16918		return invalidParams
16919	}
16920	return nil
16921}
16922
16923// SetName sets the Name field's value.
16924func (s *UpdateWorldTemplateInput) SetName(v string) *UpdateWorldTemplateInput {
16925	s.Name = &v
16926	return s
16927}
16928
16929// SetTemplate sets the Template field's value.
16930func (s *UpdateWorldTemplateInput) SetTemplate(v string) *UpdateWorldTemplateInput {
16931	s.Template = &v
16932	return s
16933}
16934
16935// SetTemplateBody sets the TemplateBody field's value.
16936func (s *UpdateWorldTemplateInput) SetTemplateBody(v string) *UpdateWorldTemplateInput {
16937	s.TemplateBody = &v
16938	return s
16939}
16940
16941// SetTemplateLocation sets the TemplateLocation field's value.
16942func (s *UpdateWorldTemplateInput) SetTemplateLocation(v *TemplateLocation) *UpdateWorldTemplateInput {
16943	s.TemplateLocation = v
16944	return s
16945}
16946
16947type UpdateWorldTemplateOutput struct {
16948	_ struct{} `type:"structure"`
16949
16950	// The Amazon Resource Name (arn) of the world template.
16951	Arn *string `locationName:"arn" min:"1" type:"string"`
16952
16953	// The time, in milliseconds since the epoch, when the world template was created.
16954	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
16955
16956	// The time, in milliseconds since the epoch, when the world template was last
16957	// updated.
16958	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16959
16960	// The name of the world template.
16961	Name *string `locationName:"name" type:"string"`
16962}
16963
16964// String returns the string representation
16965func (s UpdateWorldTemplateOutput) String() string {
16966	return awsutil.Prettify(s)
16967}
16968
16969// GoString returns the string representation
16970func (s UpdateWorldTemplateOutput) GoString() string {
16971	return s.String()
16972}
16973
16974// SetArn sets the Arn field's value.
16975func (s *UpdateWorldTemplateOutput) SetArn(v string) *UpdateWorldTemplateOutput {
16976	s.Arn = &v
16977	return s
16978}
16979
16980// SetCreatedAt sets the CreatedAt field's value.
16981func (s *UpdateWorldTemplateOutput) SetCreatedAt(v time.Time) *UpdateWorldTemplateOutput {
16982	s.CreatedAt = &v
16983	return s
16984}
16985
16986// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16987func (s *UpdateWorldTemplateOutput) SetLastUpdatedAt(v time.Time) *UpdateWorldTemplateOutput {
16988	s.LastUpdatedAt = &v
16989	return s
16990}
16991
16992// SetName sets the Name field's value.
16993func (s *UpdateWorldTemplateOutput) SetName(v string) *UpdateWorldTemplateOutput {
16994	s.Name = &v
16995	return s
16996}
16997
16998// Provides upload configuration information. Files are uploaded from the simulation
16999// job to a location you specify.
17000type UploadConfiguration struct {
17001	_ struct{} `type:"structure"`
17002
17003	// A prefix that specifies where files will be uploaded in Amazon S3. It is
17004	// appended to the simulation output location to determine the final path.
17005	//
17006	// For example, if your simulation output location is s3://my-bucket and your
17007	// upload configuration name is robot-test, your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test.
17008	//
17009	// Name is a required field
17010	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
17011
17012	// Specifies the path of the file(s) to upload. Standard Unix glob matching
17013	// rules are accepted, with the addition of ** as a super asterisk. For example,
17014	// specifying /var/log/**.log causes all .log files in the /var/log directory
17015	// tree to be collected. For more examples, see Glob Library (https://github.com/gobwas/glob).
17016	//
17017	// Path is a required field
17018	Path *string `locationName:"path" min:"1" type:"string" required:"true"`
17019
17020	// Specifies when to upload the files:
17021	//
17022	// UPLOAD_ON_TERMINATE
17023	//
17024	// Matching files are uploaded once the simulation enters the TERMINATING state.
17025	// Matching files are not uploaded until all of your code (including tools)
17026	// have stopped.
17027	//
17028	// If there is a problem uploading a file, the upload is retried. If problems
17029	// persist, no further upload attempts will be made.
17030	//
17031	// UPLOAD_ROLLING_AUTO_REMOVE
17032	//
17033	// Matching files are uploaded as they are created. They are deleted after they
17034	// are uploaded. The specified path is checked every 5 seconds. A final check
17035	// is made when all of your code (including tools) have stopped.
17036	//
17037	// UploadBehavior is a required field
17038	UploadBehavior *string `locationName:"uploadBehavior" type:"string" required:"true" enum:"UploadBehavior"`
17039}
17040
17041// String returns the string representation
17042func (s UploadConfiguration) String() string {
17043	return awsutil.Prettify(s)
17044}
17045
17046// GoString returns the string representation
17047func (s UploadConfiguration) GoString() string {
17048	return s.String()
17049}
17050
17051// Validate inspects the fields of the type to determine if they are valid.
17052func (s *UploadConfiguration) Validate() error {
17053	invalidParams := request.ErrInvalidParams{Context: "UploadConfiguration"}
17054	if s.Name == nil {
17055		invalidParams.Add(request.NewErrParamRequired("Name"))
17056	}
17057	if s.Name != nil && len(*s.Name) < 1 {
17058		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
17059	}
17060	if s.Path == nil {
17061		invalidParams.Add(request.NewErrParamRequired("Path"))
17062	}
17063	if s.Path != nil && len(*s.Path) < 1 {
17064		invalidParams.Add(request.NewErrParamMinLen("Path", 1))
17065	}
17066	if s.UploadBehavior == nil {
17067		invalidParams.Add(request.NewErrParamRequired("UploadBehavior"))
17068	}
17069
17070	if invalidParams.Len() > 0 {
17071		return invalidParams
17072	}
17073	return nil
17074}
17075
17076// SetName sets the Name field's value.
17077func (s *UploadConfiguration) SetName(v string) *UploadConfiguration {
17078	s.Name = &v
17079	return s
17080}
17081
17082// SetPath sets the Path field's value.
17083func (s *UploadConfiguration) SetPath(v string) *UploadConfiguration {
17084	s.Path = &v
17085	return s
17086}
17087
17088// SetUploadBehavior sets the UploadBehavior field's value.
17089func (s *UploadConfiguration) SetUploadBehavior(v string) *UploadConfiguration {
17090	s.UploadBehavior = &v
17091	return s
17092}
17093
17094// If your simulation job accesses resources in a VPC, you provide this parameter
17095// identifying the list of security group IDs and subnet IDs. These must belong
17096// to the same VPC. You must provide at least one security group and two subnet
17097// IDs.
17098type VPCConfig struct {
17099	_ struct{} `type:"structure"`
17100
17101	// A boolean indicating whether to assign a public IP address.
17102	AssignPublicIp *bool `locationName:"assignPublicIp" type:"boolean"`
17103
17104	// A list of one or more security groups IDs in your VPC.
17105	SecurityGroups []*string `locationName:"securityGroups" min:"1" type:"list"`
17106
17107	// A list of one or more subnet IDs in your VPC.
17108	//
17109	// Subnets is a required field
17110	Subnets []*string `locationName:"subnets" min:"1" type:"list" required:"true"`
17111}
17112
17113// String returns the string representation
17114func (s VPCConfig) String() string {
17115	return awsutil.Prettify(s)
17116}
17117
17118// GoString returns the string representation
17119func (s VPCConfig) GoString() string {
17120	return s.String()
17121}
17122
17123// Validate inspects the fields of the type to determine if they are valid.
17124func (s *VPCConfig) Validate() error {
17125	invalidParams := request.ErrInvalidParams{Context: "VPCConfig"}
17126	if s.SecurityGroups != nil && len(s.SecurityGroups) < 1 {
17127		invalidParams.Add(request.NewErrParamMinLen("SecurityGroups", 1))
17128	}
17129	if s.Subnets == nil {
17130		invalidParams.Add(request.NewErrParamRequired("Subnets"))
17131	}
17132	if s.Subnets != nil && len(s.Subnets) < 1 {
17133		invalidParams.Add(request.NewErrParamMinLen("Subnets", 1))
17134	}
17135
17136	if invalidParams.Len() > 0 {
17137		return invalidParams
17138	}
17139	return nil
17140}
17141
17142// SetAssignPublicIp sets the AssignPublicIp field's value.
17143func (s *VPCConfig) SetAssignPublicIp(v bool) *VPCConfig {
17144	s.AssignPublicIp = &v
17145	return s
17146}
17147
17148// SetSecurityGroups sets the SecurityGroups field's value.
17149func (s *VPCConfig) SetSecurityGroups(v []*string) *VPCConfig {
17150	s.SecurityGroups = v
17151	return s
17152}
17153
17154// SetSubnets sets the Subnets field's value.
17155func (s *VPCConfig) SetSubnets(v []*string) *VPCConfig {
17156	s.Subnets = v
17157	return s
17158}
17159
17160// VPC configuration associated with your simulation job.
17161type VPCConfigResponse struct {
17162	_ struct{} `type:"structure"`
17163
17164	// A boolean indicating if a public IP was assigned.
17165	AssignPublicIp *bool `locationName:"assignPublicIp" type:"boolean"`
17166
17167	// A list of security group IDs associated with the simulation job.
17168	SecurityGroups []*string `locationName:"securityGroups" min:"1" type:"list"`
17169
17170	// A list of subnet IDs associated with the simulation job.
17171	Subnets []*string `locationName:"subnets" min:"1" type:"list"`
17172
17173	// The VPC ID associated with your simulation job.
17174	VpcId *string `locationName:"vpcId" type:"string"`
17175}
17176
17177// String returns the string representation
17178func (s VPCConfigResponse) String() string {
17179	return awsutil.Prettify(s)
17180}
17181
17182// GoString returns the string representation
17183func (s VPCConfigResponse) GoString() string {
17184	return s.String()
17185}
17186
17187// SetAssignPublicIp sets the AssignPublicIp field's value.
17188func (s *VPCConfigResponse) SetAssignPublicIp(v bool) *VPCConfigResponse {
17189	s.AssignPublicIp = &v
17190	return s
17191}
17192
17193// SetSecurityGroups sets the SecurityGroups field's value.
17194func (s *VPCConfigResponse) SetSecurityGroups(v []*string) *VPCConfigResponse {
17195	s.SecurityGroups = v
17196	return s
17197}
17198
17199// SetSubnets sets the Subnets field's value.
17200func (s *VPCConfigResponse) SetSubnets(v []*string) *VPCConfigResponse {
17201	s.Subnets = v
17202	return s
17203}
17204
17205// SetVpcId sets the VpcId field's value.
17206func (s *VPCConfigResponse) SetVpcId(v string) *VPCConfigResponse {
17207	s.VpcId = &v
17208	return s
17209}
17210
17211// Configuration information for a world.
17212type WorldConfig struct {
17213	_ struct{} `type:"structure"`
17214
17215	// The world generated by Simulation WorldForge.
17216	World *string `locationName:"world" min:"1" type:"string"`
17217}
17218
17219// String returns the string representation
17220func (s WorldConfig) String() string {
17221	return awsutil.Prettify(s)
17222}
17223
17224// GoString returns the string representation
17225func (s WorldConfig) GoString() string {
17226	return s.String()
17227}
17228
17229// Validate inspects the fields of the type to determine if they are valid.
17230func (s *WorldConfig) Validate() error {
17231	invalidParams := request.ErrInvalidParams{Context: "WorldConfig"}
17232	if s.World != nil && len(*s.World) < 1 {
17233		invalidParams.Add(request.NewErrParamMinLen("World", 1))
17234	}
17235
17236	if invalidParams.Len() > 0 {
17237		return invalidParams
17238	}
17239	return nil
17240}
17241
17242// SetWorld sets the World field's value.
17243func (s *WorldConfig) SetWorld(v string) *WorldConfig {
17244	s.World = &v
17245	return s
17246}
17247
17248// The number of worlds that will be created. You can configure the number of
17249// unique floorplans and the number of unique interiors for each floor plan.
17250// For example, if you want 1 world with 20 unique interiors, you set floorplanCount
17251// = 1 and interiorCountPerFloorplan = 20. This will result in 20 worlds (floorplanCount
17252// * interiorCountPerFloorplan).
17253//
17254// If you set floorplanCount = 4 and interiorCountPerFloorplan = 5, there will
17255// be 20 worlds with 5 unique floor plans.
17256type WorldCount struct {
17257	_ struct{} `type:"structure"`
17258
17259	// The number of unique floorplans.
17260	FloorplanCount *int64 `locationName:"floorplanCount" type:"integer"`
17261
17262	// The number of unique interiors per floorplan.
17263	InteriorCountPerFloorplan *int64 `locationName:"interiorCountPerFloorplan" type:"integer"`
17264}
17265
17266// String returns the string representation
17267func (s WorldCount) String() string {
17268	return awsutil.Prettify(s)
17269}
17270
17271// GoString returns the string representation
17272func (s WorldCount) GoString() string {
17273	return s.String()
17274}
17275
17276// SetFloorplanCount sets the FloorplanCount field's value.
17277func (s *WorldCount) SetFloorplanCount(v int64) *WorldCount {
17278	s.FloorplanCount = &v
17279	return s
17280}
17281
17282// SetInteriorCountPerFloorplan sets the InteriorCountPerFloorplan field's value.
17283func (s *WorldCount) SetInteriorCountPerFloorplan(v int64) *WorldCount {
17284	s.InteriorCountPerFloorplan = &v
17285	return s
17286}
17287
17288// Information about a world export job.
17289type WorldExportJobSummary struct {
17290	_ struct{} `type:"structure"`
17291
17292	// The Amazon Resource Name (ARN) of the world export job.
17293	Arn *string `locationName:"arn" min:"1" type:"string"`
17294
17295	// The time, in milliseconds since the epoch, when the world export job was
17296	// created.
17297	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
17298
17299	// The status of the world export job.
17300	//
17301	// Pending
17302	//
17303	// The world export job request is pending.
17304	//
17305	// Running
17306	//
17307	// The world export job is running.
17308	//
17309	// Completed
17310	//
17311	// The world export job completed.
17312	//
17313	// Failed
17314	//
17315	// The world export job failed. See failureCode for more information.
17316	//
17317	// Canceled
17318	//
17319	// The world export job was cancelled.
17320	//
17321	// Canceling
17322	//
17323	// The world export job is being cancelled.
17324	Status *string `locationName:"status" type:"string" enum:"WorldExportJobStatus"`
17325
17326	// A list of worlds.
17327	Worlds []*string `locationName:"worlds" min:"1" type:"list"`
17328}
17329
17330// String returns the string representation
17331func (s WorldExportJobSummary) String() string {
17332	return awsutil.Prettify(s)
17333}
17334
17335// GoString returns the string representation
17336func (s WorldExportJobSummary) GoString() string {
17337	return s.String()
17338}
17339
17340// SetArn sets the Arn field's value.
17341func (s *WorldExportJobSummary) SetArn(v string) *WorldExportJobSummary {
17342	s.Arn = &v
17343	return s
17344}
17345
17346// SetCreatedAt sets the CreatedAt field's value.
17347func (s *WorldExportJobSummary) SetCreatedAt(v time.Time) *WorldExportJobSummary {
17348	s.CreatedAt = &v
17349	return s
17350}
17351
17352// SetStatus sets the Status field's value.
17353func (s *WorldExportJobSummary) SetStatus(v string) *WorldExportJobSummary {
17354	s.Status = &v
17355	return s
17356}
17357
17358// SetWorlds sets the Worlds field's value.
17359func (s *WorldExportJobSummary) SetWorlds(v []*string) *WorldExportJobSummary {
17360	s.Worlds = v
17361	return s
17362}
17363
17364// Information about a failed world.
17365type WorldFailure struct {
17366	_ struct{} `type:"structure"`
17367
17368	// The failure code of the world export job if it failed:
17369	//
17370	// InternalServiceError
17371	//
17372	// Internal service error.
17373	//
17374	// LimitExceeded
17375	//
17376	// The requested resource exceeds the maximum number allowed, or the number
17377	// of concurrent stream requests exceeds the maximum number allowed.
17378	//
17379	// ResourceNotFound
17380	//
17381	// The specified resource could not be found.
17382	//
17383	// RequestThrottled
17384	//
17385	// The request was throttled.
17386	//
17387	// InvalidInput
17388	//
17389	// An input parameter in the request is not valid.
17390	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldGenerationJobErrorCode"`
17391
17392	// The number of failed worlds.
17393	FailureCount *int64 `locationName:"failureCount" type:"integer"`
17394
17395	// The sample reason why the world failed. World errors are aggregated. A sample
17396	// is used as the sampleFailureReason.
17397	SampleFailureReason *string `locationName:"sampleFailureReason" type:"string"`
17398}
17399
17400// String returns the string representation
17401func (s WorldFailure) String() string {
17402	return awsutil.Prettify(s)
17403}
17404
17405// GoString returns the string representation
17406func (s WorldFailure) GoString() string {
17407	return s.String()
17408}
17409
17410// SetFailureCode sets the FailureCode field's value.
17411func (s *WorldFailure) SetFailureCode(v string) *WorldFailure {
17412	s.FailureCode = &v
17413	return s
17414}
17415
17416// SetFailureCount sets the FailureCount field's value.
17417func (s *WorldFailure) SetFailureCount(v int64) *WorldFailure {
17418	s.FailureCount = &v
17419	return s
17420}
17421
17422// SetSampleFailureReason sets the SampleFailureReason field's value.
17423func (s *WorldFailure) SetSampleFailureReason(v string) *WorldFailure {
17424	s.SampleFailureReason = &v
17425	return s
17426}
17427
17428// Information about a world generator job.
17429type WorldGenerationJobSummary struct {
17430	_ struct{} `type:"structure"`
17431
17432	// The Amazon Resource Name (ARN) of the world generator job.
17433	Arn *string `locationName:"arn" min:"1" type:"string"`
17434
17435	// The time, in milliseconds since the epoch, when the world generator job was
17436	// created.
17437	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
17438
17439	// The number of worlds that failed.
17440	FailedWorldCount *int64 `locationName:"failedWorldCount" type:"integer"`
17441
17442	// The status of the world generator job:
17443	//
17444	// Pending
17445	//
17446	// The world generator job request is pending.
17447	//
17448	// Running
17449	//
17450	// The world generator job is running.
17451	//
17452	// Completed
17453	//
17454	// The world generator job completed.
17455	//
17456	// Failed
17457	//
17458	// The world generator job failed. See failureCode for more information.
17459	//
17460	// PartialFailed
17461	//
17462	// Some worlds did not generate.
17463	//
17464	// Canceled
17465	//
17466	// The world generator job was cancelled.
17467	//
17468	// Canceling
17469	//
17470	// The world generator job is being cancelled.
17471	Status *string `locationName:"status" type:"string" enum:"WorldGenerationJobStatus"`
17472
17473	// The number of worlds that were generated.
17474	SucceededWorldCount *int64 `locationName:"succeededWorldCount" type:"integer"`
17475
17476	// The Amazon Resource Name (arn) of the world template.
17477	Template *string `locationName:"template" min:"1" type:"string"`
17478
17479	// Information about the world count.
17480	WorldCount *WorldCount `locationName:"worldCount" type:"structure"`
17481}
17482
17483// String returns the string representation
17484func (s WorldGenerationJobSummary) String() string {
17485	return awsutil.Prettify(s)
17486}
17487
17488// GoString returns the string representation
17489func (s WorldGenerationJobSummary) GoString() string {
17490	return s.String()
17491}
17492
17493// SetArn sets the Arn field's value.
17494func (s *WorldGenerationJobSummary) SetArn(v string) *WorldGenerationJobSummary {
17495	s.Arn = &v
17496	return s
17497}
17498
17499// SetCreatedAt sets the CreatedAt field's value.
17500func (s *WorldGenerationJobSummary) SetCreatedAt(v time.Time) *WorldGenerationJobSummary {
17501	s.CreatedAt = &v
17502	return s
17503}
17504
17505// SetFailedWorldCount sets the FailedWorldCount field's value.
17506func (s *WorldGenerationJobSummary) SetFailedWorldCount(v int64) *WorldGenerationJobSummary {
17507	s.FailedWorldCount = &v
17508	return s
17509}
17510
17511// SetStatus sets the Status field's value.
17512func (s *WorldGenerationJobSummary) SetStatus(v string) *WorldGenerationJobSummary {
17513	s.Status = &v
17514	return s
17515}
17516
17517// SetSucceededWorldCount sets the SucceededWorldCount field's value.
17518func (s *WorldGenerationJobSummary) SetSucceededWorldCount(v int64) *WorldGenerationJobSummary {
17519	s.SucceededWorldCount = &v
17520	return s
17521}
17522
17523// SetTemplate sets the Template field's value.
17524func (s *WorldGenerationJobSummary) SetTemplate(v string) *WorldGenerationJobSummary {
17525	s.Template = &v
17526	return s
17527}
17528
17529// SetWorldCount sets the WorldCount field's value.
17530func (s *WorldGenerationJobSummary) SetWorldCount(v *WorldCount) *WorldGenerationJobSummary {
17531	s.WorldCount = v
17532	return s
17533}
17534
17535// Information about a world.
17536type WorldSummary struct {
17537	_ struct{} `type:"structure"`
17538
17539	// The Amazon Resource Name (ARN) of the world.
17540	Arn *string `locationName:"arn" min:"1" type:"string"`
17541
17542	// The time, in milliseconds since the epoch, when the world was created.
17543	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
17544
17545	// The Amazon Resource Name (arn) of the world generation job.
17546	GenerationJob *string `locationName:"generationJob" min:"1" type:"string"`
17547
17548	// The Amazon Resource Name (arn) of the world template.
17549	Template *string `locationName:"template" min:"1" type:"string"`
17550}
17551
17552// String returns the string representation
17553func (s WorldSummary) String() string {
17554	return awsutil.Prettify(s)
17555}
17556
17557// GoString returns the string representation
17558func (s WorldSummary) GoString() string {
17559	return s.String()
17560}
17561
17562// SetArn sets the Arn field's value.
17563func (s *WorldSummary) SetArn(v string) *WorldSummary {
17564	s.Arn = &v
17565	return s
17566}
17567
17568// SetCreatedAt sets the CreatedAt field's value.
17569func (s *WorldSummary) SetCreatedAt(v time.Time) *WorldSummary {
17570	s.CreatedAt = &v
17571	return s
17572}
17573
17574// SetGenerationJob sets the GenerationJob field's value.
17575func (s *WorldSummary) SetGenerationJob(v string) *WorldSummary {
17576	s.GenerationJob = &v
17577	return s
17578}
17579
17580// SetTemplate sets the Template field's value.
17581func (s *WorldSummary) SetTemplate(v string) *WorldSummary {
17582	s.Template = &v
17583	return s
17584}
17585
17586const (
17587	// ArchitectureX8664 is a Architecture enum value
17588	ArchitectureX8664 = "X86_64"
17589
17590	// ArchitectureArm64 is a Architecture enum value
17591	ArchitectureArm64 = "ARM64"
17592
17593	// ArchitectureArmhf is a Architecture enum value
17594	ArchitectureArmhf = "ARMHF"
17595)
17596
17597// Architecture_Values returns all elements of the Architecture enum
17598func Architecture_Values() []string {
17599	return []string{
17600		ArchitectureX8664,
17601		ArchitectureArm64,
17602		ArchitectureArmhf,
17603	}
17604}
17605
17606const (
17607	// DeploymentJobErrorCodeResourceNotFound is a DeploymentJobErrorCode enum value
17608	DeploymentJobErrorCodeResourceNotFound = "ResourceNotFound"
17609
17610	// DeploymentJobErrorCodeEnvironmentSetupError is a DeploymentJobErrorCode enum value
17611	DeploymentJobErrorCodeEnvironmentSetupError = "EnvironmentSetupError"
17612
17613	// DeploymentJobErrorCodeEtagMismatch is a DeploymentJobErrorCode enum value
17614	DeploymentJobErrorCodeEtagMismatch = "EtagMismatch"
17615
17616	// DeploymentJobErrorCodeFailureThresholdBreached is a DeploymentJobErrorCode enum value
17617	DeploymentJobErrorCodeFailureThresholdBreached = "FailureThresholdBreached"
17618
17619	// DeploymentJobErrorCodeRobotDeploymentAborted is a DeploymentJobErrorCode enum value
17620	DeploymentJobErrorCodeRobotDeploymentAborted = "RobotDeploymentAborted"
17621
17622	// DeploymentJobErrorCodeRobotDeploymentNoResponse is a DeploymentJobErrorCode enum value
17623	DeploymentJobErrorCodeRobotDeploymentNoResponse = "RobotDeploymentNoResponse"
17624
17625	// DeploymentJobErrorCodeRobotAgentConnectionTimeout is a DeploymentJobErrorCode enum value
17626	DeploymentJobErrorCodeRobotAgentConnectionTimeout = "RobotAgentConnectionTimeout"
17627
17628	// DeploymentJobErrorCodeGreengrassDeploymentFailed is a DeploymentJobErrorCode enum value
17629	DeploymentJobErrorCodeGreengrassDeploymentFailed = "GreengrassDeploymentFailed"
17630
17631	// DeploymentJobErrorCodeInvalidGreengrassGroup is a DeploymentJobErrorCode enum value
17632	DeploymentJobErrorCodeInvalidGreengrassGroup = "InvalidGreengrassGroup"
17633
17634	// DeploymentJobErrorCodeMissingRobotArchitecture is a DeploymentJobErrorCode enum value
17635	DeploymentJobErrorCodeMissingRobotArchitecture = "MissingRobotArchitecture"
17636
17637	// DeploymentJobErrorCodeMissingRobotApplicationArchitecture is a DeploymentJobErrorCode enum value
17638	DeploymentJobErrorCodeMissingRobotApplicationArchitecture = "MissingRobotApplicationArchitecture"
17639
17640	// DeploymentJobErrorCodeMissingRobotDeploymentResource is a DeploymentJobErrorCode enum value
17641	DeploymentJobErrorCodeMissingRobotDeploymentResource = "MissingRobotDeploymentResource"
17642
17643	// DeploymentJobErrorCodeGreengrassGroupVersionDoesNotExist is a DeploymentJobErrorCode enum value
17644	DeploymentJobErrorCodeGreengrassGroupVersionDoesNotExist = "GreengrassGroupVersionDoesNotExist"
17645
17646	// DeploymentJobErrorCodeLambdaDeleted is a DeploymentJobErrorCode enum value
17647	DeploymentJobErrorCodeLambdaDeleted = "LambdaDeleted"
17648
17649	// DeploymentJobErrorCodeExtractingBundleFailure is a DeploymentJobErrorCode enum value
17650	DeploymentJobErrorCodeExtractingBundleFailure = "ExtractingBundleFailure"
17651
17652	// DeploymentJobErrorCodePreLaunchFileFailure is a DeploymentJobErrorCode enum value
17653	DeploymentJobErrorCodePreLaunchFileFailure = "PreLaunchFileFailure"
17654
17655	// DeploymentJobErrorCodePostLaunchFileFailure is a DeploymentJobErrorCode enum value
17656	DeploymentJobErrorCodePostLaunchFileFailure = "PostLaunchFileFailure"
17657
17658	// DeploymentJobErrorCodeBadPermissionError is a DeploymentJobErrorCode enum value
17659	DeploymentJobErrorCodeBadPermissionError = "BadPermissionError"
17660
17661	// DeploymentJobErrorCodeDownloadConditionFailed is a DeploymentJobErrorCode enum value
17662	DeploymentJobErrorCodeDownloadConditionFailed = "DownloadConditionFailed"
17663
17664	// DeploymentJobErrorCodeBadLambdaAssociated is a DeploymentJobErrorCode enum value
17665	DeploymentJobErrorCodeBadLambdaAssociated = "BadLambdaAssociated"
17666
17667	// DeploymentJobErrorCodeInternalServerError is a DeploymentJobErrorCode enum value
17668	DeploymentJobErrorCodeInternalServerError = "InternalServerError"
17669
17670	// DeploymentJobErrorCodeRobotApplicationDoesNotExist is a DeploymentJobErrorCode enum value
17671	DeploymentJobErrorCodeRobotApplicationDoesNotExist = "RobotApplicationDoesNotExist"
17672
17673	// DeploymentJobErrorCodeDeploymentFleetDoesNotExist is a DeploymentJobErrorCode enum value
17674	DeploymentJobErrorCodeDeploymentFleetDoesNotExist = "DeploymentFleetDoesNotExist"
17675
17676	// DeploymentJobErrorCodeFleetDeploymentTimeout is a DeploymentJobErrorCode enum value
17677	DeploymentJobErrorCodeFleetDeploymentTimeout = "FleetDeploymentTimeout"
17678)
17679
17680// DeploymentJobErrorCode_Values returns all elements of the DeploymentJobErrorCode enum
17681func DeploymentJobErrorCode_Values() []string {
17682	return []string{
17683		DeploymentJobErrorCodeResourceNotFound,
17684		DeploymentJobErrorCodeEnvironmentSetupError,
17685		DeploymentJobErrorCodeEtagMismatch,
17686		DeploymentJobErrorCodeFailureThresholdBreached,
17687		DeploymentJobErrorCodeRobotDeploymentAborted,
17688		DeploymentJobErrorCodeRobotDeploymentNoResponse,
17689		DeploymentJobErrorCodeRobotAgentConnectionTimeout,
17690		DeploymentJobErrorCodeGreengrassDeploymentFailed,
17691		DeploymentJobErrorCodeInvalidGreengrassGroup,
17692		DeploymentJobErrorCodeMissingRobotArchitecture,
17693		DeploymentJobErrorCodeMissingRobotApplicationArchitecture,
17694		DeploymentJobErrorCodeMissingRobotDeploymentResource,
17695		DeploymentJobErrorCodeGreengrassGroupVersionDoesNotExist,
17696		DeploymentJobErrorCodeLambdaDeleted,
17697		DeploymentJobErrorCodeExtractingBundleFailure,
17698		DeploymentJobErrorCodePreLaunchFileFailure,
17699		DeploymentJobErrorCodePostLaunchFileFailure,
17700		DeploymentJobErrorCodeBadPermissionError,
17701		DeploymentJobErrorCodeDownloadConditionFailed,
17702		DeploymentJobErrorCodeBadLambdaAssociated,
17703		DeploymentJobErrorCodeInternalServerError,
17704		DeploymentJobErrorCodeRobotApplicationDoesNotExist,
17705		DeploymentJobErrorCodeDeploymentFleetDoesNotExist,
17706		DeploymentJobErrorCodeFleetDeploymentTimeout,
17707	}
17708}
17709
17710const (
17711	// DeploymentStatusPending is a DeploymentStatus enum value
17712	DeploymentStatusPending = "Pending"
17713
17714	// DeploymentStatusPreparing is a DeploymentStatus enum value
17715	DeploymentStatusPreparing = "Preparing"
17716
17717	// DeploymentStatusInProgress is a DeploymentStatus enum value
17718	DeploymentStatusInProgress = "InProgress"
17719
17720	// DeploymentStatusFailed is a DeploymentStatus enum value
17721	DeploymentStatusFailed = "Failed"
17722
17723	// DeploymentStatusSucceeded is a DeploymentStatus enum value
17724	DeploymentStatusSucceeded = "Succeeded"
17725
17726	// DeploymentStatusCanceled is a DeploymentStatus enum value
17727	DeploymentStatusCanceled = "Canceled"
17728)
17729
17730// DeploymentStatus_Values returns all elements of the DeploymentStatus enum
17731func DeploymentStatus_Values() []string {
17732	return []string{
17733		DeploymentStatusPending,
17734		DeploymentStatusPreparing,
17735		DeploymentStatusInProgress,
17736		DeploymentStatusFailed,
17737		DeploymentStatusSucceeded,
17738		DeploymentStatusCanceled,
17739	}
17740}
17741
17742const (
17743	// ExitBehaviorFail is a ExitBehavior enum value
17744	ExitBehaviorFail = "FAIL"
17745
17746	// ExitBehaviorRestart is a ExitBehavior enum value
17747	ExitBehaviorRestart = "RESTART"
17748)
17749
17750// ExitBehavior_Values returns all elements of the ExitBehavior enum
17751func ExitBehavior_Values() []string {
17752	return []string{
17753		ExitBehaviorFail,
17754		ExitBehaviorRestart,
17755	}
17756}
17757
17758const (
17759	// FailureBehaviorFail is a FailureBehavior enum value
17760	FailureBehaviorFail = "Fail"
17761
17762	// FailureBehaviorContinue is a FailureBehavior enum value
17763	FailureBehaviorContinue = "Continue"
17764)
17765
17766// FailureBehavior_Values returns all elements of the FailureBehavior enum
17767func FailureBehavior_Values() []string {
17768	return []string{
17769		FailureBehaviorFail,
17770		FailureBehaviorContinue,
17771	}
17772}
17773
17774const (
17775	// RenderingEngineTypeOgre is a RenderingEngineType enum value
17776	RenderingEngineTypeOgre = "OGRE"
17777)
17778
17779// RenderingEngineType_Values returns all elements of the RenderingEngineType enum
17780func RenderingEngineType_Values() []string {
17781	return []string{
17782		RenderingEngineTypeOgre,
17783	}
17784}
17785
17786const (
17787	// RobotDeploymentStepValidating is a RobotDeploymentStep enum value
17788	RobotDeploymentStepValidating = "Validating"
17789
17790	// RobotDeploymentStepDownloadingExtracting is a RobotDeploymentStep enum value
17791	RobotDeploymentStepDownloadingExtracting = "DownloadingExtracting"
17792
17793	// RobotDeploymentStepExecutingDownloadCondition is a RobotDeploymentStep enum value
17794	RobotDeploymentStepExecutingDownloadCondition = "ExecutingDownloadCondition"
17795
17796	// RobotDeploymentStepExecutingPreLaunch is a RobotDeploymentStep enum value
17797	RobotDeploymentStepExecutingPreLaunch = "ExecutingPreLaunch"
17798
17799	// RobotDeploymentStepLaunching is a RobotDeploymentStep enum value
17800	RobotDeploymentStepLaunching = "Launching"
17801
17802	// RobotDeploymentStepExecutingPostLaunch is a RobotDeploymentStep enum value
17803	RobotDeploymentStepExecutingPostLaunch = "ExecutingPostLaunch"
17804
17805	// RobotDeploymentStepFinished is a RobotDeploymentStep enum value
17806	RobotDeploymentStepFinished = "Finished"
17807)
17808
17809// RobotDeploymentStep_Values returns all elements of the RobotDeploymentStep enum
17810func RobotDeploymentStep_Values() []string {
17811	return []string{
17812		RobotDeploymentStepValidating,
17813		RobotDeploymentStepDownloadingExtracting,
17814		RobotDeploymentStepExecutingDownloadCondition,
17815		RobotDeploymentStepExecutingPreLaunch,
17816		RobotDeploymentStepLaunching,
17817		RobotDeploymentStepExecutingPostLaunch,
17818		RobotDeploymentStepFinished,
17819	}
17820}
17821
17822const (
17823	// RobotSoftwareSuiteTypeRos is a RobotSoftwareSuiteType enum value
17824	RobotSoftwareSuiteTypeRos = "ROS"
17825
17826	// RobotSoftwareSuiteTypeRos2 is a RobotSoftwareSuiteType enum value
17827	RobotSoftwareSuiteTypeRos2 = "ROS2"
17828)
17829
17830// RobotSoftwareSuiteType_Values returns all elements of the RobotSoftwareSuiteType enum
17831func RobotSoftwareSuiteType_Values() []string {
17832	return []string{
17833		RobotSoftwareSuiteTypeRos,
17834		RobotSoftwareSuiteTypeRos2,
17835	}
17836}
17837
17838const (
17839	// RobotSoftwareSuiteVersionTypeKinetic is a RobotSoftwareSuiteVersionType enum value
17840	RobotSoftwareSuiteVersionTypeKinetic = "Kinetic"
17841
17842	// RobotSoftwareSuiteVersionTypeMelodic is a RobotSoftwareSuiteVersionType enum value
17843	RobotSoftwareSuiteVersionTypeMelodic = "Melodic"
17844
17845	// RobotSoftwareSuiteVersionTypeDashing is a RobotSoftwareSuiteVersionType enum value
17846	RobotSoftwareSuiteVersionTypeDashing = "Dashing"
17847
17848	// RobotSoftwareSuiteVersionTypeFoxy is a RobotSoftwareSuiteVersionType enum value
17849	RobotSoftwareSuiteVersionTypeFoxy = "Foxy"
17850)
17851
17852// RobotSoftwareSuiteVersionType_Values returns all elements of the RobotSoftwareSuiteVersionType enum
17853func RobotSoftwareSuiteVersionType_Values() []string {
17854	return []string{
17855		RobotSoftwareSuiteVersionTypeKinetic,
17856		RobotSoftwareSuiteVersionTypeMelodic,
17857		RobotSoftwareSuiteVersionTypeDashing,
17858		RobotSoftwareSuiteVersionTypeFoxy,
17859	}
17860}
17861
17862const (
17863	// RobotStatusAvailable is a RobotStatus enum value
17864	RobotStatusAvailable = "Available"
17865
17866	// RobotStatusRegistered is a RobotStatus enum value
17867	RobotStatusRegistered = "Registered"
17868
17869	// RobotStatusPendingNewDeployment is a RobotStatus enum value
17870	RobotStatusPendingNewDeployment = "PendingNewDeployment"
17871
17872	// RobotStatusDeploying is a RobotStatus enum value
17873	RobotStatusDeploying = "Deploying"
17874
17875	// RobotStatusFailed is a RobotStatus enum value
17876	RobotStatusFailed = "Failed"
17877
17878	// RobotStatusInSync is a RobotStatus enum value
17879	RobotStatusInSync = "InSync"
17880
17881	// RobotStatusNoResponse is a RobotStatus enum value
17882	RobotStatusNoResponse = "NoResponse"
17883)
17884
17885// RobotStatus_Values returns all elements of the RobotStatus enum
17886func RobotStatus_Values() []string {
17887	return []string{
17888		RobotStatusAvailable,
17889		RobotStatusRegistered,
17890		RobotStatusPendingNewDeployment,
17891		RobotStatusDeploying,
17892		RobotStatusFailed,
17893		RobotStatusInSync,
17894		RobotStatusNoResponse,
17895	}
17896}
17897
17898const (
17899	// SimulationJobBatchErrorCodeInternalServiceError is a SimulationJobBatchErrorCode enum value
17900	SimulationJobBatchErrorCodeInternalServiceError = "InternalServiceError"
17901)
17902
17903// SimulationJobBatchErrorCode_Values returns all elements of the SimulationJobBatchErrorCode enum
17904func SimulationJobBatchErrorCode_Values() []string {
17905	return []string{
17906		SimulationJobBatchErrorCodeInternalServiceError,
17907	}
17908}
17909
17910const (
17911	// SimulationJobBatchStatusPending is a SimulationJobBatchStatus enum value
17912	SimulationJobBatchStatusPending = "Pending"
17913
17914	// SimulationJobBatchStatusInProgress is a SimulationJobBatchStatus enum value
17915	SimulationJobBatchStatusInProgress = "InProgress"
17916
17917	// SimulationJobBatchStatusFailed is a SimulationJobBatchStatus enum value
17918	SimulationJobBatchStatusFailed = "Failed"
17919
17920	// SimulationJobBatchStatusCompleted is a SimulationJobBatchStatus enum value
17921	SimulationJobBatchStatusCompleted = "Completed"
17922
17923	// SimulationJobBatchStatusCanceled is a SimulationJobBatchStatus enum value
17924	SimulationJobBatchStatusCanceled = "Canceled"
17925
17926	// SimulationJobBatchStatusCanceling is a SimulationJobBatchStatus enum value
17927	SimulationJobBatchStatusCanceling = "Canceling"
17928
17929	// SimulationJobBatchStatusCompleting is a SimulationJobBatchStatus enum value
17930	SimulationJobBatchStatusCompleting = "Completing"
17931
17932	// SimulationJobBatchStatusTimingOut is a SimulationJobBatchStatus enum value
17933	SimulationJobBatchStatusTimingOut = "TimingOut"
17934
17935	// SimulationJobBatchStatusTimedOut is a SimulationJobBatchStatus enum value
17936	SimulationJobBatchStatusTimedOut = "TimedOut"
17937)
17938
17939// SimulationJobBatchStatus_Values returns all elements of the SimulationJobBatchStatus enum
17940func SimulationJobBatchStatus_Values() []string {
17941	return []string{
17942		SimulationJobBatchStatusPending,
17943		SimulationJobBatchStatusInProgress,
17944		SimulationJobBatchStatusFailed,
17945		SimulationJobBatchStatusCompleted,
17946		SimulationJobBatchStatusCanceled,
17947		SimulationJobBatchStatusCanceling,
17948		SimulationJobBatchStatusCompleting,
17949		SimulationJobBatchStatusTimingOut,
17950		SimulationJobBatchStatusTimedOut,
17951	}
17952}
17953
17954const (
17955	// SimulationJobErrorCodeInternalServiceError is a SimulationJobErrorCode enum value
17956	SimulationJobErrorCodeInternalServiceError = "InternalServiceError"
17957
17958	// SimulationJobErrorCodeRobotApplicationCrash is a SimulationJobErrorCode enum value
17959	SimulationJobErrorCodeRobotApplicationCrash = "RobotApplicationCrash"
17960
17961	// SimulationJobErrorCodeSimulationApplicationCrash is a SimulationJobErrorCode enum value
17962	SimulationJobErrorCodeSimulationApplicationCrash = "SimulationApplicationCrash"
17963
17964	// SimulationJobErrorCodeRobotApplicationHealthCheckFailure is a SimulationJobErrorCode enum value
17965	SimulationJobErrorCodeRobotApplicationHealthCheckFailure = "RobotApplicationHealthCheckFailure"
17966
17967	// SimulationJobErrorCodeSimulationApplicationHealthCheckFailure is a SimulationJobErrorCode enum value
17968	SimulationJobErrorCodeSimulationApplicationHealthCheckFailure = "SimulationApplicationHealthCheckFailure"
17969
17970	// SimulationJobErrorCodeBadPermissionsRobotApplication is a SimulationJobErrorCode enum value
17971	SimulationJobErrorCodeBadPermissionsRobotApplication = "BadPermissionsRobotApplication"
17972
17973	// SimulationJobErrorCodeBadPermissionsSimulationApplication is a SimulationJobErrorCode enum value
17974	SimulationJobErrorCodeBadPermissionsSimulationApplication = "BadPermissionsSimulationApplication"
17975
17976	// SimulationJobErrorCodeBadPermissionsS3object is a SimulationJobErrorCode enum value
17977	SimulationJobErrorCodeBadPermissionsS3object = "BadPermissionsS3Object"
17978
17979	// SimulationJobErrorCodeBadPermissionsS3output is a SimulationJobErrorCode enum value
17980	SimulationJobErrorCodeBadPermissionsS3output = "BadPermissionsS3Output"
17981
17982	// SimulationJobErrorCodeBadPermissionsCloudwatchLogs is a SimulationJobErrorCode enum value
17983	SimulationJobErrorCodeBadPermissionsCloudwatchLogs = "BadPermissionsCloudwatchLogs"
17984
17985	// SimulationJobErrorCodeSubnetIpLimitExceeded is a SimulationJobErrorCode enum value
17986	SimulationJobErrorCodeSubnetIpLimitExceeded = "SubnetIpLimitExceeded"
17987
17988	// SimulationJobErrorCodeEnilimitExceeded is a SimulationJobErrorCode enum value
17989	SimulationJobErrorCodeEnilimitExceeded = "ENILimitExceeded"
17990
17991	// SimulationJobErrorCodeBadPermissionsUserCredentials is a SimulationJobErrorCode enum value
17992	SimulationJobErrorCodeBadPermissionsUserCredentials = "BadPermissionsUserCredentials"
17993
17994	// SimulationJobErrorCodeInvalidBundleRobotApplication is a SimulationJobErrorCode enum value
17995	SimulationJobErrorCodeInvalidBundleRobotApplication = "InvalidBundleRobotApplication"
17996
17997	// SimulationJobErrorCodeInvalidBundleSimulationApplication is a SimulationJobErrorCode enum value
17998	SimulationJobErrorCodeInvalidBundleSimulationApplication = "InvalidBundleSimulationApplication"
17999
18000	// SimulationJobErrorCodeInvalidS3resource is a SimulationJobErrorCode enum value
18001	SimulationJobErrorCodeInvalidS3resource = "InvalidS3Resource"
18002
18003	// SimulationJobErrorCodeThrottlingError is a SimulationJobErrorCode enum value
18004	SimulationJobErrorCodeThrottlingError = "ThrottlingError"
18005
18006	// SimulationJobErrorCodeLimitExceeded is a SimulationJobErrorCode enum value
18007	SimulationJobErrorCodeLimitExceeded = "LimitExceeded"
18008
18009	// SimulationJobErrorCodeMismatchedEtag is a SimulationJobErrorCode enum value
18010	SimulationJobErrorCodeMismatchedEtag = "MismatchedEtag"
18011
18012	// SimulationJobErrorCodeRobotApplicationVersionMismatchedEtag is a SimulationJobErrorCode enum value
18013	SimulationJobErrorCodeRobotApplicationVersionMismatchedEtag = "RobotApplicationVersionMismatchedEtag"
18014
18015	// SimulationJobErrorCodeSimulationApplicationVersionMismatchedEtag is a SimulationJobErrorCode enum value
18016	SimulationJobErrorCodeSimulationApplicationVersionMismatchedEtag = "SimulationApplicationVersionMismatchedEtag"
18017
18018	// SimulationJobErrorCodeResourceNotFound is a SimulationJobErrorCode enum value
18019	SimulationJobErrorCodeResourceNotFound = "ResourceNotFound"
18020
18021	// SimulationJobErrorCodeRequestThrottled is a SimulationJobErrorCode enum value
18022	SimulationJobErrorCodeRequestThrottled = "RequestThrottled"
18023
18024	// SimulationJobErrorCodeBatchTimedOut is a SimulationJobErrorCode enum value
18025	SimulationJobErrorCodeBatchTimedOut = "BatchTimedOut"
18026
18027	// SimulationJobErrorCodeBatchCanceled is a SimulationJobErrorCode enum value
18028	SimulationJobErrorCodeBatchCanceled = "BatchCanceled"
18029
18030	// SimulationJobErrorCodeInvalidInput is a SimulationJobErrorCode enum value
18031	SimulationJobErrorCodeInvalidInput = "InvalidInput"
18032
18033	// SimulationJobErrorCodeWrongRegionS3bucket is a SimulationJobErrorCode enum value
18034	SimulationJobErrorCodeWrongRegionS3bucket = "WrongRegionS3Bucket"
18035
18036	// SimulationJobErrorCodeWrongRegionS3output is a SimulationJobErrorCode enum value
18037	SimulationJobErrorCodeWrongRegionS3output = "WrongRegionS3Output"
18038
18039	// SimulationJobErrorCodeWrongRegionRobotApplication is a SimulationJobErrorCode enum value
18040	SimulationJobErrorCodeWrongRegionRobotApplication = "WrongRegionRobotApplication"
18041
18042	// SimulationJobErrorCodeWrongRegionSimulationApplication is a SimulationJobErrorCode enum value
18043	SimulationJobErrorCodeWrongRegionSimulationApplication = "WrongRegionSimulationApplication"
18044
18045	// SimulationJobErrorCodeUploadContentMismatchError is a SimulationJobErrorCode enum value
18046	SimulationJobErrorCodeUploadContentMismatchError = "UploadContentMismatchError"
18047)
18048
18049// SimulationJobErrorCode_Values returns all elements of the SimulationJobErrorCode enum
18050func SimulationJobErrorCode_Values() []string {
18051	return []string{
18052		SimulationJobErrorCodeInternalServiceError,
18053		SimulationJobErrorCodeRobotApplicationCrash,
18054		SimulationJobErrorCodeSimulationApplicationCrash,
18055		SimulationJobErrorCodeRobotApplicationHealthCheckFailure,
18056		SimulationJobErrorCodeSimulationApplicationHealthCheckFailure,
18057		SimulationJobErrorCodeBadPermissionsRobotApplication,
18058		SimulationJobErrorCodeBadPermissionsSimulationApplication,
18059		SimulationJobErrorCodeBadPermissionsS3object,
18060		SimulationJobErrorCodeBadPermissionsS3output,
18061		SimulationJobErrorCodeBadPermissionsCloudwatchLogs,
18062		SimulationJobErrorCodeSubnetIpLimitExceeded,
18063		SimulationJobErrorCodeEnilimitExceeded,
18064		SimulationJobErrorCodeBadPermissionsUserCredentials,
18065		SimulationJobErrorCodeInvalidBundleRobotApplication,
18066		SimulationJobErrorCodeInvalidBundleSimulationApplication,
18067		SimulationJobErrorCodeInvalidS3resource,
18068		SimulationJobErrorCodeThrottlingError,
18069		SimulationJobErrorCodeLimitExceeded,
18070		SimulationJobErrorCodeMismatchedEtag,
18071		SimulationJobErrorCodeRobotApplicationVersionMismatchedEtag,
18072		SimulationJobErrorCodeSimulationApplicationVersionMismatchedEtag,
18073		SimulationJobErrorCodeResourceNotFound,
18074		SimulationJobErrorCodeRequestThrottled,
18075		SimulationJobErrorCodeBatchTimedOut,
18076		SimulationJobErrorCodeBatchCanceled,
18077		SimulationJobErrorCodeInvalidInput,
18078		SimulationJobErrorCodeWrongRegionS3bucket,
18079		SimulationJobErrorCodeWrongRegionS3output,
18080		SimulationJobErrorCodeWrongRegionRobotApplication,
18081		SimulationJobErrorCodeWrongRegionSimulationApplication,
18082		SimulationJobErrorCodeUploadContentMismatchError,
18083	}
18084}
18085
18086const (
18087	// SimulationJobStatusPending is a SimulationJobStatus enum value
18088	SimulationJobStatusPending = "Pending"
18089
18090	// SimulationJobStatusPreparing is a SimulationJobStatus enum value
18091	SimulationJobStatusPreparing = "Preparing"
18092
18093	// SimulationJobStatusRunning is a SimulationJobStatus enum value
18094	SimulationJobStatusRunning = "Running"
18095
18096	// SimulationJobStatusRestarting is a SimulationJobStatus enum value
18097	SimulationJobStatusRestarting = "Restarting"
18098
18099	// SimulationJobStatusCompleted is a SimulationJobStatus enum value
18100	SimulationJobStatusCompleted = "Completed"
18101
18102	// SimulationJobStatusFailed is a SimulationJobStatus enum value
18103	SimulationJobStatusFailed = "Failed"
18104
18105	// SimulationJobStatusRunningFailed is a SimulationJobStatus enum value
18106	SimulationJobStatusRunningFailed = "RunningFailed"
18107
18108	// SimulationJobStatusTerminating is a SimulationJobStatus enum value
18109	SimulationJobStatusTerminating = "Terminating"
18110
18111	// SimulationJobStatusTerminated is a SimulationJobStatus enum value
18112	SimulationJobStatusTerminated = "Terminated"
18113
18114	// SimulationJobStatusCanceled is a SimulationJobStatus enum value
18115	SimulationJobStatusCanceled = "Canceled"
18116)
18117
18118// SimulationJobStatus_Values returns all elements of the SimulationJobStatus enum
18119func SimulationJobStatus_Values() []string {
18120	return []string{
18121		SimulationJobStatusPending,
18122		SimulationJobStatusPreparing,
18123		SimulationJobStatusRunning,
18124		SimulationJobStatusRestarting,
18125		SimulationJobStatusCompleted,
18126		SimulationJobStatusFailed,
18127		SimulationJobStatusRunningFailed,
18128		SimulationJobStatusTerminating,
18129		SimulationJobStatusTerminated,
18130		SimulationJobStatusCanceled,
18131	}
18132}
18133
18134const (
18135	// SimulationSoftwareSuiteTypeGazebo is a SimulationSoftwareSuiteType enum value
18136	SimulationSoftwareSuiteTypeGazebo = "Gazebo"
18137
18138	// SimulationSoftwareSuiteTypeRosbagPlay is a SimulationSoftwareSuiteType enum value
18139	SimulationSoftwareSuiteTypeRosbagPlay = "RosbagPlay"
18140)
18141
18142// SimulationSoftwareSuiteType_Values returns all elements of the SimulationSoftwareSuiteType enum
18143func SimulationSoftwareSuiteType_Values() []string {
18144	return []string{
18145		SimulationSoftwareSuiteTypeGazebo,
18146		SimulationSoftwareSuiteTypeRosbagPlay,
18147	}
18148}
18149
18150const (
18151	// UploadBehaviorUploadOnTerminate is a UploadBehavior enum value
18152	UploadBehaviorUploadOnTerminate = "UPLOAD_ON_TERMINATE"
18153
18154	// UploadBehaviorUploadRollingAutoRemove is a UploadBehavior enum value
18155	UploadBehaviorUploadRollingAutoRemove = "UPLOAD_ROLLING_AUTO_REMOVE"
18156)
18157
18158// UploadBehavior_Values returns all elements of the UploadBehavior enum
18159func UploadBehavior_Values() []string {
18160	return []string{
18161		UploadBehaviorUploadOnTerminate,
18162		UploadBehaviorUploadRollingAutoRemove,
18163	}
18164}
18165
18166const (
18167	// WorldExportJobErrorCodeInternalServiceError is a WorldExportJobErrorCode enum value
18168	WorldExportJobErrorCodeInternalServiceError = "InternalServiceError"
18169
18170	// WorldExportJobErrorCodeLimitExceeded is a WorldExportJobErrorCode enum value
18171	WorldExportJobErrorCodeLimitExceeded = "LimitExceeded"
18172
18173	// WorldExportJobErrorCodeResourceNotFound is a WorldExportJobErrorCode enum value
18174	WorldExportJobErrorCodeResourceNotFound = "ResourceNotFound"
18175
18176	// WorldExportJobErrorCodeRequestThrottled is a WorldExportJobErrorCode enum value
18177	WorldExportJobErrorCodeRequestThrottled = "RequestThrottled"
18178
18179	// WorldExportJobErrorCodeInvalidInput is a WorldExportJobErrorCode enum value
18180	WorldExportJobErrorCodeInvalidInput = "InvalidInput"
18181
18182	// WorldExportJobErrorCodeAccessDenied is a WorldExportJobErrorCode enum value
18183	WorldExportJobErrorCodeAccessDenied = "AccessDenied"
18184)
18185
18186// WorldExportJobErrorCode_Values returns all elements of the WorldExportJobErrorCode enum
18187func WorldExportJobErrorCode_Values() []string {
18188	return []string{
18189		WorldExportJobErrorCodeInternalServiceError,
18190		WorldExportJobErrorCodeLimitExceeded,
18191		WorldExportJobErrorCodeResourceNotFound,
18192		WorldExportJobErrorCodeRequestThrottled,
18193		WorldExportJobErrorCodeInvalidInput,
18194		WorldExportJobErrorCodeAccessDenied,
18195	}
18196}
18197
18198const (
18199	// WorldExportJobStatusPending is a WorldExportJobStatus enum value
18200	WorldExportJobStatusPending = "Pending"
18201
18202	// WorldExportJobStatusRunning is a WorldExportJobStatus enum value
18203	WorldExportJobStatusRunning = "Running"
18204
18205	// WorldExportJobStatusCompleted is a WorldExportJobStatus enum value
18206	WorldExportJobStatusCompleted = "Completed"
18207
18208	// WorldExportJobStatusFailed is a WorldExportJobStatus enum value
18209	WorldExportJobStatusFailed = "Failed"
18210
18211	// WorldExportJobStatusCanceling is a WorldExportJobStatus enum value
18212	WorldExportJobStatusCanceling = "Canceling"
18213
18214	// WorldExportJobStatusCanceled is a WorldExportJobStatus enum value
18215	WorldExportJobStatusCanceled = "Canceled"
18216)
18217
18218// WorldExportJobStatus_Values returns all elements of the WorldExportJobStatus enum
18219func WorldExportJobStatus_Values() []string {
18220	return []string{
18221		WorldExportJobStatusPending,
18222		WorldExportJobStatusRunning,
18223		WorldExportJobStatusCompleted,
18224		WorldExportJobStatusFailed,
18225		WorldExportJobStatusCanceling,
18226		WorldExportJobStatusCanceled,
18227	}
18228}
18229
18230const (
18231	// WorldGenerationJobErrorCodeInternalServiceError is a WorldGenerationJobErrorCode enum value
18232	WorldGenerationJobErrorCodeInternalServiceError = "InternalServiceError"
18233
18234	// WorldGenerationJobErrorCodeLimitExceeded is a WorldGenerationJobErrorCode enum value
18235	WorldGenerationJobErrorCodeLimitExceeded = "LimitExceeded"
18236
18237	// WorldGenerationJobErrorCodeResourceNotFound is a WorldGenerationJobErrorCode enum value
18238	WorldGenerationJobErrorCodeResourceNotFound = "ResourceNotFound"
18239
18240	// WorldGenerationJobErrorCodeRequestThrottled is a WorldGenerationJobErrorCode enum value
18241	WorldGenerationJobErrorCodeRequestThrottled = "RequestThrottled"
18242
18243	// WorldGenerationJobErrorCodeInvalidInput is a WorldGenerationJobErrorCode enum value
18244	WorldGenerationJobErrorCodeInvalidInput = "InvalidInput"
18245
18246	// WorldGenerationJobErrorCodeAllWorldGenerationFailed is a WorldGenerationJobErrorCode enum value
18247	WorldGenerationJobErrorCodeAllWorldGenerationFailed = "AllWorldGenerationFailed"
18248)
18249
18250// WorldGenerationJobErrorCode_Values returns all elements of the WorldGenerationJobErrorCode enum
18251func WorldGenerationJobErrorCode_Values() []string {
18252	return []string{
18253		WorldGenerationJobErrorCodeInternalServiceError,
18254		WorldGenerationJobErrorCodeLimitExceeded,
18255		WorldGenerationJobErrorCodeResourceNotFound,
18256		WorldGenerationJobErrorCodeRequestThrottled,
18257		WorldGenerationJobErrorCodeInvalidInput,
18258		WorldGenerationJobErrorCodeAllWorldGenerationFailed,
18259	}
18260}
18261
18262const (
18263	// WorldGenerationJobStatusPending is a WorldGenerationJobStatus enum value
18264	WorldGenerationJobStatusPending = "Pending"
18265
18266	// WorldGenerationJobStatusRunning is a WorldGenerationJobStatus enum value
18267	WorldGenerationJobStatusRunning = "Running"
18268
18269	// WorldGenerationJobStatusCompleted is a WorldGenerationJobStatus enum value
18270	WorldGenerationJobStatusCompleted = "Completed"
18271
18272	// WorldGenerationJobStatusFailed is a WorldGenerationJobStatus enum value
18273	WorldGenerationJobStatusFailed = "Failed"
18274
18275	// WorldGenerationJobStatusPartialFailed is a WorldGenerationJobStatus enum value
18276	WorldGenerationJobStatusPartialFailed = "PartialFailed"
18277
18278	// WorldGenerationJobStatusCanceling is a WorldGenerationJobStatus enum value
18279	WorldGenerationJobStatusCanceling = "Canceling"
18280
18281	// WorldGenerationJobStatusCanceled is a WorldGenerationJobStatus enum value
18282	WorldGenerationJobStatusCanceled = "Canceled"
18283)
18284
18285// WorldGenerationJobStatus_Values returns all elements of the WorldGenerationJobStatus enum
18286func WorldGenerationJobStatus_Values() []string {
18287	return []string{
18288		WorldGenerationJobStatusPending,
18289		WorldGenerationJobStatusRunning,
18290		WorldGenerationJobStatusCompleted,
18291		WorldGenerationJobStatusFailed,
18292		WorldGenerationJobStatusPartialFailed,
18293		WorldGenerationJobStatusCanceling,
18294		WorldGenerationJobStatusCanceled,
18295	}
18296}
18297