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	// Restart the simulation job in the same host instance.
7689	//
7690	// Fail
7691	//
7692	// Stop the simulation job and terminate the instance.
7693	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
7694
7695	// The IAM role name that allows the simulation instance to call the AWS APIs
7696	// that are specified in its associated policies on your behalf. This is how
7697	// credentials are passed in to your simulation job.
7698	//
7699	// IamRole is a required field
7700	IamRole *string `locationName:"iamRole" min:"1" type:"string" required:"true"`
7701
7702	// The logging configuration.
7703	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
7704
7705	// The maximum simulation job duration in seconds (up to 14 days or 1,209,600
7706	// seconds. When maxJobDurationInSeconds is reached, the simulation job will
7707	// status will transition to Completed.
7708	//
7709	// MaxJobDurationInSeconds is a required field
7710	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long" required:"true"`
7711
7712	// Location for output files generated by the simulation job.
7713	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
7714
7715	// The robot application to use in the simulation job.
7716	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
7717
7718	// The simulation application to use in the simulation job.
7719	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
7720
7721	// A map that contains tag keys and tag values that are attached to the simulation
7722	// job.
7723	Tags map[string]*string `locationName:"tags" type:"map"`
7724
7725	// If your simulation job accesses resources in a VPC, you provide this parameter
7726	// identifying the list of security group IDs and subnet IDs. These must belong
7727	// to the same VPC. You must provide at least one security group and one subnet
7728	// ID.
7729	VpcConfig *VPCConfig `locationName:"vpcConfig" type:"structure"`
7730}
7731
7732// String returns the string representation
7733func (s CreateSimulationJobInput) String() string {
7734	return awsutil.Prettify(s)
7735}
7736
7737// GoString returns the string representation
7738func (s CreateSimulationJobInput) GoString() string {
7739	return s.String()
7740}
7741
7742// Validate inspects the fields of the type to determine if they are valid.
7743func (s *CreateSimulationJobInput) Validate() error {
7744	invalidParams := request.ErrInvalidParams{Context: "CreateSimulationJobInput"}
7745	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
7746		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
7747	}
7748	if s.DataSources != nil && len(s.DataSources) < 1 {
7749		invalidParams.Add(request.NewErrParamMinLen("DataSources", 1))
7750	}
7751	if s.IamRole == nil {
7752		invalidParams.Add(request.NewErrParamRequired("IamRole"))
7753	}
7754	if s.IamRole != nil && len(*s.IamRole) < 1 {
7755		invalidParams.Add(request.NewErrParamMinLen("IamRole", 1))
7756	}
7757	if s.MaxJobDurationInSeconds == nil {
7758		invalidParams.Add(request.NewErrParamRequired("MaxJobDurationInSeconds"))
7759	}
7760	if s.RobotApplications != nil && len(s.RobotApplications) < 1 {
7761		invalidParams.Add(request.NewErrParamMinLen("RobotApplications", 1))
7762	}
7763	if s.SimulationApplications != nil && len(s.SimulationApplications) < 1 {
7764		invalidParams.Add(request.NewErrParamMinLen("SimulationApplications", 1))
7765	}
7766	if s.Compute != nil {
7767		if err := s.Compute.Validate(); err != nil {
7768			invalidParams.AddNested("Compute", err.(request.ErrInvalidParams))
7769		}
7770	}
7771	if s.DataSources != nil {
7772		for i, v := range s.DataSources {
7773			if v == nil {
7774				continue
7775			}
7776			if err := v.Validate(); err != nil {
7777				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSources", i), err.(request.ErrInvalidParams))
7778			}
7779		}
7780	}
7781	if s.LoggingConfig != nil {
7782		if err := s.LoggingConfig.Validate(); err != nil {
7783			invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams))
7784		}
7785	}
7786	if s.OutputLocation != nil {
7787		if err := s.OutputLocation.Validate(); err != nil {
7788			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
7789		}
7790	}
7791	if s.RobotApplications != nil {
7792		for i, v := range s.RobotApplications {
7793			if v == nil {
7794				continue
7795			}
7796			if err := v.Validate(); err != nil {
7797				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RobotApplications", i), err.(request.ErrInvalidParams))
7798			}
7799		}
7800	}
7801	if s.SimulationApplications != nil {
7802		for i, v := range s.SimulationApplications {
7803			if v == nil {
7804				continue
7805			}
7806			if err := v.Validate(); err != nil {
7807				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SimulationApplications", i), err.(request.ErrInvalidParams))
7808			}
7809		}
7810	}
7811	if s.VpcConfig != nil {
7812		if err := s.VpcConfig.Validate(); err != nil {
7813			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
7814		}
7815	}
7816
7817	if invalidParams.Len() > 0 {
7818		return invalidParams
7819	}
7820	return nil
7821}
7822
7823// SetClientRequestToken sets the ClientRequestToken field's value.
7824func (s *CreateSimulationJobInput) SetClientRequestToken(v string) *CreateSimulationJobInput {
7825	s.ClientRequestToken = &v
7826	return s
7827}
7828
7829// SetCompute sets the Compute field's value.
7830func (s *CreateSimulationJobInput) SetCompute(v *Compute) *CreateSimulationJobInput {
7831	s.Compute = v
7832	return s
7833}
7834
7835// SetDataSources sets the DataSources field's value.
7836func (s *CreateSimulationJobInput) SetDataSources(v []*DataSourceConfig) *CreateSimulationJobInput {
7837	s.DataSources = v
7838	return s
7839}
7840
7841// SetFailureBehavior sets the FailureBehavior field's value.
7842func (s *CreateSimulationJobInput) SetFailureBehavior(v string) *CreateSimulationJobInput {
7843	s.FailureBehavior = &v
7844	return s
7845}
7846
7847// SetIamRole sets the IamRole field's value.
7848func (s *CreateSimulationJobInput) SetIamRole(v string) *CreateSimulationJobInput {
7849	s.IamRole = &v
7850	return s
7851}
7852
7853// SetLoggingConfig sets the LoggingConfig field's value.
7854func (s *CreateSimulationJobInput) SetLoggingConfig(v *LoggingConfig) *CreateSimulationJobInput {
7855	s.LoggingConfig = v
7856	return s
7857}
7858
7859// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
7860func (s *CreateSimulationJobInput) SetMaxJobDurationInSeconds(v int64) *CreateSimulationJobInput {
7861	s.MaxJobDurationInSeconds = &v
7862	return s
7863}
7864
7865// SetOutputLocation sets the OutputLocation field's value.
7866func (s *CreateSimulationJobInput) SetOutputLocation(v *OutputLocation) *CreateSimulationJobInput {
7867	s.OutputLocation = v
7868	return s
7869}
7870
7871// SetRobotApplications sets the RobotApplications field's value.
7872func (s *CreateSimulationJobInput) SetRobotApplications(v []*RobotApplicationConfig) *CreateSimulationJobInput {
7873	s.RobotApplications = v
7874	return s
7875}
7876
7877// SetSimulationApplications sets the SimulationApplications field's value.
7878func (s *CreateSimulationJobInput) SetSimulationApplications(v []*SimulationApplicationConfig) *CreateSimulationJobInput {
7879	s.SimulationApplications = v
7880	return s
7881}
7882
7883// SetTags sets the Tags field's value.
7884func (s *CreateSimulationJobInput) SetTags(v map[string]*string) *CreateSimulationJobInput {
7885	s.Tags = v
7886	return s
7887}
7888
7889// SetVpcConfig sets the VpcConfig field's value.
7890func (s *CreateSimulationJobInput) SetVpcConfig(v *VPCConfig) *CreateSimulationJobInput {
7891	s.VpcConfig = v
7892	return s
7893}
7894
7895type CreateSimulationJobOutput struct {
7896	_ struct{} `type:"structure"`
7897
7898	// The Amazon Resource Name (ARN) of the simulation job.
7899	Arn *string `locationName:"arn" min:"1" type:"string"`
7900
7901	// Unique, case-sensitive identifier that you provide to ensure the idempotency
7902	// of the request.
7903	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
7904
7905	// Compute information for the simulation job.
7906	Compute *ComputeResponse `locationName:"compute" type:"structure"`
7907
7908	// The data sources for the simulation job.
7909	DataSources []*DataSource `locationName:"dataSources" type:"list"`
7910
7911	// the failure behavior for the simulation job.
7912	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
7913
7914	// The failure code of the simulation job if it failed:
7915	//
7916	// InternalServiceError
7917	//
7918	// Internal service error.
7919	//
7920	// RobotApplicationCrash
7921	//
7922	// Robot application exited abnormally.
7923	//
7924	// SimulationApplicationCrash
7925	//
7926	// Simulation application exited abnormally.
7927	//
7928	// BadPermissionsRobotApplication
7929	//
7930	// Robot application bundle could not be downloaded.
7931	//
7932	// BadPermissionsSimulationApplication
7933	//
7934	// Simulation application bundle could not be downloaded.
7935	//
7936	// BadPermissionsS3Output
7937	//
7938	// Unable to publish outputs to customer-provided S3 bucket.
7939	//
7940	// BadPermissionsCloudwatchLogs
7941	//
7942	// Unable to publish logs to customer-provided CloudWatch Logs resource.
7943	//
7944	// SubnetIpLimitExceeded
7945	//
7946	// Subnet IP limit exceeded.
7947	//
7948	// ENILimitExceeded
7949	//
7950	// ENI limit exceeded.
7951	//
7952	// BadPermissionsUserCredentials
7953	//
7954	// Unable to use the Role provided.
7955	//
7956	// InvalidBundleRobotApplication
7957	//
7958	// Robot bundle cannot be extracted (invalid format, bundling error, or other
7959	// issue).
7960	//
7961	// InvalidBundleSimulationApplication
7962	//
7963	// Simulation bundle cannot be extracted (invalid format, bundling error, or
7964	// other issue).
7965	//
7966	// RobotApplicationVersionMismatchedEtag
7967	//
7968	// Etag for RobotApplication does not match value during version creation.
7969	//
7970	// SimulationApplicationVersionMismatchedEtag
7971	//
7972	// Etag for SimulationApplication does not match value during version creation.
7973	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
7974
7975	// The IAM role that allows the simulation job to call the AWS APIs that are
7976	// specified in its associated policies on your behalf.
7977	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
7978
7979	// The time, in milliseconds since the epoch, when the simulation job was last
7980	// started.
7981	LastStartedAt *time.Time `locationName:"lastStartedAt" type:"timestamp"`
7982
7983	// The time, in milliseconds since the epoch, when the simulation job was last
7984	// updated.
7985	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
7986
7987	// The logging configuration.
7988	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
7989
7990	// The maximum simulation job duration in seconds.
7991	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long"`
7992
7993	// Simulation job output files location.
7994	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
7995
7996	// The robot application used by the simulation job.
7997	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
7998
7999	// The simulation application used by the simulation job.
8000	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
8001
8002	// The simulation job execution duration in milliseconds.
8003	SimulationTimeMillis *int64 `locationName:"simulationTimeMillis" type:"long"`
8004
8005	// The status of the simulation job.
8006	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
8007
8008	// The list of all tags added to the simulation job.
8009	Tags map[string]*string `locationName:"tags" type:"map"`
8010
8011	// Information about the vpc configuration.
8012	VpcConfig *VPCConfigResponse `locationName:"vpcConfig" type:"structure"`
8013}
8014
8015// String returns the string representation
8016func (s CreateSimulationJobOutput) String() string {
8017	return awsutil.Prettify(s)
8018}
8019
8020// GoString returns the string representation
8021func (s CreateSimulationJobOutput) GoString() string {
8022	return s.String()
8023}
8024
8025// SetArn sets the Arn field's value.
8026func (s *CreateSimulationJobOutput) SetArn(v string) *CreateSimulationJobOutput {
8027	s.Arn = &v
8028	return s
8029}
8030
8031// SetClientRequestToken sets the ClientRequestToken field's value.
8032func (s *CreateSimulationJobOutput) SetClientRequestToken(v string) *CreateSimulationJobOutput {
8033	s.ClientRequestToken = &v
8034	return s
8035}
8036
8037// SetCompute sets the Compute field's value.
8038func (s *CreateSimulationJobOutput) SetCompute(v *ComputeResponse) *CreateSimulationJobOutput {
8039	s.Compute = v
8040	return s
8041}
8042
8043// SetDataSources sets the DataSources field's value.
8044func (s *CreateSimulationJobOutput) SetDataSources(v []*DataSource) *CreateSimulationJobOutput {
8045	s.DataSources = v
8046	return s
8047}
8048
8049// SetFailureBehavior sets the FailureBehavior field's value.
8050func (s *CreateSimulationJobOutput) SetFailureBehavior(v string) *CreateSimulationJobOutput {
8051	s.FailureBehavior = &v
8052	return s
8053}
8054
8055// SetFailureCode sets the FailureCode field's value.
8056func (s *CreateSimulationJobOutput) SetFailureCode(v string) *CreateSimulationJobOutput {
8057	s.FailureCode = &v
8058	return s
8059}
8060
8061// SetIamRole sets the IamRole field's value.
8062func (s *CreateSimulationJobOutput) SetIamRole(v string) *CreateSimulationJobOutput {
8063	s.IamRole = &v
8064	return s
8065}
8066
8067// SetLastStartedAt sets the LastStartedAt field's value.
8068func (s *CreateSimulationJobOutput) SetLastStartedAt(v time.Time) *CreateSimulationJobOutput {
8069	s.LastStartedAt = &v
8070	return s
8071}
8072
8073// SetLastUpdatedAt sets the LastUpdatedAt field's value.
8074func (s *CreateSimulationJobOutput) SetLastUpdatedAt(v time.Time) *CreateSimulationJobOutput {
8075	s.LastUpdatedAt = &v
8076	return s
8077}
8078
8079// SetLoggingConfig sets the LoggingConfig field's value.
8080func (s *CreateSimulationJobOutput) SetLoggingConfig(v *LoggingConfig) *CreateSimulationJobOutput {
8081	s.LoggingConfig = v
8082	return s
8083}
8084
8085// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
8086func (s *CreateSimulationJobOutput) SetMaxJobDurationInSeconds(v int64) *CreateSimulationJobOutput {
8087	s.MaxJobDurationInSeconds = &v
8088	return s
8089}
8090
8091// SetOutputLocation sets the OutputLocation field's value.
8092func (s *CreateSimulationJobOutput) SetOutputLocation(v *OutputLocation) *CreateSimulationJobOutput {
8093	s.OutputLocation = v
8094	return s
8095}
8096
8097// SetRobotApplications sets the RobotApplications field's value.
8098func (s *CreateSimulationJobOutput) SetRobotApplications(v []*RobotApplicationConfig) *CreateSimulationJobOutput {
8099	s.RobotApplications = v
8100	return s
8101}
8102
8103// SetSimulationApplications sets the SimulationApplications field's value.
8104func (s *CreateSimulationJobOutput) SetSimulationApplications(v []*SimulationApplicationConfig) *CreateSimulationJobOutput {
8105	s.SimulationApplications = v
8106	return s
8107}
8108
8109// SetSimulationTimeMillis sets the SimulationTimeMillis field's value.
8110func (s *CreateSimulationJobOutput) SetSimulationTimeMillis(v int64) *CreateSimulationJobOutput {
8111	s.SimulationTimeMillis = &v
8112	return s
8113}
8114
8115// SetStatus sets the Status field's value.
8116func (s *CreateSimulationJobOutput) SetStatus(v string) *CreateSimulationJobOutput {
8117	s.Status = &v
8118	return s
8119}
8120
8121// SetTags sets the Tags field's value.
8122func (s *CreateSimulationJobOutput) SetTags(v map[string]*string) *CreateSimulationJobOutput {
8123	s.Tags = v
8124	return s
8125}
8126
8127// SetVpcConfig sets the VpcConfig field's value.
8128func (s *CreateSimulationJobOutput) SetVpcConfig(v *VPCConfigResponse) *CreateSimulationJobOutput {
8129	s.VpcConfig = v
8130	return s
8131}
8132
8133type CreateWorldExportJobInput struct {
8134	_ struct{} `type:"structure"`
8135
8136	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8137	// of the request.
8138	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
8139
8140	// The IAM role that the world export process uses to access the Amazon S3 bucket
8141	// and put the export.
8142	//
8143	// IamRole is a required field
8144	IamRole *string `locationName:"iamRole" min:"1" type:"string" required:"true"`
8145
8146	// The output location.
8147	//
8148	// OutputLocation is a required field
8149	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure" required:"true"`
8150
8151	// A map that contains tag keys and tag values that are attached to the world
8152	// export job.
8153	Tags map[string]*string `locationName:"tags" type:"map"`
8154
8155	// A list of Amazon Resource Names (arns) that correspond to worlds to export.
8156	//
8157	// Worlds is a required field
8158	Worlds []*string `locationName:"worlds" min:"1" type:"list" required:"true"`
8159}
8160
8161// String returns the string representation
8162func (s CreateWorldExportJobInput) String() string {
8163	return awsutil.Prettify(s)
8164}
8165
8166// GoString returns the string representation
8167func (s CreateWorldExportJobInput) GoString() string {
8168	return s.String()
8169}
8170
8171// Validate inspects the fields of the type to determine if they are valid.
8172func (s *CreateWorldExportJobInput) Validate() error {
8173	invalidParams := request.ErrInvalidParams{Context: "CreateWorldExportJobInput"}
8174	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8175		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8176	}
8177	if s.IamRole == nil {
8178		invalidParams.Add(request.NewErrParamRequired("IamRole"))
8179	}
8180	if s.IamRole != nil && len(*s.IamRole) < 1 {
8181		invalidParams.Add(request.NewErrParamMinLen("IamRole", 1))
8182	}
8183	if s.OutputLocation == nil {
8184		invalidParams.Add(request.NewErrParamRequired("OutputLocation"))
8185	}
8186	if s.Worlds == nil {
8187		invalidParams.Add(request.NewErrParamRequired("Worlds"))
8188	}
8189	if s.Worlds != nil && len(s.Worlds) < 1 {
8190		invalidParams.Add(request.NewErrParamMinLen("Worlds", 1))
8191	}
8192	if s.OutputLocation != nil {
8193		if err := s.OutputLocation.Validate(); err != nil {
8194			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
8195		}
8196	}
8197
8198	if invalidParams.Len() > 0 {
8199		return invalidParams
8200	}
8201	return nil
8202}
8203
8204// SetClientRequestToken sets the ClientRequestToken field's value.
8205func (s *CreateWorldExportJobInput) SetClientRequestToken(v string) *CreateWorldExportJobInput {
8206	s.ClientRequestToken = &v
8207	return s
8208}
8209
8210// SetIamRole sets the IamRole field's value.
8211func (s *CreateWorldExportJobInput) SetIamRole(v string) *CreateWorldExportJobInput {
8212	s.IamRole = &v
8213	return s
8214}
8215
8216// SetOutputLocation sets the OutputLocation field's value.
8217func (s *CreateWorldExportJobInput) SetOutputLocation(v *OutputLocation) *CreateWorldExportJobInput {
8218	s.OutputLocation = v
8219	return s
8220}
8221
8222// SetTags sets the Tags field's value.
8223func (s *CreateWorldExportJobInput) SetTags(v map[string]*string) *CreateWorldExportJobInput {
8224	s.Tags = v
8225	return s
8226}
8227
8228// SetWorlds sets the Worlds field's value.
8229func (s *CreateWorldExportJobInput) SetWorlds(v []*string) *CreateWorldExportJobInput {
8230	s.Worlds = v
8231	return s
8232}
8233
8234type CreateWorldExportJobOutput struct {
8235	_ struct{} `type:"structure"`
8236
8237	// The Amazon Resource Name (ARN) of the world export job.
8238	Arn *string `locationName:"arn" min:"1" type:"string"`
8239
8240	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8241	// of the request.
8242	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8243
8244	// The time, in milliseconds since the epoch, when the world export job was
8245	// created.
8246	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
8247
8248	// The failure code of the world export job if it failed:
8249	//
8250	// InternalServiceError
8251	//
8252	// Internal service error.
8253	//
8254	// LimitExceeded
8255	//
8256	// The requested resource exceeds the maximum number allowed, or the number
8257	// of concurrent stream requests exceeds the maximum number allowed.
8258	//
8259	// ResourceNotFound
8260	//
8261	// The specified resource could not be found.
8262	//
8263	// RequestThrottled
8264	//
8265	// The request was throttled.
8266	//
8267	// InvalidInput
8268	//
8269	// An input parameter in the request is not valid.
8270	//
8271	// AllWorldGenerationFailed
8272	//
8273	// All of the worlds in the world generation job failed. This can happen if
8274	// your worldCount is greater than 50 or less than 1.
8275	//
8276	// For more information about troubleshooting WorldForge, see Troubleshooting
8277	// Simulation WorldForge (https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting-worldforge.html).
8278	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldExportJobErrorCode"`
8279
8280	// The IAM role that the world export process uses to access the Amazon S3 bucket
8281	// and put the export.
8282	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
8283
8284	// The output location.
8285	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
8286
8287	// The status of the world export job.
8288	//
8289	// Pending
8290	//
8291	// The world export job request is pending.
8292	//
8293	// Running
8294	//
8295	// The world export job is running.
8296	//
8297	// Completed
8298	//
8299	// The world export job completed.
8300	//
8301	// Failed
8302	//
8303	// The world export job failed. See failureCode for more information.
8304	//
8305	// Canceled
8306	//
8307	// The world export job was cancelled.
8308	//
8309	// Canceling
8310	//
8311	// The world export job is being cancelled.
8312	Status *string `locationName:"status" type:"string" enum:"WorldExportJobStatus"`
8313
8314	// A map that contains tag keys and tag values that are attached to the world
8315	// export job.
8316	Tags map[string]*string `locationName:"tags" type:"map"`
8317}
8318
8319// String returns the string representation
8320func (s CreateWorldExportJobOutput) String() string {
8321	return awsutil.Prettify(s)
8322}
8323
8324// GoString returns the string representation
8325func (s CreateWorldExportJobOutput) GoString() string {
8326	return s.String()
8327}
8328
8329// SetArn sets the Arn field's value.
8330func (s *CreateWorldExportJobOutput) SetArn(v string) *CreateWorldExportJobOutput {
8331	s.Arn = &v
8332	return s
8333}
8334
8335// SetClientRequestToken sets the ClientRequestToken field's value.
8336func (s *CreateWorldExportJobOutput) SetClientRequestToken(v string) *CreateWorldExportJobOutput {
8337	s.ClientRequestToken = &v
8338	return s
8339}
8340
8341// SetCreatedAt sets the CreatedAt field's value.
8342func (s *CreateWorldExportJobOutput) SetCreatedAt(v time.Time) *CreateWorldExportJobOutput {
8343	s.CreatedAt = &v
8344	return s
8345}
8346
8347// SetFailureCode sets the FailureCode field's value.
8348func (s *CreateWorldExportJobOutput) SetFailureCode(v string) *CreateWorldExportJobOutput {
8349	s.FailureCode = &v
8350	return s
8351}
8352
8353// SetIamRole sets the IamRole field's value.
8354func (s *CreateWorldExportJobOutput) SetIamRole(v string) *CreateWorldExportJobOutput {
8355	s.IamRole = &v
8356	return s
8357}
8358
8359// SetOutputLocation sets the OutputLocation field's value.
8360func (s *CreateWorldExportJobOutput) SetOutputLocation(v *OutputLocation) *CreateWorldExportJobOutput {
8361	s.OutputLocation = v
8362	return s
8363}
8364
8365// SetStatus sets the Status field's value.
8366func (s *CreateWorldExportJobOutput) SetStatus(v string) *CreateWorldExportJobOutput {
8367	s.Status = &v
8368	return s
8369}
8370
8371// SetTags sets the Tags field's value.
8372func (s *CreateWorldExportJobOutput) SetTags(v map[string]*string) *CreateWorldExportJobOutput {
8373	s.Tags = v
8374	return s
8375}
8376
8377type CreateWorldGenerationJobInput struct {
8378	_ struct{} `type:"structure"`
8379
8380	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8381	// of the request.
8382	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
8383
8384	// A map that contains tag keys and tag values that are attached to the world
8385	// generator job.
8386	Tags map[string]*string `locationName:"tags" type:"map"`
8387
8388	// The Amazon Resource Name (arn) of the world template describing the worlds
8389	// you want to create.
8390	//
8391	// Template is a required field
8392	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
8393
8394	// Information about the world count.
8395	//
8396	// WorldCount is a required field
8397	WorldCount *WorldCount `locationName:"worldCount" type:"structure" required:"true"`
8398
8399	// A map that contains tag keys and tag values that are attached to the generated
8400	// worlds.
8401	WorldTags map[string]*string `locationName:"worldTags" type:"map"`
8402}
8403
8404// String returns the string representation
8405func (s CreateWorldGenerationJobInput) String() string {
8406	return awsutil.Prettify(s)
8407}
8408
8409// GoString returns the string representation
8410func (s CreateWorldGenerationJobInput) GoString() string {
8411	return s.String()
8412}
8413
8414// Validate inspects the fields of the type to determine if they are valid.
8415func (s *CreateWorldGenerationJobInput) Validate() error {
8416	invalidParams := request.ErrInvalidParams{Context: "CreateWorldGenerationJobInput"}
8417	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8418		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8419	}
8420	if s.Template == nil {
8421		invalidParams.Add(request.NewErrParamRequired("Template"))
8422	}
8423	if s.Template != nil && len(*s.Template) < 1 {
8424		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
8425	}
8426	if s.WorldCount == nil {
8427		invalidParams.Add(request.NewErrParamRequired("WorldCount"))
8428	}
8429
8430	if invalidParams.Len() > 0 {
8431		return invalidParams
8432	}
8433	return nil
8434}
8435
8436// SetClientRequestToken sets the ClientRequestToken field's value.
8437func (s *CreateWorldGenerationJobInput) SetClientRequestToken(v string) *CreateWorldGenerationJobInput {
8438	s.ClientRequestToken = &v
8439	return s
8440}
8441
8442// SetTags sets the Tags field's value.
8443func (s *CreateWorldGenerationJobInput) SetTags(v map[string]*string) *CreateWorldGenerationJobInput {
8444	s.Tags = v
8445	return s
8446}
8447
8448// SetTemplate sets the Template field's value.
8449func (s *CreateWorldGenerationJobInput) SetTemplate(v string) *CreateWorldGenerationJobInput {
8450	s.Template = &v
8451	return s
8452}
8453
8454// SetWorldCount sets the WorldCount field's value.
8455func (s *CreateWorldGenerationJobInput) SetWorldCount(v *WorldCount) *CreateWorldGenerationJobInput {
8456	s.WorldCount = v
8457	return s
8458}
8459
8460// SetWorldTags sets the WorldTags field's value.
8461func (s *CreateWorldGenerationJobInput) SetWorldTags(v map[string]*string) *CreateWorldGenerationJobInput {
8462	s.WorldTags = v
8463	return s
8464}
8465
8466type CreateWorldGenerationJobOutput struct {
8467	_ struct{} `type:"structure"`
8468
8469	// The Amazon Resource Name (ARN) of the world generator job.
8470	Arn *string `locationName:"arn" min:"1" type:"string"`
8471
8472	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8473	// of the request.
8474	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8475
8476	// The time, in milliseconds since the epoch, when the world generator job was
8477	// created.
8478	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
8479
8480	// The failure code of the world generator job if it failed:
8481	//
8482	// InternalServiceError
8483	//
8484	// Internal service error.
8485	//
8486	// LimitExceeded
8487	//
8488	// The requested resource exceeds the maximum number allowed, or the number
8489	// of concurrent stream requests exceeds the maximum number allowed.
8490	//
8491	// ResourceNotFound
8492	//
8493	// The specified resource could not be found.
8494	//
8495	// RequestThrottled
8496	//
8497	// The request was throttled.
8498	//
8499	// InvalidInput
8500	//
8501	// An input parameter in the request is not valid.
8502	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldGenerationJobErrorCode"`
8503
8504	// The status of the world generator job.
8505	//
8506	// Pending
8507	//
8508	// The world generator job request is pending.
8509	//
8510	// Running
8511	//
8512	// The world generator job is running.
8513	//
8514	// Completed
8515	//
8516	// The world generator job completed.
8517	//
8518	// Failed
8519	//
8520	// The world generator job failed. See failureCode for more information.
8521	//
8522	// PartialFailed
8523	//
8524	// Some worlds did not generate.
8525	//
8526	// Canceled
8527	//
8528	// The world generator job was cancelled.
8529	//
8530	// Canceling
8531	//
8532	// The world generator job is being cancelled.
8533	Status *string `locationName:"status" type:"string" enum:"WorldGenerationJobStatus"`
8534
8535	// A map that contains tag keys and tag values that are attached to the world
8536	// generator job.
8537	Tags map[string]*string `locationName:"tags" type:"map"`
8538
8539	// The Amazon Resource Name (arn) of the world template.
8540	Template *string `locationName:"template" min:"1" type:"string"`
8541
8542	// Information about the world count.
8543	WorldCount *WorldCount `locationName:"worldCount" type:"structure"`
8544
8545	// A map that contains tag keys and tag values that are attached to the generated
8546	// worlds.
8547	WorldTags map[string]*string `locationName:"worldTags" type:"map"`
8548}
8549
8550// String returns the string representation
8551func (s CreateWorldGenerationJobOutput) String() string {
8552	return awsutil.Prettify(s)
8553}
8554
8555// GoString returns the string representation
8556func (s CreateWorldGenerationJobOutput) GoString() string {
8557	return s.String()
8558}
8559
8560// SetArn sets the Arn field's value.
8561func (s *CreateWorldGenerationJobOutput) SetArn(v string) *CreateWorldGenerationJobOutput {
8562	s.Arn = &v
8563	return s
8564}
8565
8566// SetClientRequestToken sets the ClientRequestToken field's value.
8567func (s *CreateWorldGenerationJobOutput) SetClientRequestToken(v string) *CreateWorldGenerationJobOutput {
8568	s.ClientRequestToken = &v
8569	return s
8570}
8571
8572// SetCreatedAt sets the CreatedAt field's value.
8573func (s *CreateWorldGenerationJobOutput) SetCreatedAt(v time.Time) *CreateWorldGenerationJobOutput {
8574	s.CreatedAt = &v
8575	return s
8576}
8577
8578// SetFailureCode sets the FailureCode field's value.
8579func (s *CreateWorldGenerationJobOutput) SetFailureCode(v string) *CreateWorldGenerationJobOutput {
8580	s.FailureCode = &v
8581	return s
8582}
8583
8584// SetStatus sets the Status field's value.
8585func (s *CreateWorldGenerationJobOutput) SetStatus(v string) *CreateWorldGenerationJobOutput {
8586	s.Status = &v
8587	return s
8588}
8589
8590// SetTags sets the Tags field's value.
8591func (s *CreateWorldGenerationJobOutput) SetTags(v map[string]*string) *CreateWorldGenerationJobOutput {
8592	s.Tags = v
8593	return s
8594}
8595
8596// SetTemplate sets the Template field's value.
8597func (s *CreateWorldGenerationJobOutput) SetTemplate(v string) *CreateWorldGenerationJobOutput {
8598	s.Template = &v
8599	return s
8600}
8601
8602// SetWorldCount sets the WorldCount field's value.
8603func (s *CreateWorldGenerationJobOutput) SetWorldCount(v *WorldCount) *CreateWorldGenerationJobOutput {
8604	s.WorldCount = v
8605	return s
8606}
8607
8608// SetWorldTags sets the WorldTags field's value.
8609func (s *CreateWorldGenerationJobOutput) SetWorldTags(v map[string]*string) *CreateWorldGenerationJobOutput {
8610	s.WorldTags = v
8611	return s
8612}
8613
8614type CreateWorldTemplateInput struct {
8615	_ struct{} `type:"structure"`
8616
8617	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8618	// of the request.
8619	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8620
8621	// The name of the world template.
8622	Name *string `locationName:"name" type:"string"`
8623
8624	// A map that contains tag keys and tag values that are attached to the world
8625	// template.
8626	Tags map[string]*string `locationName:"tags" type:"map"`
8627
8628	// The world template body.
8629	TemplateBody *string `locationName:"templateBody" min:"1" type:"string"`
8630
8631	// The location of the world template.
8632	TemplateLocation *TemplateLocation `locationName:"templateLocation" type:"structure"`
8633}
8634
8635// String returns the string representation
8636func (s CreateWorldTemplateInput) String() string {
8637	return awsutil.Prettify(s)
8638}
8639
8640// GoString returns the string representation
8641func (s CreateWorldTemplateInput) GoString() string {
8642	return s.String()
8643}
8644
8645// Validate inspects the fields of the type to determine if they are valid.
8646func (s *CreateWorldTemplateInput) Validate() error {
8647	invalidParams := request.ErrInvalidParams{Context: "CreateWorldTemplateInput"}
8648	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8649		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8650	}
8651	if s.TemplateBody != nil && len(*s.TemplateBody) < 1 {
8652		invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1))
8653	}
8654	if s.TemplateLocation != nil {
8655		if err := s.TemplateLocation.Validate(); err != nil {
8656			invalidParams.AddNested("TemplateLocation", err.(request.ErrInvalidParams))
8657		}
8658	}
8659
8660	if invalidParams.Len() > 0 {
8661		return invalidParams
8662	}
8663	return nil
8664}
8665
8666// SetClientRequestToken sets the ClientRequestToken field's value.
8667func (s *CreateWorldTemplateInput) SetClientRequestToken(v string) *CreateWorldTemplateInput {
8668	s.ClientRequestToken = &v
8669	return s
8670}
8671
8672// SetName sets the Name field's value.
8673func (s *CreateWorldTemplateInput) SetName(v string) *CreateWorldTemplateInput {
8674	s.Name = &v
8675	return s
8676}
8677
8678// SetTags sets the Tags field's value.
8679func (s *CreateWorldTemplateInput) SetTags(v map[string]*string) *CreateWorldTemplateInput {
8680	s.Tags = v
8681	return s
8682}
8683
8684// SetTemplateBody sets the TemplateBody field's value.
8685func (s *CreateWorldTemplateInput) SetTemplateBody(v string) *CreateWorldTemplateInput {
8686	s.TemplateBody = &v
8687	return s
8688}
8689
8690// SetTemplateLocation sets the TemplateLocation field's value.
8691func (s *CreateWorldTemplateInput) SetTemplateLocation(v *TemplateLocation) *CreateWorldTemplateInput {
8692	s.TemplateLocation = v
8693	return s
8694}
8695
8696type CreateWorldTemplateOutput struct {
8697	_ struct{} `type:"structure"`
8698
8699	// The Amazon Resource Name (ARN) of the world template.
8700	Arn *string `locationName:"arn" min:"1" type:"string"`
8701
8702	// Unique, case-sensitive identifier that you provide to ensure the idempotency
8703	// of the request.
8704	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
8705
8706	// The time, in milliseconds since the epoch, when the world template was created.
8707	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
8708
8709	// The name of the world template.
8710	Name *string `locationName:"name" type:"string"`
8711
8712	// A map that contains tag keys and tag values that are attached to the world
8713	// template.
8714	Tags map[string]*string `locationName:"tags" type:"map"`
8715}
8716
8717// String returns the string representation
8718func (s CreateWorldTemplateOutput) String() string {
8719	return awsutil.Prettify(s)
8720}
8721
8722// GoString returns the string representation
8723func (s CreateWorldTemplateOutput) GoString() string {
8724	return s.String()
8725}
8726
8727// SetArn sets the Arn field's value.
8728func (s *CreateWorldTemplateOutput) SetArn(v string) *CreateWorldTemplateOutput {
8729	s.Arn = &v
8730	return s
8731}
8732
8733// SetClientRequestToken sets the ClientRequestToken field's value.
8734func (s *CreateWorldTemplateOutput) SetClientRequestToken(v string) *CreateWorldTemplateOutput {
8735	s.ClientRequestToken = &v
8736	return s
8737}
8738
8739// SetCreatedAt sets the CreatedAt field's value.
8740func (s *CreateWorldTemplateOutput) SetCreatedAt(v time.Time) *CreateWorldTemplateOutput {
8741	s.CreatedAt = &v
8742	return s
8743}
8744
8745// SetName sets the Name field's value.
8746func (s *CreateWorldTemplateOutput) SetName(v string) *CreateWorldTemplateOutput {
8747	s.Name = &v
8748	return s
8749}
8750
8751// SetTags sets the Tags field's value.
8752func (s *CreateWorldTemplateOutput) SetTags(v map[string]*string) *CreateWorldTemplateOutput {
8753	s.Tags = v
8754	return s
8755}
8756
8757// Information about a data source.
8758type DataSource struct {
8759	_ struct{} `type:"structure"`
8760
8761	// The name of the data source.
8762	Name *string `locationName:"name" min:"1" type:"string"`
8763
8764	// The S3 bucket where the data files are located.
8765	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
8766
8767	// The list of S3 keys identifying the data source files.
8768	S3Keys []*S3KeyOutput `locationName:"s3Keys" type:"list"`
8769}
8770
8771// String returns the string representation
8772func (s DataSource) String() string {
8773	return awsutil.Prettify(s)
8774}
8775
8776// GoString returns the string representation
8777func (s DataSource) GoString() string {
8778	return s.String()
8779}
8780
8781// SetName sets the Name field's value.
8782func (s *DataSource) SetName(v string) *DataSource {
8783	s.Name = &v
8784	return s
8785}
8786
8787// SetS3Bucket sets the S3Bucket field's value.
8788func (s *DataSource) SetS3Bucket(v string) *DataSource {
8789	s.S3Bucket = &v
8790	return s
8791}
8792
8793// SetS3Keys sets the S3Keys field's value.
8794func (s *DataSource) SetS3Keys(v []*S3KeyOutput) *DataSource {
8795	s.S3Keys = v
8796	return s
8797}
8798
8799// Information about a data source.
8800type DataSourceConfig struct {
8801	_ struct{} `type:"structure"`
8802
8803	// The name of the data source.
8804	//
8805	// Name is a required field
8806	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8807
8808	// The S3 bucket where the data files are located.
8809	//
8810	// S3Bucket is a required field
8811	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string" required:"true"`
8812
8813	// The list of S3 keys identifying the data source files.
8814	//
8815	// S3Keys is a required field
8816	S3Keys []*string `locationName:"s3Keys" min:"1" type:"list" required:"true"`
8817}
8818
8819// String returns the string representation
8820func (s DataSourceConfig) String() string {
8821	return awsutil.Prettify(s)
8822}
8823
8824// GoString returns the string representation
8825func (s DataSourceConfig) GoString() string {
8826	return s.String()
8827}
8828
8829// Validate inspects the fields of the type to determine if they are valid.
8830func (s *DataSourceConfig) Validate() error {
8831	invalidParams := request.ErrInvalidParams{Context: "DataSourceConfig"}
8832	if s.Name == nil {
8833		invalidParams.Add(request.NewErrParamRequired("Name"))
8834	}
8835	if s.Name != nil && len(*s.Name) < 1 {
8836		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8837	}
8838	if s.S3Bucket == nil {
8839		invalidParams.Add(request.NewErrParamRequired("S3Bucket"))
8840	}
8841	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
8842		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
8843	}
8844	if s.S3Keys == nil {
8845		invalidParams.Add(request.NewErrParamRequired("S3Keys"))
8846	}
8847	if s.S3Keys != nil && len(s.S3Keys) < 1 {
8848		invalidParams.Add(request.NewErrParamMinLen("S3Keys", 1))
8849	}
8850
8851	if invalidParams.Len() > 0 {
8852		return invalidParams
8853	}
8854	return nil
8855}
8856
8857// SetName sets the Name field's value.
8858func (s *DataSourceConfig) SetName(v string) *DataSourceConfig {
8859	s.Name = &v
8860	return s
8861}
8862
8863// SetS3Bucket sets the S3Bucket field's value.
8864func (s *DataSourceConfig) SetS3Bucket(v string) *DataSourceConfig {
8865	s.S3Bucket = &v
8866	return s
8867}
8868
8869// SetS3Keys sets the S3Keys field's value.
8870func (s *DataSourceConfig) SetS3Keys(v []*string) *DataSourceConfig {
8871	s.S3Keys = v
8872	return s
8873}
8874
8875type DeleteFleetInput struct {
8876	_ struct{} `type:"structure"`
8877
8878	// The Amazon Resource Name (ARN) of the fleet.
8879	//
8880	// Fleet is a required field
8881	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
8882}
8883
8884// String returns the string representation
8885func (s DeleteFleetInput) String() string {
8886	return awsutil.Prettify(s)
8887}
8888
8889// GoString returns the string representation
8890func (s DeleteFleetInput) GoString() string {
8891	return s.String()
8892}
8893
8894// Validate inspects the fields of the type to determine if they are valid.
8895func (s *DeleteFleetInput) Validate() error {
8896	invalidParams := request.ErrInvalidParams{Context: "DeleteFleetInput"}
8897	if s.Fleet == nil {
8898		invalidParams.Add(request.NewErrParamRequired("Fleet"))
8899	}
8900	if s.Fleet != nil && len(*s.Fleet) < 1 {
8901		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
8902	}
8903
8904	if invalidParams.Len() > 0 {
8905		return invalidParams
8906	}
8907	return nil
8908}
8909
8910// SetFleet sets the Fleet field's value.
8911func (s *DeleteFleetInput) SetFleet(v string) *DeleteFleetInput {
8912	s.Fleet = &v
8913	return s
8914}
8915
8916type DeleteFleetOutput struct {
8917	_ struct{} `type:"structure"`
8918}
8919
8920// String returns the string representation
8921func (s DeleteFleetOutput) String() string {
8922	return awsutil.Prettify(s)
8923}
8924
8925// GoString returns the string representation
8926func (s DeleteFleetOutput) GoString() string {
8927	return s.String()
8928}
8929
8930type DeleteRobotApplicationInput struct {
8931	_ struct{} `type:"structure"`
8932
8933	// The Amazon Resource Name (ARN) of the the robot application.
8934	//
8935	// Application is a required field
8936	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
8937
8938	// The version of the robot application to delete.
8939	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
8940}
8941
8942// String returns the string representation
8943func (s DeleteRobotApplicationInput) String() string {
8944	return awsutil.Prettify(s)
8945}
8946
8947// GoString returns the string representation
8948func (s DeleteRobotApplicationInput) GoString() string {
8949	return s.String()
8950}
8951
8952// Validate inspects the fields of the type to determine if they are valid.
8953func (s *DeleteRobotApplicationInput) Validate() error {
8954	invalidParams := request.ErrInvalidParams{Context: "DeleteRobotApplicationInput"}
8955	if s.Application == nil {
8956		invalidParams.Add(request.NewErrParamRequired("Application"))
8957	}
8958	if s.Application != nil && len(*s.Application) < 1 {
8959		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
8960	}
8961	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
8962		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
8963	}
8964
8965	if invalidParams.Len() > 0 {
8966		return invalidParams
8967	}
8968	return nil
8969}
8970
8971// SetApplication sets the Application field's value.
8972func (s *DeleteRobotApplicationInput) SetApplication(v string) *DeleteRobotApplicationInput {
8973	s.Application = &v
8974	return s
8975}
8976
8977// SetApplicationVersion sets the ApplicationVersion field's value.
8978func (s *DeleteRobotApplicationInput) SetApplicationVersion(v string) *DeleteRobotApplicationInput {
8979	s.ApplicationVersion = &v
8980	return s
8981}
8982
8983type DeleteRobotApplicationOutput struct {
8984	_ struct{} `type:"structure"`
8985}
8986
8987// String returns the string representation
8988func (s DeleteRobotApplicationOutput) String() string {
8989	return awsutil.Prettify(s)
8990}
8991
8992// GoString returns the string representation
8993func (s DeleteRobotApplicationOutput) GoString() string {
8994	return s.String()
8995}
8996
8997type DeleteRobotInput struct {
8998	_ struct{} `type:"structure"`
8999
9000	// The Amazon Resource Name (ARN) of the robot.
9001	//
9002	// Robot is a required field
9003	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
9004}
9005
9006// String returns the string representation
9007func (s DeleteRobotInput) String() string {
9008	return awsutil.Prettify(s)
9009}
9010
9011// GoString returns the string representation
9012func (s DeleteRobotInput) GoString() string {
9013	return s.String()
9014}
9015
9016// Validate inspects the fields of the type to determine if they are valid.
9017func (s *DeleteRobotInput) Validate() error {
9018	invalidParams := request.ErrInvalidParams{Context: "DeleteRobotInput"}
9019	if s.Robot == nil {
9020		invalidParams.Add(request.NewErrParamRequired("Robot"))
9021	}
9022	if s.Robot != nil && len(*s.Robot) < 1 {
9023		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
9024	}
9025
9026	if invalidParams.Len() > 0 {
9027		return invalidParams
9028	}
9029	return nil
9030}
9031
9032// SetRobot sets the Robot field's value.
9033func (s *DeleteRobotInput) SetRobot(v string) *DeleteRobotInput {
9034	s.Robot = &v
9035	return s
9036}
9037
9038type DeleteRobotOutput struct {
9039	_ struct{} `type:"structure"`
9040}
9041
9042// String returns the string representation
9043func (s DeleteRobotOutput) String() string {
9044	return awsutil.Prettify(s)
9045}
9046
9047// GoString returns the string representation
9048func (s DeleteRobotOutput) GoString() string {
9049	return s.String()
9050}
9051
9052type DeleteSimulationApplicationInput struct {
9053	_ struct{} `type:"structure"`
9054
9055	// The application information for the simulation application to delete.
9056	//
9057	// Application is a required field
9058	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
9059
9060	// The version of the simulation application to delete.
9061	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
9062}
9063
9064// String returns the string representation
9065func (s DeleteSimulationApplicationInput) String() string {
9066	return awsutil.Prettify(s)
9067}
9068
9069// GoString returns the string representation
9070func (s DeleteSimulationApplicationInput) GoString() string {
9071	return s.String()
9072}
9073
9074// Validate inspects the fields of the type to determine if they are valid.
9075func (s *DeleteSimulationApplicationInput) Validate() error {
9076	invalidParams := request.ErrInvalidParams{Context: "DeleteSimulationApplicationInput"}
9077	if s.Application == nil {
9078		invalidParams.Add(request.NewErrParamRequired("Application"))
9079	}
9080	if s.Application != nil && len(*s.Application) < 1 {
9081		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
9082	}
9083	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
9084		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
9085	}
9086
9087	if invalidParams.Len() > 0 {
9088		return invalidParams
9089	}
9090	return nil
9091}
9092
9093// SetApplication sets the Application field's value.
9094func (s *DeleteSimulationApplicationInput) SetApplication(v string) *DeleteSimulationApplicationInput {
9095	s.Application = &v
9096	return s
9097}
9098
9099// SetApplicationVersion sets the ApplicationVersion field's value.
9100func (s *DeleteSimulationApplicationInput) SetApplicationVersion(v string) *DeleteSimulationApplicationInput {
9101	s.ApplicationVersion = &v
9102	return s
9103}
9104
9105type DeleteSimulationApplicationOutput struct {
9106	_ struct{} `type:"structure"`
9107}
9108
9109// String returns the string representation
9110func (s DeleteSimulationApplicationOutput) String() string {
9111	return awsutil.Prettify(s)
9112}
9113
9114// GoString returns the string representation
9115func (s DeleteSimulationApplicationOutput) GoString() string {
9116	return s.String()
9117}
9118
9119type DeleteWorldTemplateInput struct {
9120	_ struct{} `type:"structure"`
9121
9122	// The Amazon Resource Name (arn) of the world template you want to delete.
9123	//
9124	// Template is a required field
9125	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
9126}
9127
9128// String returns the string representation
9129func (s DeleteWorldTemplateInput) String() string {
9130	return awsutil.Prettify(s)
9131}
9132
9133// GoString returns the string representation
9134func (s DeleteWorldTemplateInput) GoString() string {
9135	return s.String()
9136}
9137
9138// Validate inspects the fields of the type to determine if they are valid.
9139func (s *DeleteWorldTemplateInput) Validate() error {
9140	invalidParams := request.ErrInvalidParams{Context: "DeleteWorldTemplateInput"}
9141	if s.Template == nil {
9142		invalidParams.Add(request.NewErrParamRequired("Template"))
9143	}
9144	if s.Template != nil && len(*s.Template) < 1 {
9145		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
9146	}
9147
9148	if invalidParams.Len() > 0 {
9149		return invalidParams
9150	}
9151	return nil
9152}
9153
9154// SetTemplate sets the Template field's value.
9155func (s *DeleteWorldTemplateInput) SetTemplate(v string) *DeleteWorldTemplateInput {
9156	s.Template = &v
9157	return s
9158}
9159
9160type DeleteWorldTemplateOutput struct {
9161	_ struct{} `type:"structure"`
9162}
9163
9164// String returns the string representation
9165func (s DeleteWorldTemplateOutput) String() string {
9166	return awsutil.Prettify(s)
9167}
9168
9169// GoString returns the string representation
9170func (s DeleteWorldTemplateOutput) GoString() string {
9171	return s.String()
9172}
9173
9174// Information about a deployment application configuration.
9175type DeploymentApplicationConfig struct {
9176	_ struct{} `type:"structure"`
9177
9178	// The Amazon Resource Name (ARN) of the robot application.
9179	//
9180	// Application is a required field
9181	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
9182
9183	// The version of the application.
9184	//
9185	// ApplicationVersion is a required field
9186	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string" required:"true"`
9187
9188	// The launch configuration.
9189	//
9190	// LaunchConfig is a required field
9191	LaunchConfig *DeploymentLaunchConfig `locationName:"launchConfig" type:"structure" required:"true"`
9192}
9193
9194// String returns the string representation
9195func (s DeploymentApplicationConfig) String() string {
9196	return awsutil.Prettify(s)
9197}
9198
9199// GoString returns the string representation
9200func (s DeploymentApplicationConfig) GoString() string {
9201	return s.String()
9202}
9203
9204// Validate inspects the fields of the type to determine if they are valid.
9205func (s *DeploymentApplicationConfig) Validate() error {
9206	invalidParams := request.ErrInvalidParams{Context: "DeploymentApplicationConfig"}
9207	if s.Application == nil {
9208		invalidParams.Add(request.NewErrParamRequired("Application"))
9209	}
9210	if s.Application != nil && len(*s.Application) < 1 {
9211		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
9212	}
9213	if s.ApplicationVersion == nil {
9214		invalidParams.Add(request.NewErrParamRequired("ApplicationVersion"))
9215	}
9216	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
9217		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
9218	}
9219	if s.LaunchConfig == nil {
9220		invalidParams.Add(request.NewErrParamRequired("LaunchConfig"))
9221	}
9222	if s.LaunchConfig != nil {
9223		if err := s.LaunchConfig.Validate(); err != nil {
9224			invalidParams.AddNested("LaunchConfig", err.(request.ErrInvalidParams))
9225		}
9226	}
9227
9228	if invalidParams.Len() > 0 {
9229		return invalidParams
9230	}
9231	return nil
9232}
9233
9234// SetApplication sets the Application field's value.
9235func (s *DeploymentApplicationConfig) SetApplication(v string) *DeploymentApplicationConfig {
9236	s.Application = &v
9237	return s
9238}
9239
9240// SetApplicationVersion sets the ApplicationVersion field's value.
9241func (s *DeploymentApplicationConfig) SetApplicationVersion(v string) *DeploymentApplicationConfig {
9242	s.ApplicationVersion = &v
9243	return s
9244}
9245
9246// SetLaunchConfig sets the LaunchConfig field's value.
9247func (s *DeploymentApplicationConfig) SetLaunchConfig(v *DeploymentLaunchConfig) *DeploymentApplicationConfig {
9248	s.LaunchConfig = v
9249	return s
9250}
9251
9252// Information about a deployment configuration.
9253type DeploymentConfig struct {
9254	_ struct{} `type:"structure"`
9255
9256	// The percentage of robots receiving the deployment at the same time.
9257	ConcurrentDeploymentPercentage *int64 `locationName:"concurrentDeploymentPercentage" min:"1" type:"integer"`
9258
9259	// The download condition file.
9260	DownloadConditionFile *S3Object `locationName:"downloadConditionFile" type:"structure"`
9261
9262	// The percentage of deployments that need to fail before stopping deployment.
9263	FailureThresholdPercentage *int64 `locationName:"failureThresholdPercentage" min:"1" type:"integer"`
9264
9265	// The amount of time, in seconds, to wait for deployment to a single robot
9266	// to complete. Choose a time between 1 minute and 7 days. The default is 5
9267	// hours.
9268	RobotDeploymentTimeoutInSeconds *int64 `locationName:"robotDeploymentTimeoutInSeconds" type:"long"`
9269}
9270
9271// String returns the string representation
9272func (s DeploymentConfig) String() string {
9273	return awsutil.Prettify(s)
9274}
9275
9276// GoString returns the string representation
9277func (s DeploymentConfig) GoString() string {
9278	return s.String()
9279}
9280
9281// Validate inspects the fields of the type to determine if they are valid.
9282func (s *DeploymentConfig) Validate() error {
9283	invalidParams := request.ErrInvalidParams{Context: "DeploymentConfig"}
9284	if s.ConcurrentDeploymentPercentage != nil && *s.ConcurrentDeploymentPercentage < 1 {
9285		invalidParams.Add(request.NewErrParamMinValue("ConcurrentDeploymentPercentage", 1))
9286	}
9287	if s.FailureThresholdPercentage != nil && *s.FailureThresholdPercentage < 1 {
9288		invalidParams.Add(request.NewErrParamMinValue("FailureThresholdPercentage", 1))
9289	}
9290	if s.DownloadConditionFile != nil {
9291		if err := s.DownloadConditionFile.Validate(); err != nil {
9292			invalidParams.AddNested("DownloadConditionFile", err.(request.ErrInvalidParams))
9293		}
9294	}
9295
9296	if invalidParams.Len() > 0 {
9297		return invalidParams
9298	}
9299	return nil
9300}
9301
9302// SetConcurrentDeploymentPercentage sets the ConcurrentDeploymentPercentage field's value.
9303func (s *DeploymentConfig) SetConcurrentDeploymentPercentage(v int64) *DeploymentConfig {
9304	s.ConcurrentDeploymentPercentage = &v
9305	return s
9306}
9307
9308// SetDownloadConditionFile sets the DownloadConditionFile field's value.
9309func (s *DeploymentConfig) SetDownloadConditionFile(v *S3Object) *DeploymentConfig {
9310	s.DownloadConditionFile = v
9311	return s
9312}
9313
9314// SetFailureThresholdPercentage sets the FailureThresholdPercentage field's value.
9315func (s *DeploymentConfig) SetFailureThresholdPercentage(v int64) *DeploymentConfig {
9316	s.FailureThresholdPercentage = &v
9317	return s
9318}
9319
9320// SetRobotDeploymentTimeoutInSeconds sets the RobotDeploymentTimeoutInSeconds field's value.
9321func (s *DeploymentConfig) SetRobotDeploymentTimeoutInSeconds(v int64) *DeploymentConfig {
9322	s.RobotDeploymentTimeoutInSeconds = &v
9323	return s
9324}
9325
9326// Information about a deployment job.
9327type DeploymentJob struct {
9328	_ struct{} `type:"structure"`
9329
9330	// The Amazon Resource Name (ARN) of the deployment job.
9331	Arn *string `locationName:"arn" min:"1" type:"string"`
9332
9333	// The time, in milliseconds since the epoch, when the deployment job was created.
9334	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
9335
9336	// The deployment application configuration.
9337	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
9338
9339	// The deployment configuration.
9340	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
9341
9342	// The deployment job failure code.
9343	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
9344
9345	// A short description of the reason why the deployment job failed.
9346	FailureReason *string `locationName:"failureReason" type:"string"`
9347
9348	// The Amazon Resource Name (ARN) of the fleet.
9349	Fleet *string `locationName:"fleet" min:"1" type:"string"`
9350
9351	// The status of the deployment job.
9352	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
9353}
9354
9355// String returns the string representation
9356func (s DeploymentJob) String() string {
9357	return awsutil.Prettify(s)
9358}
9359
9360// GoString returns the string representation
9361func (s DeploymentJob) GoString() string {
9362	return s.String()
9363}
9364
9365// SetArn sets the Arn field's value.
9366func (s *DeploymentJob) SetArn(v string) *DeploymentJob {
9367	s.Arn = &v
9368	return s
9369}
9370
9371// SetCreatedAt sets the CreatedAt field's value.
9372func (s *DeploymentJob) SetCreatedAt(v time.Time) *DeploymentJob {
9373	s.CreatedAt = &v
9374	return s
9375}
9376
9377// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
9378func (s *DeploymentJob) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *DeploymentJob {
9379	s.DeploymentApplicationConfigs = v
9380	return s
9381}
9382
9383// SetDeploymentConfig sets the DeploymentConfig field's value.
9384func (s *DeploymentJob) SetDeploymentConfig(v *DeploymentConfig) *DeploymentJob {
9385	s.DeploymentConfig = v
9386	return s
9387}
9388
9389// SetFailureCode sets the FailureCode field's value.
9390func (s *DeploymentJob) SetFailureCode(v string) *DeploymentJob {
9391	s.FailureCode = &v
9392	return s
9393}
9394
9395// SetFailureReason sets the FailureReason field's value.
9396func (s *DeploymentJob) SetFailureReason(v string) *DeploymentJob {
9397	s.FailureReason = &v
9398	return s
9399}
9400
9401// SetFleet sets the Fleet field's value.
9402func (s *DeploymentJob) SetFleet(v string) *DeploymentJob {
9403	s.Fleet = &v
9404	return s
9405}
9406
9407// SetStatus sets the Status field's value.
9408func (s *DeploymentJob) SetStatus(v string) *DeploymentJob {
9409	s.Status = &v
9410	return s
9411}
9412
9413// Configuration information for a deployment launch.
9414type DeploymentLaunchConfig struct {
9415	_ struct{} `type:"structure"`
9416
9417	// An array of key/value pairs specifying environment variables for the robot
9418	// application
9419	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
9420
9421	// The launch file name.
9422	//
9423	// LaunchFile is a required field
9424	LaunchFile *string `locationName:"launchFile" min:"1" type:"string" required:"true"`
9425
9426	// The package name.
9427	//
9428	// PackageName is a required field
9429	PackageName *string `locationName:"packageName" min:"1" type:"string" required:"true"`
9430
9431	// The deployment post-launch file. This file will be executed after the launch
9432	// file.
9433	PostLaunchFile *string `locationName:"postLaunchFile" min:"1" type:"string"`
9434
9435	// The deployment pre-launch file. This file will be executed prior to the launch
9436	// file.
9437	PreLaunchFile *string `locationName:"preLaunchFile" min:"1" type:"string"`
9438}
9439
9440// String returns the string representation
9441func (s DeploymentLaunchConfig) String() string {
9442	return awsutil.Prettify(s)
9443}
9444
9445// GoString returns the string representation
9446func (s DeploymentLaunchConfig) GoString() string {
9447	return s.String()
9448}
9449
9450// Validate inspects the fields of the type to determine if they are valid.
9451func (s *DeploymentLaunchConfig) Validate() error {
9452	invalidParams := request.ErrInvalidParams{Context: "DeploymentLaunchConfig"}
9453	if s.LaunchFile == nil {
9454		invalidParams.Add(request.NewErrParamRequired("LaunchFile"))
9455	}
9456	if s.LaunchFile != nil && len(*s.LaunchFile) < 1 {
9457		invalidParams.Add(request.NewErrParamMinLen("LaunchFile", 1))
9458	}
9459	if s.PackageName == nil {
9460		invalidParams.Add(request.NewErrParamRequired("PackageName"))
9461	}
9462	if s.PackageName != nil && len(*s.PackageName) < 1 {
9463		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
9464	}
9465	if s.PostLaunchFile != nil && len(*s.PostLaunchFile) < 1 {
9466		invalidParams.Add(request.NewErrParamMinLen("PostLaunchFile", 1))
9467	}
9468	if s.PreLaunchFile != nil && len(*s.PreLaunchFile) < 1 {
9469		invalidParams.Add(request.NewErrParamMinLen("PreLaunchFile", 1))
9470	}
9471
9472	if invalidParams.Len() > 0 {
9473		return invalidParams
9474	}
9475	return nil
9476}
9477
9478// SetEnvironmentVariables sets the EnvironmentVariables field's value.
9479func (s *DeploymentLaunchConfig) SetEnvironmentVariables(v map[string]*string) *DeploymentLaunchConfig {
9480	s.EnvironmentVariables = v
9481	return s
9482}
9483
9484// SetLaunchFile sets the LaunchFile field's value.
9485func (s *DeploymentLaunchConfig) SetLaunchFile(v string) *DeploymentLaunchConfig {
9486	s.LaunchFile = &v
9487	return s
9488}
9489
9490// SetPackageName sets the PackageName field's value.
9491func (s *DeploymentLaunchConfig) SetPackageName(v string) *DeploymentLaunchConfig {
9492	s.PackageName = &v
9493	return s
9494}
9495
9496// SetPostLaunchFile sets the PostLaunchFile field's value.
9497func (s *DeploymentLaunchConfig) SetPostLaunchFile(v string) *DeploymentLaunchConfig {
9498	s.PostLaunchFile = &v
9499	return s
9500}
9501
9502// SetPreLaunchFile sets the PreLaunchFile field's value.
9503func (s *DeploymentLaunchConfig) SetPreLaunchFile(v string) *DeploymentLaunchConfig {
9504	s.PreLaunchFile = &v
9505	return s
9506}
9507
9508type DeregisterRobotInput struct {
9509	_ struct{} `type:"structure"`
9510
9511	// The Amazon Resource Name (ARN) of the fleet.
9512	//
9513	// Fleet is a required field
9514	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
9515
9516	// The Amazon Resource Name (ARN) of the robot.
9517	//
9518	// Robot is a required field
9519	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
9520}
9521
9522// String returns the string representation
9523func (s DeregisterRobotInput) String() string {
9524	return awsutil.Prettify(s)
9525}
9526
9527// GoString returns the string representation
9528func (s DeregisterRobotInput) GoString() string {
9529	return s.String()
9530}
9531
9532// Validate inspects the fields of the type to determine if they are valid.
9533func (s *DeregisterRobotInput) Validate() error {
9534	invalidParams := request.ErrInvalidParams{Context: "DeregisterRobotInput"}
9535	if s.Fleet == nil {
9536		invalidParams.Add(request.NewErrParamRequired("Fleet"))
9537	}
9538	if s.Fleet != nil && len(*s.Fleet) < 1 {
9539		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
9540	}
9541	if s.Robot == nil {
9542		invalidParams.Add(request.NewErrParamRequired("Robot"))
9543	}
9544	if s.Robot != nil && len(*s.Robot) < 1 {
9545		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
9546	}
9547
9548	if invalidParams.Len() > 0 {
9549		return invalidParams
9550	}
9551	return nil
9552}
9553
9554// SetFleet sets the Fleet field's value.
9555func (s *DeregisterRobotInput) SetFleet(v string) *DeregisterRobotInput {
9556	s.Fleet = &v
9557	return s
9558}
9559
9560// SetRobot sets the Robot field's value.
9561func (s *DeregisterRobotInput) SetRobot(v string) *DeregisterRobotInput {
9562	s.Robot = &v
9563	return s
9564}
9565
9566type DeregisterRobotOutput struct {
9567	_ struct{} `type:"structure"`
9568
9569	// The Amazon Resource Name (ARN) of the fleet.
9570	Fleet *string `locationName:"fleet" min:"1" type:"string"`
9571
9572	// The Amazon Resource Name (ARN) of the robot.
9573	Robot *string `locationName:"robot" min:"1" type:"string"`
9574}
9575
9576// String returns the string representation
9577func (s DeregisterRobotOutput) String() string {
9578	return awsutil.Prettify(s)
9579}
9580
9581// GoString returns the string representation
9582func (s DeregisterRobotOutput) GoString() string {
9583	return s.String()
9584}
9585
9586// SetFleet sets the Fleet field's value.
9587func (s *DeregisterRobotOutput) SetFleet(v string) *DeregisterRobotOutput {
9588	s.Fleet = &v
9589	return s
9590}
9591
9592// SetRobot sets the Robot field's value.
9593func (s *DeregisterRobotOutput) SetRobot(v string) *DeregisterRobotOutput {
9594	s.Robot = &v
9595	return s
9596}
9597
9598type DescribeDeploymentJobInput struct {
9599	_ struct{} `type:"structure"`
9600
9601	// The Amazon Resource Name (ARN) of the deployment job.
9602	//
9603	// Job is a required field
9604	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
9605}
9606
9607// String returns the string representation
9608func (s DescribeDeploymentJobInput) String() string {
9609	return awsutil.Prettify(s)
9610}
9611
9612// GoString returns the string representation
9613func (s DescribeDeploymentJobInput) GoString() string {
9614	return s.String()
9615}
9616
9617// Validate inspects the fields of the type to determine if they are valid.
9618func (s *DescribeDeploymentJobInput) Validate() error {
9619	invalidParams := request.ErrInvalidParams{Context: "DescribeDeploymentJobInput"}
9620	if s.Job == nil {
9621		invalidParams.Add(request.NewErrParamRequired("Job"))
9622	}
9623	if s.Job != nil && len(*s.Job) < 1 {
9624		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
9625	}
9626
9627	if invalidParams.Len() > 0 {
9628		return invalidParams
9629	}
9630	return nil
9631}
9632
9633// SetJob sets the Job field's value.
9634func (s *DescribeDeploymentJobInput) SetJob(v string) *DescribeDeploymentJobInput {
9635	s.Job = &v
9636	return s
9637}
9638
9639type DescribeDeploymentJobOutput struct {
9640	_ struct{} `type:"structure"`
9641
9642	// The Amazon Resource Name (ARN) of the deployment job.
9643	Arn *string `locationName:"arn" min:"1" type:"string"`
9644
9645	// The time, in milliseconds since the epoch, when the deployment job was created.
9646	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
9647
9648	// The deployment application configuration.
9649	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
9650
9651	// The deployment configuration.
9652	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
9653
9654	// The deployment job failure code.
9655	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
9656
9657	// A short description of the reason why the deployment job failed.
9658	FailureReason *string `locationName:"failureReason" type:"string"`
9659
9660	// The Amazon Resource Name (ARN) of the fleet.
9661	Fleet *string `locationName:"fleet" min:"1" type:"string"`
9662
9663	// A list of robot deployment summaries.
9664	RobotDeploymentSummary []*RobotDeployment `locationName:"robotDeploymentSummary" type:"list"`
9665
9666	// The status of the deployment job.
9667	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
9668
9669	// The list of all tags added to the specified deployment job.
9670	Tags map[string]*string `locationName:"tags" type:"map"`
9671}
9672
9673// String returns the string representation
9674func (s DescribeDeploymentJobOutput) String() string {
9675	return awsutil.Prettify(s)
9676}
9677
9678// GoString returns the string representation
9679func (s DescribeDeploymentJobOutput) GoString() string {
9680	return s.String()
9681}
9682
9683// SetArn sets the Arn field's value.
9684func (s *DescribeDeploymentJobOutput) SetArn(v string) *DescribeDeploymentJobOutput {
9685	s.Arn = &v
9686	return s
9687}
9688
9689// SetCreatedAt sets the CreatedAt field's value.
9690func (s *DescribeDeploymentJobOutput) SetCreatedAt(v time.Time) *DescribeDeploymentJobOutput {
9691	s.CreatedAt = &v
9692	return s
9693}
9694
9695// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
9696func (s *DescribeDeploymentJobOutput) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *DescribeDeploymentJobOutput {
9697	s.DeploymentApplicationConfigs = v
9698	return s
9699}
9700
9701// SetDeploymentConfig sets the DeploymentConfig field's value.
9702func (s *DescribeDeploymentJobOutput) SetDeploymentConfig(v *DeploymentConfig) *DescribeDeploymentJobOutput {
9703	s.DeploymentConfig = v
9704	return s
9705}
9706
9707// SetFailureCode sets the FailureCode field's value.
9708func (s *DescribeDeploymentJobOutput) SetFailureCode(v string) *DescribeDeploymentJobOutput {
9709	s.FailureCode = &v
9710	return s
9711}
9712
9713// SetFailureReason sets the FailureReason field's value.
9714func (s *DescribeDeploymentJobOutput) SetFailureReason(v string) *DescribeDeploymentJobOutput {
9715	s.FailureReason = &v
9716	return s
9717}
9718
9719// SetFleet sets the Fleet field's value.
9720func (s *DescribeDeploymentJobOutput) SetFleet(v string) *DescribeDeploymentJobOutput {
9721	s.Fleet = &v
9722	return s
9723}
9724
9725// SetRobotDeploymentSummary sets the RobotDeploymentSummary field's value.
9726func (s *DescribeDeploymentJobOutput) SetRobotDeploymentSummary(v []*RobotDeployment) *DescribeDeploymentJobOutput {
9727	s.RobotDeploymentSummary = v
9728	return s
9729}
9730
9731// SetStatus sets the Status field's value.
9732func (s *DescribeDeploymentJobOutput) SetStatus(v string) *DescribeDeploymentJobOutput {
9733	s.Status = &v
9734	return s
9735}
9736
9737// SetTags sets the Tags field's value.
9738func (s *DescribeDeploymentJobOutput) SetTags(v map[string]*string) *DescribeDeploymentJobOutput {
9739	s.Tags = v
9740	return s
9741}
9742
9743type DescribeFleetInput struct {
9744	_ struct{} `type:"structure"`
9745
9746	// The Amazon Resource Name (ARN) of the fleet.
9747	//
9748	// Fleet is a required field
9749	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
9750}
9751
9752// String returns the string representation
9753func (s DescribeFleetInput) String() string {
9754	return awsutil.Prettify(s)
9755}
9756
9757// GoString returns the string representation
9758func (s DescribeFleetInput) GoString() string {
9759	return s.String()
9760}
9761
9762// Validate inspects the fields of the type to determine if they are valid.
9763func (s *DescribeFleetInput) Validate() error {
9764	invalidParams := request.ErrInvalidParams{Context: "DescribeFleetInput"}
9765	if s.Fleet == nil {
9766		invalidParams.Add(request.NewErrParamRequired("Fleet"))
9767	}
9768	if s.Fleet != nil && len(*s.Fleet) < 1 {
9769		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
9770	}
9771
9772	if invalidParams.Len() > 0 {
9773		return invalidParams
9774	}
9775	return nil
9776}
9777
9778// SetFleet sets the Fleet field's value.
9779func (s *DescribeFleetInput) SetFleet(v string) *DescribeFleetInput {
9780	s.Fleet = &v
9781	return s
9782}
9783
9784type DescribeFleetOutput struct {
9785	_ struct{} `type:"structure"`
9786
9787	// The Amazon Resource Name (ARN) of the fleet.
9788	Arn *string `locationName:"arn" min:"1" type:"string"`
9789
9790	// The time, in milliseconds since the epoch, when the fleet was created.
9791	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
9792
9793	// The Amazon Resource Name (ARN) of the last deployment job.
9794	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
9795
9796	// The status of the last deployment.
9797	LastDeploymentStatus *string `locationName:"lastDeploymentStatus" type:"string" enum:"DeploymentStatus"`
9798
9799	// The time of the last deployment.
9800	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
9801
9802	// The name of the fleet.
9803	Name *string `locationName:"name" min:"1" type:"string"`
9804
9805	// A list of robots.
9806	Robots []*Robot `locationName:"robots" type:"list"`
9807
9808	// The list of all tags added to the specified fleet.
9809	Tags map[string]*string `locationName:"tags" type:"map"`
9810}
9811
9812// String returns the string representation
9813func (s DescribeFleetOutput) String() string {
9814	return awsutil.Prettify(s)
9815}
9816
9817// GoString returns the string representation
9818func (s DescribeFleetOutput) GoString() string {
9819	return s.String()
9820}
9821
9822// SetArn sets the Arn field's value.
9823func (s *DescribeFleetOutput) SetArn(v string) *DescribeFleetOutput {
9824	s.Arn = &v
9825	return s
9826}
9827
9828// SetCreatedAt sets the CreatedAt field's value.
9829func (s *DescribeFleetOutput) SetCreatedAt(v time.Time) *DescribeFleetOutput {
9830	s.CreatedAt = &v
9831	return s
9832}
9833
9834// SetLastDeploymentJob sets the LastDeploymentJob field's value.
9835func (s *DescribeFleetOutput) SetLastDeploymentJob(v string) *DescribeFleetOutput {
9836	s.LastDeploymentJob = &v
9837	return s
9838}
9839
9840// SetLastDeploymentStatus sets the LastDeploymentStatus field's value.
9841func (s *DescribeFleetOutput) SetLastDeploymentStatus(v string) *DescribeFleetOutput {
9842	s.LastDeploymentStatus = &v
9843	return s
9844}
9845
9846// SetLastDeploymentTime sets the LastDeploymentTime field's value.
9847func (s *DescribeFleetOutput) SetLastDeploymentTime(v time.Time) *DescribeFleetOutput {
9848	s.LastDeploymentTime = &v
9849	return s
9850}
9851
9852// SetName sets the Name field's value.
9853func (s *DescribeFleetOutput) SetName(v string) *DescribeFleetOutput {
9854	s.Name = &v
9855	return s
9856}
9857
9858// SetRobots sets the Robots field's value.
9859func (s *DescribeFleetOutput) SetRobots(v []*Robot) *DescribeFleetOutput {
9860	s.Robots = v
9861	return s
9862}
9863
9864// SetTags sets the Tags field's value.
9865func (s *DescribeFleetOutput) SetTags(v map[string]*string) *DescribeFleetOutput {
9866	s.Tags = v
9867	return s
9868}
9869
9870type DescribeRobotApplicationInput struct {
9871	_ struct{} `type:"structure"`
9872
9873	// The Amazon Resource Name (ARN) of the robot application.
9874	//
9875	// Application is a required field
9876	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
9877
9878	// The version of the robot application to describe.
9879	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
9880}
9881
9882// String returns the string representation
9883func (s DescribeRobotApplicationInput) String() string {
9884	return awsutil.Prettify(s)
9885}
9886
9887// GoString returns the string representation
9888func (s DescribeRobotApplicationInput) GoString() string {
9889	return s.String()
9890}
9891
9892// Validate inspects the fields of the type to determine if they are valid.
9893func (s *DescribeRobotApplicationInput) Validate() error {
9894	invalidParams := request.ErrInvalidParams{Context: "DescribeRobotApplicationInput"}
9895	if s.Application == nil {
9896		invalidParams.Add(request.NewErrParamRequired("Application"))
9897	}
9898	if s.Application != nil && len(*s.Application) < 1 {
9899		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
9900	}
9901	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
9902		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
9903	}
9904
9905	if invalidParams.Len() > 0 {
9906		return invalidParams
9907	}
9908	return nil
9909}
9910
9911// SetApplication sets the Application field's value.
9912func (s *DescribeRobotApplicationInput) SetApplication(v string) *DescribeRobotApplicationInput {
9913	s.Application = &v
9914	return s
9915}
9916
9917// SetApplicationVersion sets the ApplicationVersion field's value.
9918func (s *DescribeRobotApplicationInput) SetApplicationVersion(v string) *DescribeRobotApplicationInput {
9919	s.ApplicationVersion = &v
9920	return s
9921}
9922
9923type DescribeRobotApplicationOutput struct {
9924	_ struct{} `type:"structure"`
9925
9926	// The Amazon Resource Name (ARN) of the robot application.
9927	Arn *string `locationName:"arn" min:"1" type:"string"`
9928
9929	// The time, in milliseconds since the epoch, when the robot application was
9930	// last updated.
9931	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
9932
9933	// The name of the robot application.
9934	Name *string `locationName:"name" min:"1" type:"string"`
9935
9936	// The revision id of the robot application.
9937	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
9938
9939	// The robot software suite (ROS distribution) used by the robot application.
9940	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
9941
9942	// The sources of the robot application.
9943	Sources []*Source `locationName:"sources" type:"list"`
9944
9945	// The list of all tags added to the specified robot application.
9946	Tags map[string]*string `locationName:"tags" type:"map"`
9947
9948	// The version of the robot application.
9949	Version *string `locationName:"version" min:"1" type:"string"`
9950}
9951
9952// String returns the string representation
9953func (s DescribeRobotApplicationOutput) String() string {
9954	return awsutil.Prettify(s)
9955}
9956
9957// GoString returns the string representation
9958func (s DescribeRobotApplicationOutput) GoString() string {
9959	return s.String()
9960}
9961
9962// SetArn sets the Arn field's value.
9963func (s *DescribeRobotApplicationOutput) SetArn(v string) *DescribeRobotApplicationOutput {
9964	s.Arn = &v
9965	return s
9966}
9967
9968// SetLastUpdatedAt sets the LastUpdatedAt field's value.
9969func (s *DescribeRobotApplicationOutput) SetLastUpdatedAt(v time.Time) *DescribeRobotApplicationOutput {
9970	s.LastUpdatedAt = &v
9971	return s
9972}
9973
9974// SetName sets the Name field's value.
9975func (s *DescribeRobotApplicationOutput) SetName(v string) *DescribeRobotApplicationOutput {
9976	s.Name = &v
9977	return s
9978}
9979
9980// SetRevisionId sets the RevisionId field's value.
9981func (s *DescribeRobotApplicationOutput) SetRevisionId(v string) *DescribeRobotApplicationOutput {
9982	s.RevisionId = &v
9983	return s
9984}
9985
9986// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
9987func (s *DescribeRobotApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *DescribeRobotApplicationOutput {
9988	s.RobotSoftwareSuite = v
9989	return s
9990}
9991
9992// SetSources sets the Sources field's value.
9993func (s *DescribeRobotApplicationOutput) SetSources(v []*Source) *DescribeRobotApplicationOutput {
9994	s.Sources = v
9995	return s
9996}
9997
9998// SetTags sets the Tags field's value.
9999func (s *DescribeRobotApplicationOutput) SetTags(v map[string]*string) *DescribeRobotApplicationOutput {
10000	s.Tags = v
10001	return s
10002}
10003
10004// SetVersion sets the Version field's value.
10005func (s *DescribeRobotApplicationOutput) SetVersion(v string) *DescribeRobotApplicationOutput {
10006	s.Version = &v
10007	return s
10008}
10009
10010type DescribeRobotInput struct {
10011	_ struct{} `type:"structure"`
10012
10013	// The Amazon Resource Name (ARN) of the robot to be described.
10014	//
10015	// Robot is a required field
10016	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
10017}
10018
10019// String returns the string representation
10020func (s DescribeRobotInput) String() string {
10021	return awsutil.Prettify(s)
10022}
10023
10024// GoString returns the string representation
10025func (s DescribeRobotInput) GoString() string {
10026	return s.String()
10027}
10028
10029// Validate inspects the fields of the type to determine if they are valid.
10030func (s *DescribeRobotInput) Validate() error {
10031	invalidParams := request.ErrInvalidParams{Context: "DescribeRobotInput"}
10032	if s.Robot == nil {
10033		invalidParams.Add(request.NewErrParamRequired("Robot"))
10034	}
10035	if s.Robot != nil && len(*s.Robot) < 1 {
10036		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
10037	}
10038
10039	if invalidParams.Len() > 0 {
10040		return invalidParams
10041	}
10042	return nil
10043}
10044
10045// SetRobot sets the Robot field's value.
10046func (s *DescribeRobotInput) SetRobot(v string) *DescribeRobotInput {
10047	s.Robot = &v
10048	return s
10049}
10050
10051type DescribeRobotOutput struct {
10052	_ struct{} `type:"structure"`
10053
10054	// The target architecture of the robot application.
10055	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
10056
10057	// The Amazon Resource Name (ARN) of the robot.
10058	Arn *string `locationName:"arn" min:"1" type:"string"`
10059
10060	// The time, in milliseconds since the epoch, when the robot was created.
10061	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
10062
10063	// The Amazon Resource Name (ARN) of the fleet.
10064	FleetArn *string `locationName:"fleetArn" min:"1" type:"string"`
10065
10066	// The Greengrass group id.
10067	GreengrassGroupId *string `locationName:"greengrassGroupId" min:"1" type:"string"`
10068
10069	// The Amazon Resource Name (ARN) of the last deployment job.
10070	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
10071
10072	// The time of the last deployment job.
10073	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
10074
10075	// The name of the robot.
10076	Name *string `locationName:"name" min:"1" type:"string"`
10077
10078	// The status of the fleet.
10079	Status *string `locationName:"status" type:"string" enum:"RobotStatus"`
10080
10081	// The list of all tags added to the specified robot.
10082	Tags map[string]*string `locationName:"tags" type:"map"`
10083}
10084
10085// String returns the string representation
10086func (s DescribeRobotOutput) String() string {
10087	return awsutil.Prettify(s)
10088}
10089
10090// GoString returns the string representation
10091func (s DescribeRobotOutput) GoString() string {
10092	return s.String()
10093}
10094
10095// SetArchitecture sets the Architecture field's value.
10096func (s *DescribeRobotOutput) SetArchitecture(v string) *DescribeRobotOutput {
10097	s.Architecture = &v
10098	return s
10099}
10100
10101// SetArn sets the Arn field's value.
10102func (s *DescribeRobotOutput) SetArn(v string) *DescribeRobotOutput {
10103	s.Arn = &v
10104	return s
10105}
10106
10107// SetCreatedAt sets the CreatedAt field's value.
10108func (s *DescribeRobotOutput) SetCreatedAt(v time.Time) *DescribeRobotOutput {
10109	s.CreatedAt = &v
10110	return s
10111}
10112
10113// SetFleetArn sets the FleetArn field's value.
10114func (s *DescribeRobotOutput) SetFleetArn(v string) *DescribeRobotOutput {
10115	s.FleetArn = &v
10116	return s
10117}
10118
10119// SetGreengrassGroupId sets the GreengrassGroupId field's value.
10120func (s *DescribeRobotOutput) SetGreengrassGroupId(v string) *DescribeRobotOutput {
10121	s.GreengrassGroupId = &v
10122	return s
10123}
10124
10125// SetLastDeploymentJob sets the LastDeploymentJob field's value.
10126func (s *DescribeRobotOutput) SetLastDeploymentJob(v string) *DescribeRobotOutput {
10127	s.LastDeploymentJob = &v
10128	return s
10129}
10130
10131// SetLastDeploymentTime sets the LastDeploymentTime field's value.
10132func (s *DescribeRobotOutput) SetLastDeploymentTime(v time.Time) *DescribeRobotOutput {
10133	s.LastDeploymentTime = &v
10134	return s
10135}
10136
10137// SetName sets the Name field's value.
10138func (s *DescribeRobotOutput) SetName(v string) *DescribeRobotOutput {
10139	s.Name = &v
10140	return s
10141}
10142
10143// SetStatus sets the Status field's value.
10144func (s *DescribeRobotOutput) SetStatus(v string) *DescribeRobotOutput {
10145	s.Status = &v
10146	return s
10147}
10148
10149// SetTags sets the Tags field's value.
10150func (s *DescribeRobotOutput) SetTags(v map[string]*string) *DescribeRobotOutput {
10151	s.Tags = v
10152	return s
10153}
10154
10155type DescribeSimulationApplicationInput struct {
10156	_ struct{} `type:"structure"`
10157
10158	// The application information for the simulation application.
10159	//
10160	// Application is a required field
10161	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
10162
10163	// The version of the simulation application to describe.
10164	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
10165}
10166
10167// String returns the string representation
10168func (s DescribeSimulationApplicationInput) String() string {
10169	return awsutil.Prettify(s)
10170}
10171
10172// GoString returns the string representation
10173func (s DescribeSimulationApplicationInput) GoString() string {
10174	return s.String()
10175}
10176
10177// Validate inspects the fields of the type to determine if they are valid.
10178func (s *DescribeSimulationApplicationInput) Validate() error {
10179	invalidParams := request.ErrInvalidParams{Context: "DescribeSimulationApplicationInput"}
10180	if s.Application == nil {
10181		invalidParams.Add(request.NewErrParamRequired("Application"))
10182	}
10183	if s.Application != nil && len(*s.Application) < 1 {
10184		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
10185	}
10186	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
10187		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
10188	}
10189
10190	if invalidParams.Len() > 0 {
10191		return invalidParams
10192	}
10193	return nil
10194}
10195
10196// SetApplication sets the Application field's value.
10197func (s *DescribeSimulationApplicationInput) SetApplication(v string) *DescribeSimulationApplicationInput {
10198	s.Application = &v
10199	return s
10200}
10201
10202// SetApplicationVersion sets the ApplicationVersion field's value.
10203func (s *DescribeSimulationApplicationInput) SetApplicationVersion(v string) *DescribeSimulationApplicationInput {
10204	s.ApplicationVersion = &v
10205	return s
10206}
10207
10208type DescribeSimulationApplicationOutput struct {
10209	_ struct{} `type:"structure"`
10210
10211	// The Amazon Resource Name (ARN) of the robot simulation application.
10212	Arn *string `locationName:"arn" min:"1" type:"string"`
10213
10214	// The time, in milliseconds since the epoch, when the simulation application
10215	// was last updated.
10216	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
10217
10218	// The name of the simulation application.
10219	Name *string `locationName:"name" min:"1" type:"string"`
10220
10221	// The rendering engine for the simulation application.
10222	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
10223
10224	// The revision id of the simulation application.
10225	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
10226
10227	// Information about the robot software suite (ROS distribution).
10228	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
10229
10230	// The simulation software suite used by the simulation application.
10231	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
10232
10233	// The sources of the simulation application.
10234	Sources []*Source `locationName:"sources" type:"list"`
10235
10236	// The list of all tags added to the specified simulation application.
10237	Tags map[string]*string `locationName:"tags" type:"map"`
10238
10239	// The version of the simulation application.
10240	Version *string `locationName:"version" min:"1" type:"string"`
10241}
10242
10243// String returns the string representation
10244func (s DescribeSimulationApplicationOutput) String() string {
10245	return awsutil.Prettify(s)
10246}
10247
10248// GoString returns the string representation
10249func (s DescribeSimulationApplicationOutput) GoString() string {
10250	return s.String()
10251}
10252
10253// SetArn sets the Arn field's value.
10254func (s *DescribeSimulationApplicationOutput) SetArn(v string) *DescribeSimulationApplicationOutput {
10255	s.Arn = &v
10256	return s
10257}
10258
10259// SetLastUpdatedAt sets the LastUpdatedAt field's value.
10260func (s *DescribeSimulationApplicationOutput) SetLastUpdatedAt(v time.Time) *DescribeSimulationApplicationOutput {
10261	s.LastUpdatedAt = &v
10262	return s
10263}
10264
10265// SetName sets the Name field's value.
10266func (s *DescribeSimulationApplicationOutput) SetName(v string) *DescribeSimulationApplicationOutput {
10267	s.Name = &v
10268	return s
10269}
10270
10271// SetRenderingEngine sets the RenderingEngine field's value.
10272func (s *DescribeSimulationApplicationOutput) SetRenderingEngine(v *RenderingEngine) *DescribeSimulationApplicationOutput {
10273	s.RenderingEngine = v
10274	return s
10275}
10276
10277// SetRevisionId sets the RevisionId field's value.
10278func (s *DescribeSimulationApplicationOutput) SetRevisionId(v string) *DescribeSimulationApplicationOutput {
10279	s.RevisionId = &v
10280	return s
10281}
10282
10283// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
10284func (s *DescribeSimulationApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *DescribeSimulationApplicationOutput {
10285	s.RobotSoftwareSuite = v
10286	return s
10287}
10288
10289// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
10290func (s *DescribeSimulationApplicationOutput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *DescribeSimulationApplicationOutput {
10291	s.SimulationSoftwareSuite = v
10292	return s
10293}
10294
10295// SetSources sets the Sources field's value.
10296func (s *DescribeSimulationApplicationOutput) SetSources(v []*Source) *DescribeSimulationApplicationOutput {
10297	s.Sources = v
10298	return s
10299}
10300
10301// SetTags sets the Tags field's value.
10302func (s *DescribeSimulationApplicationOutput) SetTags(v map[string]*string) *DescribeSimulationApplicationOutput {
10303	s.Tags = v
10304	return s
10305}
10306
10307// SetVersion sets the Version field's value.
10308func (s *DescribeSimulationApplicationOutput) SetVersion(v string) *DescribeSimulationApplicationOutput {
10309	s.Version = &v
10310	return s
10311}
10312
10313type DescribeSimulationJobBatchInput struct {
10314	_ struct{} `type:"structure"`
10315
10316	// The id of the batch to describe.
10317	//
10318	// Batch is a required field
10319	Batch *string `locationName:"batch" min:"1" type:"string" required:"true"`
10320}
10321
10322// String returns the string representation
10323func (s DescribeSimulationJobBatchInput) String() string {
10324	return awsutil.Prettify(s)
10325}
10326
10327// GoString returns the string representation
10328func (s DescribeSimulationJobBatchInput) GoString() string {
10329	return s.String()
10330}
10331
10332// Validate inspects the fields of the type to determine if they are valid.
10333func (s *DescribeSimulationJobBatchInput) Validate() error {
10334	invalidParams := request.ErrInvalidParams{Context: "DescribeSimulationJobBatchInput"}
10335	if s.Batch == nil {
10336		invalidParams.Add(request.NewErrParamRequired("Batch"))
10337	}
10338	if s.Batch != nil && len(*s.Batch) < 1 {
10339		invalidParams.Add(request.NewErrParamMinLen("Batch", 1))
10340	}
10341
10342	if invalidParams.Len() > 0 {
10343		return invalidParams
10344	}
10345	return nil
10346}
10347
10348// SetBatch sets the Batch field's value.
10349func (s *DescribeSimulationJobBatchInput) SetBatch(v string) *DescribeSimulationJobBatchInput {
10350	s.Batch = &v
10351	return s
10352}
10353
10354type DescribeSimulationJobBatchOutput struct {
10355	_ struct{} `type:"structure"`
10356
10357	// The Amazon Resource Name (ARN) of the batch.
10358	Arn *string `locationName:"arn" min:"1" type:"string"`
10359
10360	// The batch policy.
10361	BatchPolicy *BatchPolicy `locationName:"batchPolicy" type:"structure"`
10362
10363	// Unique, case-sensitive identifier that you provide to ensure the idempotency
10364	// of the request.
10365	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
10366
10367	// The time, in milliseconds since the epoch, when the simulation job batch
10368	// was created.
10369	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
10370
10371	// A list of created simulation job summaries.
10372	CreatedRequests []*SimulationJobSummary `locationName:"createdRequests" type:"list"`
10373
10374	// A list of failed create simulation job requests. The request failed to be
10375	// created into a simulation job. Failed requests do not have a simulation job
10376	// ID.
10377	FailedRequests []*FailedCreateSimulationJobRequest `locationName:"failedRequests" type:"list"`
10378
10379	// The failure code of the simulation job batch.
10380	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobBatchErrorCode"`
10381
10382	// The reason the simulation job batch failed.
10383	FailureReason *string `locationName:"failureReason" type:"string"`
10384
10385	// The time, in milliseconds since the epoch, when the simulation job batch
10386	// was last updated.
10387	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
10388
10389	// A list of pending simulation job requests. These requests have not yet been
10390	// created into simulation jobs.
10391	PendingRequests []*SimulationJobRequest `locationName:"pendingRequests" min:"1" type:"list"`
10392
10393	// The status of the batch.
10394	//
10395	// Pending
10396	//
10397	// The simulation job batch request is pending.
10398	//
10399	// InProgress
10400	//
10401	// The simulation job batch is in progress.
10402	//
10403	// Failed
10404	//
10405	// The simulation job batch failed. One or more simulation job requests could
10406	// not be completed due to an internal failure (like InternalServiceError).
10407	// See failureCode and failureReason for more information.
10408	//
10409	// Completed
10410	//
10411	// The simulation batch job completed. A batch is complete when (1) there are
10412	// no pending simulation job requests in the batch and none of the failed simulation
10413	// job requests are due to InternalServiceError and (2) when all created simulation
10414	// jobs have reached a terminal state (for example, Completed or Failed).
10415	//
10416	// Canceled
10417	//
10418	// The simulation batch job was cancelled.
10419	//
10420	// Canceling
10421	//
10422	// The simulation batch job is being cancelled.
10423	//
10424	// Completing
10425	//
10426	// The simulation batch job is completing.
10427	//
10428	// TimingOut
10429	//
10430	// The simulation job batch is timing out.
10431	//
10432	// If a batch timing out, and there are pending requests that were failing due
10433	// to an internal failure (like InternalServiceError), the batch status will
10434	// be Failed. If there are no such failing request, the batch status will be
10435	// TimedOut.
10436	//
10437	// TimedOut
10438	//
10439	// The simulation batch job timed out.
10440	Status *string `locationName:"status" type:"string" enum:"SimulationJobBatchStatus"`
10441
10442	// A map that contains tag keys and tag values that are attached to the simulation
10443	// job batch.
10444	Tags map[string]*string `locationName:"tags" type:"map"`
10445}
10446
10447// String returns the string representation
10448func (s DescribeSimulationJobBatchOutput) String() string {
10449	return awsutil.Prettify(s)
10450}
10451
10452// GoString returns the string representation
10453func (s DescribeSimulationJobBatchOutput) GoString() string {
10454	return s.String()
10455}
10456
10457// SetArn sets the Arn field's value.
10458func (s *DescribeSimulationJobBatchOutput) SetArn(v string) *DescribeSimulationJobBatchOutput {
10459	s.Arn = &v
10460	return s
10461}
10462
10463// SetBatchPolicy sets the BatchPolicy field's value.
10464func (s *DescribeSimulationJobBatchOutput) SetBatchPolicy(v *BatchPolicy) *DescribeSimulationJobBatchOutput {
10465	s.BatchPolicy = v
10466	return s
10467}
10468
10469// SetClientRequestToken sets the ClientRequestToken field's value.
10470func (s *DescribeSimulationJobBatchOutput) SetClientRequestToken(v string) *DescribeSimulationJobBatchOutput {
10471	s.ClientRequestToken = &v
10472	return s
10473}
10474
10475// SetCreatedAt sets the CreatedAt field's value.
10476func (s *DescribeSimulationJobBatchOutput) SetCreatedAt(v time.Time) *DescribeSimulationJobBatchOutput {
10477	s.CreatedAt = &v
10478	return s
10479}
10480
10481// SetCreatedRequests sets the CreatedRequests field's value.
10482func (s *DescribeSimulationJobBatchOutput) SetCreatedRequests(v []*SimulationJobSummary) *DescribeSimulationJobBatchOutput {
10483	s.CreatedRequests = v
10484	return s
10485}
10486
10487// SetFailedRequests sets the FailedRequests field's value.
10488func (s *DescribeSimulationJobBatchOutput) SetFailedRequests(v []*FailedCreateSimulationJobRequest) *DescribeSimulationJobBatchOutput {
10489	s.FailedRequests = v
10490	return s
10491}
10492
10493// SetFailureCode sets the FailureCode field's value.
10494func (s *DescribeSimulationJobBatchOutput) SetFailureCode(v string) *DescribeSimulationJobBatchOutput {
10495	s.FailureCode = &v
10496	return s
10497}
10498
10499// SetFailureReason sets the FailureReason field's value.
10500func (s *DescribeSimulationJobBatchOutput) SetFailureReason(v string) *DescribeSimulationJobBatchOutput {
10501	s.FailureReason = &v
10502	return s
10503}
10504
10505// SetLastUpdatedAt sets the LastUpdatedAt field's value.
10506func (s *DescribeSimulationJobBatchOutput) SetLastUpdatedAt(v time.Time) *DescribeSimulationJobBatchOutput {
10507	s.LastUpdatedAt = &v
10508	return s
10509}
10510
10511// SetPendingRequests sets the PendingRequests field's value.
10512func (s *DescribeSimulationJobBatchOutput) SetPendingRequests(v []*SimulationJobRequest) *DescribeSimulationJobBatchOutput {
10513	s.PendingRequests = v
10514	return s
10515}
10516
10517// SetStatus sets the Status field's value.
10518func (s *DescribeSimulationJobBatchOutput) SetStatus(v string) *DescribeSimulationJobBatchOutput {
10519	s.Status = &v
10520	return s
10521}
10522
10523// SetTags sets the Tags field's value.
10524func (s *DescribeSimulationJobBatchOutput) SetTags(v map[string]*string) *DescribeSimulationJobBatchOutput {
10525	s.Tags = v
10526	return s
10527}
10528
10529type DescribeSimulationJobInput struct {
10530	_ struct{} `type:"structure"`
10531
10532	// The Amazon Resource Name (ARN) of the simulation job to be described.
10533	//
10534	// Job is a required field
10535	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
10536}
10537
10538// String returns the string representation
10539func (s DescribeSimulationJobInput) String() string {
10540	return awsutil.Prettify(s)
10541}
10542
10543// GoString returns the string representation
10544func (s DescribeSimulationJobInput) GoString() string {
10545	return s.String()
10546}
10547
10548// Validate inspects the fields of the type to determine if they are valid.
10549func (s *DescribeSimulationJobInput) Validate() error {
10550	invalidParams := request.ErrInvalidParams{Context: "DescribeSimulationJobInput"}
10551	if s.Job == nil {
10552		invalidParams.Add(request.NewErrParamRequired("Job"))
10553	}
10554	if s.Job != nil && len(*s.Job) < 1 {
10555		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
10556	}
10557
10558	if invalidParams.Len() > 0 {
10559		return invalidParams
10560	}
10561	return nil
10562}
10563
10564// SetJob sets the Job field's value.
10565func (s *DescribeSimulationJobInput) SetJob(v string) *DescribeSimulationJobInput {
10566	s.Job = &v
10567	return s
10568}
10569
10570type DescribeSimulationJobOutput struct {
10571	_ struct{} `type:"structure"`
10572
10573	// The Amazon Resource Name (ARN) of the simulation job.
10574	Arn *string `locationName:"arn" min:"1" type:"string"`
10575
10576	// Unique, case-sensitive identifier that you provide to ensure the idempotency
10577	// of the request.
10578	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
10579
10580	// Compute information for the simulation job.
10581	Compute *ComputeResponse `locationName:"compute" type:"structure"`
10582
10583	// The data sources for the simulation job.
10584	DataSources []*DataSource `locationName:"dataSources" type:"list"`
10585
10586	// The failure behavior for the simulation job.
10587	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
10588
10589	// The failure code of the simulation job if it failed:
10590	//
10591	// InternalServiceError
10592	//
10593	// Internal service error.
10594	//
10595	// RobotApplicationCrash
10596	//
10597	// Robot application exited abnormally.
10598	//
10599	// SimulationApplicationCrash
10600	//
10601	// Simulation application exited abnormally.
10602	//
10603	// BadPermissionsRobotApplication
10604	//
10605	// Robot application bundle could not be downloaded.
10606	//
10607	// BadPermissionsSimulationApplication
10608	//
10609	// Simulation application bundle could not be downloaded.
10610	//
10611	// BadPermissionsS3Output
10612	//
10613	// Unable to publish outputs to customer-provided S3 bucket.
10614	//
10615	// BadPermissionsCloudwatchLogs
10616	//
10617	// Unable to publish logs to customer-provided CloudWatch Logs resource.
10618	//
10619	// SubnetIpLimitExceeded
10620	//
10621	// Subnet IP limit exceeded.
10622	//
10623	// ENILimitExceeded
10624	//
10625	// ENI limit exceeded.
10626	//
10627	// BadPermissionsUserCredentials
10628	//
10629	// Unable to use the Role provided.
10630	//
10631	// InvalidBundleRobotApplication
10632	//
10633	// Robot bundle cannot be extracted (invalid format, bundling error, or other
10634	// issue).
10635	//
10636	// InvalidBundleSimulationApplication
10637	//
10638	// Simulation bundle cannot be extracted (invalid format, bundling error, or
10639	// other issue).
10640	//
10641	// RobotApplicationVersionMismatchedEtag
10642	//
10643	// Etag for RobotApplication does not match value during version creation.
10644	//
10645	// SimulationApplicationVersionMismatchedEtag
10646	//
10647	// Etag for SimulationApplication does not match value during version creation.
10648	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
10649
10650	// Details about why the simulation job failed. For more information about troubleshooting,
10651	// see Troubleshooting (https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting.html).
10652	FailureReason *string `locationName:"failureReason" type:"string"`
10653
10654	// The IAM role that allows the simulation instance to call the AWS APIs that
10655	// are specified in its associated policies on your behalf.
10656	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
10657
10658	// The time, in milliseconds since the epoch, when the simulation job was last
10659	// started.
10660	LastStartedAt *time.Time `locationName:"lastStartedAt" type:"timestamp"`
10661
10662	// The time, in milliseconds since the epoch, when the simulation job was last
10663	// updated.
10664	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
10665
10666	// The logging configuration.
10667	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
10668
10669	// The maximum job duration in seconds. The value must be 8 days (691,200 seconds)
10670	// or less.
10671	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long"`
10672
10673	// The name of the simulation job.
10674	Name *string `locationName:"name" min:"1" type:"string"`
10675
10676	// The network interface information for the simulation job.
10677	NetworkInterface *NetworkInterface `locationName:"networkInterface" type:"structure"`
10678
10679	// Location for output files generated by the simulation job.
10680	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
10681
10682	// A list of robot applications.
10683	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
10684
10685	// A list of simulation applications.
10686	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
10687
10688	// The simulation job execution duration in milliseconds.
10689	SimulationTimeMillis *int64 `locationName:"simulationTimeMillis" type:"long"`
10690
10691	// The status of the simulation job.
10692	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
10693
10694	// The list of all tags added to the specified simulation job.
10695	Tags map[string]*string `locationName:"tags" type:"map"`
10696
10697	// The VPC configuration.
10698	VpcConfig *VPCConfigResponse `locationName:"vpcConfig" type:"structure"`
10699}
10700
10701// String returns the string representation
10702func (s DescribeSimulationJobOutput) String() string {
10703	return awsutil.Prettify(s)
10704}
10705
10706// GoString returns the string representation
10707func (s DescribeSimulationJobOutput) GoString() string {
10708	return s.String()
10709}
10710
10711// SetArn sets the Arn field's value.
10712func (s *DescribeSimulationJobOutput) SetArn(v string) *DescribeSimulationJobOutput {
10713	s.Arn = &v
10714	return s
10715}
10716
10717// SetClientRequestToken sets the ClientRequestToken field's value.
10718func (s *DescribeSimulationJobOutput) SetClientRequestToken(v string) *DescribeSimulationJobOutput {
10719	s.ClientRequestToken = &v
10720	return s
10721}
10722
10723// SetCompute sets the Compute field's value.
10724func (s *DescribeSimulationJobOutput) SetCompute(v *ComputeResponse) *DescribeSimulationJobOutput {
10725	s.Compute = v
10726	return s
10727}
10728
10729// SetDataSources sets the DataSources field's value.
10730func (s *DescribeSimulationJobOutput) SetDataSources(v []*DataSource) *DescribeSimulationJobOutput {
10731	s.DataSources = v
10732	return s
10733}
10734
10735// SetFailureBehavior sets the FailureBehavior field's value.
10736func (s *DescribeSimulationJobOutput) SetFailureBehavior(v string) *DescribeSimulationJobOutput {
10737	s.FailureBehavior = &v
10738	return s
10739}
10740
10741// SetFailureCode sets the FailureCode field's value.
10742func (s *DescribeSimulationJobOutput) SetFailureCode(v string) *DescribeSimulationJobOutput {
10743	s.FailureCode = &v
10744	return s
10745}
10746
10747// SetFailureReason sets the FailureReason field's value.
10748func (s *DescribeSimulationJobOutput) SetFailureReason(v string) *DescribeSimulationJobOutput {
10749	s.FailureReason = &v
10750	return s
10751}
10752
10753// SetIamRole sets the IamRole field's value.
10754func (s *DescribeSimulationJobOutput) SetIamRole(v string) *DescribeSimulationJobOutput {
10755	s.IamRole = &v
10756	return s
10757}
10758
10759// SetLastStartedAt sets the LastStartedAt field's value.
10760func (s *DescribeSimulationJobOutput) SetLastStartedAt(v time.Time) *DescribeSimulationJobOutput {
10761	s.LastStartedAt = &v
10762	return s
10763}
10764
10765// SetLastUpdatedAt sets the LastUpdatedAt field's value.
10766func (s *DescribeSimulationJobOutput) SetLastUpdatedAt(v time.Time) *DescribeSimulationJobOutput {
10767	s.LastUpdatedAt = &v
10768	return s
10769}
10770
10771// SetLoggingConfig sets the LoggingConfig field's value.
10772func (s *DescribeSimulationJobOutput) SetLoggingConfig(v *LoggingConfig) *DescribeSimulationJobOutput {
10773	s.LoggingConfig = v
10774	return s
10775}
10776
10777// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
10778func (s *DescribeSimulationJobOutput) SetMaxJobDurationInSeconds(v int64) *DescribeSimulationJobOutput {
10779	s.MaxJobDurationInSeconds = &v
10780	return s
10781}
10782
10783// SetName sets the Name field's value.
10784func (s *DescribeSimulationJobOutput) SetName(v string) *DescribeSimulationJobOutput {
10785	s.Name = &v
10786	return s
10787}
10788
10789// SetNetworkInterface sets the NetworkInterface field's value.
10790func (s *DescribeSimulationJobOutput) SetNetworkInterface(v *NetworkInterface) *DescribeSimulationJobOutput {
10791	s.NetworkInterface = v
10792	return s
10793}
10794
10795// SetOutputLocation sets the OutputLocation field's value.
10796func (s *DescribeSimulationJobOutput) SetOutputLocation(v *OutputLocation) *DescribeSimulationJobOutput {
10797	s.OutputLocation = v
10798	return s
10799}
10800
10801// SetRobotApplications sets the RobotApplications field's value.
10802func (s *DescribeSimulationJobOutput) SetRobotApplications(v []*RobotApplicationConfig) *DescribeSimulationJobOutput {
10803	s.RobotApplications = v
10804	return s
10805}
10806
10807// SetSimulationApplications sets the SimulationApplications field's value.
10808func (s *DescribeSimulationJobOutput) SetSimulationApplications(v []*SimulationApplicationConfig) *DescribeSimulationJobOutput {
10809	s.SimulationApplications = v
10810	return s
10811}
10812
10813// SetSimulationTimeMillis sets the SimulationTimeMillis field's value.
10814func (s *DescribeSimulationJobOutput) SetSimulationTimeMillis(v int64) *DescribeSimulationJobOutput {
10815	s.SimulationTimeMillis = &v
10816	return s
10817}
10818
10819// SetStatus sets the Status field's value.
10820func (s *DescribeSimulationJobOutput) SetStatus(v string) *DescribeSimulationJobOutput {
10821	s.Status = &v
10822	return s
10823}
10824
10825// SetTags sets the Tags field's value.
10826func (s *DescribeSimulationJobOutput) SetTags(v map[string]*string) *DescribeSimulationJobOutput {
10827	s.Tags = v
10828	return s
10829}
10830
10831// SetVpcConfig sets the VpcConfig field's value.
10832func (s *DescribeSimulationJobOutput) SetVpcConfig(v *VPCConfigResponse) *DescribeSimulationJobOutput {
10833	s.VpcConfig = v
10834	return s
10835}
10836
10837type DescribeWorldExportJobInput struct {
10838	_ struct{} `type:"structure"`
10839
10840	// The Amazon Resource Name (arn) of the world export job to describe.
10841	//
10842	// Job is a required field
10843	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
10844}
10845
10846// String returns the string representation
10847func (s DescribeWorldExportJobInput) String() string {
10848	return awsutil.Prettify(s)
10849}
10850
10851// GoString returns the string representation
10852func (s DescribeWorldExportJobInput) GoString() string {
10853	return s.String()
10854}
10855
10856// Validate inspects the fields of the type to determine if they are valid.
10857func (s *DescribeWorldExportJobInput) Validate() error {
10858	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldExportJobInput"}
10859	if s.Job == nil {
10860		invalidParams.Add(request.NewErrParamRequired("Job"))
10861	}
10862	if s.Job != nil && len(*s.Job) < 1 {
10863		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
10864	}
10865
10866	if invalidParams.Len() > 0 {
10867		return invalidParams
10868	}
10869	return nil
10870}
10871
10872// SetJob sets the Job field's value.
10873func (s *DescribeWorldExportJobInput) SetJob(v string) *DescribeWorldExportJobInput {
10874	s.Job = &v
10875	return s
10876}
10877
10878type DescribeWorldExportJobOutput struct {
10879	_ struct{} `type:"structure"`
10880
10881	// The Amazon Resource Name (ARN) of the world export job.
10882	Arn *string `locationName:"arn" min:"1" type:"string"`
10883
10884	// Unique, case-sensitive identifier that you provide to ensure the idempotency
10885	// of the request.
10886	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
10887
10888	// The time, in milliseconds since the epoch, when the world export job was
10889	// created.
10890	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
10891
10892	// The failure code of the world export job if it failed:
10893	//
10894	// InternalServiceError
10895	//
10896	// Internal service error.
10897	//
10898	// LimitExceeded
10899	//
10900	// The requested resource exceeds the maximum number allowed, or the number
10901	// of concurrent stream requests exceeds the maximum number allowed.
10902	//
10903	// ResourceNotFound
10904	//
10905	// The specified resource could not be found.
10906	//
10907	// RequestThrottled
10908	//
10909	// The request was throttled.
10910	//
10911	// InvalidInput
10912	//
10913	// An input parameter in the request is not valid.
10914	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldExportJobErrorCode"`
10915
10916	// The reason why the world export job failed.
10917	FailureReason *string `locationName:"failureReason" type:"string"`
10918
10919	// The IAM role that the world export process uses to access the Amazon S3 bucket
10920	// and put the export.
10921	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
10922
10923	// The output location.
10924	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
10925
10926	// The status of the world export job.
10927	//
10928	// Pending
10929	//
10930	// The world export job request is pending.
10931	//
10932	// Running
10933	//
10934	// The world export job is running.
10935	//
10936	// Completed
10937	//
10938	// The world export job completed.
10939	//
10940	// Failed
10941	//
10942	// The world export job failed. See failureCode and failureReason for more information.
10943	//
10944	// Canceled
10945	//
10946	// The world export job was cancelled.
10947	//
10948	// Canceling
10949	//
10950	// The world export job is being cancelled.
10951	Status *string `locationName:"status" type:"string" enum:"WorldExportJobStatus"`
10952
10953	// A map that contains tag keys and tag values that are attached to the world
10954	// export job.
10955	Tags map[string]*string `locationName:"tags" type:"map"`
10956
10957	// A list of Amazon Resource Names (arns) that correspond to worlds to be exported.
10958	Worlds []*string `locationName:"worlds" min:"1" type:"list"`
10959}
10960
10961// String returns the string representation
10962func (s DescribeWorldExportJobOutput) String() string {
10963	return awsutil.Prettify(s)
10964}
10965
10966// GoString returns the string representation
10967func (s DescribeWorldExportJobOutput) GoString() string {
10968	return s.String()
10969}
10970
10971// SetArn sets the Arn field's value.
10972func (s *DescribeWorldExportJobOutput) SetArn(v string) *DescribeWorldExportJobOutput {
10973	s.Arn = &v
10974	return s
10975}
10976
10977// SetClientRequestToken sets the ClientRequestToken field's value.
10978func (s *DescribeWorldExportJobOutput) SetClientRequestToken(v string) *DescribeWorldExportJobOutput {
10979	s.ClientRequestToken = &v
10980	return s
10981}
10982
10983// SetCreatedAt sets the CreatedAt field's value.
10984func (s *DescribeWorldExportJobOutput) SetCreatedAt(v time.Time) *DescribeWorldExportJobOutput {
10985	s.CreatedAt = &v
10986	return s
10987}
10988
10989// SetFailureCode sets the FailureCode field's value.
10990func (s *DescribeWorldExportJobOutput) SetFailureCode(v string) *DescribeWorldExportJobOutput {
10991	s.FailureCode = &v
10992	return s
10993}
10994
10995// SetFailureReason sets the FailureReason field's value.
10996func (s *DescribeWorldExportJobOutput) SetFailureReason(v string) *DescribeWorldExportJobOutput {
10997	s.FailureReason = &v
10998	return s
10999}
11000
11001// SetIamRole sets the IamRole field's value.
11002func (s *DescribeWorldExportJobOutput) SetIamRole(v string) *DescribeWorldExportJobOutput {
11003	s.IamRole = &v
11004	return s
11005}
11006
11007// SetOutputLocation sets the OutputLocation field's value.
11008func (s *DescribeWorldExportJobOutput) SetOutputLocation(v *OutputLocation) *DescribeWorldExportJobOutput {
11009	s.OutputLocation = v
11010	return s
11011}
11012
11013// SetStatus sets the Status field's value.
11014func (s *DescribeWorldExportJobOutput) SetStatus(v string) *DescribeWorldExportJobOutput {
11015	s.Status = &v
11016	return s
11017}
11018
11019// SetTags sets the Tags field's value.
11020func (s *DescribeWorldExportJobOutput) SetTags(v map[string]*string) *DescribeWorldExportJobOutput {
11021	s.Tags = v
11022	return s
11023}
11024
11025// SetWorlds sets the Worlds field's value.
11026func (s *DescribeWorldExportJobOutput) SetWorlds(v []*string) *DescribeWorldExportJobOutput {
11027	s.Worlds = v
11028	return s
11029}
11030
11031type DescribeWorldGenerationJobInput struct {
11032	_ struct{} `type:"structure"`
11033
11034	// The Amazon Resource Name (arn) of the world generation job to describe.
11035	//
11036	// Job is a required field
11037	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
11038}
11039
11040// String returns the string representation
11041func (s DescribeWorldGenerationJobInput) String() string {
11042	return awsutil.Prettify(s)
11043}
11044
11045// GoString returns the string representation
11046func (s DescribeWorldGenerationJobInput) GoString() string {
11047	return s.String()
11048}
11049
11050// Validate inspects the fields of the type to determine if they are valid.
11051func (s *DescribeWorldGenerationJobInput) Validate() error {
11052	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldGenerationJobInput"}
11053	if s.Job == nil {
11054		invalidParams.Add(request.NewErrParamRequired("Job"))
11055	}
11056	if s.Job != nil && len(*s.Job) < 1 {
11057		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
11058	}
11059
11060	if invalidParams.Len() > 0 {
11061		return invalidParams
11062	}
11063	return nil
11064}
11065
11066// SetJob sets the Job field's value.
11067func (s *DescribeWorldGenerationJobInput) SetJob(v string) *DescribeWorldGenerationJobInput {
11068	s.Job = &v
11069	return s
11070}
11071
11072type DescribeWorldGenerationJobOutput struct {
11073	_ struct{} `type:"structure"`
11074
11075	// The Amazon Resource Name (ARN) of the world generation job.
11076	Arn *string `locationName:"arn" min:"1" type:"string"`
11077
11078	// Unique, case-sensitive identifier that you provide to ensure the idempotency
11079	// of the request.
11080	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
11081
11082	// The time, in milliseconds since the epoch, when the world generation job
11083	// was created.
11084	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11085
11086	// The failure code of the world generation job if it failed:
11087	//
11088	// InternalServiceError
11089	//
11090	// Internal service error.
11091	//
11092	// LimitExceeded
11093	//
11094	// The requested resource exceeds the maximum number allowed, or the number
11095	// of concurrent stream requests exceeds the maximum number allowed.
11096	//
11097	// ResourceNotFound
11098	//
11099	// The specified resource could not be found.
11100	//
11101	// RequestThrottled
11102	//
11103	// The request was throttled.
11104	//
11105	// InvalidInput
11106	//
11107	// An input parameter in the request is not valid.
11108	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldGenerationJobErrorCode"`
11109
11110	// The reason why the world generation job failed.
11111	FailureReason *string `locationName:"failureReason" type:"string"`
11112
11113	// Summary information about finished worlds.
11114	FinishedWorldsSummary *FinishedWorldsSummary `locationName:"finishedWorldsSummary" type:"structure"`
11115
11116	// The status of the world generation job:
11117	//
11118	// Pending
11119	//
11120	// The world generation job request is pending.
11121	//
11122	// Running
11123	//
11124	// The world generation job is running.
11125	//
11126	// Completed
11127	//
11128	// The world generation job completed.
11129	//
11130	// Failed
11131	//
11132	// The world generation job failed. See failureCode for more information.
11133	//
11134	// PartialFailed
11135	//
11136	// Some worlds did not generate.
11137	//
11138	// Canceled
11139	//
11140	// The world generation job was cancelled.
11141	//
11142	// Canceling
11143	//
11144	// The world generation job is being cancelled.
11145	Status *string `locationName:"status" type:"string" enum:"WorldGenerationJobStatus"`
11146
11147	// A map that contains tag keys and tag values that are attached to the world
11148	// generation job.
11149	Tags map[string]*string `locationName:"tags" type:"map"`
11150
11151	// The Amazon Resource Name (arn) of the world template.
11152	Template *string `locationName:"template" min:"1" type:"string"`
11153
11154	// Information about the world count.
11155	WorldCount *WorldCount `locationName:"worldCount" type:"structure"`
11156
11157	// A map that contains tag keys and tag values that are attached to the generated
11158	// worlds.
11159	WorldTags map[string]*string `locationName:"worldTags" type:"map"`
11160}
11161
11162// String returns the string representation
11163func (s DescribeWorldGenerationJobOutput) String() string {
11164	return awsutil.Prettify(s)
11165}
11166
11167// GoString returns the string representation
11168func (s DescribeWorldGenerationJobOutput) GoString() string {
11169	return s.String()
11170}
11171
11172// SetArn sets the Arn field's value.
11173func (s *DescribeWorldGenerationJobOutput) SetArn(v string) *DescribeWorldGenerationJobOutput {
11174	s.Arn = &v
11175	return s
11176}
11177
11178// SetClientRequestToken sets the ClientRequestToken field's value.
11179func (s *DescribeWorldGenerationJobOutput) SetClientRequestToken(v string) *DescribeWorldGenerationJobOutput {
11180	s.ClientRequestToken = &v
11181	return s
11182}
11183
11184// SetCreatedAt sets the CreatedAt field's value.
11185func (s *DescribeWorldGenerationJobOutput) SetCreatedAt(v time.Time) *DescribeWorldGenerationJobOutput {
11186	s.CreatedAt = &v
11187	return s
11188}
11189
11190// SetFailureCode sets the FailureCode field's value.
11191func (s *DescribeWorldGenerationJobOutput) SetFailureCode(v string) *DescribeWorldGenerationJobOutput {
11192	s.FailureCode = &v
11193	return s
11194}
11195
11196// SetFailureReason sets the FailureReason field's value.
11197func (s *DescribeWorldGenerationJobOutput) SetFailureReason(v string) *DescribeWorldGenerationJobOutput {
11198	s.FailureReason = &v
11199	return s
11200}
11201
11202// SetFinishedWorldsSummary sets the FinishedWorldsSummary field's value.
11203func (s *DescribeWorldGenerationJobOutput) SetFinishedWorldsSummary(v *FinishedWorldsSummary) *DescribeWorldGenerationJobOutput {
11204	s.FinishedWorldsSummary = v
11205	return s
11206}
11207
11208// SetStatus sets the Status field's value.
11209func (s *DescribeWorldGenerationJobOutput) SetStatus(v string) *DescribeWorldGenerationJobOutput {
11210	s.Status = &v
11211	return s
11212}
11213
11214// SetTags sets the Tags field's value.
11215func (s *DescribeWorldGenerationJobOutput) SetTags(v map[string]*string) *DescribeWorldGenerationJobOutput {
11216	s.Tags = v
11217	return s
11218}
11219
11220// SetTemplate sets the Template field's value.
11221func (s *DescribeWorldGenerationJobOutput) SetTemplate(v string) *DescribeWorldGenerationJobOutput {
11222	s.Template = &v
11223	return s
11224}
11225
11226// SetWorldCount sets the WorldCount field's value.
11227func (s *DescribeWorldGenerationJobOutput) SetWorldCount(v *WorldCount) *DescribeWorldGenerationJobOutput {
11228	s.WorldCount = v
11229	return s
11230}
11231
11232// SetWorldTags sets the WorldTags field's value.
11233func (s *DescribeWorldGenerationJobOutput) SetWorldTags(v map[string]*string) *DescribeWorldGenerationJobOutput {
11234	s.WorldTags = v
11235	return s
11236}
11237
11238type DescribeWorldInput struct {
11239	_ struct{} `type:"structure"`
11240
11241	// The Amazon Resource Name (arn) of the world you want to describe.
11242	//
11243	// World is a required field
11244	World *string `locationName:"world" min:"1" type:"string" required:"true"`
11245}
11246
11247// String returns the string representation
11248func (s DescribeWorldInput) String() string {
11249	return awsutil.Prettify(s)
11250}
11251
11252// GoString returns the string representation
11253func (s DescribeWorldInput) GoString() string {
11254	return s.String()
11255}
11256
11257// Validate inspects the fields of the type to determine if they are valid.
11258func (s *DescribeWorldInput) Validate() error {
11259	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldInput"}
11260	if s.World == nil {
11261		invalidParams.Add(request.NewErrParamRequired("World"))
11262	}
11263	if s.World != nil && len(*s.World) < 1 {
11264		invalidParams.Add(request.NewErrParamMinLen("World", 1))
11265	}
11266
11267	if invalidParams.Len() > 0 {
11268		return invalidParams
11269	}
11270	return nil
11271}
11272
11273// SetWorld sets the World field's value.
11274func (s *DescribeWorldInput) SetWorld(v string) *DescribeWorldInput {
11275	s.World = &v
11276	return s
11277}
11278
11279type DescribeWorldOutput struct {
11280	_ struct{} `type:"structure"`
11281
11282	// The Amazon Resource Name (arn) of the world.
11283	Arn *string `locationName:"arn" min:"1" type:"string"`
11284
11285	// The time, in milliseconds since the epoch, when the world was created.
11286	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11287
11288	// The Amazon Resource Name (arn) of the world generation job that generated
11289	// the world.
11290	GenerationJob *string `locationName:"generationJob" min:"1" type:"string"`
11291
11292	// A map that contains tag keys and tag values that are attached to the world.
11293	Tags map[string]*string `locationName:"tags" type:"map"`
11294
11295	// The world template.
11296	Template *string `locationName:"template" min:"1" type:"string"`
11297}
11298
11299// String returns the string representation
11300func (s DescribeWorldOutput) String() string {
11301	return awsutil.Prettify(s)
11302}
11303
11304// GoString returns the string representation
11305func (s DescribeWorldOutput) GoString() string {
11306	return s.String()
11307}
11308
11309// SetArn sets the Arn field's value.
11310func (s *DescribeWorldOutput) SetArn(v string) *DescribeWorldOutput {
11311	s.Arn = &v
11312	return s
11313}
11314
11315// SetCreatedAt sets the CreatedAt field's value.
11316func (s *DescribeWorldOutput) SetCreatedAt(v time.Time) *DescribeWorldOutput {
11317	s.CreatedAt = &v
11318	return s
11319}
11320
11321// SetGenerationJob sets the GenerationJob field's value.
11322func (s *DescribeWorldOutput) SetGenerationJob(v string) *DescribeWorldOutput {
11323	s.GenerationJob = &v
11324	return s
11325}
11326
11327// SetTags sets the Tags field's value.
11328func (s *DescribeWorldOutput) SetTags(v map[string]*string) *DescribeWorldOutput {
11329	s.Tags = v
11330	return s
11331}
11332
11333// SetTemplate sets the Template field's value.
11334func (s *DescribeWorldOutput) SetTemplate(v string) *DescribeWorldOutput {
11335	s.Template = &v
11336	return s
11337}
11338
11339type DescribeWorldTemplateInput struct {
11340	_ struct{} `type:"structure"`
11341
11342	// The Amazon Resource Name (arn) of the world template you want to describe.
11343	//
11344	// Template is a required field
11345	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
11346}
11347
11348// String returns the string representation
11349func (s DescribeWorldTemplateInput) String() string {
11350	return awsutil.Prettify(s)
11351}
11352
11353// GoString returns the string representation
11354func (s DescribeWorldTemplateInput) GoString() string {
11355	return s.String()
11356}
11357
11358// Validate inspects the fields of the type to determine if they are valid.
11359func (s *DescribeWorldTemplateInput) Validate() error {
11360	invalidParams := request.ErrInvalidParams{Context: "DescribeWorldTemplateInput"}
11361	if s.Template == nil {
11362		invalidParams.Add(request.NewErrParamRequired("Template"))
11363	}
11364	if s.Template != nil && len(*s.Template) < 1 {
11365		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
11366	}
11367
11368	if invalidParams.Len() > 0 {
11369		return invalidParams
11370	}
11371	return nil
11372}
11373
11374// SetTemplate sets the Template field's value.
11375func (s *DescribeWorldTemplateInput) SetTemplate(v string) *DescribeWorldTemplateInput {
11376	s.Template = &v
11377	return s
11378}
11379
11380type DescribeWorldTemplateOutput struct {
11381	_ struct{} `type:"structure"`
11382
11383	// The Amazon Resource Name (ARN) of the world template.
11384	Arn *string `locationName:"arn" min:"1" type:"string"`
11385
11386	// Unique, case-sensitive identifier that you provide to ensure the idempotency
11387	// of the request.
11388	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
11389
11390	// The time, in milliseconds since the epoch, when the world template was created.
11391	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11392
11393	// The time, in milliseconds since the epoch, when the world template was last
11394	// updated.
11395	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
11396
11397	// The name of the world template.
11398	Name *string `locationName:"name" type:"string"`
11399
11400	// A map that contains tag keys and tag values that are attached to the world
11401	// template.
11402	Tags map[string]*string `locationName:"tags" type:"map"`
11403}
11404
11405// String returns the string representation
11406func (s DescribeWorldTemplateOutput) String() string {
11407	return awsutil.Prettify(s)
11408}
11409
11410// GoString returns the string representation
11411func (s DescribeWorldTemplateOutput) GoString() string {
11412	return s.String()
11413}
11414
11415// SetArn sets the Arn field's value.
11416func (s *DescribeWorldTemplateOutput) SetArn(v string) *DescribeWorldTemplateOutput {
11417	s.Arn = &v
11418	return s
11419}
11420
11421// SetClientRequestToken sets the ClientRequestToken field's value.
11422func (s *DescribeWorldTemplateOutput) SetClientRequestToken(v string) *DescribeWorldTemplateOutput {
11423	s.ClientRequestToken = &v
11424	return s
11425}
11426
11427// SetCreatedAt sets the CreatedAt field's value.
11428func (s *DescribeWorldTemplateOutput) SetCreatedAt(v time.Time) *DescribeWorldTemplateOutput {
11429	s.CreatedAt = &v
11430	return s
11431}
11432
11433// SetLastUpdatedAt sets the LastUpdatedAt field's value.
11434func (s *DescribeWorldTemplateOutput) SetLastUpdatedAt(v time.Time) *DescribeWorldTemplateOutput {
11435	s.LastUpdatedAt = &v
11436	return s
11437}
11438
11439// SetName sets the Name field's value.
11440func (s *DescribeWorldTemplateOutput) SetName(v string) *DescribeWorldTemplateOutput {
11441	s.Name = &v
11442	return s
11443}
11444
11445// SetTags sets the Tags field's value.
11446func (s *DescribeWorldTemplateOutput) SetTags(v map[string]*string) *DescribeWorldTemplateOutput {
11447	s.Tags = v
11448	return s
11449}
11450
11451// Information about a failed create simulation job request.
11452type FailedCreateSimulationJobRequest struct {
11453	_ struct{} `type:"structure"`
11454
11455	// The time, in milliseconds since the epoch, when the simulation job batch
11456	// failed.
11457	FailedAt *time.Time `locationName:"failedAt" type:"timestamp"`
11458
11459	// The failure code.
11460	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
11461
11462	// The failure reason of the simulation job request.
11463	FailureReason *string `locationName:"failureReason" type:"string"`
11464
11465	// The simulation job request.
11466	Request *SimulationJobRequest `locationName:"request" type:"structure"`
11467}
11468
11469// String returns the string representation
11470func (s FailedCreateSimulationJobRequest) String() string {
11471	return awsutil.Prettify(s)
11472}
11473
11474// GoString returns the string representation
11475func (s FailedCreateSimulationJobRequest) GoString() string {
11476	return s.String()
11477}
11478
11479// SetFailedAt sets the FailedAt field's value.
11480func (s *FailedCreateSimulationJobRequest) SetFailedAt(v time.Time) *FailedCreateSimulationJobRequest {
11481	s.FailedAt = &v
11482	return s
11483}
11484
11485// SetFailureCode sets the FailureCode field's value.
11486func (s *FailedCreateSimulationJobRequest) SetFailureCode(v string) *FailedCreateSimulationJobRequest {
11487	s.FailureCode = &v
11488	return s
11489}
11490
11491// SetFailureReason sets the FailureReason field's value.
11492func (s *FailedCreateSimulationJobRequest) SetFailureReason(v string) *FailedCreateSimulationJobRequest {
11493	s.FailureReason = &v
11494	return s
11495}
11496
11497// SetRequest sets the Request field's value.
11498func (s *FailedCreateSimulationJobRequest) SetRequest(v *SimulationJobRequest) *FailedCreateSimulationJobRequest {
11499	s.Request = v
11500	return s
11501}
11502
11503// Information about worlds that failed.
11504type FailureSummary struct {
11505	_ struct{} `type:"structure"`
11506
11507	// The worlds that failed.
11508	Failures []*WorldFailure `locationName:"failures" type:"list"`
11509
11510	// The total number of failures.
11511	TotalFailureCount *int64 `locationName:"totalFailureCount" type:"integer"`
11512}
11513
11514// String returns the string representation
11515func (s FailureSummary) String() string {
11516	return awsutil.Prettify(s)
11517}
11518
11519// GoString returns the string representation
11520func (s FailureSummary) GoString() string {
11521	return s.String()
11522}
11523
11524// SetFailures sets the Failures field's value.
11525func (s *FailureSummary) SetFailures(v []*WorldFailure) *FailureSummary {
11526	s.Failures = v
11527	return s
11528}
11529
11530// SetTotalFailureCount sets the TotalFailureCount field's value.
11531func (s *FailureSummary) SetTotalFailureCount(v int64) *FailureSummary {
11532	s.TotalFailureCount = &v
11533	return s
11534}
11535
11536// Information about a filter.
11537type Filter struct {
11538	_ struct{} `type:"structure"`
11539
11540	// The name of the filter.
11541	Name *string `locationName:"name" min:"1" type:"string"`
11542
11543	// A list of values.
11544	Values []*string `locationName:"values" min:"1" type:"list"`
11545}
11546
11547// String returns the string representation
11548func (s Filter) String() string {
11549	return awsutil.Prettify(s)
11550}
11551
11552// GoString returns the string representation
11553func (s Filter) GoString() string {
11554	return s.String()
11555}
11556
11557// Validate inspects the fields of the type to determine if they are valid.
11558func (s *Filter) Validate() error {
11559	invalidParams := request.ErrInvalidParams{Context: "Filter"}
11560	if s.Name != nil && len(*s.Name) < 1 {
11561		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
11562	}
11563	if s.Values != nil && len(s.Values) < 1 {
11564		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
11565	}
11566
11567	if invalidParams.Len() > 0 {
11568		return invalidParams
11569	}
11570	return nil
11571}
11572
11573// SetName sets the Name field's value.
11574func (s *Filter) SetName(v string) *Filter {
11575	s.Name = &v
11576	return s
11577}
11578
11579// SetValues sets the Values field's value.
11580func (s *Filter) SetValues(v []*string) *Filter {
11581	s.Values = v
11582	return s
11583}
11584
11585// Information about worlds that finished.
11586type FinishedWorldsSummary struct {
11587	_ struct{} `type:"structure"`
11588
11589	// Information about worlds that failed.
11590	FailureSummary *FailureSummary `locationName:"failureSummary" type:"structure"`
11591
11592	// The total number of finished worlds.
11593	FinishedCount *int64 `locationName:"finishedCount" type:"integer"`
11594
11595	// A list of worlds that succeeded.
11596	SucceededWorlds []*string `locationName:"succeededWorlds" min:"1" type:"list"`
11597}
11598
11599// String returns the string representation
11600func (s FinishedWorldsSummary) String() string {
11601	return awsutil.Prettify(s)
11602}
11603
11604// GoString returns the string representation
11605func (s FinishedWorldsSummary) GoString() string {
11606	return s.String()
11607}
11608
11609// SetFailureSummary sets the FailureSummary field's value.
11610func (s *FinishedWorldsSummary) SetFailureSummary(v *FailureSummary) *FinishedWorldsSummary {
11611	s.FailureSummary = v
11612	return s
11613}
11614
11615// SetFinishedCount sets the FinishedCount field's value.
11616func (s *FinishedWorldsSummary) SetFinishedCount(v int64) *FinishedWorldsSummary {
11617	s.FinishedCount = &v
11618	return s
11619}
11620
11621// SetSucceededWorlds sets the SucceededWorlds field's value.
11622func (s *FinishedWorldsSummary) SetSucceededWorlds(v []*string) *FinishedWorldsSummary {
11623	s.SucceededWorlds = v
11624	return s
11625}
11626
11627// Information about a fleet.
11628type Fleet struct {
11629	_ struct{} `type:"structure"`
11630
11631	// The Amazon Resource Name (ARN) of the fleet.
11632	Arn *string `locationName:"arn" min:"1" type:"string"`
11633
11634	// The time, in milliseconds since the epoch, when the fleet was created.
11635	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
11636
11637	// The Amazon Resource Name (ARN) of the last deployment job.
11638	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
11639
11640	// The status of the last fleet deployment.
11641	LastDeploymentStatus *string `locationName:"lastDeploymentStatus" type:"string" enum:"DeploymentStatus"`
11642
11643	// The time of the last deployment.
11644	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
11645
11646	// The name of the fleet.
11647	Name *string `locationName:"name" min:"1" type:"string"`
11648}
11649
11650// String returns the string representation
11651func (s Fleet) String() string {
11652	return awsutil.Prettify(s)
11653}
11654
11655// GoString returns the string representation
11656func (s Fleet) GoString() string {
11657	return s.String()
11658}
11659
11660// SetArn sets the Arn field's value.
11661func (s *Fleet) SetArn(v string) *Fleet {
11662	s.Arn = &v
11663	return s
11664}
11665
11666// SetCreatedAt sets the CreatedAt field's value.
11667func (s *Fleet) SetCreatedAt(v time.Time) *Fleet {
11668	s.CreatedAt = &v
11669	return s
11670}
11671
11672// SetLastDeploymentJob sets the LastDeploymentJob field's value.
11673func (s *Fleet) SetLastDeploymentJob(v string) *Fleet {
11674	s.LastDeploymentJob = &v
11675	return s
11676}
11677
11678// SetLastDeploymentStatus sets the LastDeploymentStatus field's value.
11679func (s *Fleet) SetLastDeploymentStatus(v string) *Fleet {
11680	s.LastDeploymentStatus = &v
11681	return s
11682}
11683
11684// SetLastDeploymentTime sets the LastDeploymentTime field's value.
11685func (s *Fleet) SetLastDeploymentTime(v time.Time) *Fleet {
11686	s.LastDeploymentTime = &v
11687	return s
11688}
11689
11690// SetName sets the Name field's value.
11691func (s *Fleet) SetName(v string) *Fleet {
11692	s.Name = &v
11693	return s
11694}
11695
11696type GetWorldTemplateBodyInput struct {
11697	_ struct{} `type:"structure"`
11698
11699	// The Amazon Resource Name (arn) of the world generator job.
11700	GenerationJob *string `locationName:"generationJob" min:"1" type:"string"`
11701
11702	// The Amazon Resource Name (arn) of the world template.
11703	Template *string `locationName:"template" min:"1" type:"string"`
11704}
11705
11706// String returns the string representation
11707func (s GetWorldTemplateBodyInput) String() string {
11708	return awsutil.Prettify(s)
11709}
11710
11711// GoString returns the string representation
11712func (s GetWorldTemplateBodyInput) GoString() string {
11713	return s.String()
11714}
11715
11716// Validate inspects the fields of the type to determine if they are valid.
11717func (s *GetWorldTemplateBodyInput) Validate() error {
11718	invalidParams := request.ErrInvalidParams{Context: "GetWorldTemplateBodyInput"}
11719	if s.GenerationJob != nil && len(*s.GenerationJob) < 1 {
11720		invalidParams.Add(request.NewErrParamMinLen("GenerationJob", 1))
11721	}
11722	if s.Template != nil && len(*s.Template) < 1 {
11723		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
11724	}
11725
11726	if invalidParams.Len() > 0 {
11727		return invalidParams
11728	}
11729	return nil
11730}
11731
11732// SetGenerationJob sets the GenerationJob field's value.
11733func (s *GetWorldTemplateBodyInput) SetGenerationJob(v string) *GetWorldTemplateBodyInput {
11734	s.GenerationJob = &v
11735	return s
11736}
11737
11738// SetTemplate sets the Template field's value.
11739func (s *GetWorldTemplateBodyInput) SetTemplate(v string) *GetWorldTemplateBodyInput {
11740	s.Template = &v
11741	return s
11742}
11743
11744type GetWorldTemplateBodyOutput struct {
11745	_ struct{} `type:"structure"`
11746
11747	// The world template body.
11748	TemplateBody *string `locationName:"templateBody" min:"1" type:"string"`
11749}
11750
11751// String returns the string representation
11752func (s GetWorldTemplateBodyOutput) String() string {
11753	return awsutil.Prettify(s)
11754}
11755
11756// GoString returns the string representation
11757func (s GetWorldTemplateBodyOutput) GoString() string {
11758	return s.String()
11759}
11760
11761// SetTemplateBody sets the TemplateBody field's value.
11762func (s *GetWorldTemplateBodyOutput) SetTemplateBody(v string) *GetWorldTemplateBodyOutput {
11763	s.TemplateBody = &v
11764	return s
11765}
11766
11767// The request uses the same client token as a previous, but non-identical request.
11768// Do not reuse a client token with different requests, unless the requests
11769// are identical.
11770type IdempotentParameterMismatchException struct {
11771	_            struct{}                  `type:"structure"`
11772	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11773
11774	Message_ *string `locationName:"message" type:"string"`
11775}
11776
11777// String returns the string representation
11778func (s IdempotentParameterMismatchException) String() string {
11779	return awsutil.Prettify(s)
11780}
11781
11782// GoString returns the string representation
11783func (s IdempotentParameterMismatchException) GoString() string {
11784	return s.String()
11785}
11786
11787func newErrorIdempotentParameterMismatchException(v protocol.ResponseMetadata) error {
11788	return &IdempotentParameterMismatchException{
11789		RespMetadata: v,
11790	}
11791}
11792
11793// Code returns the exception type name.
11794func (s *IdempotentParameterMismatchException) Code() string {
11795	return "IdempotentParameterMismatchException"
11796}
11797
11798// Message returns the exception's message.
11799func (s *IdempotentParameterMismatchException) Message() string {
11800	if s.Message_ != nil {
11801		return *s.Message_
11802	}
11803	return ""
11804}
11805
11806// OrigErr always returns nil, satisfies awserr.Error interface.
11807func (s *IdempotentParameterMismatchException) OrigErr() error {
11808	return nil
11809}
11810
11811func (s *IdempotentParameterMismatchException) Error() string {
11812	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11813}
11814
11815// Status code returns the HTTP status code for the request's response error.
11816func (s *IdempotentParameterMismatchException) StatusCode() int {
11817	return s.RespMetadata.StatusCode
11818}
11819
11820// RequestID returns the service's response RequestID for request.
11821func (s *IdempotentParameterMismatchException) RequestID() string {
11822	return s.RespMetadata.RequestID
11823}
11824
11825// AWS RoboMaker experienced a service issue. Try your call again.
11826type InternalServerException struct {
11827	_            struct{}                  `type:"structure"`
11828	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11829
11830	Message_ *string `locationName:"message" type:"string"`
11831}
11832
11833// String returns the string representation
11834func (s InternalServerException) String() string {
11835	return awsutil.Prettify(s)
11836}
11837
11838// GoString returns the string representation
11839func (s InternalServerException) GoString() string {
11840	return s.String()
11841}
11842
11843func newErrorInternalServerException(v protocol.ResponseMetadata) error {
11844	return &InternalServerException{
11845		RespMetadata: v,
11846	}
11847}
11848
11849// Code returns the exception type name.
11850func (s *InternalServerException) Code() string {
11851	return "InternalServerException"
11852}
11853
11854// Message returns the exception's message.
11855func (s *InternalServerException) Message() string {
11856	if s.Message_ != nil {
11857		return *s.Message_
11858	}
11859	return ""
11860}
11861
11862// OrigErr always returns nil, satisfies awserr.Error interface.
11863func (s *InternalServerException) OrigErr() error {
11864	return nil
11865}
11866
11867func (s *InternalServerException) Error() string {
11868	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11869}
11870
11871// Status code returns the HTTP status code for the request's response error.
11872func (s *InternalServerException) StatusCode() int {
11873	return s.RespMetadata.StatusCode
11874}
11875
11876// RequestID returns the service's response RequestID for request.
11877func (s *InternalServerException) RequestID() string {
11878	return s.RespMetadata.RequestID
11879}
11880
11881// A parameter specified in a request is not valid, is unsupported, or cannot
11882// be used. The returned message provides an explanation of the error value.
11883type InvalidParameterException struct {
11884	_            struct{}                  `type:"structure"`
11885	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11886
11887	Message_ *string `locationName:"message" type:"string"`
11888}
11889
11890// String returns the string representation
11891func (s InvalidParameterException) String() string {
11892	return awsutil.Prettify(s)
11893}
11894
11895// GoString returns the string representation
11896func (s InvalidParameterException) GoString() string {
11897	return s.String()
11898}
11899
11900func newErrorInvalidParameterException(v protocol.ResponseMetadata) error {
11901	return &InvalidParameterException{
11902		RespMetadata: v,
11903	}
11904}
11905
11906// Code returns the exception type name.
11907func (s *InvalidParameterException) Code() string {
11908	return "InvalidParameterException"
11909}
11910
11911// Message returns the exception's message.
11912func (s *InvalidParameterException) Message() string {
11913	if s.Message_ != nil {
11914		return *s.Message_
11915	}
11916	return ""
11917}
11918
11919// OrigErr always returns nil, satisfies awserr.Error interface.
11920func (s *InvalidParameterException) OrigErr() error {
11921	return nil
11922}
11923
11924func (s *InvalidParameterException) Error() string {
11925	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11926}
11927
11928// Status code returns the HTTP status code for the request's response error.
11929func (s *InvalidParameterException) StatusCode() int {
11930	return s.RespMetadata.StatusCode
11931}
11932
11933// RequestID returns the service's response RequestID for request.
11934func (s *InvalidParameterException) RequestID() string {
11935	return s.RespMetadata.RequestID
11936}
11937
11938// Information about a launch configuration.
11939type LaunchConfig struct {
11940	_ struct{} `type:"structure"`
11941
11942	// The environment variables for the application launch.
11943	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
11944
11945	// The launch file name.
11946	//
11947	// LaunchFile is a required field
11948	LaunchFile *string `locationName:"launchFile" min:"1" type:"string" required:"true"`
11949
11950	// The package name.
11951	//
11952	// PackageName is a required field
11953	PackageName *string `locationName:"packageName" min:"1" type:"string" required:"true"`
11954
11955	// The port forwarding configuration.
11956	PortForwardingConfig *PortForwardingConfig `locationName:"portForwardingConfig" type:"structure"`
11957
11958	// Boolean indicating whether a streaming session will be configured for the
11959	// application. If True, AWS RoboMaker will configure a connection so you can
11960	// interact with your application as it is running in the simulation. You must
11961	// configure and launch the component. It must have a graphical user interface.
11962	StreamUI *bool `locationName:"streamUI" type:"boolean"`
11963}
11964
11965// String returns the string representation
11966func (s LaunchConfig) String() string {
11967	return awsutil.Prettify(s)
11968}
11969
11970// GoString returns the string representation
11971func (s LaunchConfig) GoString() string {
11972	return s.String()
11973}
11974
11975// Validate inspects the fields of the type to determine if they are valid.
11976func (s *LaunchConfig) Validate() error {
11977	invalidParams := request.ErrInvalidParams{Context: "LaunchConfig"}
11978	if s.LaunchFile == nil {
11979		invalidParams.Add(request.NewErrParamRequired("LaunchFile"))
11980	}
11981	if s.LaunchFile != nil && len(*s.LaunchFile) < 1 {
11982		invalidParams.Add(request.NewErrParamMinLen("LaunchFile", 1))
11983	}
11984	if s.PackageName == nil {
11985		invalidParams.Add(request.NewErrParamRequired("PackageName"))
11986	}
11987	if s.PackageName != nil && len(*s.PackageName) < 1 {
11988		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
11989	}
11990	if s.PortForwardingConfig != nil {
11991		if err := s.PortForwardingConfig.Validate(); err != nil {
11992			invalidParams.AddNested("PortForwardingConfig", err.(request.ErrInvalidParams))
11993		}
11994	}
11995
11996	if invalidParams.Len() > 0 {
11997		return invalidParams
11998	}
11999	return nil
12000}
12001
12002// SetEnvironmentVariables sets the EnvironmentVariables field's value.
12003func (s *LaunchConfig) SetEnvironmentVariables(v map[string]*string) *LaunchConfig {
12004	s.EnvironmentVariables = v
12005	return s
12006}
12007
12008// SetLaunchFile sets the LaunchFile field's value.
12009func (s *LaunchConfig) SetLaunchFile(v string) *LaunchConfig {
12010	s.LaunchFile = &v
12011	return s
12012}
12013
12014// SetPackageName sets the PackageName field's value.
12015func (s *LaunchConfig) SetPackageName(v string) *LaunchConfig {
12016	s.PackageName = &v
12017	return s
12018}
12019
12020// SetPortForwardingConfig sets the PortForwardingConfig field's value.
12021func (s *LaunchConfig) SetPortForwardingConfig(v *PortForwardingConfig) *LaunchConfig {
12022	s.PortForwardingConfig = v
12023	return s
12024}
12025
12026// SetStreamUI sets the StreamUI field's value.
12027func (s *LaunchConfig) SetStreamUI(v bool) *LaunchConfig {
12028	s.StreamUI = &v
12029	return s
12030}
12031
12032// The requested resource exceeds the maximum number allowed, or the number
12033// of concurrent stream requests exceeds the maximum number allowed.
12034type LimitExceededException struct {
12035	_            struct{}                  `type:"structure"`
12036	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12037
12038	Message_ *string `locationName:"message" type:"string"`
12039}
12040
12041// String returns the string representation
12042func (s LimitExceededException) String() string {
12043	return awsutil.Prettify(s)
12044}
12045
12046// GoString returns the string representation
12047func (s LimitExceededException) GoString() string {
12048	return s.String()
12049}
12050
12051func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
12052	return &LimitExceededException{
12053		RespMetadata: v,
12054	}
12055}
12056
12057// Code returns the exception type name.
12058func (s *LimitExceededException) Code() string {
12059	return "LimitExceededException"
12060}
12061
12062// Message returns the exception's message.
12063func (s *LimitExceededException) Message() string {
12064	if s.Message_ != nil {
12065		return *s.Message_
12066	}
12067	return ""
12068}
12069
12070// OrigErr always returns nil, satisfies awserr.Error interface.
12071func (s *LimitExceededException) OrigErr() error {
12072	return nil
12073}
12074
12075func (s *LimitExceededException) Error() string {
12076	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12077}
12078
12079// Status code returns the HTTP status code for the request's response error.
12080func (s *LimitExceededException) StatusCode() int {
12081	return s.RespMetadata.StatusCode
12082}
12083
12084// RequestID returns the service's response RequestID for request.
12085func (s *LimitExceededException) RequestID() string {
12086	return s.RespMetadata.RequestID
12087}
12088
12089type ListDeploymentJobsInput struct {
12090	_ struct{} `type:"structure"`
12091
12092	// Optional filters to limit results.
12093	//
12094	// The filter names status and fleetName are supported. When filtering, you
12095	// must use the complete value of the filtered item. You can use up to three
12096	// filters, but they must be for the same named item. For example, if you are
12097	// looking for items with the status InProgress or the status Pending.
12098	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12099
12100	// When this parameter is used, ListDeploymentJobs only returns maxResults results
12101	// in a single page along with a nextToken response element. The remaining results
12102	// of the initial request can be seen by sending another ListDeploymentJobs
12103	// request with the returned nextToken value. This value can be between 1 and
12104	// 200. If this parameter is not used, then ListDeploymentJobs returns up to
12105	// 200 results and a nextToken value if applicable.
12106	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12107
12108	// If the previous paginated request did not return all of the remaining results,
12109	// the response object's nextToken parameter value is set to a token. To retrieve
12110	// the next set of results, call ListDeploymentJobs again and assign that token
12111	// to the request object's nextToken parameter. If there are no remaining results,
12112	// the previous response object's NextToken parameter is set to null.
12113	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12114}
12115
12116// String returns the string representation
12117func (s ListDeploymentJobsInput) String() string {
12118	return awsutil.Prettify(s)
12119}
12120
12121// GoString returns the string representation
12122func (s ListDeploymentJobsInput) GoString() string {
12123	return s.String()
12124}
12125
12126// Validate inspects the fields of the type to determine if they are valid.
12127func (s *ListDeploymentJobsInput) Validate() error {
12128	invalidParams := request.ErrInvalidParams{Context: "ListDeploymentJobsInput"}
12129	if s.Filters != nil && len(s.Filters) < 1 {
12130		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12131	}
12132	if s.NextToken != nil && len(*s.NextToken) < 1 {
12133		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12134	}
12135	if s.Filters != nil {
12136		for i, v := range s.Filters {
12137			if v == nil {
12138				continue
12139			}
12140			if err := v.Validate(); err != nil {
12141				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12142			}
12143		}
12144	}
12145
12146	if invalidParams.Len() > 0 {
12147		return invalidParams
12148	}
12149	return nil
12150}
12151
12152// SetFilters sets the Filters field's value.
12153func (s *ListDeploymentJobsInput) SetFilters(v []*Filter) *ListDeploymentJobsInput {
12154	s.Filters = v
12155	return s
12156}
12157
12158// SetMaxResults sets the MaxResults field's value.
12159func (s *ListDeploymentJobsInput) SetMaxResults(v int64) *ListDeploymentJobsInput {
12160	s.MaxResults = &v
12161	return s
12162}
12163
12164// SetNextToken sets the NextToken field's value.
12165func (s *ListDeploymentJobsInput) SetNextToken(v string) *ListDeploymentJobsInput {
12166	s.NextToken = &v
12167	return s
12168}
12169
12170type ListDeploymentJobsOutput struct {
12171	_ struct{} `type:"structure"`
12172
12173	// A list of deployment jobs that meet the criteria of the request.
12174	DeploymentJobs []*DeploymentJob `locationName:"deploymentJobs" type:"list"`
12175
12176	// If the previous paginated request did not return all of the remaining results,
12177	// the response object's nextToken parameter value is set to a token. To retrieve
12178	// the next set of results, call ListDeploymentJobs again and assign that token
12179	// to the request object's nextToken parameter. If there are no remaining results,
12180	// the previous response object's NextToken parameter is set to null.
12181	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12182}
12183
12184// String returns the string representation
12185func (s ListDeploymentJobsOutput) String() string {
12186	return awsutil.Prettify(s)
12187}
12188
12189// GoString returns the string representation
12190func (s ListDeploymentJobsOutput) GoString() string {
12191	return s.String()
12192}
12193
12194// SetDeploymentJobs sets the DeploymentJobs field's value.
12195func (s *ListDeploymentJobsOutput) SetDeploymentJobs(v []*DeploymentJob) *ListDeploymentJobsOutput {
12196	s.DeploymentJobs = v
12197	return s
12198}
12199
12200// SetNextToken sets the NextToken field's value.
12201func (s *ListDeploymentJobsOutput) SetNextToken(v string) *ListDeploymentJobsOutput {
12202	s.NextToken = &v
12203	return s
12204}
12205
12206type ListFleetsInput struct {
12207	_ struct{} `type:"structure"`
12208
12209	// Optional filters to limit results.
12210	//
12211	// The filter name name is supported. When filtering, you must use the complete
12212	// value of the filtered item. You can use up to three filters.
12213	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12214
12215	// When this parameter is used, ListFleets only returns maxResults results in
12216	// a single page along with a nextToken response element. The remaining results
12217	// of the initial request can be seen by sending another ListFleets request
12218	// with the returned nextToken value. This value can be between 1 and 200. If
12219	// this parameter is not used, then ListFleets returns up to 200 results and
12220	// a nextToken value if applicable.
12221	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12222
12223	// If the previous paginated request did not return all of the remaining results,
12224	// the response object's nextToken parameter value is set to a token. To retrieve
12225	// the next set of results, call ListFleets again and assign that token to the
12226	// request object's nextToken parameter. If there are no remaining results,
12227	// the previous response object's NextToken parameter is set to null.
12228	//
12229	// This token should be treated as an opaque identifier that is only used to
12230	// retrieve the next items in a list and not for other programmatic purposes.
12231	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12232}
12233
12234// String returns the string representation
12235func (s ListFleetsInput) String() string {
12236	return awsutil.Prettify(s)
12237}
12238
12239// GoString returns the string representation
12240func (s ListFleetsInput) GoString() string {
12241	return s.String()
12242}
12243
12244// Validate inspects the fields of the type to determine if they are valid.
12245func (s *ListFleetsInput) Validate() error {
12246	invalidParams := request.ErrInvalidParams{Context: "ListFleetsInput"}
12247	if s.Filters != nil && len(s.Filters) < 1 {
12248		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12249	}
12250	if s.NextToken != nil && len(*s.NextToken) < 1 {
12251		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12252	}
12253	if s.Filters != nil {
12254		for i, v := range s.Filters {
12255			if v == nil {
12256				continue
12257			}
12258			if err := v.Validate(); err != nil {
12259				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12260			}
12261		}
12262	}
12263
12264	if invalidParams.Len() > 0 {
12265		return invalidParams
12266	}
12267	return nil
12268}
12269
12270// SetFilters sets the Filters field's value.
12271func (s *ListFleetsInput) SetFilters(v []*Filter) *ListFleetsInput {
12272	s.Filters = v
12273	return s
12274}
12275
12276// SetMaxResults sets the MaxResults field's value.
12277func (s *ListFleetsInput) SetMaxResults(v int64) *ListFleetsInput {
12278	s.MaxResults = &v
12279	return s
12280}
12281
12282// SetNextToken sets the NextToken field's value.
12283func (s *ListFleetsInput) SetNextToken(v string) *ListFleetsInput {
12284	s.NextToken = &v
12285	return s
12286}
12287
12288type ListFleetsOutput struct {
12289	_ struct{} `type:"structure"`
12290
12291	// A list of fleet details meeting the request criteria.
12292	FleetDetails []*Fleet `locationName:"fleetDetails" type:"list"`
12293
12294	// If the previous paginated request did not return all of the remaining results,
12295	// the response object's nextToken parameter value is set to a token. To retrieve
12296	// the next set of results, call ListFleets again and assign that token to the
12297	// request object's nextToken parameter. If there are no remaining results,
12298	// the previous response object's NextToken parameter is set to null.
12299	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12300}
12301
12302// String returns the string representation
12303func (s ListFleetsOutput) String() string {
12304	return awsutil.Prettify(s)
12305}
12306
12307// GoString returns the string representation
12308func (s ListFleetsOutput) GoString() string {
12309	return s.String()
12310}
12311
12312// SetFleetDetails sets the FleetDetails field's value.
12313func (s *ListFleetsOutput) SetFleetDetails(v []*Fleet) *ListFleetsOutput {
12314	s.FleetDetails = v
12315	return s
12316}
12317
12318// SetNextToken sets the NextToken field's value.
12319func (s *ListFleetsOutput) SetNextToken(v string) *ListFleetsOutput {
12320	s.NextToken = &v
12321	return s
12322}
12323
12324type ListRobotApplicationsInput struct {
12325	_ struct{} `type:"structure"`
12326
12327	// Optional filters to limit results.
12328	//
12329	// The filter name name is supported. When filtering, you must use the complete
12330	// value of the filtered item. You can use up to three filters.
12331	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12332
12333	// When this parameter is used, ListRobotApplications only returns maxResults
12334	// results in a single page along with a nextToken response element. The remaining
12335	// results of the initial request can be seen by sending another ListRobotApplications
12336	// request with the returned nextToken value. This value can be between 1 and
12337	// 100. If this parameter is not used, then ListRobotApplications returns up
12338	// to 100 results and a nextToken value if applicable.
12339	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12340
12341	// If the previous paginated request did not return all of the remaining results,
12342	// the response object's nextToken parameter value is set to a token. To retrieve
12343	// the next set of results, call ListRobotApplications again and assign that
12344	// token to the request object's nextToken parameter. If there are no remaining
12345	// results, the previous response object's NextToken parameter is set to null.
12346	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12347
12348	// The version qualifier of the robot application.
12349	VersionQualifier *string `locationName:"versionQualifier" min:"1" type:"string"`
12350}
12351
12352// String returns the string representation
12353func (s ListRobotApplicationsInput) String() string {
12354	return awsutil.Prettify(s)
12355}
12356
12357// GoString returns the string representation
12358func (s ListRobotApplicationsInput) GoString() string {
12359	return s.String()
12360}
12361
12362// Validate inspects the fields of the type to determine if they are valid.
12363func (s *ListRobotApplicationsInput) Validate() error {
12364	invalidParams := request.ErrInvalidParams{Context: "ListRobotApplicationsInput"}
12365	if s.Filters != nil && len(s.Filters) < 1 {
12366		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12367	}
12368	if s.NextToken != nil && len(*s.NextToken) < 1 {
12369		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12370	}
12371	if s.VersionQualifier != nil && len(*s.VersionQualifier) < 1 {
12372		invalidParams.Add(request.NewErrParamMinLen("VersionQualifier", 1))
12373	}
12374	if s.Filters != nil {
12375		for i, v := range s.Filters {
12376			if v == nil {
12377				continue
12378			}
12379			if err := v.Validate(); err != nil {
12380				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12381			}
12382		}
12383	}
12384
12385	if invalidParams.Len() > 0 {
12386		return invalidParams
12387	}
12388	return nil
12389}
12390
12391// SetFilters sets the Filters field's value.
12392func (s *ListRobotApplicationsInput) SetFilters(v []*Filter) *ListRobotApplicationsInput {
12393	s.Filters = v
12394	return s
12395}
12396
12397// SetMaxResults sets the MaxResults field's value.
12398func (s *ListRobotApplicationsInput) SetMaxResults(v int64) *ListRobotApplicationsInput {
12399	s.MaxResults = &v
12400	return s
12401}
12402
12403// SetNextToken sets the NextToken field's value.
12404func (s *ListRobotApplicationsInput) SetNextToken(v string) *ListRobotApplicationsInput {
12405	s.NextToken = &v
12406	return s
12407}
12408
12409// SetVersionQualifier sets the VersionQualifier field's value.
12410func (s *ListRobotApplicationsInput) SetVersionQualifier(v string) *ListRobotApplicationsInput {
12411	s.VersionQualifier = &v
12412	return s
12413}
12414
12415type ListRobotApplicationsOutput struct {
12416	_ struct{} `type:"structure"`
12417
12418	// If the previous paginated request did not return all of the remaining results,
12419	// the response object's nextToken parameter value is set to a token. To retrieve
12420	// the next set of results, call ListRobotApplications again and assign that
12421	// token to the request object's nextToken parameter. If there are no remaining
12422	// results, the previous response object's NextToken parameter is set to null.
12423	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12424
12425	// A list of robot application summaries that meet the criteria of the request.
12426	RobotApplicationSummaries []*RobotApplicationSummary `locationName:"robotApplicationSummaries" type:"list"`
12427}
12428
12429// String returns the string representation
12430func (s ListRobotApplicationsOutput) String() string {
12431	return awsutil.Prettify(s)
12432}
12433
12434// GoString returns the string representation
12435func (s ListRobotApplicationsOutput) GoString() string {
12436	return s.String()
12437}
12438
12439// SetNextToken sets the NextToken field's value.
12440func (s *ListRobotApplicationsOutput) SetNextToken(v string) *ListRobotApplicationsOutput {
12441	s.NextToken = &v
12442	return s
12443}
12444
12445// SetRobotApplicationSummaries sets the RobotApplicationSummaries field's value.
12446func (s *ListRobotApplicationsOutput) SetRobotApplicationSummaries(v []*RobotApplicationSummary) *ListRobotApplicationsOutput {
12447	s.RobotApplicationSummaries = v
12448	return s
12449}
12450
12451type ListRobotsInput struct {
12452	_ struct{} `type:"structure"`
12453
12454	// Optional filters to limit results.
12455	//
12456	// The filter names status and fleetName are supported. When filtering, you
12457	// must use the complete value of the filtered item. You can use up to three
12458	// filters, but they must be for the same named item. For example, if you are
12459	// looking for items with the status Registered or the status Available.
12460	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12461
12462	// When this parameter is used, ListRobots only returns maxResults results in
12463	// a single page along with a nextToken response element. The remaining results
12464	// of the initial request can be seen by sending another ListRobots request
12465	// with the returned nextToken value. This value can be between 1 and 200. If
12466	// this parameter is not used, then ListRobots returns up to 200 results and
12467	// a nextToken value if applicable.
12468	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12469
12470	// If the previous paginated request did not return all of the remaining results,
12471	// the response object's nextToken parameter value is set to a token. To retrieve
12472	// the next set of results, call ListRobots again and assign that token to the
12473	// request object's nextToken parameter. If there are no remaining results,
12474	// the previous response object's NextToken parameter is set to null.
12475	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12476}
12477
12478// String returns the string representation
12479func (s ListRobotsInput) String() string {
12480	return awsutil.Prettify(s)
12481}
12482
12483// GoString returns the string representation
12484func (s ListRobotsInput) GoString() string {
12485	return s.String()
12486}
12487
12488// Validate inspects the fields of the type to determine if they are valid.
12489func (s *ListRobotsInput) Validate() error {
12490	invalidParams := request.ErrInvalidParams{Context: "ListRobotsInput"}
12491	if s.Filters != nil && len(s.Filters) < 1 {
12492		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12493	}
12494	if s.NextToken != nil && len(*s.NextToken) < 1 {
12495		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12496	}
12497	if s.Filters != nil {
12498		for i, v := range s.Filters {
12499			if v == nil {
12500				continue
12501			}
12502			if err := v.Validate(); err != nil {
12503				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12504			}
12505		}
12506	}
12507
12508	if invalidParams.Len() > 0 {
12509		return invalidParams
12510	}
12511	return nil
12512}
12513
12514// SetFilters sets the Filters field's value.
12515func (s *ListRobotsInput) SetFilters(v []*Filter) *ListRobotsInput {
12516	s.Filters = v
12517	return s
12518}
12519
12520// SetMaxResults sets the MaxResults field's value.
12521func (s *ListRobotsInput) SetMaxResults(v int64) *ListRobotsInput {
12522	s.MaxResults = &v
12523	return s
12524}
12525
12526// SetNextToken sets the NextToken field's value.
12527func (s *ListRobotsInput) SetNextToken(v string) *ListRobotsInput {
12528	s.NextToken = &v
12529	return s
12530}
12531
12532type ListRobotsOutput struct {
12533	_ struct{} `type:"structure"`
12534
12535	// If the previous paginated request did not return all of the remaining results,
12536	// the response object's nextToken parameter value is set to a token. To retrieve
12537	// the next set of results, call ListRobots again and assign that token to the
12538	// request object's nextToken parameter. If there are no remaining results,
12539	// the previous response object's NextToken parameter is set to null.
12540	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12541
12542	// A list of robots that meet the criteria of the request.
12543	Robots []*Robot `locationName:"robots" type:"list"`
12544}
12545
12546// String returns the string representation
12547func (s ListRobotsOutput) String() string {
12548	return awsutil.Prettify(s)
12549}
12550
12551// GoString returns the string representation
12552func (s ListRobotsOutput) GoString() string {
12553	return s.String()
12554}
12555
12556// SetNextToken sets the NextToken field's value.
12557func (s *ListRobotsOutput) SetNextToken(v string) *ListRobotsOutput {
12558	s.NextToken = &v
12559	return s
12560}
12561
12562// SetRobots sets the Robots field's value.
12563func (s *ListRobotsOutput) SetRobots(v []*Robot) *ListRobotsOutput {
12564	s.Robots = v
12565	return s
12566}
12567
12568type ListSimulationApplicationsInput struct {
12569	_ struct{} `type:"structure"`
12570
12571	// Optional list of filters to limit results.
12572	//
12573	// The filter name name is supported. When filtering, you must use the complete
12574	// value of the filtered item. You can use up to three filters.
12575	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12576
12577	// When this parameter is used, ListSimulationApplications only returns maxResults
12578	// results in a single page along with a nextToken response element. The remaining
12579	// results of the initial request can be seen by sending another ListSimulationApplications
12580	// request with the returned nextToken value. This value can be between 1 and
12581	// 100. If this parameter is not used, then ListSimulationApplications returns
12582	// up to 100 results and a nextToken value if applicable.
12583	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12584
12585	// If the previous paginated request did not return all of the remaining results,
12586	// the response object's nextToken parameter value is set to a token. To retrieve
12587	// the next set of results, call ListSimulationApplications again and assign
12588	// that token to the request object's nextToken parameter. If there are no remaining
12589	// results, the previous response object's NextToken parameter is set to null.
12590	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12591
12592	// The version qualifier of the simulation application.
12593	VersionQualifier *string `locationName:"versionQualifier" min:"1" type:"string"`
12594}
12595
12596// String returns the string representation
12597func (s ListSimulationApplicationsInput) String() string {
12598	return awsutil.Prettify(s)
12599}
12600
12601// GoString returns the string representation
12602func (s ListSimulationApplicationsInput) GoString() string {
12603	return s.String()
12604}
12605
12606// Validate inspects the fields of the type to determine if they are valid.
12607func (s *ListSimulationApplicationsInput) Validate() error {
12608	invalidParams := request.ErrInvalidParams{Context: "ListSimulationApplicationsInput"}
12609	if s.Filters != nil && len(s.Filters) < 1 {
12610		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12611	}
12612	if s.NextToken != nil && len(*s.NextToken) < 1 {
12613		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12614	}
12615	if s.VersionQualifier != nil && len(*s.VersionQualifier) < 1 {
12616		invalidParams.Add(request.NewErrParamMinLen("VersionQualifier", 1))
12617	}
12618	if s.Filters != nil {
12619		for i, v := range s.Filters {
12620			if v == nil {
12621				continue
12622			}
12623			if err := v.Validate(); err != nil {
12624				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12625			}
12626		}
12627	}
12628
12629	if invalidParams.Len() > 0 {
12630		return invalidParams
12631	}
12632	return nil
12633}
12634
12635// SetFilters sets the Filters field's value.
12636func (s *ListSimulationApplicationsInput) SetFilters(v []*Filter) *ListSimulationApplicationsInput {
12637	s.Filters = v
12638	return s
12639}
12640
12641// SetMaxResults sets the MaxResults field's value.
12642func (s *ListSimulationApplicationsInput) SetMaxResults(v int64) *ListSimulationApplicationsInput {
12643	s.MaxResults = &v
12644	return s
12645}
12646
12647// SetNextToken sets the NextToken field's value.
12648func (s *ListSimulationApplicationsInput) SetNextToken(v string) *ListSimulationApplicationsInput {
12649	s.NextToken = &v
12650	return s
12651}
12652
12653// SetVersionQualifier sets the VersionQualifier field's value.
12654func (s *ListSimulationApplicationsInput) SetVersionQualifier(v string) *ListSimulationApplicationsInput {
12655	s.VersionQualifier = &v
12656	return s
12657}
12658
12659type ListSimulationApplicationsOutput struct {
12660	_ struct{} `type:"structure"`
12661
12662	// If the previous paginated request did not return all of the remaining results,
12663	// the response object's nextToken parameter value is set to a token. To retrieve
12664	// the next set of results, call ListSimulationApplications again and assign
12665	// that token to the request object's nextToken parameter. If there are no remaining
12666	// results, the previous response object's NextToken parameter is set to null.
12667	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12668
12669	// A list of simulation application summaries that meet the criteria of the
12670	// request.
12671	SimulationApplicationSummaries []*SimulationApplicationSummary `locationName:"simulationApplicationSummaries" type:"list"`
12672}
12673
12674// String returns the string representation
12675func (s ListSimulationApplicationsOutput) String() string {
12676	return awsutil.Prettify(s)
12677}
12678
12679// GoString returns the string representation
12680func (s ListSimulationApplicationsOutput) GoString() string {
12681	return s.String()
12682}
12683
12684// SetNextToken sets the NextToken field's value.
12685func (s *ListSimulationApplicationsOutput) SetNextToken(v string) *ListSimulationApplicationsOutput {
12686	s.NextToken = &v
12687	return s
12688}
12689
12690// SetSimulationApplicationSummaries sets the SimulationApplicationSummaries field's value.
12691func (s *ListSimulationApplicationsOutput) SetSimulationApplicationSummaries(v []*SimulationApplicationSummary) *ListSimulationApplicationsOutput {
12692	s.SimulationApplicationSummaries = v
12693	return s
12694}
12695
12696type ListSimulationJobBatchesInput struct {
12697	_ struct{} `type:"structure"`
12698
12699	// Optional filters to limit results.
12700	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12701
12702	// When this parameter is used, ListSimulationJobBatches only returns maxResults
12703	// results in a single page along with a nextToken response element. The remaining
12704	// results of the initial request can be seen by sending another ListSimulationJobBatches
12705	// request with the returned nextToken value.
12706	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12707
12708	// If the previous paginated request did not return all of the remaining results,
12709	// the response object's nextToken parameter value is set to a token. To retrieve
12710	// the next set of results, call ListSimulationJobBatches again and assign that
12711	// token to the request object's nextToken parameter. If there are no remaining
12712	// results, the previous response object's NextToken parameter is set to null.
12713	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12714}
12715
12716// String returns the string representation
12717func (s ListSimulationJobBatchesInput) String() string {
12718	return awsutil.Prettify(s)
12719}
12720
12721// GoString returns the string representation
12722func (s ListSimulationJobBatchesInput) GoString() string {
12723	return s.String()
12724}
12725
12726// Validate inspects the fields of the type to determine if they are valid.
12727func (s *ListSimulationJobBatchesInput) Validate() error {
12728	invalidParams := request.ErrInvalidParams{Context: "ListSimulationJobBatchesInput"}
12729	if s.Filters != nil && len(s.Filters) < 1 {
12730		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12731	}
12732	if s.NextToken != nil && len(*s.NextToken) < 1 {
12733		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12734	}
12735	if s.Filters != nil {
12736		for i, v := range s.Filters {
12737			if v == nil {
12738				continue
12739			}
12740			if err := v.Validate(); err != nil {
12741				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12742			}
12743		}
12744	}
12745
12746	if invalidParams.Len() > 0 {
12747		return invalidParams
12748	}
12749	return nil
12750}
12751
12752// SetFilters sets the Filters field's value.
12753func (s *ListSimulationJobBatchesInput) SetFilters(v []*Filter) *ListSimulationJobBatchesInput {
12754	s.Filters = v
12755	return s
12756}
12757
12758// SetMaxResults sets the MaxResults field's value.
12759func (s *ListSimulationJobBatchesInput) SetMaxResults(v int64) *ListSimulationJobBatchesInput {
12760	s.MaxResults = &v
12761	return s
12762}
12763
12764// SetNextToken sets the NextToken field's value.
12765func (s *ListSimulationJobBatchesInput) SetNextToken(v string) *ListSimulationJobBatchesInput {
12766	s.NextToken = &v
12767	return s
12768}
12769
12770type ListSimulationJobBatchesOutput struct {
12771	_ struct{} `type:"structure"`
12772
12773	// If the previous paginated request did not return all of the remaining results,
12774	// the response object's nextToken parameter value is set to a token. To retrieve
12775	// the next set of results, call ListSimulationJobBatches again and assign that
12776	// token to the request object's nextToken parameter. If there are no remaining
12777	// results, the previous response object's NextToken parameter is set to null.
12778	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12779
12780	// A list of simulation job batch summaries.
12781	SimulationJobBatchSummaries []*SimulationJobBatchSummary `locationName:"simulationJobBatchSummaries" type:"list"`
12782}
12783
12784// String returns the string representation
12785func (s ListSimulationJobBatchesOutput) String() string {
12786	return awsutil.Prettify(s)
12787}
12788
12789// GoString returns the string representation
12790func (s ListSimulationJobBatchesOutput) GoString() string {
12791	return s.String()
12792}
12793
12794// SetNextToken sets the NextToken field's value.
12795func (s *ListSimulationJobBatchesOutput) SetNextToken(v string) *ListSimulationJobBatchesOutput {
12796	s.NextToken = &v
12797	return s
12798}
12799
12800// SetSimulationJobBatchSummaries sets the SimulationJobBatchSummaries field's value.
12801func (s *ListSimulationJobBatchesOutput) SetSimulationJobBatchSummaries(v []*SimulationJobBatchSummary) *ListSimulationJobBatchesOutput {
12802	s.SimulationJobBatchSummaries = v
12803	return s
12804}
12805
12806type ListSimulationJobsInput struct {
12807	_ struct{} `type:"structure"`
12808
12809	// Optional filters to limit results.
12810	//
12811	// The filter names status and simulationApplicationName and robotApplicationName
12812	// are supported. When filtering, you must use the complete value of the filtered
12813	// item. You can use up to three filters, but they must be for the same named
12814	// item. For example, if you are looking for items with the status Preparing
12815	// or the status Running.
12816	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12817
12818	// When this parameter is used, ListSimulationJobs only returns maxResults results
12819	// in a single page along with a nextToken response element. The remaining results
12820	// of the initial request can be seen by sending another ListSimulationJobs
12821	// request with the returned nextToken value. This value can be between 1 and
12822	// 1000. If this parameter is not used, then ListSimulationJobs returns up to
12823	// 1000 results and a nextToken value if applicable.
12824	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12825
12826	// If the previous paginated request did not return all of the remaining results,
12827	// the response object's nextToken parameter value is set to a token. To retrieve
12828	// the next set of results, call ListSimulationJobs again and assign that token
12829	// to the request object's nextToken parameter. If there are no remaining results,
12830	// the previous response object's NextToken parameter is set to null.
12831	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12832}
12833
12834// String returns the string representation
12835func (s ListSimulationJobsInput) String() string {
12836	return awsutil.Prettify(s)
12837}
12838
12839// GoString returns the string representation
12840func (s ListSimulationJobsInput) GoString() string {
12841	return s.String()
12842}
12843
12844// Validate inspects the fields of the type to determine if they are valid.
12845func (s *ListSimulationJobsInput) Validate() error {
12846	invalidParams := request.ErrInvalidParams{Context: "ListSimulationJobsInput"}
12847	if s.Filters != nil && len(s.Filters) < 1 {
12848		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
12849	}
12850	if s.NextToken != nil && len(*s.NextToken) < 1 {
12851		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
12852	}
12853	if s.Filters != nil {
12854		for i, v := range s.Filters {
12855			if v == nil {
12856				continue
12857			}
12858			if err := v.Validate(); err != nil {
12859				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
12860			}
12861		}
12862	}
12863
12864	if invalidParams.Len() > 0 {
12865		return invalidParams
12866	}
12867	return nil
12868}
12869
12870// SetFilters sets the Filters field's value.
12871func (s *ListSimulationJobsInput) SetFilters(v []*Filter) *ListSimulationJobsInput {
12872	s.Filters = v
12873	return s
12874}
12875
12876// SetMaxResults sets the MaxResults field's value.
12877func (s *ListSimulationJobsInput) SetMaxResults(v int64) *ListSimulationJobsInput {
12878	s.MaxResults = &v
12879	return s
12880}
12881
12882// SetNextToken sets the NextToken field's value.
12883func (s *ListSimulationJobsInput) SetNextToken(v string) *ListSimulationJobsInput {
12884	s.NextToken = &v
12885	return s
12886}
12887
12888type ListSimulationJobsOutput struct {
12889	_ struct{} `type:"structure"`
12890
12891	// If the previous paginated request did not return all of the remaining results,
12892	// the response object's nextToken parameter value is set to a token. To retrieve
12893	// the next set of results, call ListSimulationJobs again and assign that token
12894	// to the request object's nextToken parameter. If there are no remaining results,
12895	// the previous response object's NextToken parameter is set to null.
12896	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
12897
12898	// A list of simulation job summaries that meet the criteria of the request.
12899	//
12900	// SimulationJobSummaries is a required field
12901	SimulationJobSummaries []*SimulationJobSummary `locationName:"simulationJobSummaries" type:"list" required:"true"`
12902}
12903
12904// String returns the string representation
12905func (s ListSimulationJobsOutput) String() string {
12906	return awsutil.Prettify(s)
12907}
12908
12909// GoString returns the string representation
12910func (s ListSimulationJobsOutput) GoString() string {
12911	return s.String()
12912}
12913
12914// SetNextToken sets the NextToken field's value.
12915func (s *ListSimulationJobsOutput) SetNextToken(v string) *ListSimulationJobsOutput {
12916	s.NextToken = &v
12917	return s
12918}
12919
12920// SetSimulationJobSummaries sets the SimulationJobSummaries field's value.
12921func (s *ListSimulationJobsOutput) SetSimulationJobSummaries(v []*SimulationJobSummary) *ListSimulationJobsOutput {
12922	s.SimulationJobSummaries = v
12923	return s
12924}
12925
12926type ListTagsForResourceInput struct {
12927	_ struct{} `type:"structure"`
12928
12929	// The AWS RoboMaker Amazon Resource Name (ARN) with tags to be listed.
12930	//
12931	// ResourceArn is a required field
12932	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
12933}
12934
12935// String returns the string representation
12936func (s ListTagsForResourceInput) String() string {
12937	return awsutil.Prettify(s)
12938}
12939
12940// GoString returns the string representation
12941func (s ListTagsForResourceInput) GoString() string {
12942	return s.String()
12943}
12944
12945// Validate inspects the fields of the type to determine if they are valid.
12946func (s *ListTagsForResourceInput) Validate() error {
12947	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
12948	if s.ResourceArn == nil {
12949		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
12950	}
12951	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
12952		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
12953	}
12954
12955	if invalidParams.Len() > 0 {
12956		return invalidParams
12957	}
12958	return nil
12959}
12960
12961// SetResourceArn sets the ResourceArn field's value.
12962func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
12963	s.ResourceArn = &v
12964	return s
12965}
12966
12967type ListTagsForResourceOutput struct {
12968	_ struct{} `type:"structure"`
12969
12970	// The list of all tags added to the specified resource.
12971	Tags map[string]*string `locationName:"tags" type:"map"`
12972}
12973
12974// String returns the string representation
12975func (s ListTagsForResourceOutput) String() string {
12976	return awsutil.Prettify(s)
12977}
12978
12979// GoString returns the string representation
12980func (s ListTagsForResourceOutput) GoString() string {
12981	return s.String()
12982}
12983
12984// SetTags sets the Tags field's value.
12985func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
12986	s.Tags = v
12987	return s
12988}
12989
12990type ListWorldExportJobsInput struct {
12991	_ struct{} `type:"structure"`
12992
12993	// Optional filters to limit results. You can use generationJobId and templateId.
12994	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
12995
12996	// When this parameter is used, ListWorldExportJobs only returns maxResults
12997	// results in a single page along with a nextToken response element. The remaining
12998	// results of the initial request can be seen by sending another ListWorldExportJobs
12999	// request with the returned nextToken value. This value can be between 1 and
13000	// 100. If this parameter is not used, then ListWorldExportJobs returns up to
13001	// 100 results and a nextToken value if applicable.
13002	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13003
13004	// If the previous paginated request did not return all of the remaining results,
13005	// the response object's nextToken parameter value is set to a token. To retrieve
13006	// the next set of results, call ListWorldExportJobs again and assign that token
13007	// to the request object's nextToken parameter. If there are no remaining results,
13008	// the previous response object's NextToken parameter is set to null.
13009	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13010}
13011
13012// String returns the string representation
13013func (s ListWorldExportJobsInput) String() string {
13014	return awsutil.Prettify(s)
13015}
13016
13017// GoString returns the string representation
13018func (s ListWorldExportJobsInput) GoString() string {
13019	return s.String()
13020}
13021
13022// Validate inspects the fields of the type to determine if they are valid.
13023func (s *ListWorldExportJobsInput) Validate() error {
13024	invalidParams := request.ErrInvalidParams{Context: "ListWorldExportJobsInput"}
13025	if s.Filters != nil && len(s.Filters) < 1 {
13026		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
13027	}
13028	if s.NextToken != nil && len(*s.NextToken) < 1 {
13029		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13030	}
13031	if s.Filters != nil {
13032		for i, v := range s.Filters {
13033			if v == nil {
13034				continue
13035			}
13036			if err := v.Validate(); err != nil {
13037				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13038			}
13039		}
13040	}
13041
13042	if invalidParams.Len() > 0 {
13043		return invalidParams
13044	}
13045	return nil
13046}
13047
13048// SetFilters sets the Filters field's value.
13049func (s *ListWorldExportJobsInput) SetFilters(v []*Filter) *ListWorldExportJobsInput {
13050	s.Filters = v
13051	return s
13052}
13053
13054// SetMaxResults sets the MaxResults field's value.
13055func (s *ListWorldExportJobsInput) SetMaxResults(v int64) *ListWorldExportJobsInput {
13056	s.MaxResults = &v
13057	return s
13058}
13059
13060// SetNextToken sets the NextToken field's value.
13061func (s *ListWorldExportJobsInput) SetNextToken(v string) *ListWorldExportJobsInput {
13062	s.NextToken = &v
13063	return s
13064}
13065
13066type ListWorldExportJobsOutput struct {
13067	_ struct{} `type:"structure"`
13068
13069	// If the previous paginated request did not return all of the remaining results,
13070	// the response object's nextToken parameter value is set to a token. To retrieve
13071	// the next set of results, call ListWorldExportJobsRequest again and assign
13072	// that token to the request object's nextToken parameter. If there are no remaining
13073	// results, the previous response object's NextToken parameter is set to null.
13074	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13075
13076	// Summary information for world export jobs.
13077	//
13078	// WorldExportJobSummaries is a required field
13079	WorldExportJobSummaries []*WorldExportJobSummary `locationName:"worldExportJobSummaries" type:"list" required:"true"`
13080}
13081
13082// String returns the string representation
13083func (s ListWorldExportJobsOutput) String() string {
13084	return awsutil.Prettify(s)
13085}
13086
13087// GoString returns the string representation
13088func (s ListWorldExportJobsOutput) GoString() string {
13089	return s.String()
13090}
13091
13092// SetNextToken sets the NextToken field's value.
13093func (s *ListWorldExportJobsOutput) SetNextToken(v string) *ListWorldExportJobsOutput {
13094	s.NextToken = &v
13095	return s
13096}
13097
13098// SetWorldExportJobSummaries sets the WorldExportJobSummaries field's value.
13099func (s *ListWorldExportJobsOutput) SetWorldExportJobSummaries(v []*WorldExportJobSummary) *ListWorldExportJobsOutput {
13100	s.WorldExportJobSummaries = v
13101	return s
13102}
13103
13104type ListWorldGenerationJobsInput struct {
13105	_ struct{} `type:"structure"`
13106
13107	// Optional filters to limit results. You can use status and templateId.
13108	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
13109
13110	// When this parameter is used, ListWorldGeneratorJobs only returns maxResults
13111	// results in a single page along with a nextToken response element. The remaining
13112	// results of the initial request can be seen by sending another ListWorldGeneratorJobs
13113	// request with the returned nextToken value. This value can be between 1 and
13114	// 100. If this parameter is not used, then ListWorldGeneratorJobs returns up
13115	// to 100 results and a nextToken value if applicable.
13116	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13117
13118	// If the previous paginated request did not return all of the remaining results,
13119	// the response object's nextToken parameter value is set to a token. To retrieve
13120	// the next set of results, call ListWorldGenerationJobsRequest again and assign
13121	// that token to the request object's nextToken parameter. If there are no remaining
13122	// results, the previous response object's NextToken parameter is set to null.
13123	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13124}
13125
13126// String returns the string representation
13127func (s ListWorldGenerationJobsInput) String() string {
13128	return awsutil.Prettify(s)
13129}
13130
13131// GoString returns the string representation
13132func (s ListWorldGenerationJobsInput) GoString() string {
13133	return s.String()
13134}
13135
13136// Validate inspects the fields of the type to determine if they are valid.
13137func (s *ListWorldGenerationJobsInput) Validate() error {
13138	invalidParams := request.ErrInvalidParams{Context: "ListWorldGenerationJobsInput"}
13139	if s.Filters != nil && len(s.Filters) < 1 {
13140		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
13141	}
13142	if s.NextToken != nil && len(*s.NextToken) < 1 {
13143		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13144	}
13145	if s.Filters != nil {
13146		for i, v := range s.Filters {
13147			if v == nil {
13148				continue
13149			}
13150			if err := v.Validate(); err != nil {
13151				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13152			}
13153		}
13154	}
13155
13156	if invalidParams.Len() > 0 {
13157		return invalidParams
13158	}
13159	return nil
13160}
13161
13162// SetFilters sets the Filters field's value.
13163func (s *ListWorldGenerationJobsInput) SetFilters(v []*Filter) *ListWorldGenerationJobsInput {
13164	s.Filters = v
13165	return s
13166}
13167
13168// SetMaxResults sets the MaxResults field's value.
13169func (s *ListWorldGenerationJobsInput) SetMaxResults(v int64) *ListWorldGenerationJobsInput {
13170	s.MaxResults = &v
13171	return s
13172}
13173
13174// SetNextToken sets the NextToken field's value.
13175func (s *ListWorldGenerationJobsInput) SetNextToken(v string) *ListWorldGenerationJobsInput {
13176	s.NextToken = &v
13177	return s
13178}
13179
13180type ListWorldGenerationJobsOutput struct {
13181	_ struct{} `type:"structure"`
13182
13183	// If the previous paginated request did not return all of the remaining results,
13184	// the response object's nextToken parameter value is set to a token. To retrieve
13185	// the next set of results, call ListWorldGeneratorJobsRequest again and assign
13186	// that token to the request object's nextToken parameter. If there are no remaining
13187	// results, the previous response object's NextToken parameter is set to null.
13188	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13189
13190	// Summary information for world generator jobs.
13191	//
13192	// WorldGenerationJobSummaries is a required field
13193	WorldGenerationJobSummaries []*WorldGenerationJobSummary `locationName:"worldGenerationJobSummaries" type:"list" required:"true"`
13194}
13195
13196// String returns the string representation
13197func (s ListWorldGenerationJobsOutput) String() string {
13198	return awsutil.Prettify(s)
13199}
13200
13201// GoString returns the string representation
13202func (s ListWorldGenerationJobsOutput) GoString() string {
13203	return s.String()
13204}
13205
13206// SetNextToken sets the NextToken field's value.
13207func (s *ListWorldGenerationJobsOutput) SetNextToken(v string) *ListWorldGenerationJobsOutput {
13208	s.NextToken = &v
13209	return s
13210}
13211
13212// SetWorldGenerationJobSummaries sets the WorldGenerationJobSummaries field's value.
13213func (s *ListWorldGenerationJobsOutput) SetWorldGenerationJobSummaries(v []*WorldGenerationJobSummary) *ListWorldGenerationJobsOutput {
13214	s.WorldGenerationJobSummaries = v
13215	return s
13216}
13217
13218type ListWorldTemplatesInput struct {
13219	_ struct{} `type:"structure"`
13220
13221	// When this parameter is used, ListWorldTemplates only returns maxResults results
13222	// in a single page along with a nextToken response element. The remaining results
13223	// of the initial request can be seen by sending another ListWorldTemplates
13224	// request with the returned nextToken value. This value can be between 1 and
13225	// 100. If this parameter is not used, then ListWorldTemplates returns up to
13226	// 100 results and a nextToken value if applicable.
13227	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13228
13229	// If the previous paginated request did not return all of the remaining results,
13230	// the response object's nextToken parameter value is set to a token. To retrieve
13231	// the next set of results, call ListWorldTemplates again and assign that token
13232	// to the request object's nextToken parameter. If there are no remaining results,
13233	// the previous response object's NextToken parameter is set to null.
13234	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13235}
13236
13237// String returns the string representation
13238func (s ListWorldTemplatesInput) String() string {
13239	return awsutil.Prettify(s)
13240}
13241
13242// GoString returns the string representation
13243func (s ListWorldTemplatesInput) GoString() string {
13244	return s.String()
13245}
13246
13247// Validate inspects the fields of the type to determine if they are valid.
13248func (s *ListWorldTemplatesInput) Validate() error {
13249	invalidParams := request.ErrInvalidParams{Context: "ListWorldTemplatesInput"}
13250	if s.NextToken != nil && len(*s.NextToken) < 1 {
13251		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13252	}
13253
13254	if invalidParams.Len() > 0 {
13255		return invalidParams
13256	}
13257	return nil
13258}
13259
13260// SetMaxResults sets the MaxResults field's value.
13261func (s *ListWorldTemplatesInput) SetMaxResults(v int64) *ListWorldTemplatesInput {
13262	s.MaxResults = &v
13263	return s
13264}
13265
13266// SetNextToken sets the NextToken field's value.
13267func (s *ListWorldTemplatesInput) SetNextToken(v string) *ListWorldTemplatesInput {
13268	s.NextToken = &v
13269	return s
13270}
13271
13272type ListWorldTemplatesOutput struct {
13273	_ struct{} `type:"structure"`
13274
13275	// If the previous paginated request did not return all of the remaining results,
13276	// the response object's nextToken parameter value is set to a token. To retrieve
13277	// the next set of results, call ListWorldTemplates again and assign that token
13278	// to the request object's nextToken parameter. If there are no remaining results,
13279	// the previous response object's NextToken parameter is set to null.
13280	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13281
13282	// Summary information for templates.
13283	TemplateSummaries []*TemplateSummary `locationName:"templateSummaries" type:"list"`
13284}
13285
13286// String returns the string representation
13287func (s ListWorldTemplatesOutput) String() string {
13288	return awsutil.Prettify(s)
13289}
13290
13291// GoString returns the string representation
13292func (s ListWorldTemplatesOutput) GoString() string {
13293	return s.String()
13294}
13295
13296// SetNextToken sets the NextToken field's value.
13297func (s *ListWorldTemplatesOutput) SetNextToken(v string) *ListWorldTemplatesOutput {
13298	s.NextToken = &v
13299	return s
13300}
13301
13302// SetTemplateSummaries sets the TemplateSummaries field's value.
13303func (s *ListWorldTemplatesOutput) SetTemplateSummaries(v []*TemplateSummary) *ListWorldTemplatesOutput {
13304	s.TemplateSummaries = v
13305	return s
13306}
13307
13308type ListWorldsInput struct {
13309	_ struct{} `type:"structure"`
13310
13311	// Optional filters to limit results. You can use status.
13312	Filters []*Filter `locationName:"filters" min:"1" type:"list"`
13313
13314	// When this parameter is used, ListWorlds only returns maxResults results in
13315	// a single page along with a nextToken response element. The remaining results
13316	// of the initial request can be seen by sending another ListWorlds request
13317	// with the returned nextToken value. This value can be between 1 and 100. If
13318	// this parameter is not used, then ListWorlds returns up to 100 results and
13319	// a nextToken value if applicable.
13320	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13321
13322	// If the previous paginated request did not return all of the remaining results,
13323	// the response object's nextToken parameter value is set to a token. To retrieve
13324	// the next set of results, call ListWorlds again and assign that token to the
13325	// request object's nextToken parameter. If there are no remaining results,
13326	// the previous response object's NextToken parameter is set to null.
13327	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13328}
13329
13330// String returns the string representation
13331func (s ListWorldsInput) String() string {
13332	return awsutil.Prettify(s)
13333}
13334
13335// GoString returns the string representation
13336func (s ListWorldsInput) GoString() string {
13337	return s.String()
13338}
13339
13340// Validate inspects the fields of the type to determine if they are valid.
13341func (s *ListWorldsInput) Validate() error {
13342	invalidParams := request.ErrInvalidParams{Context: "ListWorldsInput"}
13343	if s.Filters != nil && len(s.Filters) < 1 {
13344		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
13345	}
13346	if s.NextToken != nil && len(*s.NextToken) < 1 {
13347		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
13348	}
13349	if s.Filters != nil {
13350		for i, v := range s.Filters {
13351			if v == nil {
13352				continue
13353			}
13354			if err := v.Validate(); err != nil {
13355				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13356			}
13357		}
13358	}
13359
13360	if invalidParams.Len() > 0 {
13361		return invalidParams
13362	}
13363	return nil
13364}
13365
13366// SetFilters sets the Filters field's value.
13367func (s *ListWorldsInput) SetFilters(v []*Filter) *ListWorldsInput {
13368	s.Filters = v
13369	return s
13370}
13371
13372// SetMaxResults sets the MaxResults field's value.
13373func (s *ListWorldsInput) SetMaxResults(v int64) *ListWorldsInput {
13374	s.MaxResults = &v
13375	return s
13376}
13377
13378// SetNextToken sets the NextToken field's value.
13379func (s *ListWorldsInput) SetNextToken(v string) *ListWorldsInput {
13380	s.NextToken = &v
13381	return s
13382}
13383
13384type ListWorldsOutput struct {
13385	_ struct{} `type:"structure"`
13386
13387	// If the previous paginated request did not return all of the remaining results,
13388	// the response object's nextToken parameter value is set to a token. To retrieve
13389	// the next set of results, call ListWorlds again and assign that token to the
13390	// request object's nextToken parameter. If there are no remaining results,
13391	// the previous response object's NextToken parameter is set to null.
13392	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
13393
13394	// Summary information for worlds.
13395	WorldSummaries []*WorldSummary `locationName:"worldSummaries" type:"list"`
13396}
13397
13398// String returns the string representation
13399func (s ListWorldsOutput) String() string {
13400	return awsutil.Prettify(s)
13401}
13402
13403// GoString returns the string representation
13404func (s ListWorldsOutput) GoString() string {
13405	return s.String()
13406}
13407
13408// SetNextToken sets the NextToken field's value.
13409func (s *ListWorldsOutput) SetNextToken(v string) *ListWorldsOutput {
13410	s.NextToken = &v
13411	return s
13412}
13413
13414// SetWorldSummaries sets the WorldSummaries field's value.
13415func (s *ListWorldsOutput) SetWorldSummaries(v []*WorldSummary) *ListWorldsOutput {
13416	s.WorldSummaries = v
13417	return s
13418}
13419
13420// The logging configuration.
13421type LoggingConfig struct {
13422	_ struct{} `type:"structure"`
13423
13424	// A boolean indicating whether to record all ROS topics.
13425	//
13426	// RecordAllRosTopics is a required field
13427	RecordAllRosTopics *bool `locationName:"recordAllRosTopics" type:"boolean" required:"true"`
13428}
13429
13430// String returns the string representation
13431func (s LoggingConfig) String() string {
13432	return awsutil.Prettify(s)
13433}
13434
13435// GoString returns the string representation
13436func (s LoggingConfig) GoString() string {
13437	return s.String()
13438}
13439
13440// Validate inspects the fields of the type to determine if they are valid.
13441func (s *LoggingConfig) Validate() error {
13442	invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"}
13443	if s.RecordAllRosTopics == nil {
13444		invalidParams.Add(request.NewErrParamRequired("RecordAllRosTopics"))
13445	}
13446
13447	if invalidParams.Len() > 0 {
13448		return invalidParams
13449	}
13450	return nil
13451}
13452
13453// SetRecordAllRosTopics sets the RecordAllRosTopics field's value.
13454func (s *LoggingConfig) SetRecordAllRosTopics(v bool) *LoggingConfig {
13455	s.RecordAllRosTopics = &v
13456	return s
13457}
13458
13459// Describes a network interface.
13460type NetworkInterface struct {
13461	_ struct{} `type:"structure"`
13462
13463	// The ID of the network interface.
13464	NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"`
13465
13466	// The IPv4 address of the network interface within the subnet.
13467	PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"`
13468
13469	// The IPv4 public address of the network interface.
13470	PublicIpAddress *string `locationName:"publicIpAddress" type:"string"`
13471}
13472
13473// String returns the string representation
13474func (s NetworkInterface) String() string {
13475	return awsutil.Prettify(s)
13476}
13477
13478// GoString returns the string representation
13479func (s NetworkInterface) GoString() string {
13480	return s.String()
13481}
13482
13483// SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
13484func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface {
13485	s.NetworkInterfaceId = &v
13486	return s
13487}
13488
13489// SetPrivateIpAddress sets the PrivateIpAddress field's value.
13490func (s *NetworkInterface) SetPrivateIpAddress(v string) *NetworkInterface {
13491	s.PrivateIpAddress = &v
13492	return s
13493}
13494
13495// SetPublicIpAddress sets the PublicIpAddress field's value.
13496func (s *NetworkInterface) SetPublicIpAddress(v string) *NetworkInterface {
13497	s.PublicIpAddress = &v
13498	return s
13499}
13500
13501// The output location.
13502type OutputLocation struct {
13503	_ struct{} `type:"structure"`
13504
13505	// The S3 bucket for output.
13506	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
13507
13508	// The S3 folder in the s3Bucket where output files will be placed.
13509	S3Prefix *string `locationName:"s3Prefix" min:"1" type:"string"`
13510}
13511
13512// String returns the string representation
13513func (s OutputLocation) String() string {
13514	return awsutil.Prettify(s)
13515}
13516
13517// GoString returns the string representation
13518func (s OutputLocation) GoString() string {
13519	return s.String()
13520}
13521
13522// Validate inspects the fields of the type to determine if they are valid.
13523func (s *OutputLocation) Validate() error {
13524	invalidParams := request.ErrInvalidParams{Context: "OutputLocation"}
13525	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
13526		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
13527	}
13528	if s.S3Prefix != nil && len(*s.S3Prefix) < 1 {
13529		invalidParams.Add(request.NewErrParamMinLen("S3Prefix", 1))
13530	}
13531
13532	if invalidParams.Len() > 0 {
13533		return invalidParams
13534	}
13535	return nil
13536}
13537
13538// SetS3Bucket sets the S3Bucket field's value.
13539func (s *OutputLocation) SetS3Bucket(v string) *OutputLocation {
13540	s.S3Bucket = &v
13541	return s
13542}
13543
13544// SetS3Prefix sets the S3Prefix field's value.
13545func (s *OutputLocation) SetS3Prefix(v string) *OutputLocation {
13546	s.S3Prefix = &v
13547	return s
13548}
13549
13550// Configuration information for port forwarding.
13551type PortForwardingConfig struct {
13552	_ struct{} `type:"structure"`
13553
13554	// The port mappings for the configuration.
13555	PortMappings []*PortMapping `locationName:"portMappings" type:"list"`
13556}
13557
13558// String returns the string representation
13559func (s PortForwardingConfig) String() string {
13560	return awsutil.Prettify(s)
13561}
13562
13563// GoString returns the string representation
13564func (s PortForwardingConfig) GoString() string {
13565	return s.String()
13566}
13567
13568// Validate inspects the fields of the type to determine if they are valid.
13569func (s *PortForwardingConfig) Validate() error {
13570	invalidParams := request.ErrInvalidParams{Context: "PortForwardingConfig"}
13571	if s.PortMappings != nil {
13572		for i, v := range s.PortMappings {
13573			if v == nil {
13574				continue
13575			}
13576			if err := v.Validate(); err != nil {
13577				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PortMappings", i), err.(request.ErrInvalidParams))
13578			}
13579		}
13580	}
13581
13582	if invalidParams.Len() > 0 {
13583		return invalidParams
13584	}
13585	return nil
13586}
13587
13588// SetPortMappings sets the PortMappings field's value.
13589func (s *PortForwardingConfig) SetPortMappings(v []*PortMapping) *PortForwardingConfig {
13590	s.PortMappings = v
13591	return s
13592}
13593
13594// An object representing a port mapping.
13595type PortMapping struct {
13596	_ struct{} `type:"structure"`
13597
13598	// The port number on the application.
13599	//
13600	// ApplicationPort is a required field
13601	ApplicationPort *int64 `locationName:"applicationPort" min:"1024" type:"integer" required:"true"`
13602
13603	// A Boolean indicating whether to enable this port mapping on public IP.
13604	EnableOnPublicIp *bool `locationName:"enableOnPublicIp" type:"boolean"`
13605
13606	// The port number on the simulation job instance to use as a remote connection
13607	// point.
13608	//
13609	// JobPort is a required field
13610	JobPort *int64 `locationName:"jobPort" min:"1" type:"integer" required:"true"`
13611}
13612
13613// String returns the string representation
13614func (s PortMapping) String() string {
13615	return awsutil.Prettify(s)
13616}
13617
13618// GoString returns the string representation
13619func (s PortMapping) GoString() string {
13620	return s.String()
13621}
13622
13623// Validate inspects the fields of the type to determine if they are valid.
13624func (s *PortMapping) Validate() error {
13625	invalidParams := request.ErrInvalidParams{Context: "PortMapping"}
13626	if s.ApplicationPort == nil {
13627		invalidParams.Add(request.NewErrParamRequired("ApplicationPort"))
13628	}
13629	if s.ApplicationPort != nil && *s.ApplicationPort < 1024 {
13630		invalidParams.Add(request.NewErrParamMinValue("ApplicationPort", 1024))
13631	}
13632	if s.JobPort == nil {
13633		invalidParams.Add(request.NewErrParamRequired("JobPort"))
13634	}
13635	if s.JobPort != nil && *s.JobPort < 1 {
13636		invalidParams.Add(request.NewErrParamMinValue("JobPort", 1))
13637	}
13638
13639	if invalidParams.Len() > 0 {
13640		return invalidParams
13641	}
13642	return nil
13643}
13644
13645// SetApplicationPort sets the ApplicationPort field's value.
13646func (s *PortMapping) SetApplicationPort(v int64) *PortMapping {
13647	s.ApplicationPort = &v
13648	return s
13649}
13650
13651// SetEnableOnPublicIp sets the EnableOnPublicIp field's value.
13652func (s *PortMapping) SetEnableOnPublicIp(v bool) *PortMapping {
13653	s.EnableOnPublicIp = &v
13654	return s
13655}
13656
13657// SetJobPort sets the JobPort field's value.
13658func (s *PortMapping) SetJobPort(v int64) *PortMapping {
13659	s.JobPort = &v
13660	return s
13661}
13662
13663// Information about the progress of a deployment job.
13664type ProgressDetail struct {
13665	_ struct{} `type:"structure"`
13666
13667	// The current progress status.
13668	//
13669	// Validating
13670	//
13671	// Validating the deployment.
13672	//
13673	// DownloadingExtracting
13674	//
13675	// Downloading and extracting the bundle on the robot.
13676	//
13677	// ExecutingPreLaunch
13678	//
13679	// Executing pre-launch script(s) if provided.
13680	//
13681	// Launching
13682	//
13683	// Launching the robot application.
13684	//
13685	// ExecutingPostLaunch
13686	//
13687	// Executing post-launch script(s) if provided.
13688	//
13689	// Finished
13690	//
13691	// Deployment is complete.
13692	CurrentProgress *string `locationName:"currentProgress" type:"string" enum:"RobotDeploymentStep"`
13693
13694	// Estimated amount of time in seconds remaining in the step. This currently
13695	// only applies to the Downloading/Extracting step of the deployment. It is
13696	// empty for other steps.
13697	EstimatedTimeRemainingSeconds *int64 `locationName:"estimatedTimeRemainingSeconds" type:"integer"`
13698
13699	// Precentage of the step that is done. This currently only applies to the Downloading/Extracting
13700	// step of the deployment. It is empty for other steps.
13701	PercentDone *float64 `locationName:"percentDone" type:"float"`
13702
13703	// The Amazon Resource Name (ARN) of the deployment job.
13704	TargetResource *string `locationName:"targetResource" type:"string"`
13705}
13706
13707// String returns the string representation
13708func (s ProgressDetail) String() string {
13709	return awsutil.Prettify(s)
13710}
13711
13712// GoString returns the string representation
13713func (s ProgressDetail) GoString() string {
13714	return s.String()
13715}
13716
13717// SetCurrentProgress sets the CurrentProgress field's value.
13718func (s *ProgressDetail) SetCurrentProgress(v string) *ProgressDetail {
13719	s.CurrentProgress = &v
13720	return s
13721}
13722
13723// SetEstimatedTimeRemainingSeconds sets the EstimatedTimeRemainingSeconds field's value.
13724func (s *ProgressDetail) SetEstimatedTimeRemainingSeconds(v int64) *ProgressDetail {
13725	s.EstimatedTimeRemainingSeconds = &v
13726	return s
13727}
13728
13729// SetPercentDone sets the PercentDone field's value.
13730func (s *ProgressDetail) SetPercentDone(v float64) *ProgressDetail {
13731	s.PercentDone = &v
13732	return s
13733}
13734
13735// SetTargetResource sets the TargetResource field's value.
13736func (s *ProgressDetail) SetTargetResource(v string) *ProgressDetail {
13737	s.TargetResource = &v
13738	return s
13739}
13740
13741type RegisterRobotInput struct {
13742	_ struct{} `type:"structure"`
13743
13744	// The Amazon Resource Name (ARN) of the fleet.
13745	//
13746	// Fleet is a required field
13747	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
13748
13749	// The Amazon Resource Name (ARN) of the robot.
13750	//
13751	// Robot is a required field
13752	Robot *string `locationName:"robot" min:"1" type:"string" required:"true"`
13753}
13754
13755// String returns the string representation
13756func (s RegisterRobotInput) String() string {
13757	return awsutil.Prettify(s)
13758}
13759
13760// GoString returns the string representation
13761func (s RegisterRobotInput) GoString() string {
13762	return s.String()
13763}
13764
13765// Validate inspects the fields of the type to determine if they are valid.
13766func (s *RegisterRobotInput) Validate() error {
13767	invalidParams := request.ErrInvalidParams{Context: "RegisterRobotInput"}
13768	if s.Fleet == nil {
13769		invalidParams.Add(request.NewErrParamRequired("Fleet"))
13770	}
13771	if s.Fleet != nil && len(*s.Fleet) < 1 {
13772		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
13773	}
13774	if s.Robot == nil {
13775		invalidParams.Add(request.NewErrParamRequired("Robot"))
13776	}
13777	if s.Robot != nil && len(*s.Robot) < 1 {
13778		invalidParams.Add(request.NewErrParamMinLen("Robot", 1))
13779	}
13780
13781	if invalidParams.Len() > 0 {
13782		return invalidParams
13783	}
13784	return nil
13785}
13786
13787// SetFleet sets the Fleet field's value.
13788func (s *RegisterRobotInput) SetFleet(v string) *RegisterRobotInput {
13789	s.Fleet = &v
13790	return s
13791}
13792
13793// SetRobot sets the Robot field's value.
13794func (s *RegisterRobotInput) SetRobot(v string) *RegisterRobotInput {
13795	s.Robot = &v
13796	return s
13797}
13798
13799type RegisterRobotOutput struct {
13800	_ struct{} `type:"structure"`
13801
13802	// The Amazon Resource Name (ARN) of the fleet that the robot will join.
13803	Fleet *string `locationName:"fleet" min:"1" type:"string"`
13804
13805	// Information about the robot registration.
13806	Robot *string `locationName:"robot" min:"1" type:"string"`
13807}
13808
13809// String returns the string representation
13810func (s RegisterRobotOutput) String() string {
13811	return awsutil.Prettify(s)
13812}
13813
13814// GoString returns the string representation
13815func (s RegisterRobotOutput) GoString() string {
13816	return s.String()
13817}
13818
13819// SetFleet sets the Fleet field's value.
13820func (s *RegisterRobotOutput) SetFleet(v string) *RegisterRobotOutput {
13821	s.Fleet = &v
13822	return s
13823}
13824
13825// SetRobot sets the Robot field's value.
13826func (s *RegisterRobotOutput) SetRobot(v string) *RegisterRobotOutput {
13827	s.Robot = &v
13828	return s
13829}
13830
13831// Information about a rendering engine.
13832type RenderingEngine struct {
13833	_ struct{} `type:"structure"`
13834
13835	// The name of the rendering engine.
13836	Name *string `locationName:"name" type:"string" enum:"RenderingEngineType"`
13837
13838	// The version of the rendering engine.
13839	Version *string `locationName:"version" min:"1" type:"string"`
13840}
13841
13842// String returns the string representation
13843func (s RenderingEngine) String() string {
13844	return awsutil.Prettify(s)
13845}
13846
13847// GoString returns the string representation
13848func (s RenderingEngine) GoString() string {
13849	return s.String()
13850}
13851
13852// Validate inspects the fields of the type to determine if they are valid.
13853func (s *RenderingEngine) Validate() error {
13854	invalidParams := request.ErrInvalidParams{Context: "RenderingEngine"}
13855	if s.Version != nil && len(*s.Version) < 1 {
13856		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
13857	}
13858
13859	if invalidParams.Len() > 0 {
13860		return invalidParams
13861	}
13862	return nil
13863}
13864
13865// SetName sets the Name field's value.
13866func (s *RenderingEngine) SetName(v string) *RenderingEngine {
13867	s.Name = &v
13868	return s
13869}
13870
13871// SetVersion sets the Version field's value.
13872func (s *RenderingEngine) SetVersion(v string) *RenderingEngine {
13873	s.Version = &v
13874	return s
13875}
13876
13877// The specified resource already exists.
13878type ResourceAlreadyExistsException struct {
13879	_            struct{}                  `type:"structure"`
13880	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13881
13882	Message_ *string `locationName:"message" type:"string"`
13883}
13884
13885// String returns the string representation
13886func (s ResourceAlreadyExistsException) String() string {
13887	return awsutil.Prettify(s)
13888}
13889
13890// GoString returns the string representation
13891func (s ResourceAlreadyExistsException) GoString() string {
13892	return s.String()
13893}
13894
13895func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error {
13896	return &ResourceAlreadyExistsException{
13897		RespMetadata: v,
13898	}
13899}
13900
13901// Code returns the exception type name.
13902func (s *ResourceAlreadyExistsException) Code() string {
13903	return "ResourceAlreadyExistsException"
13904}
13905
13906// Message returns the exception's message.
13907func (s *ResourceAlreadyExistsException) Message() string {
13908	if s.Message_ != nil {
13909		return *s.Message_
13910	}
13911	return ""
13912}
13913
13914// OrigErr always returns nil, satisfies awserr.Error interface.
13915func (s *ResourceAlreadyExistsException) OrigErr() error {
13916	return nil
13917}
13918
13919func (s *ResourceAlreadyExistsException) Error() string {
13920	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13921}
13922
13923// Status code returns the HTTP status code for the request's response error.
13924func (s *ResourceAlreadyExistsException) StatusCode() int {
13925	return s.RespMetadata.StatusCode
13926}
13927
13928// RequestID returns the service's response RequestID for request.
13929func (s *ResourceAlreadyExistsException) RequestID() string {
13930	return s.RespMetadata.RequestID
13931}
13932
13933// The specified resource does not exist.
13934type ResourceNotFoundException struct {
13935	_            struct{}                  `type:"structure"`
13936	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13937
13938	Message_ *string `locationName:"message" type:"string"`
13939}
13940
13941// String returns the string representation
13942func (s ResourceNotFoundException) String() string {
13943	return awsutil.Prettify(s)
13944}
13945
13946// GoString returns the string representation
13947func (s ResourceNotFoundException) GoString() string {
13948	return s.String()
13949}
13950
13951func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
13952	return &ResourceNotFoundException{
13953		RespMetadata: v,
13954	}
13955}
13956
13957// Code returns the exception type name.
13958func (s *ResourceNotFoundException) Code() string {
13959	return "ResourceNotFoundException"
13960}
13961
13962// Message returns the exception's message.
13963func (s *ResourceNotFoundException) Message() string {
13964	if s.Message_ != nil {
13965		return *s.Message_
13966	}
13967	return ""
13968}
13969
13970// OrigErr always returns nil, satisfies awserr.Error interface.
13971func (s *ResourceNotFoundException) OrigErr() error {
13972	return nil
13973}
13974
13975func (s *ResourceNotFoundException) Error() string {
13976	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13977}
13978
13979// Status code returns the HTTP status code for the request's response error.
13980func (s *ResourceNotFoundException) StatusCode() int {
13981	return s.RespMetadata.StatusCode
13982}
13983
13984// RequestID returns the service's response RequestID for request.
13985func (s *ResourceNotFoundException) RequestID() string {
13986	return s.RespMetadata.RequestID
13987}
13988
13989type RestartSimulationJobInput struct {
13990	_ struct{} `type:"structure"`
13991
13992	// The Amazon Resource Name (ARN) of the simulation job.
13993	//
13994	// Job is a required field
13995	Job *string `locationName:"job" min:"1" type:"string" required:"true"`
13996}
13997
13998// String returns the string representation
13999func (s RestartSimulationJobInput) String() string {
14000	return awsutil.Prettify(s)
14001}
14002
14003// GoString returns the string representation
14004func (s RestartSimulationJobInput) GoString() string {
14005	return s.String()
14006}
14007
14008// Validate inspects the fields of the type to determine if they are valid.
14009func (s *RestartSimulationJobInput) Validate() error {
14010	invalidParams := request.ErrInvalidParams{Context: "RestartSimulationJobInput"}
14011	if s.Job == nil {
14012		invalidParams.Add(request.NewErrParamRequired("Job"))
14013	}
14014	if s.Job != nil && len(*s.Job) < 1 {
14015		invalidParams.Add(request.NewErrParamMinLen("Job", 1))
14016	}
14017
14018	if invalidParams.Len() > 0 {
14019		return invalidParams
14020	}
14021	return nil
14022}
14023
14024// SetJob sets the Job field's value.
14025func (s *RestartSimulationJobInput) SetJob(v string) *RestartSimulationJobInput {
14026	s.Job = &v
14027	return s
14028}
14029
14030type RestartSimulationJobOutput struct {
14031	_ struct{} `type:"structure"`
14032}
14033
14034// String returns the string representation
14035func (s RestartSimulationJobOutput) String() string {
14036	return awsutil.Prettify(s)
14037}
14038
14039// GoString returns the string representation
14040func (s RestartSimulationJobOutput) GoString() string {
14041	return s.String()
14042}
14043
14044// Information about a robot.
14045type Robot struct {
14046	_ struct{} `type:"structure"`
14047
14048	// The architecture of the robot.
14049	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
14050
14051	// The Amazon Resource Name (ARN) of the robot.
14052	Arn *string `locationName:"arn" min:"1" type:"string"`
14053
14054	// The time, in milliseconds since the epoch, when the robot was created.
14055	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
14056
14057	// The Amazon Resource Name (ARN) of the fleet.
14058	FleetArn *string `locationName:"fleetArn" min:"1" type:"string"`
14059
14060	// The Greengrass group associated with the robot.
14061	GreenGrassGroupId *string `locationName:"greenGrassGroupId" min:"1" type:"string"`
14062
14063	// The Amazon Resource Name (ARN) of the last deployment job.
14064	LastDeploymentJob *string `locationName:"lastDeploymentJob" min:"1" type:"string"`
14065
14066	// The time of the last deployment.
14067	LastDeploymentTime *time.Time `locationName:"lastDeploymentTime" type:"timestamp"`
14068
14069	// The name of the robot.
14070	Name *string `locationName:"name" min:"1" type:"string"`
14071
14072	// The status of the robot.
14073	Status *string `locationName:"status" type:"string" enum:"RobotStatus"`
14074}
14075
14076// String returns the string representation
14077func (s Robot) String() string {
14078	return awsutil.Prettify(s)
14079}
14080
14081// GoString returns the string representation
14082func (s Robot) GoString() string {
14083	return s.String()
14084}
14085
14086// SetArchitecture sets the Architecture field's value.
14087func (s *Robot) SetArchitecture(v string) *Robot {
14088	s.Architecture = &v
14089	return s
14090}
14091
14092// SetArn sets the Arn field's value.
14093func (s *Robot) SetArn(v string) *Robot {
14094	s.Arn = &v
14095	return s
14096}
14097
14098// SetCreatedAt sets the CreatedAt field's value.
14099func (s *Robot) SetCreatedAt(v time.Time) *Robot {
14100	s.CreatedAt = &v
14101	return s
14102}
14103
14104// SetFleetArn sets the FleetArn field's value.
14105func (s *Robot) SetFleetArn(v string) *Robot {
14106	s.FleetArn = &v
14107	return s
14108}
14109
14110// SetGreenGrassGroupId sets the GreenGrassGroupId field's value.
14111func (s *Robot) SetGreenGrassGroupId(v string) *Robot {
14112	s.GreenGrassGroupId = &v
14113	return s
14114}
14115
14116// SetLastDeploymentJob sets the LastDeploymentJob field's value.
14117func (s *Robot) SetLastDeploymentJob(v string) *Robot {
14118	s.LastDeploymentJob = &v
14119	return s
14120}
14121
14122// SetLastDeploymentTime sets the LastDeploymentTime field's value.
14123func (s *Robot) SetLastDeploymentTime(v time.Time) *Robot {
14124	s.LastDeploymentTime = &v
14125	return s
14126}
14127
14128// SetName sets the Name field's value.
14129func (s *Robot) SetName(v string) *Robot {
14130	s.Name = &v
14131	return s
14132}
14133
14134// SetStatus sets the Status field's value.
14135func (s *Robot) SetStatus(v string) *Robot {
14136	s.Status = &v
14137	return s
14138}
14139
14140// Application configuration information for a robot.
14141type RobotApplicationConfig struct {
14142	_ struct{} `type:"structure"`
14143
14144	// The application information for the robot application.
14145	//
14146	// Application is a required field
14147	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
14148
14149	// The version of the robot application.
14150	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
14151
14152	// The launch configuration for the robot application.
14153	//
14154	// LaunchConfig is a required field
14155	LaunchConfig *LaunchConfig `locationName:"launchConfig" type:"structure" required:"true"`
14156
14157	// Information about tools configured for the robot application.
14158	Tools []*Tool `locationName:"tools" type:"list"`
14159
14160	// The upload configurations for the robot application.
14161	UploadConfigurations []*UploadConfiguration `locationName:"uploadConfigurations" type:"list"`
14162
14163	// A Boolean indicating whether to use default robot application tools. The
14164	// default tools are rviz, rqt, terminal and rosbag record. The default is False.
14165	UseDefaultTools *bool `locationName:"useDefaultTools" type:"boolean"`
14166
14167	// A Boolean indicating whether to use default upload configurations. By default,
14168	// .ros and .gazebo files are uploaded when the application terminates and all
14169	// ROS topics will be recorded.
14170	//
14171	// If you set this value, you must specify an outputLocation.
14172	UseDefaultUploadConfigurations *bool `locationName:"useDefaultUploadConfigurations" type:"boolean"`
14173}
14174
14175// String returns the string representation
14176func (s RobotApplicationConfig) String() string {
14177	return awsutil.Prettify(s)
14178}
14179
14180// GoString returns the string representation
14181func (s RobotApplicationConfig) GoString() string {
14182	return s.String()
14183}
14184
14185// Validate inspects the fields of the type to determine if they are valid.
14186func (s *RobotApplicationConfig) Validate() error {
14187	invalidParams := request.ErrInvalidParams{Context: "RobotApplicationConfig"}
14188	if s.Application == nil {
14189		invalidParams.Add(request.NewErrParamRequired("Application"))
14190	}
14191	if s.Application != nil && len(*s.Application) < 1 {
14192		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
14193	}
14194	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
14195		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
14196	}
14197	if s.LaunchConfig == nil {
14198		invalidParams.Add(request.NewErrParamRequired("LaunchConfig"))
14199	}
14200	if s.LaunchConfig != nil {
14201		if err := s.LaunchConfig.Validate(); err != nil {
14202			invalidParams.AddNested("LaunchConfig", err.(request.ErrInvalidParams))
14203		}
14204	}
14205	if s.Tools != nil {
14206		for i, v := range s.Tools {
14207			if v == nil {
14208				continue
14209			}
14210			if err := v.Validate(); err != nil {
14211				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tools", i), err.(request.ErrInvalidParams))
14212			}
14213		}
14214	}
14215	if s.UploadConfigurations != nil {
14216		for i, v := range s.UploadConfigurations {
14217			if v == nil {
14218				continue
14219			}
14220			if err := v.Validate(); err != nil {
14221				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UploadConfigurations", i), err.(request.ErrInvalidParams))
14222			}
14223		}
14224	}
14225
14226	if invalidParams.Len() > 0 {
14227		return invalidParams
14228	}
14229	return nil
14230}
14231
14232// SetApplication sets the Application field's value.
14233func (s *RobotApplicationConfig) SetApplication(v string) *RobotApplicationConfig {
14234	s.Application = &v
14235	return s
14236}
14237
14238// SetApplicationVersion sets the ApplicationVersion field's value.
14239func (s *RobotApplicationConfig) SetApplicationVersion(v string) *RobotApplicationConfig {
14240	s.ApplicationVersion = &v
14241	return s
14242}
14243
14244// SetLaunchConfig sets the LaunchConfig field's value.
14245func (s *RobotApplicationConfig) SetLaunchConfig(v *LaunchConfig) *RobotApplicationConfig {
14246	s.LaunchConfig = v
14247	return s
14248}
14249
14250// SetTools sets the Tools field's value.
14251func (s *RobotApplicationConfig) SetTools(v []*Tool) *RobotApplicationConfig {
14252	s.Tools = v
14253	return s
14254}
14255
14256// SetUploadConfigurations sets the UploadConfigurations field's value.
14257func (s *RobotApplicationConfig) SetUploadConfigurations(v []*UploadConfiguration) *RobotApplicationConfig {
14258	s.UploadConfigurations = v
14259	return s
14260}
14261
14262// SetUseDefaultTools sets the UseDefaultTools field's value.
14263func (s *RobotApplicationConfig) SetUseDefaultTools(v bool) *RobotApplicationConfig {
14264	s.UseDefaultTools = &v
14265	return s
14266}
14267
14268// SetUseDefaultUploadConfigurations sets the UseDefaultUploadConfigurations field's value.
14269func (s *RobotApplicationConfig) SetUseDefaultUploadConfigurations(v bool) *RobotApplicationConfig {
14270	s.UseDefaultUploadConfigurations = &v
14271	return s
14272}
14273
14274// Summary information for a robot application.
14275type RobotApplicationSummary struct {
14276	_ struct{} `type:"structure"`
14277
14278	// The Amazon Resource Name (ARN) of the robot.
14279	Arn *string `locationName:"arn" min:"1" type:"string"`
14280
14281	// The time, in milliseconds since the epoch, when the robot application was
14282	// last updated.
14283	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
14284
14285	// The name of the robot application.
14286	Name *string `locationName:"name" min:"1" type:"string"`
14287
14288	// Information about a robot software suite (ROS distribution).
14289	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
14290
14291	// The version of the robot application.
14292	Version *string `locationName:"version" min:"1" type:"string"`
14293}
14294
14295// String returns the string representation
14296func (s RobotApplicationSummary) String() string {
14297	return awsutil.Prettify(s)
14298}
14299
14300// GoString returns the string representation
14301func (s RobotApplicationSummary) GoString() string {
14302	return s.String()
14303}
14304
14305// SetArn sets the Arn field's value.
14306func (s *RobotApplicationSummary) SetArn(v string) *RobotApplicationSummary {
14307	s.Arn = &v
14308	return s
14309}
14310
14311// SetLastUpdatedAt sets the LastUpdatedAt field's value.
14312func (s *RobotApplicationSummary) SetLastUpdatedAt(v time.Time) *RobotApplicationSummary {
14313	s.LastUpdatedAt = &v
14314	return s
14315}
14316
14317// SetName sets the Name field's value.
14318func (s *RobotApplicationSummary) SetName(v string) *RobotApplicationSummary {
14319	s.Name = &v
14320	return s
14321}
14322
14323// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
14324func (s *RobotApplicationSummary) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *RobotApplicationSummary {
14325	s.RobotSoftwareSuite = v
14326	return s
14327}
14328
14329// SetVersion sets the Version field's value.
14330func (s *RobotApplicationSummary) SetVersion(v string) *RobotApplicationSummary {
14331	s.Version = &v
14332	return s
14333}
14334
14335// Information about a robot deployment.
14336type RobotDeployment struct {
14337	_ struct{} `type:"structure"`
14338
14339	// The robot deployment Amazon Resource Name (ARN).
14340	Arn *string `locationName:"arn" min:"1" type:"string"`
14341
14342	// The time, in milliseconds since the epoch, when the deployment finished.
14343	DeploymentFinishTime *time.Time `locationName:"deploymentFinishTime" type:"timestamp"`
14344
14345	// The time, in milliseconds since the epoch, when the deployment was started.
14346	DeploymentStartTime *time.Time `locationName:"deploymentStartTime" type:"timestamp"`
14347
14348	// The robot deployment failure code.
14349	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
14350
14351	// A short description of the reason why the robot deployment failed.
14352	FailureReason *string `locationName:"failureReason" type:"string"`
14353
14354	// Information about how the deployment is progressing.
14355	ProgressDetail *ProgressDetail `locationName:"progressDetail" type:"structure"`
14356
14357	// The status of the robot deployment.
14358	Status *string `locationName:"status" type:"string" enum:"RobotStatus"`
14359}
14360
14361// String returns the string representation
14362func (s RobotDeployment) String() string {
14363	return awsutil.Prettify(s)
14364}
14365
14366// GoString returns the string representation
14367func (s RobotDeployment) GoString() string {
14368	return s.String()
14369}
14370
14371// SetArn sets the Arn field's value.
14372func (s *RobotDeployment) SetArn(v string) *RobotDeployment {
14373	s.Arn = &v
14374	return s
14375}
14376
14377// SetDeploymentFinishTime sets the DeploymentFinishTime field's value.
14378func (s *RobotDeployment) SetDeploymentFinishTime(v time.Time) *RobotDeployment {
14379	s.DeploymentFinishTime = &v
14380	return s
14381}
14382
14383// SetDeploymentStartTime sets the DeploymentStartTime field's value.
14384func (s *RobotDeployment) SetDeploymentStartTime(v time.Time) *RobotDeployment {
14385	s.DeploymentStartTime = &v
14386	return s
14387}
14388
14389// SetFailureCode sets the FailureCode field's value.
14390func (s *RobotDeployment) SetFailureCode(v string) *RobotDeployment {
14391	s.FailureCode = &v
14392	return s
14393}
14394
14395// SetFailureReason sets the FailureReason field's value.
14396func (s *RobotDeployment) SetFailureReason(v string) *RobotDeployment {
14397	s.FailureReason = &v
14398	return s
14399}
14400
14401// SetProgressDetail sets the ProgressDetail field's value.
14402func (s *RobotDeployment) SetProgressDetail(v *ProgressDetail) *RobotDeployment {
14403	s.ProgressDetail = v
14404	return s
14405}
14406
14407// SetStatus sets the Status field's value.
14408func (s *RobotDeployment) SetStatus(v string) *RobotDeployment {
14409	s.Status = &v
14410	return s
14411}
14412
14413// Information about a robot software suite (ROS distribution).
14414type RobotSoftwareSuite struct {
14415	_ struct{} `type:"structure"`
14416
14417	// The name of the robot software suite (ROS distribution).
14418	Name *string `locationName:"name" type:"string" enum:"RobotSoftwareSuiteType"`
14419
14420	// The version of the robot software suite (ROS distribution).
14421	Version *string `locationName:"version" type:"string" enum:"RobotSoftwareSuiteVersionType"`
14422}
14423
14424// String returns the string representation
14425func (s RobotSoftwareSuite) String() string {
14426	return awsutil.Prettify(s)
14427}
14428
14429// GoString returns the string representation
14430func (s RobotSoftwareSuite) GoString() string {
14431	return s.String()
14432}
14433
14434// SetName sets the Name field's value.
14435func (s *RobotSoftwareSuite) SetName(v string) *RobotSoftwareSuite {
14436	s.Name = &v
14437	return s
14438}
14439
14440// SetVersion sets the Version field's value.
14441func (s *RobotSoftwareSuite) SetVersion(v string) *RobotSoftwareSuite {
14442	s.Version = &v
14443	return s
14444}
14445
14446// Information about S3 keys.
14447type S3KeyOutput struct {
14448	_ struct{} `type:"structure"`
14449
14450	// The etag for the object.
14451	Etag *string `locationName:"etag" type:"string"`
14452
14453	// The S3 key.
14454	S3Key *string `locationName:"s3Key" min:"1" type:"string"`
14455}
14456
14457// String returns the string representation
14458func (s S3KeyOutput) String() string {
14459	return awsutil.Prettify(s)
14460}
14461
14462// GoString returns the string representation
14463func (s S3KeyOutput) GoString() string {
14464	return s.String()
14465}
14466
14467// SetEtag sets the Etag field's value.
14468func (s *S3KeyOutput) SetEtag(v string) *S3KeyOutput {
14469	s.Etag = &v
14470	return s
14471}
14472
14473// SetS3Key sets the S3Key field's value.
14474func (s *S3KeyOutput) SetS3Key(v string) *S3KeyOutput {
14475	s.S3Key = &v
14476	return s
14477}
14478
14479// Information about an S3 object.
14480type S3Object struct {
14481	_ struct{} `type:"structure"`
14482
14483	// The bucket containing the object.
14484	//
14485	// Bucket is a required field
14486	Bucket *string `locationName:"bucket" min:"3" type:"string" required:"true"`
14487
14488	// The etag of the object.
14489	Etag *string `locationName:"etag" type:"string"`
14490
14491	// The key of the object.
14492	//
14493	// Key is a required field
14494	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
14495}
14496
14497// String returns the string representation
14498func (s S3Object) String() string {
14499	return awsutil.Prettify(s)
14500}
14501
14502// GoString returns the string representation
14503func (s S3Object) GoString() string {
14504	return s.String()
14505}
14506
14507// Validate inspects the fields of the type to determine if they are valid.
14508func (s *S3Object) Validate() error {
14509	invalidParams := request.ErrInvalidParams{Context: "S3Object"}
14510	if s.Bucket == nil {
14511		invalidParams.Add(request.NewErrParamRequired("Bucket"))
14512	}
14513	if s.Bucket != nil && len(*s.Bucket) < 3 {
14514		invalidParams.Add(request.NewErrParamMinLen("Bucket", 3))
14515	}
14516	if s.Key == nil {
14517		invalidParams.Add(request.NewErrParamRequired("Key"))
14518	}
14519	if s.Key != nil && len(*s.Key) < 1 {
14520		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
14521	}
14522
14523	if invalidParams.Len() > 0 {
14524		return invalidParams
14525	}
14526	return nil
14527}
14528
14529// SetBucket sets the Bucket field's value.
14530func (s *S3Object) SetBucket(v string) *S3Object {
14531	s.Bucket = &v
14532	return s
14533}
14534
14535// SetEtag sets the Etag field's value.
14536func (s *S3Object) SetEtag(v string) *S3Object {
14537	s.Etag = &v
14538	return s
14539}
14540
14541// SetKey sets the Key field's value.
14542func (s *S3Object) SetKey(v string) *S3Object {
14543	s.Key = &v
14544	return s
14545}
14546
14547// The request has failed due to a temporary failure of the server.
14548type ServiceUnavailableException struct {
14549	_            struct{}                  `type:"structure"`
14550	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14551
14552	Message_ *string `locationName:"message" type:"string"`
14553}
14554
14555// String returns the string representation
14556func (s ServiceUnavailableException) String() string {
14557	return awsutil.Prettify(s)
14558}
14559
14560// GoString returns the string representation
14561func (s ServiceUnavailableException) GoString() string {
14562	return s.String()
14563}
14564
14565func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error {
14566	return &ServiceUnavailableException{
14567		RespMetadata: v,
14568	}
14569}
14570
14571// Code returns the exception type name.
14572func (s *ServiceUnavailableException) Code() string {
14573	return "ServiceUnavailableException"
14574}
14575
14576// Message returns the exception's message.
14577func (s *ServiceUnavailableException) Message() string {
14578	if s.Message_ != nil {
14579		return *s.Message_
14580	}
14581	return ""
14582}
14583
14584// OrigErr always returns nil, satisfies awserr.Error interface.
14585func (s *ServiceUnavailableException) OrigErr() error {
14586	return nil
14587}
14588
14589func (s *ServiceUnavailableException) Error() string {
14590	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14591}
14592
14593// Status code returns the HTTP status code for the request's response error.
14594func (s *ServiceUnavailableException) StatusCode() int {
14595	return s.RespMetadata.StatusCode
14596}
14597
14598// RequestID returns the service's response RequestID for request.
14599func (s *ServiceUnavailableException) RequestID() string {
14600	return s.RespMetadata.RequestID
14601}
14602
14603// Information about a simulation application configuration.
14604type SimulationApplicationConfig struct {
14605	_ struct{} `type:"structure"`
14606
14607	// The application information for the simulation application.
14608	//
14609	// Application is a required field
14610	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
14611
14612	// The version of the simulation application.
14613	ApplicationVersion *string `locationName:"applicationVersion" min:"1" type:"string"`
14614
14615	// The launch configuration for the simulation application.
14616	//
14617	// LaunchConfig is a required field
14618	LaunchConfig *LaunchConfig `locationName:"launchConfig" type:"structure" required:"true"`
14619
14620	// Information about tools configured for the simulation application.
14621	Tools []*Tool `locationName:"tools" type:"list"`
14622
14623	// Information about upload configurations for the simulation application.
14624	UploadConfigurations []*UploadConfiguration `locationName:"uploadConfigurations" type:"list"`
14625
14626	// A Boolean indicating whether to use default simulation application tools.
14627	// The default tools are rviz, rqt, terminal and rosbag record. The default
14628	// is False.
14629	UseDefaultTools *bool `locationName:"useDefaultTools" type:"boolean"`
14630
14631	// A Boolean indicating whether to use default upload configurations. By default,
14632	// .ros and .gazebo files are uploaded when the application terminates and all
14633	// ROS topics will be recorded.
14634	//
14635	// If you set this value, you must specify an outputLocation.
14636	UseDefaultUploadConfigurations *bool `locationName:"useDefaultUploadConfigurations" type:"boolean"`
14637
14638	// A list of world configurations.
14639	WorldConfigs []*WorldConfig `locationName:"worldConfigs" type:"list"`
14640}
14641
14642// String returns the string representation
14643func (s SimulationApplicationConfig) String() string {
14644	return awsutil.Prettify(s)
14645}
14646
14647// GoString returns the string representation
14648func (s SimulationApplicationConfig) GoString() string {
14649	return s.String()
14650}
14651
14652// Validate inspects the fields of the type to determine if they are valid.
14653func (s *SimulationApplicationConfig) Validate() error {
14654	invalidParams := request.ErrInvalidParams{Context: "SimulationApplicationConfig"}
14655	if s.Application == nil {
14656		invalidParams.Add(request.NewErrParamRequired("Application"))
14657	}
14658	if s.Application != nil && len(*s.Application) < 1 {
14659		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
14660	}
14661	if s.ApplicationVersion != nil && len(*s.ApplicationVersion) < 1 {
14662		invalidParams.Add(request.NewErrParamMinLen("ApplicationVersion", 1))
14663	}
14664	if s.LaunchConfig == nil {
14665		invalidParams.Add(request.NewErrParamRequired("LaunchConfig"))
14666	}
14667	if s.LaunchConfig != nil {
14668		if err := s.LaunchConfig.Validate(); err != nil {
14669			invalidParams.AddNested("LaunchConfig", err.(request.ErrInvalidParams))
14670		}
14671	}
14672	if s.Tools != nil {
14673		for i, v := range s.Tools {
14674			if v == nil {
14675				continue
14676			}
14677			if err := v.Validate(); err != nil {
14678				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tools", i), err.(request.ErrInvalidParams))
14679			}
14680		}
14681	}
14682	if s.UploadConfigurations != nil {
14683		for i, v := range s.UploadConfigurations {
14684			if v == nil {
14685				continue
14686			}
14687			if err := v.Validate(); err != nil {
14688				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UploadConfigurations", i), err.(request.ErrInvalidParams))
14689			}
14690		}
14691	}
14692	if s.WorldConfigs != nil {
14693		for i, v := range s.WorldConfigs {
14694			if v == nil {
14695				continue
14696			}
14697			if err := v.Validate(); err != nil {
14698				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WorldConfigs", i), err.(request.ErrInvalidParams))
14699			}
14700		}
14701	}
14702
14703	if invalidParams.Len() > 0 {
14704		return invalidParams
14705	}
14706	return nil
14707}
14708
14709// SetApplication sets the Application field's value.
14710func (s *SimulationApplicationConfig) SetApplication(v string) *SimulationApplicationConfig {
14711	s.Application = &v
14712	return s
14713}
14714
14715// SetApplicationVersion sets the ApplicationVersion field's value.
14716func (s *SimulationApplicationConfig) SetApplicationVersion(v string) *SimulationApplicationConfig {
14717	s.ApplicationVersion = &v
14718	return s
14719}
14720
14721// SetLaunchConfig sets the LaunchConfig field's value.
14722func (s *SimulationApplicationConfig) SetLaunchConfig(v *LaunchConfig) *SimulationApplicationConfig {
14723	s.LaunchConfig = v
14724	return s
14725}
14726
14727// SetTools sets the Tools field's value.
14728func (s *SimulationApplicationConfig) SetTools(v []*Tool) *SimulationApplicationConfig {
14729	s.Tools = v
14730	return s
14731}
14732
14733// SetUploadConfigurations sets the UploadConfigurations field's value.
14734func (s *SimulationApplicationConfig) SetUploadConfigurations(v []*UploadConfiguration) *SimulationApplicationConfig {
14735	s.UploadConfigurations = v
14736	return s
14737}
14738
14739// SetUseDefaultTools sets the UseDefaultTools field's value.
14740func (s *SimulationApplicationConfig) SetUseDefaultTools(v bool) *SimulationApplicationConfig {
14741	s.UseDefaultTools = &v
14742	return s
14743}
14744
14745// SetUseDefaultUploadConfigurations sets the UseDefaultUploadConfigurations field's value.
14746func (s *SimulationApplicationConfig) SetUseDefaultUploadConfigurations(v bool) *SimulationApplicationConfig {
14747	s.UseDefaultUploadConfigurations = &v
14748	return s
14749}
14750
14751// SetWorldConfigs sets the WorldConfigs field's value.
14752func (s *SimulationApplicationConfig) SetWorldConfigs(v []*WorldConfig) *SimulationApplicationConfig {
14753	s.WorldConfigs = v
14754	return s
14755}
14756
14757// Summary information for a simulation application.
14758type SimulationApplicationSummary struct {
14759	_ struct{} `type:"structure"`
14760
14761	// The Amazon Resource Name (ARN) of the simulation application.
14762	Arn *string `locationName:"arn" min:"1" type:"string"`
14763
14764	// The time, in milliseconds since the epoch, when the simulation application
14765	// was last updated.
14766	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
14767
14768	// The name of the simulation application.
14769	Name *string `locationName:"name" min:"1" type:"string"`
14770
14771	// Information about a robot software suite (ROS distribution).
14772	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
14773
14774	// Information about a simulation software suite.
14775	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
14776
14777	// The version of the simulation application.
14778	Version *string `locationName:"version" min:"1" type:"string"`
14779}
14780
14781// String returns the string representation
14782func (s SimulationApplicationSummary) String() string {
14783	return awsutil.Prettify(s)
14784}
14785
14786// GoString returns the string representation
14787func (s SimulationApplicationSummary) GoString() string {
14788	return s.String()
14789}
14790
14791// SetArn sets the Arn field's value.
14792func (s *SimulationApplicationSummary) SetArn(v string) *SimulationApplicationSummary {
14793	s.Arn = &v
14794	return s
14795}
14796
14797// SetLastUpdatedAt sets the LastUpdatedAt field's value.
14798func (s *SimulationApplicationSummary) SetLastUpdatedAt(v time.Time) *SimulationApplicationSummary {
14799	s.LastUpdatedAt = &v
14800	return s
14801}
14802
14803// SetName sets the Name field's value.
14804func (s *SimulationApplicationSummary) SetName(v string) *SimulationApplicationSummary {
14805	s.Name = &v
14806	return s
14807}
14808
14809// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
14810func (s *SimulationApplicationSummary) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *SimulationApplicationSummary {
14811	s.RobotSoftwareSuite = v
14812	return s
14813}
14814
14815// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
14816func (s *SimulationApplicationSummary) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *SimulationApplicationSummary {
14817	s.SimulationSoftwareSuite = v
14818	return s
14819}
14820
14821// SetVersion sets the Version field's value.
14822func (s *SimulationApplicationSummary) SetVersion(v string) *SimulationApplicationSummary {
14823	s.Version = &v
14824	return s
14825}
14826
14827// Information about a simulation job.
14828type SimulationJob struct {
14829	_ struct{} `type:"structure"`
14830
14831	// The Amazon Resource Name (ARN) of the simulation job.
14832	Arn *string `locationName:"arn" min:"1" type:"string"`
14833
14834	// A unique identifier for this SimulationJob request.
14835	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
14836
14837	// Compute information for the simulation job
14838	Compute *ComputeResponse `locationName:"compute" type:"structure"`
14839
14840	// The data sources for the simulation job.
14841	DataSources []*DataSource `locationName:"dataSources" type:"list"`
14842
14843	// The failure behavior the simulation job.
14844	//
14845	// Continue
14846	//
14847	// Restart the simulation job in the same host instance.
14848	//
14849	// Fail
14850	//
14851	// Stop the simulation job and terminate the instance.
14852	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
14853
14854	// The failure code of the simulation job if it failed.
14855	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobErrorCode"`
14856
14857	// The reason why the simulation job failed.
14858	FailureReason *string `locationName:"failureReason" type:"string"`
14859
14860	// The IAM role that allows the simulation instance to call the AWS APIs that
14861	// are specified in its associated policies on your behalf. This is how credentials
14862	// are passed in to your simulation job.
14863	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
14864
14865	// The time, in milliseconds since the epoch, when the simulation job was last
14866	// started.
14867	LastStartedAt *time.Time `locationName:"lastStartedAt" type:"timestamp"`
14868
14869	// The time, in milliseconds since the epoch, when the simulation job was last
14870	// updated.
14871	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
14872
14873	// The logging configuration.
14874	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
14875
14876	// The maximum simulation job duration in seconds. The value must be 8 days
14877	// (691,200 seconds) or less.
14878	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long"`
14879
14880	// The name of the simulation job.
14881	Name *string `locationName:"name" min:"1" type:"string"`
14882
14883	// Information about a network interface.
14884	NetworkInterface *NetworkInterface `locationName:"networkInterface" type:"structure"`
14885
14886	// Location for output files generated by the simulation job.
14887	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
14888
14889	// A list of robot applications.
14890	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
14891
14892	// A list of simulation applications.
14893	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
14894
14895	// The simulation job execution duration in milliseconds.
14896	SimulationTimeMillis *int64 `locationName:"simulationTimeMillis" type:"long"`
14897
14898	// Status of the simulation job.
14899	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
14900
14901	// A map that contains tag keys and tag values that are attached to the simulation
14902	// job.
14903	Tags map[string]*string `locationName:"tags" type:"map"`
14904
14905	// VPC configuration information.
14906	VpcConfig *VPCConfigResponse `locationName:"vpcConfig" type:"structure"`
14907}
14908
14909// String returns the string representation
14910func (s SimulationJob) String() string {
14911	return awsutil.Prettify(s)
14912}
14913
14914// GoString returns the string representation
14915func (s SimulationJob) GoString() string {
14916	return s.String()
14917}
14918
14919// SetArn sets the Arn field's value.
14920func (s *SimulationJob) SetArn(v string) *SimulationJob {
14921	s.Arn = &v
14922	return s
14923}
14924
14925// SetClientRequestToken sets the ClientRequestToken field's value.
14926func (s *SimulationJob) SetClientRequestToken(v string) *SimulationJob {
14927	s.ClientRequestToken = &v
14928	return s
14929}
14930
14931// SetCompute sets the Compute field's value.
14932func (s *SimulationJob) SetCompute(v *ComputeResponse) *SimulationJob {
14933	s.Compute = v
14934	return s
14935}
14936
14937// SetDataSources sets the DataSources field's value.
14938func (s *SimulationJob) SetDataSources(v []*DataSource) *SimulationJob {
14939	s.DataSources = v
14940	return s
14941}
14942
14943// SetFailureBehavior sets the FailureBehavior field's value.
14944func (s *SimulationJob) SetFailureBehavior(v string) *SimulationJob {
14945	s.FailureBehavior = &v
14946	return s
14947}
14948
14949// SetFailureCode sets the FailureCode field's value.
14950func (s *SimulationJob) SetFailureCode(v string) *SimulationJob {
14951	s.FailureCode = &v
14952	return s
14953}
14954
14955// SetFailureReason sets the FailureReason field's value.
14956func (s *SimulationJob) SetFailureReason(v string) *SimulationJob {
14957	s.FailureReason = &v
14958	return s
14959}
14960
14961// SetIamRole sets the IamRole field's value.
14962func (s *SimulationJob) SetIamRole(v string) *SimulationJob {
14963	s.IamRole = &v
14964	return s
14965}
14966
14967// SetLastStartedAt sets the LastStartedAt field's value.
14968func (s *SimulationJob) SetLastStartedAt(v time.Time) *SimulationJob {
14969	s.LastStartedAt = &v
14970	return s
14971}
14972
14973// SetLastUpdatedAt sets the LastUpdatedAt field's value.
14974func (s *SimulationJob) SetLastUpdatedAt(v time.Time) *SimulationJob {
14975	s.LastUpdatedAt = &v
14976	return s
14977}
14978
14979// SetLoggingConfig sets the LoggingConfig field's value.
14980func (s *SimulationJob) SetLoggingConfig(v *LoggingConfig) *SimulationJob {
14981	s.LoggingConfig = v
14982	return s
14983}
14984
14985// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
14986func (s *SimulationJob) SetMaxJobDurationInSeconds(v int64) *SimulationJob {
14987	s.MaxJobDurationInSeconds = &v
14988	return s
14989}
14990
14991// SetName sets the Name field's value.
14992func (s *SimulationJob) SetName(v string) *SimulationJob {
14993	s.Name = &v
14994	return s
14995}
14996
14997// SetNetworkInterface sets the NetworkInterface field's value.
14998func (s *SimulationJob) SetNetworkInterface(v *NetworkInterface) *SimulationJob {
14999	s.NetworkInterface = v
15000	return s
15001}
15002
15003// SetOutputLocation sets the OutputLocation field's value.
15004func (s *SimulationJob) SetOutputLocation(v *OutputLocation) *SimulationJob {
15005	s.OutputLocation = v
15006	return s
15007}
15008
15009// SetRobotApplications sets the RobotApplications field's value.
15010func (s *SimulationJob) SetRobotApplications(v []*RobotApplicationConfig) *SimulationJob {
15011	s.RobotApplications = v
15012	return s
15013}
15014
15015// SetSimulationApplications sets the SimulationApplications field's value.
15016func (s *SimulationJob) SetSimulationApplications(v []*SimulationApplicationConfig) *SimulationJob {
15017	s.SimulationApplications = v
15018	return s
15019}
15020
15021// SetSimulationTimeMillis sets the SimulationTimeMillis field's value.
15022func (s *SimulationJob) SetSimulationTimeMillis(v int64) *SimulationJob {
15023	s.SimulationTimeMillis = &v
15024	return s
15025}
15026
15027// SetStatus sets the Status field's value.
15028func (s *SimulationJob) SetStatus(v string) *SimulationJob {
15029	s.Status = &v
15030	return s
15031}
15032
15033// SetTags sets the Tags field's value.
15034func (s *SimulationJob) SetTags(v map[string]*string) *SimulationJob {
15035	s.Tags = v
15036	return s
15037}
15038
15039// SetVpcConfig sets the VpcConfig field's value.
15040func (s *SimulationJob) SetVpcConfig(v *VPCConfigResponse) *SimulationJob {
15041	s.VpcConfig = v
15042	return s
15043}
15044
15045// Information about a simulation job batch.
15046type SimulationJobBatchSummary struct {
15047	_ struct{} `type:"structure"`
15048
15049	// The Amazon Resource Name (ARN) of the batch.
15050	Arn *string `locationName:"arn" min:"1" type:"string"`
15051
15052	// The time, in milliseconds since the epoch, when the simulation job batch
15053	// was created.
15054	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
15055
15056	// The number of created simulation job requests.
15057	CreatedRequestCount *int64 `locationName:"createdRequestCount" type:"integer"`
15058
15059	// The number of failed simulation job requests.
15060	FailedRequestCount *int64 `locationName:"failedRequestCount" type:"integer"`
15061
15062	// The time, in milliseconds since the epoch, when the simulation job batch
15063	// was last updated.
15064	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
15065
15066	// The number of pending simulation job requests.
15067	PendingRequestCount *int64 `locationName:"pendingRequestCount" type:"integer"`
15068
15069	// The status of the simulation job batch.
15070	//
15071	// Pending
15072	//
15073	// The simulation job batch request is pending.
15074	//
15075	// InProgress
15076	//
15077	// The simulation job batch is in progress.
15078	//
15079	// Failed
15080	//
15081	// The simulation job batch failed. One or more simulation job requests could
15082	// not be completed due to an internal failure (like InternalServiceError).
15083	// See failureCode and failureReason for more information.
15084	//
15085	// Completed
15086	//
15087	// The simulation batch job completed. A batch is complete when (1) there are
15088	// no pending simulation job requests in the batch and none of the failed simulation
15089	// job requests are due to InternalServiceError and (2) when all created simulation
15090	// jobs have reached a terminal state (for example, Completed or Failed).
15091	//
15092	// Canceled
15093	//
15094	// The simulation batch job was cancelled.
15095	//
15096	// Canceling
15097	//
15098	// The simulation batch job is being cancelled.
15099	//
15100	// Completing
15101	//
15102	// The simulation batch job is completing.
15103	//
15104	// TimingOut
15105	//
15106	// The simulation job batch is timing out.
15107	//
15108	// If a batch timing out, and there are pending requests that were failing due
15109	// to an internal failure (like InternalServiceError), the batch status will
15110	// be Failed. If there are no such failing request, the batch status will be
15111	// TimedOut.
15112	//
15113	// TimedOut
15114	//
15115	// The simulation batch job timed out.
15116	Status *string `locationName:"status" type:"string" enum:"SimulationJobBatchStatus"`
15117}
15118
15119// String returns the string representation
15120func (s SimulationJobBatchSummary) String() string {
15121	return awsutil.Prettify(s)
15122}
15123
15124// GoString returns the string representation
15125func (s SimulationJobBatchSummary) GoString() string {
15126	return s.String()
15127}
15128
15129// SetArn sets the Arn field's value.
15130func (s *SimulationJobBatchSummary) SetArn(v string) *SimulationJobBatchSummary {
15131	s.Arn = &v
15132	return s
15133}
15134
15135// SetCreatedAt sets the CreatedAt field's value.
15136func (s *SimulationJobBatchSummary) SetCreatedAt(v time.Time) *SimulationJobBatchSummary {
15137	s.CreatedAt = &v
15138	return s
15139}
15140
15141// SetCreatedRequestCount sets the CreatedRequestCount field's value.
15142func (s *SimulationJobBatchSummary) SetCreatedRequestCount(v int64) *SimulationJobBatchSummary {
15143	s.CreatedRequestCount = &v
15144	return s
15145}
15146
15147// SetFailedRequestCount sets the FailedRequestCount field's value.
15148func (s *SimulationJobBatchSummary) SetFailedRequestCount(v int64) *SimulationJobBatchSummary {
15149	s.FailedRequestCount = &v
15150	return s
15151}
15152
15153// SetLastUpdatedAt sets the LastUpdatedAt field's value.
15154func (s *SimulationJobBatchSummary) SetLastUpdatedAt(v time.Time) *SimulationJobBatchSummary {
15155	s.LastUpdatedAt = &v
15156	return s
15157}
15158
15159// SetPendingRequestCount sets the PendingRequestCount field's value.
15160func (s *SimulationJobBatchSummary) SetPendingRequestCount(v int64) *SimulationJobBatchSummary {
15161	s.PendingRequestCount = &v
15162	return s
15163}
15164
15165// SetStatus sets the Status field's value.
15166func (s *SimulationJobBatchSummary) SetStatus(v string) *SimulationJobBatchSummary {
15167	s.Status = &v
15168	return s
15169}
15170
15171// Information about a simulation job request.
15172type SimulationJobRequest struct {
15173	_ struct{} `type:"structure"`
15174
15175	// Compute information for the simulation job
15176	Compute *Compute `locationName:"compute" type:"structure"`
15177
15178	// Specify data sources to mount read-only files from S3 into your simulation.
15179	// These files are available under /opt/robomaker/datasources/data_source_name.
15180	//
15181	// There is a limit of 100 files and a combined size of 25GB for all DataSourceConfig
15182	// objects.
15183	DataSources []*DataSourceConfig `locationName:"dataSources" min:"1" type:"list"`
15184
15185	// The failure behavior the simulation job.
15186	//
15187	// Continue
15188	//
15189	// Restart the simulation job in the same host instance.
15190	//
15191	// Fail
15192	//
15193	// Stop the simulation job and terminate the instance.
15194	FailureBehavior *string `locationName:"failureBehavior" type:"string" enum:"FailureBehavior"`
15195
15196	// The IAM role name that allows the simulation instance to call the AWS APIs
15197	// that are specified in its associated policies on your behalf. This is how
15198	// credentials are passed in to your simulation job.
15199	IamRole *string `locationName:"iamRole" min:"1" type:"string"`
15200
15201	// The logging configuration.
15202	LoggingConfig *LoggingConfig `locationName:"loggingConfig" type:"structure"`
15203
15204	// The maximum simulation job duration in seconds. The value must be 8 days
15205	// (691,200 seconds) or less.
15206	//
15207	// MaxJobDurationInSeconds is a required field
15208	MaxJobDurationInSeconds *int64 `locationName:"maxJobDurationInSeconds" type:"long" required:"true"`
15209
15210	// The output location.
15211	OutputLocation *OutputLocation `locationName:"outputLocation" type:"structure"`
15212
15213	// The robot applications to use in the simulation job.
15214	RobotApplications []*RobotApplicationConfig `locationName:"robotApplications" min:"1" type:"list"`
15215
15216	// The simulation applications to use in the simulation job.
15217	SimulationApplications []*SimulationApplicationConfig `locationName:"simulationApplications" min:"1" type:"list"`
15218
15219	// A map that contains tag keys and tag values that are attached to the simulation
15220	// job request.
15221	Tags map[string]*string `locationName:"tags" type:"map"`
15222
15223	// A Boolean indicating whether to use default applications in the simulation
15224	// job. Default applications include Gazebo, rqt, rviz and terminal access.
15225	UseDefaultApplications *bool `locationName:"useDefaultApplications" type:"boolean"`
15226
15227	// If your simulation job accesses resources in a VPC, you provide this parameter
15228	// identifying the list of security group IDs and subnet IDs. These must belong
15229	// to the same VPC. You must provide at least one security group and two subnet
15230	// IDs.
15231	VpcConfig *VPCConfig `locationName:"vpcConfig" type:"structure"`
15232}
15233
15234// String returns the string representation
15235func (s SimulationJobRequest) String() string {
15236	return awsutil.Prettify(s)
15237}
15238
15239// GoString returns the string representation
15240func (s SimulationJobRequest) GoString() string {
15241	return s.String()
15242}
15243
15244// Validate inspects the fields of the type to determine if they are valid.
15245func (s *SimulationJobRequest) Validate() error {
15246	invalidParams := request.ErrInvalidParams{Context: "SimulationJobRequest"}
15247	if s.DataSources != nil && len(s.DataSources) < 1 {
15248		invalidParams.Add(request.NewErrParamMinLen("DataSources", 1))
15249	}
15250	if s.IamRole != nil && len(*s.IamRole) < 1 {
15251		invalidParams.Add(request.NewErrParamMinLen("IamRole", 1))
15252	}
15253	if s.MaxJobDurationInSeconds == nil {
15254		invalidParams.Add(request.NewErrParamRequired("MaxJobDurationInSeconds"))
15255	}
15256	if s.RobotApplications != nil && len(s.RobotApplications) < 1 {
15257		invalidParams.Add(request.NewErrParamMinLen("RobotApplications", 1))
15258	}
15259	if s.SimulationApplications != nil && len(s.SimulationApplications) < 1 {
15260		invalidParams.Add(request.NewErrParamMinLen("SimulationApplications", 1))
15261	}
15262	if s.Compute != nil {
15263		if err := s.Compute.Validate(); err != nil {
15264			invalidParams.AddNested("Compute", err.(request.ErrInvalidParams))
15265		}
15266	}
15267	if s.DataSources != nil {
15268		for i, v := range s.DataSources {
15269			if v == nil {
15270				continue
15271			}
15272			if err := v.Validate(); err != nil {
15273				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSources", i), err.(request.ErrInvalidParams))
15274			}
15275		}
15276	}
15277	if s.LoggingConfig != nil {
15278		if err := s.LoggingConfig.Validate(); err != nil {
15279			invalidParams.AddNested("LoggingConfig", err.(request.ErrInvalidParams))
15280		}
15281	}
15282	if s.OutputLocation != nil {
15283		if err := s.OutputLocation.Validate(); err != nil {
15284			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
15285		}
15286	}
15287	if s.RobotApplications != nil {
15288		for i, v := range s.RobotApplications {
15289			if v == nil {
15290				continue
15291			}
15292			if err := v.Validate(); err != nil {
15293				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RobotApplications", i), err.(request.ErrInvalidParams))
15294			}
15295		}
15296	}
15297	if s.SimulationApplications != nil {
15298		for i, v := range s.SimulationApplications {
15299			if v == nil {
15300				continue
15301			}
15302			if err := v.Validate(); err != nil {
15303				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SimulationApplications", i), err.(request.ErrInvalidParams))
15304			}
15305		}
15306	}
15307	if s.VpcConfig != nil {
15308		if err := s.VpcConfig.Validate(); err != nil {
15309			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
15310		}
15311	}
15312
15313	if invalidParams.Len() > 0 {
15314		return invalidParams
15315	}
15316	return nil
15317}
15318
15319// SetCompute sets the Compute field's value.
15320func (s *SimulationJobRequest) SetCompute(v *Compute) *SimulationJobRequest {
15321	s.Compute = v
15322	return s
15323}
15324
15325// SetDataSources sets the DataSources field's value.
15326func (s *SimulationJobRequest) SetDataSources(v []*DataSourceConfig) *SimulationJobRequest {
15327	s.DataSources = v
15328	return s
15329}
15330
15331// SetFailureBehavior sets the FailureBehavior field's value.
15332func (s *SimulationJobRequest) SetFailureBehavior(v string) *SimulationJobRequest {
15333	s.FailureBehavior = &v
15334	return s
15335}
15336
15337// SetIamRole sets the IamRole field's value.
15338func (s *SimulationJobRequest) SetIamRole(v string) *SimulationJobRequest {
15339	s.IamRole = &v
15340	return s
15341}
15342
15343// SetLoggingConfig sets the LoggingConfig field's value.
15344func (s *SimulationJobRequest) SetLoggingConfig(v *LoggingConfig) *SimulationJobRequest {
15345	s.LoggingConfig = v
15346	return s
15347}
15348
15349// SetMaxJobDurationInSeconds sets the MaxJobDurationInSeconds field's value.
15350func (s *SimulationJobRequest) SetMaxJobDurationInSeconds(v int64) *SimulationJobRequest {
15351	s.MaxJobDurationInSeconds = &v
15352	return s
15353}
15354
15355// SetOutputLocation sets the OutputLocation field's value.
15356func (s *SimulationJobRequest) SetOutputLocation(v *OutputLocation) *SimulationJobRequest {
15357	s.OutputLocation = v
15358	return s
15359}
15360
15361// SetRobotApplications sets the RobotApplications field's value.
15362func (s *SimulationJobRequest) SetRobotApplications(v []*RobotApplicationConfig) *SimulationJobRequest {
15363	s.RobotApplications = v
15364	return s
15365}
15366
15367// SetSimulationApplications sets the SimulationApplications field's value.
15368func (s *SimulationJobRequest) SetSimulationApplications(v []*SimulationApplicationConfig) *SimulationJobRequest {
15369	s.SimulationApplications = v
15370	return s
15371}
15372
15373// SetTags sets the Tags field's value.
15374func (s *SimulationJobRequest) SetTags(v map[string]*string) *SimulationJobRequest {
15375	s.Tags = v
15376	return s
15377}
15378
15379// SetUseDefaultApplications sets the UseDefaultApplications field's value.
15380func (s *SimulationJobRequest) SetUseDefaultApplications(v bool) *SimulationJobRequest {
15381	s.UseDefaultApplications = &v
15382	return s
15383}
15384
15385// SetVpcConfig sets the VpcConfig field's value.
15386func (s *SimulationJobRequest) SetVpcConfig(v *VPCConfig) *SimulationJobRequest {
15387	s.VpcConfig = v
15388	return s
15389}
15390
15391// Summary information for a simulation job.
15392type SimulationJobSummary struct {
15393	_ struct{} `type:"structure"`
15394
15395	// The Amazon Resource Name (ARN) of the simulation job.
15396	Arn *string `locationName:"arn" min:"1" type:"string"`
15397
15398	// The names of the data sources.
15399	DataSourceNames []*string `locationName:"dataSourceNames" type:"list"`
15400
15401	// The time, in milliseconds since the epoch, when the simulation job was last
15402	// updated.
15403	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
15404
15405	// The name of the simulation job.
15406	Name *string `locationName:"name" min:"1" type:"string"`
15407
15408	// A list of simulation job robot application names.
15409	RobotApplicationNames []*string `locationName:"robotApplicationNames" type:"list"`
15410
15411	// A list of simulation job simulation application names.
15412	SimulationApplicationNames []*string `locationName:"simulationApplicationNames" type:"list"`
15413
15414	// The status of the simulation job.
15415	Status *string `locationName:"status" type:"string" enum:"SimulationJobStatus"`
15416}
15417
15418// String returns the string representation
15419func (s SimulationJobSummary) String() string {
15420	return awsutil.Prettify(s)
15421}
15422
15423// GoString returns the string representation
15424func (s SimulationJobSummary) GoString() string {
15425	return s.String()
15426}
15427
15428// SetArn sets the Arn field's value.
15429func (s *SimulationJobSummary) SetArn(v string) *SimulationJobSummary {
15430	s.Arn = &v
15431	return s
15432}
15433
15434// SetDataSourceNames sets the DataSourceNames field's value.
15435func (s *SimulationJobSummary) SetDataSourceNames(v []*string) *SimulationJobSummary {
15436	s.DataSourceNames = v
15437	return s
15438}
15439
15440// SetLastUpdatedAt sets the LastUpdatedAt field's value.
15441func (s *SimulationJobSummary) SetLastUpdatedAt(v time.Time) *SimulationJobSummary {
15442	s.LastUpdatedAt = &v
15443	return s
15444}
15445
15446// SetName sets the Name field's value.
15447func (s *SimulationJobSummary) SetName(v string) *SimulationJobSummary {
15448	s.Name = &v
15449	return s
15450}
15451
15452// SetRobotApplicationNames sets the RobotApplicationNames field's value.
15453func (s *SimulationJobSummary) SetRobotApplicationNames(v []*string) *SimulationJobSummary {
15454	s.RobotApplicationNames = v
15455	return s
15456}
15457
15458// SetSimulationApplicationNames sets the SimulationApplicationNames field's value.
15459func (s *SimulationJobSummary) SetSimulationApplicationNames(v []*string) *SimulationJobSummary {
15460	s.SimulationApplicationNames = v
15461	return s
15462}
15463
15464// SetStatus sets the Status field's value.
15465func (s *SimulationJobSummary) SetStatus(v string) *SimulationJobSummary {
15466	s.Status = &v
15467	return s
15468}
15469
15470// Information about a simulation software suite.
15471type SimulationSoftwareSuite struct {
15472	_ struct{} `type:"structure"`
15473
15474	// The name of the simulation software suite.
15475	Name *string `locationName:"name" type:"string" enum:"SimulationSoftwareSuiteType"`
15476
15477	// The version of the simulation software suite.
15478	Version *string `locationName:"version" type:"string"`
15479}
15480
15481// String returns the string representation
15482func (s SimulationSoftwareSuite) String() string {
15483	return awsutil.Prettify(s)
15484}
15485
15486// GoString returns the string representation
15487func (s SimulationSoftwareSuite) GoString() string {
15488	return s.String()
15489}
15490
15491// SetName sets the Name field's value.
15492func (s *SimulationSoftwareSuite) SetName(v string) *SimulationSoftwareSuite {
15493	s.Name = &v
15494	return s
15495}
15496
15497// SetVersion sets the Version field's value.
15498func (s *SimulationSoftwareSuite) SetVersion(v string) *SimulationSoftwareSuite {
15499	s.Version = &v
15500	return s
15501}
15502
15503// Information about a source.
15504type Source struct {
15505	_ struct{} `type:"structure"`
15506
15507	// The taget processor architecture for the application.
15508	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
15509
15510	// A hash of the object specified by s3Bucket and s3Key.
15511	Etag *string `locationName:"etag" type:"string"`
15512
15513	// The s3 bucket name.
15514	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
15515
15516	// The s3 object key.
15517	S3Key *string `locationName:"s3Key" min:"1" type:"string"`
15518}
15519
15520// String returns the string representation
15521func (s Source) String() string {
15522	return awsutil.Prettify(s)
15523}
15524
15525// GoString returns the string representation
15526func (s Source) GoString() string {
15527	return s.String()
15528}
15529
15530// SetArchitecture sets the Architecture field's value.
15531func (s *Source) SetArchitecture(v string) *Source {
15532	s.Architecture = &v
15533	return s
15534}
15535
15536// SetEtag sets the Etag field's value.
15537func (s *Source) SetEtag(v string) *Source {
15538	s.Etag = &v
15539	return s
15540}
15541
15542// SetS3Bucket sets the S3Bucket field's value.
15543func (s *Source) SetS3Bucket(v string) *Source {
15544	s.S3Bucket = &v
15545	return s
15546}
15547
15548// SetS3Key sets the S3Key field's value.
15549func (s *Source) SetS3Key(v string) *Source {
15550	s.S3Key = &v
15551	return s
15552}
15553
15554// Information about a source configuration.
15555type SourceConfig struct {
15556	_ struct{} `type:"structure"`
15557
15558	// The target processor architecture for the application.
15559	Architecture *string `locationName:"architecture" type:"string" enum:"Architecture"`
15560
15561	// The Amazon S3 bucket name.
15562	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string"`
15563
15564	// The s3 object key.
15565	S3Key *string `locationName:"s3Key" min:"1" type:"string"`
15566}
15567
15568// String returns the string representation
15569func (s SourceConfig) String() string {
15570	return awsutil.Prettify(s)
15571}
15572
15573// GoString returns the string representation
15574func (s SourceConfig) GoString() string {
15575	return s.String()
15576}
15577
15578// Validate inspects the fields of the type to determine if they are valid.
15579func (s *SourceConfig) Validate() error {
15580	invalidParams := request.ErrInvalidParams{Context: "SourceConfig"}
15581	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
15582		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
15583	}
15584	if s.S3Key != nil && len(*s.S3Key) < 1 {
15585		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
15586	}
15587
15588	if invalidParams.Len() > 0 {
15589		return invalidParams
15590	}
15591	return nil
15592}
15593
15594// SetArchitecture sets the Architecture field's value.
15595func (s *SourceConfig) SetArchitecture(v string) *SourceConfig {
15596	s.Architecture = &v
15597	return s
15598}
15599
15600// SetS3Bucket sets the S3Bucket field's value.
15601func (s *SourceConfig) SetS3Bucket(v string) *SourceConfig {
15602	s.S3Bucket = &v
15603	return s
15604}
15605
15606// SetS3Key sets the S3Key field's value.
15607func (s *SourceConfig) SetS3Key(v string) *SourceConfig {
15608	s.S3Key = &v
15609	return s
15610}
15611
15612type StartSimulationJobBatchInput struct {
15613	_ struct{} `type:"structure"`
15614
15615	// The batch policy.
15616	BatchPolicy *BatchPolicy `locationName:"batchPolicy" type:"structure"`
15617
15618	// Unique, case-sensitive identifier that you provide to ensure the idempotency
15619	// of the request.
15620	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
15621
15622	// A list of simulation job requests to create in the batch.
15623	//
15624	// CreateSimulationJobRequests is a required field
15625	CreateSimulationJobRequests []*SimulationJobRequest `locationName:"createSimulationJobRequests" min:"1" type:"list" required:"true"`
15626
15627	// A map that contains tag keys and tag values that are attached to the deployment
15628	// job batch.
15629	Tags map[string]*string `locationName:"tags" type:"map"`
15630}
15631
15632// String returns the string representation
15633func (s StartSimulationJobBatchInput) String() string {
15634	return awsutil.Prettify(s)
15635}
15636
15637// GoString returns the string representation
15638func (s StartSimulationJobBatchInput) GoString() string {
15639	return s.String()
15640}
15641
15642// Validate inspects the fields of the type to determine if they are valid.
15643func (s *StartSimulationJobBatchInput) Validate() error {
15644	invalidParams := request.ErrInvalidParams{Context: "StartSimulationJobBatchInput"}
15645	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
15646		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
15647	}
15648	if s.CreateSimulationJobRequests == nil {
15649		invalidParams.Add(request.NewErrParamRequired("CreateSimulationJobRequests"))
15650	}
15651	if s.CreateSimulationJobRequests != nil && len(s.CreateSimulationJobRequests) < 1 {
15652		invalidParams.Add(request.NewErrParamMinLen("CreateSimulationJobRequests", 1))
15653	}
15654	if s.CreateSimulationJobRequests != nil {
15655		for i, v := range s.CreateSimulationJobRequests {
15656			if v == nil {
15657				continue
15658			}
15659			if err := v.Validate(); err != nil {
15660				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CreateSimulationJobRequests", i), err.(request.ErrInvalidParams))
15661			}
15662		}
15663	}
15664
15665	if invalidParams.Len() > 0 {
15666		return invalidParams
15667	}
15668	return nil
15669}
15670
15671// SetBatchPolicy sets the BatchPolicy field's value.
15672func (s *StartSimulationJobBatchInput) SetBatchPolicy(v *BatchPolicy) *StartSimulationJobBatchInput {
15673	s.BatchPolicy = v
15674	return s
15675}
15676
15677// SetClientRequestToken sets the ClientRequestToken field's value.
15678func (s *StartSimulationJobBatchInput) SetClientRequestToken(v string) *StartSimulationJobBatchInput {
15679	s.ClientRequestToken = &v
15680	return s
15681}
15682
15683// SetCreateSimulationJobRequests sets the CreateSimulationJobRequests field's value.
15684func (s *StartSimulationJobBatchInput) SetCreateSimulationJobRequests(v []*SimulationJobRequest) *StartSimulationJobBatchInput {
15685	s.CreateSimulationJobRequests = v
15686	return s
15687}
15688
15689// SetTags sets the Tags field's value.
15690func (s *StartSimulationJobBatchInput) SetTags(v map[string]*string) *StartSimulationJobBatchInput {
15691	s.Tags = v
15692	return s
15693}
15694
15695type StartSimulationJobBatchOutput struct {
15696	_ struct{} `type:"structure"`
15697
15698	// The Amazon Resource Name (arn) of the batch.
15699	Arn *string `locationName:"arn" min:"1" type:"string"`
15700
15701	// The batch policy.
15702	BatchPolicy *BatchPolicy `locationName:"batchPolicy" type:"structure"`
15703
15704	// Unique, case-sensitive identifier that you provide to ensure the idempotency
15705	// of the request.
15706	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string"`
15707
15708	// The time, in milliseconds since the epoch, when the simulation job batch
15709	// was created.
15710	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
15711
15712	// A list of created simulation job request summaries.
15713	CreatedRequests []*SimulationJobSummary `locationName:"createdRequests" type:"list"`
15714
15715	// A list of failed simulation job requests. The request failed to be created
15716	// into a simulation job. Failed requests do not have a simulation job ID.
15717	FailedRequests []*FailedCreateSimulationJobRequest `locationName:"failedRequests" type:"list"`
15718
15719	// The failure code if the simulation job batch failed.
15720	FailureCode *string `locationName:"failureCode" type:"string" enum:"SimulationJobBatchErrorCode"`
15721
15722	// The reason the simulation job batch failed.
15723	FailureReason *string `locationName:"failureReason" type:"string"`
15724
15725	// A list of pending simulation job requests. These requests have not yet been
15726	// created into simulation jobs.
15727	PendingRequests []*SimulationJobRequest `locationName:"pendingRequests" min:"1" type:"list"`
15728
15729	// The status of the simulation job batch.
15730	//
15731	// Pending
15732	//
15733	// The simulation job batch request is pending.
15734	//
15735	// InProgress
15736	//
15737	// The simulation job batch is in progress.
15738	//
15739	// Failed
15740	//
15741	// The simulation job batch failed. One or more simulation job requests could
15742	// not be completed due to an internal failure (like InternalServiceError).
15743	// See failureCode and failureReason for more information.
15744	//
15745	// Completed
15746	//
15747	// The simulation batch job completed. A batch is complete when (1) there are
15748	// no pending simulation job requests in the batch and none of the failed simulation
15749	// job requests are due to InternalServiceError and (2) when all created simulation
15750	// jobs have reached a terminal state (for example, Completed or Failed).
15751	//
15752	// Canceled
15753	//
15754	// The simulation batch job was cancelled.
15755	//
15756	// Canceling
15757	//
15758	// The simulation batch job is being cancelled.
15759	//
15760	// Completing
15761	//
15762	// The simulation batch job is completing.
15763	//
15764	// TimingOut
15765	//
15766	// The simulation job batch is timing out.
15767	//
15768	// If a batch timing out, and there are pending requests that were failing due
15769	// to an internal failure (like InternalServiceError), the batch status will
15770	// be Failed. If there are no such failing request, the batch status will be
15771	// TimedOut.
15772	//
15773	// TimedOut
15774	//
15775	// The simulation batch job timed out.
15776	Status *string `locationName:"status" type:"string" enum:"SimulationJobBatchStatus"`
15777
15778	// A map that contains tag keys and tag values that are attached to the deployment
15779	// job batch.
15780	Tags map[string]*string `locationName:"tags" type:"map"`
15781}
15782
15783// String returns the string representation
15784func (s StartSimulationJobBatchOutput) String() string {
15785	return awsutil.Prettify(s)
15786}
15787
15788// GoString returns the string representation
15789func (s StartSimulationJobBatchOutput) GoString() string {
15790	return s.String()
15791}
15792
15793// SetArn sets the Arn field's value.
15794func (s *StartSimulationJobBatchOutput) SetArn(v string) *StartSimulationJobBatchOutput {
15795	s.Arn = &v
15796	return s
15797}
15798
15799// SetBatchPolicy sets the BatchPolicy field's value.
15800func (s *StartSimulationJobBatchOutput) SetBatchPolicy(v *BatchPolicy) *StartSimulationJobBatchOutput {
15801	s.BatchPolicy = v
15802	return s
15803}
15804
15805// SetClientRequestToken sets the ClientRequestToken field's value.
15806func (s *StartSimulationJobBatchOutput) SetClientRequestToken(v string) *StartSimulationJobBatchOutput {
15807	s.ClientRequestToken = &v
15808	return s
15809}
15810
15811// SetCreatedAt sets the CreatedAt field's value.
15812func (s *StartSimulationJobBatchOutput) SetCreatedAt(v time.Time) *StartSimulationJobBatchOutput {
15813	s.CreatedAt = &v
15814	return s
15815}
15816
15817// SetCreatedRequests sets the CreatedRequests field's value.
15818func (s *StartSimulationJobBatchOutput) SetCreatedRequests(v []*SimulationJobSummary) *StartSimulationJobBatchOutput {
15819	s.CreatedRequests = v
15820	return s
15821}
15822
15823// SetFailedRequests sets the FailedRequests field's value.
15824func (s *StartSimulationJobBatchOutput) SetFailedRequests(v []*FailedCreateSimulationJobRequest) *StartSimulationJobBatchOutput {
15825	s.FailedRequests = v
15826	return s
15827}
15828
15829// SetFailureCode sets the FailureCode field's value.
15830func (s *StartSimulationJobBatchOutput) SetFailureCode(v string) *StartSimulationJobBatchOutput {
15831	s.FailureCode = &v
15832	return s
15833}
15834
15835// SetFailureReason sets the FailureReason field's value.
15836func (s *StartSimulationJobBatchOutput) SetFailureReason(v string) *StartSimulationJobBatchOutput {
15837	s.FailureReason = &v
15838	return s
15839}
15840
15841// SetPendingRequests sets the PendingRequests field's value.
15842func (s *StartSimulationJobBatchOutput) SetPendingRequests(v []*SimulationJobRequest) *StartSimulationJobBatchOutput {
15843	s.PendingRequests = v
15844	return s
15845}
15846
15847// SetStatus sets the Status field's value.
15848func (s *StartSimulationJobBatchOutput) SetStatus(v string) *StartSimulationJobBatchOutput {
15849	s.Status = &v
15850	return s
15851}
15852
15853// SetTags sets the Tags field's value.
15854func (s *StartSimulationJobBatchOutput) SetTags(v map[string]*string) *StartSimulationJobBatchOutput {
15855	s.Tags = v
15856	return s
15857}
15858
15859type SyncDeploymentJobInput struct {
15860	_ struct{} `type:"structure"`
15861
15862	// Unique, case-sensitive identifier that you provide to ensure the idempotency
15863	// of the request.
15864	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
15865
15866	// The target fleet for the synchronization.
15867	//
15868	// Fleet is a required field
15869	Fleet *string `locationName:"fleet" min:"1" type:"string" required:"true"`
15870}
15871
15872// String returns the string representation
15873func (s SyncDeploymentJobInput) String() string {
15874	return awsutil.Prettify(s)
15875}
15876
15877// GoString returns the string representation
15878func (s SyncDeploymentJobInput) GoString() string {
15879	return s.String()
15880}
15881
15882// Validate inspects the fields of the type to determine if they are valid.
15883func (s *SyncDeploymentJobInput) Validate() error {
15884	invalidParams := request.ErrInvalidParams{Context: "SyncDeploymentJobInput"}
15885	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
15886		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
15887	}
15888	if s.Fleet == nil {
15889		invalidParams.Add(request.NewErrParamRequired("Fleet"))
15890	}
15891	if s.Fleet != nil && len(*s.Fleet) < 1 {
15892		invalidParams.Add(request.NewErrParamMinLen("Fleet", 1))
15893	}
15894
15895	if invalidParams.Len() > 0 {
15896		return invalidParams
15897	}
15898	return nil
15899}
15900
15901// SetClientRequestToken sets the ClientRequestToken field's value.
15902func (s *SyncDeploymentJobInput) SetClientRequestToken(v string) *SyncDeploymentJobInput {
15903	s.ClientRequestToken = &v
15904	return s
15905}
15906
15907// SetFleet sets the Fleet field's value.
15908func (s *SyncDeploymentJobInput) SetFleet(v string) *SyncDeploymentJobInput {
15909	s.Fleet = &v
15910	return s
15911}
15912
15913type SyncDeploymentJobOutput struct {
15914	_ struct{} `type:"structure"`
15915
15916	// The Amazon Resource Name (ARN) of the synchronization request.
15917	Arn *string `locationName:"arn" min:"1" type:"string"`
15918
15919	// The time, in milliseconds since the epoch, when the fleet was created.
15920	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
15921
15922	// Information about the deployment application configurations.
15923	DeploymentApplicationConfigs []*DeploymentApplicationConfig `locationName:"deploymentApplicationConfigs" min:"1" type:"list"`
15924
15925	// Information about the deployment configuration.
15926	DeploymentConfig *DeploymentConfig `locationName:"deploymentConfig" type:"structure"`
15927
15928	// The failure code if the job fails:
15929	//
15930	// InternalServiceError
15931	//
15932	// Internal service error.
15933	//
15934	// RobotApplicationCrash
15935	//
15936	// Robot application exited abnormally.
15937	//
15938	// SimulationApplicationCrash
15939	//
15940	// Simulation application exited abnormally.
15941	//
15942	// BadPermissionsRobotApplication
15943	//
15944	// Robot application bundle could not be downloaded.
15945	//
15946	// BadPermissionsSimulationApplication
15947	//
15948	// Simulation application bundle could not be downloaded.
15949	//
15950	// BadPermissionsS3Output
15951	//
15952	// Unable to publish outputs to customer-provided S3 bucket.
15953	//
15954	// BadPermissionsCloudwatchLogs
15955	//
15956	// Unable to publish logs to customer-provided CloudWatch Logs resource.
15957	//
15958	// SubnetIpLimitExceeded
15959	//
15960	// Subnet IP limit exceeded.
15961	//
15962	// ENILimitExceeded
15963	//
15964	// ENI limit exceeded.
15965	//
15966	// BadPermissionsUserCredentials
15967	//
15968	// Unable to use the Role provided.
15969	//
15970	// InvalidBundleRobotApplication
15971	//
15972	// Robot bundle cannot be extracted (invalid format, bundling error, or other
15973	// issue).
15974	//
15975	// InvalidBundleSimulationApplication
15976	//
15977	// Simulation bundle cannot be extracted (invalid format, bundling error, or
15978	// other issue).
15979	//
15980	// RobotApplicationVersionMismatchedEtag
15981	//
15982	// Etag for RobotApplication does not match value during version creation.
15983	//
15984	// SimulationApplicationVersionMismatchedEtag
15985	//
15986	// Etag for SimulationApplication does not match value during version creation.
15987	FailureCode *string `locationName:"failureCode" type:"string" enum:"DeploymentJobErrorCode"`
15988
15989	// The failure reason if the job fails.
15990	FailureReason *string `locationName:"failureReason" type:"string"`
15991
15992	// The Amazon Resource Name (ARN) of the fleet.
15993	Fleet *string `locationName:"fleet" min:"1" type:"string"`
15994
15995	// The status of the synchronization job.
15996	Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"`
15997}
15998
15999// String returns the string representation
16000func (s SyncDeploymentJobOutput) String() string {
16001	return awsutil.Prettify(s)
16002}
16003
16004// GoString returns the string representation
16005func (s SyncDeploymentJobOutput) GoString() string {
16006	return s.String()
16007}
16008
16009// SetArn sets the Arn field's value.
16010func (s *SyncDeploymentJobOutput) SetArn(v string) *SyncDeploymentJobOutput {
16011	s.Arn = &v
16012	return s
16013}
16014
16015// SetCreatedAt sets the CreatedAt field's value.
16016func (s *SyncDeploymentJobOutput) SetCreatedAt(v time.Time) *SyncDeploymentJobOutput {
16017	s.CreatedAt = &v
16018	return s
16019}
16020
16021// SetDeploymentApplicationConfigs sets the DeploymentApplicationConfigs field's value.
16022func (s *SyncDeploymentJobOutput) SetDeploymentApplicationConfigs(v []*DeploymentApplicationConfig) *SyncDeploymentJobOutput {
16023	s.DeploymentApplicationConfigs = v
16024	return s
16025}
16026
16027// SetDeploymentConfig sets the DeploymentConfig field's value.
16028func (s *SyncDeploymentJobOutput) SetDeploymentConfig(v *DeploymentConfig) *SyncDeploymentJobOutput {
16029	s.DeploymentConfig = v
16030	return s
16031}
16032
16033// SetFailureCode sets the FailureCode field's value.
16034func (s *SyncDeploymentJobOutput) SetFailureCode(v string) *SyncDeploymentJobOutput {
16035	s.FailureCode = &v
16036	return s
16037}
16038
16039// SetFailureReason sets the FailureReason field's value.
16040func (s *SyncDeploymentJobOutput) SetFailureReason(v string) *SyncDeploymentJobOutput {
16041	s.FailureReason = &v
16042	return s
16043}
16044
16045// SetFleet sets the Fleet field's value.
16046func (s *SyncDeploymentJobOutput) SetFleet(v string) *SyncDeploymentJobOutput {
16047	s.Fleet = &v
16048	return s
16049}
16050
16051// SetStatus sets the Status field's value.
16052func (s *SyncDeploymentJobOutput) SetStatus(v string) *SyncDeploymentJobOutput {
16053	s.Status = &v
16054	return s
16055}
16056
16057type TagResourceInput struct {
16058	_ struct{} `type:"structure"`
16059
16060	// The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are tagging.
16061	//
16062	// ResourceArn is a required field
16063	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
16064
16065	// A map that contains tag keys and tag values that are attached to the resource.
16066	//
16067	// Tags is a required field
16068	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
16069}
16070
16071// String returns the string representation
16072func (s TagResourceInput) String() string {
16073	return awsutil.Prettify(s)
16074}
16075
16076// GoString returns the string representation
16077func (s TagResourceInput) GoString() string {
16078	return s.String()
16079}
16080
16081// Validate inspects the fields of the type to determine if they are valid.
16082func (s *TagResourceInput) Validate() error {
16083	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
16084	if s.ResourceArn == nil {
16085		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
16086	}
16087	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
16088		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
16089	}
16090	if s.Tags == nil {
16091		invalidParams.Add(request.NewErrParamRequired("Tags"))
16092	}
16093
16094	if invalidParams.Len() > 0 {
16095		return invalidParams
16096	}
16097	return nil
16098}
16099
16100// SetResourceArn sets the ResourceArn field's value.
16101func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
16102	s.ResourceArn = &v
16103	return s
16104}
16105
16106// SetTags sets the Tags field's value.
16107func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
16108	s.Tags = v
16109	return s
16110}
16111
16112type TagResourceOutput struct {
16113	_ struct{} `type:"structure"`
16114}
16115
16116// String returns the string representation
16117func (s TagResourceOutput) String() string {
16118	return awsutil.Prettify(s)
16119}
16120
16121// GoString returns the string representation
16122func (s TagResourceOutput) GoString() string {
16123	return s.String()
16124}
16125
16126// Information about a template location.
16127type TemplateLocation struct {
16128	_ struct{} `type:"structure"`
16129
16130	// The Amazon S3 bucket name.
16131	//
16132	// S3Bucket is a required field
16133	S3Bucket *string `locationName:"s3Bucket" min:"3" type:"string" required:"true"`
16134
16135	// The list of S3 keys identifying the data source files.
16136	//
16137	// S3Key is a required field
16138	S3Key *string `locationName:"s3Key" min:"1" type:"string" required:"true"`
16139}
16140
16141// String returns the string representation
16142func (s TemplateLocation) String() string {
16143	return awsutil.Prettify(s)
16144}
16145
16146// GoString returns the string representation
16147func (s TemplateLocation) GoString() string {
16148	return s.String()
16149}
16150
16151// Validate inspects the fields of the type to determine if they are valid.
16152func (s *TemplateLocation) Validate() error {
16153	invalidParams := request.ErrInvalidParams{Context: "TemplateLocation"}
16154	if s.S3Bucket == nil {
16155		invalidParams.Add(request.NewErrParamRequired("S3Bucket"))
16156	}
16157	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
16158		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
16159	}
16160	if s.S3Key == nil {
16161		invalidParams.Add(request.NewErrParamRequired("S3Key"))
16162	}
16163	if s.S3Key != nil && len(*s.S3Key) < 1 {
16164		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
16165	}
16166
16167	if invalidParams.Len() > 0 {
16168		return invalidParams
16169	}
16170	return nil
16171}
16172
16173// SetS3Bucket sets the S3Bucket field's value.
16174func (s *TemplateLocation) SetS3Bucket(v string) *TemplateLocation {
16175	s.S3Bucket = &v
16176	return s
16177}
16178
16179// SetS3Key sets the S3Key field's value.
16180func (s *TemplateLocation) SetS3Key(v string) *TemplateLocation {
16181	s.S3Key = &v
16182	return s
16183}
16184
16185// Summary information for a template.
16186type TemplateSummary struct {
16187	_ struct{} `type:"structure"`
16188
16189	// The Amazon Resource Name (ARN) of the template.
16190	Arn *string `locationName:"arn" min:"1" type:"string"`
16191
16192	// The time, in milliseconds since the epoch, when the template was created.
16193	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
16194
16195	// The time, in milliseconds since the epoch, when the template was last updated.
16196	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16197
16198	// The name of the template.
16199	Name *string `locationName:"name" type:"string"`
16200}
16201
16202// String returns the string representation
16203func (s TemplateSummary) String() string {
16204	return awsutil.Prettify(s)
16205}
16206
16207// GoString returns the string representation
16208func (s TemplateSummary) GoString() string {
16209	return s.String()
16210}
16211
16212// SetArn sets the Arn field's value.
16213func (s *TemplateSummary) SetArn(v string) *TemplateSummary {
16214	s.Arn = &v
16215	return s
16216}
16217
16218// SetCreatedAt sets the CreatedAt field's value.
16219func (s *TemplateSummary) SetCreatedAt(v time.Time) *TemplateSummary {
16220	s.CreatedAt = &v
16221	return s
16222}
16223
16224// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16225func (s *TemplateSummary) SetLastUpdatedAt(v time.Time) *TemplateSummary {
16226	s.LastUpdatedAt = &v
16227	return s
16228}
16229
16230// SetName sets the Name field's value.
16231func (s *TemplateSummary) SetName(v string) *TemplateSummary {
16232	s.Name = &v
16233	return s
16234}
16235
16236// AWS RoboMaker is temporarily unable to process the request. Try your call
16237// again.
16238type ThrottlingException struct {
16239	_            struct{}                  `type:"structure"`
16240	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16241
16242	Message_ *string `locationName:"message" type:"string"`
16243}
16244
16245// String returns the string representation
16246func (s ThrottlingException) String() string {
16247	return awsutil.Prettify(s)
16248}
16249
16250// GoString returns the string representation
16251func (s ThrottlingException) GoString() string {
16252	return s.String()
16253}
16254
16255func newErrorThrottlingException(v protocol.ResponseMetadata) error {
16256	return &ThrottlingException{
16257		RespMetadata: v,
16258	}
16259}
16260
16261// Code returns the exception type name.
16262func (s *ThrottlingException) Code() string {
16263	return "ThrottlingException"
16264}
16265
16266// Message returns the exception's message.
16267func (s *ThrottlingException) Message() string {
16268	if s.Message_ != nil {
16269		return *s.Message_
16270	}
16271	return ""
16272}
16273
16274// OrigErr always returns nil, satisfies awserr.Error interface.
16275func (s *ThrottlingException) OrigErr() error {
16276	return nil
16277}
16278
16279func (s *ThrottlingException) Error() string {
16280	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16281}
16282
16283// Status code returns the HTTP status code for the request's response error.
16284func (s *ThrottlingException) StatusCode() int {
16285	return s.RespMetadata.StatusCode
16286}
16287
16288// RequestID returns the service's response RequestID for request.
16289func (s *ThrottlingException) RequestID() string {
16290	return s.RespMetadata.RequestID
16291}
16292
16293// Information about a tool. Tools are used in a simulation job.
16294type Tool struct {
16295	_ struct{} `type:"structure"`
16296
16297	// Command-line arguments for the tool. It must include the tool executable
16298	// name.
16299	//
16300	// Command is a required field
16301	Command *string `locationName:"command" min:"1" type:"string" required:"true"`
16302
16303	// Exit behavior determines what happens when your tool quits running. RESTART
16304	// will cause your tool to be restarted. FAIL will cause your job to exit. The
16305	// default is RESTART.
16306	ExitBehavior *string `locationName:"exitBehavior" type:"string" enum:"ExitBehavior"`
16307
16308	// The name of the tool.
16309	//
16310	// Name is a required field
16311	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
16312
16313	// Boolean indicating whether logs will be recorded in CloudWatch for the tool.
16314	// The default is False.
16315	StreamOutputToCloudWatch *bool `locationName:"streamOutputToCloudWatch" type:"boolean"`
16316
16317	// Boolean indicating whether a streaming session will be configured for the
16318	// tool. If True, AWS RoboMaker will configure a connection so you can interact
16319	// with the tool as it is running in the simulation. It must have a graphical
16320	// user interface. The default is False.
16321	StreamUI *bool `locationName:"streamUI" type:"boolean"`
16322}
16323
16324// String returns the string representation
16325func (s Tool) String() string {
16326	return awsutil.Prettify(s)
16327}
16328
16329// GoString returns the string representation
16330func (s Tool) GoString() string {
16331	return s.String()
16332}
16333
16334// Validate inspects the fields of the type to determine if they are valid.
16335func (s *Tool) Validate() error {
16336	invalidParams := request.ErrInvalidParams{Context: "Tool"}
16337	if s.Command == nil {
16338		invalidParams.Add(request.NewErrParamRequired("Command"))
16339	}
16340	if s.Command != nil && len(*s.Command) < 1 {
16341		invalidParams.Add(request.NewErrParamMinLen("Command", 1))
16342	}
16343	if s.Name == nil {
16344		invalidParams.Add(request.NewErrParamRequired("Name"))
16345	}
16346	if s.Name != nil && len(*s.Name) < 1 {
16347		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
16348	}
16349
16350	if invalidParams.Len() > 0 {
16351		return invalidParams
16352	}
16353	return nil
16354}
16355
16356// SetCommand sets the Command field's value.
16357func (s *Tool) SetCommand(v string) *Tool {
16358	s.Command = &v
16359	return s
16360}
16361
16362// SetExitBehavior sets the ExitBehavior field's value.
16363func (s *Tool) SetExitBehavior(v string) *Tool {
16364	s.ExitBehavior = &v
16365	return s
16366}
16367
16368// SetName sets the Name field's value.
16369func (s *Tool) SetName(v string) *Tool {
16370	s.Name = &v
16371	return s
16372}
16373
16374// SetStreamOutputToCloudWatch sets the StreamOutputToCloudWatch field's value.
16375func (s *Tool) SetStreamOutputToCloudWatch(v bool) *Tool {
16376	s.StreamOutputToCloudWatch = &v
16377	return s
16378}
16379
16380// SetStreamUI sets the StreamUI field's value.
16381func (s *Tool) SetStreamUI(v bool) *Tool {
16382	s.StreamUI = &v
16383	return s
16384}
16385
16386type UntagResourceInput struct {
16387	_ struct{} `type:"structure"`
16388
16389	// The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are removing
16390	// tags.
16391	//
16392	// ResourceArn is a required field
16393	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
16394
16395	// A map that contains tag keys and tag values that will be unattached from
16396	// the resource.
16397	//
16398	// TagKeys is a required field
16399	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
16400}
16401
16402// String returns the string representation
16403func (s UntagResourceInput) String() string {
16404	return awsutil.Prettify(s)
16405}
16406
16407// GoString returns the string representation
16408func (s UntagResourceInput) GoString() string {
16409	return s.String()
16410}
16411
16412// Validate inspects the fields of the type to determine if they are valid.
16413func (s *UntagResourceInput) Validate() error {
16414	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
16415	if s.ResourceArn == nil {
16416		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
16417	}
16418	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
16419		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
16420	}
16421	if s.TagKeys == nil {
16422		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
16423	}
16424
16425	if invalidParams.Len() > 0 {
16426		return invalidParams
16427	}
16428	return nil
16429}
16430
16431// SetResourceArn sets the ResourceArn field's value.
16432func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
16433	s.ResourceArn = &v
16434	return s
16435}
16436
16437// SetTagKeys sets the TagKeys field's value.
16438func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
16439	s.TagKeys = v
16440	return s
16441}
16442
16443type UntagResourceOutput struct {
16444	_ struct{} `type:"structure"`
16445}
16446
16447// String returns the string representation
16448func (s UntagResourceOutput) String() string {
16449	return awsutil.Prettify(s)
16450}
16451
16452// GoString returns the string representation
16453func (s UntagResourceOutput) GoString() string {
16454	return s.String()
16455}
16456
16457type UpdateRobotApplicationInput struct {
16458	_ struct{} `type:"structure"`
16459
16460	// The application information for the robot application.
16461	//
16462	// Application is a required field
16463	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
16464
16465	// The revision id for the robot application.
16466	CurrentRevisionId *string `locationName:"currentRevisionId" min:"1" type:"string"`
16467
16468	// The robot software suite (ROS distribution) used by the robot application.
16469	//
16470	// RobotSoftwareSuite is a required field
16471	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure" required:"true"`
16472
16473	// The sources of the robot application.
16474	//
16475	// Sources is a required field
16476	Sources []*SourceConfig `locationName:"sources" type:"list" required:"true"`
16477}
16478
16479// String returns the string representation
16480func (s UpdateRobotApplicationInput) String() string {
16481	return awsutil.Prettify(s)
16482}
16483
16484// GoString returns the string representation
16485func (s UpdateRobotApplicationInput) GoString() string {
16486	return s.String()
16487}
16488
16489// Validate inspects the fields of the type to determine if they are valid.
16490func (s *UpdateRobotApplicationInput) Validate() error {
16491	invalidParams := request.ErrInvalidParams{Context: "UpdateRobotApplicationInput"}
16492	if s.Application == nil {
16493		invalidParams.Add(request.NewErrParamRequired("Application"))
16494	}
16495	if s.Application != nil && len(*s.Application) < 1 {
16496		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
16497	}
16498	if s.CurrentRevisionId != nil && len(*s.CurrentRevisionId) < 1 {
16499		invalidParams.Add(request.NewErrParamMinLen("CurrentRevisionId", 1))
16500	}
16501	if s.RobotSoftwareSuite == nil {
16502		invalidParams.Add(request.NewErrParamRequired("RobotSoftwareSuite"))
16503	}
16504	if s.Sources == nil {
16505		invalidParams.Add(request.NewErrParamRequired("Sources"))
16506	}
16507	if s.Sources != nil {
16508		for i, v := range s.Sources {
16509			if v == nil {
16510				continue
16511			}
16512			if err := v.Validate(); err != nil {
16513				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
16514			}
16515		}
16516	}
16517
16518	if invalidParams.Len() > 0 {
16519		return invalidParams
16520	}
16521	return nil
16522}
16523
16524// SetApplication sets the Application field's value.
16525func (s *UpdateRobotApplicationInput) SetApplication(v string) *UpdateRobotApplicationInput {
16526	s.Application = &v
16527	return s
16528}
16529
16530// SetCurrentRevisionId sets the CurrentRevisionId field's value.
16531func (s *UpdateRobotApplicationInput) SetCurrentRevisionId(v string) *UpdateRobotApplicationInput {
16532	s.CurrentRevisionId = &v
16533	return s
16534}
16535
16536// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16537func (s *UpdateRobotApplicationInput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateRobotApplicationInput {
16538	s.RobotSoftwareSuite = v
16539	return s
16540}
16541
16542// SetSources sets the Sources field's value.
16543func (s *UpdateRobotApplicationInput) SetSources(v []*SourceConfig) *UpdateRobotApplicationInput {
16544	s.Sources = v
16545	return s
16546}
16547
16548type UpdateRobotApplicationOutput struct {
16549	_ struct{} `type:"structure"`
16550
16551	// The Amazon Resource Name (ARN) of the updated robot application.
16552	Arn *string `locationName:"arn" min:"1" type:"string"`
16553
16554	// The time, in milliseconds since the epoch, when the robot application was
16555	// last updated.
16556	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16557
16558	// The name of the robot application.
16559	Name *string `locationName:"name" min:"1" type:"string"`
16560
16561	// The revision id of the robot application.
16562	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
16563
16564	// The robot software suite (ROS distribution) used by the robot application.
16565	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
16566
16567	// The sources of the robot application.
16568	Sources []*Source `locationName:"sources" type:"list"`
16569
16570	// The version of the robot application.
16571	Version *string `locationName:"version" min:"1" type:"string"`
16572}
16573
16574// String returns the string representation
16575func (s UpdateRobotApplicationOutput) String() string {
16576	return awsutil.Prettify(s)
16577}
16578
16579// GoString returns the string representation
16580func (s UpdateRobotApplicationOutput) GoString() string {
16581	return s.String()
16582}
16583
16584// SetArn sets the Arn field's value.
16585func (s *UpdateRobotApplicationOutput) SetArn(v string) *UpdateRobotApplicationOutput {
16586	s.Arn = &v
16587	return s
16588}
16589
16590// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16591func (s *UpdateRobotApplicationOutput) SetLastUpdatedAt(v time.Time) *UpdateRobotApplicationOutput {
16592	s.LastUpdatedAt = &v
16593	return s
16594}
16595
16596// SetName sets the Name field's value.
16597func (s *UpdateRobotApplicationOutput) SetName(v string) *UpdateRobotApplicationOutput {
16598	s.Name = &v
16599	return s
16600}
16601
16602// SetRevisionId sets the RevisionId field's value.
16603func (s *UpdateRobotApplicationOutput) SetRevisionId(v string) *UpdateRobotApplicationOutput {
16604	s.RevisionId = &v
16605	return s
16606}
16607
16608// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16609func (s *UpdateRobotApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateRobotApplicationOutput {
16610	s.RobotSoftwareSuite = v
16611	return s
16612}
16613
16614// SetSources sets the Sources field's value.
16615func (s *UpdateRobotApplicationOutput) SetSources(v []*Source) *UpdateRobotApplicationOutput {
16616	s.Sources = v
16617	return s
16618}
16619
16620// SetVersion sets the Version field's value.
16621func (s *UpdateRobotApplicationOutput) SetVersion(v string) *UpdateRobotApplicationOutput {
16622	s.Version = &v
16623	return s
16624}
16625
16626type UpdateSimulationApplicationInput struct {
16627	_ struct{} `type:"structure"`
16628
16629	// The application information for the simulation application.
16630	//
16631	// Application is a required field
16632	Application *string `locationName:"application" min:"1" type:"string" required:"true"`
16633
16634	// The revision id for the robot application.
16635	CurrentRevisionId *string `locationName:"currentRevisionId" min:"1" type:"string"`
16636
16637	// The rendering engine for the simulation application.
16638	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
16639
16640	// Information about the robot software suite (ROS distribution).
16641	//
16642	// RobotSoftwareSuite is a required field
16643	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure" required:"true"`
16644
16645	// The simulation software suite used by the simulation application.
16646	//
16647	// SimulationSoftwareSuite is a required field
16648	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure" required:"true"`
16649
16650	// The sources of the simulation application.
16651	//
16652	// Sources is a required field
16653	Sources []*SourceConfig `locationName:"sources" type:"list" required:"true"`
16654}
16655
16656// String returns the string representation
16657func (s UpdateSimulationApplicationInput) String() string {
16658	return awsutil.Prettify(s)
16659}
16660
16661// GoString returns the string representation
16662func (s UpdateSimulationApplicationInput) GoString() string {
16663	return s.String()
16664}
16665
16666// Validate inspects the fields of the type to determine if they are valid.
16667func (s *UpdateSimulationApplicationInput) Validate() error {
16668	invalidParams := request.ErrInvalidParams{Context: "UpdateSimulationApplicationInput"}
16669	if s.Application == nil {
16670		invalidParams.Add(request.NewErrParamRequired("Application"))
16671	}
16672	if s.Application != nil && len(*s.Application) < 1 {
16673		invalidParams.Add(request.NewErrParamMinLen("Application", 1))
16674	}
16675	if s.CurrentRevisionId != nil && len(*s.CurrentRevisionId) < 1 {
16676		invalidParams.Add(request.NewErrParamMinLen("CurrentRevisionId", 1))
16677	}
16678	if s.RobotSoftwareSuite == nil {
16679		invalidParams.Add(request.NewErrParamRequired("RobotSoftwareSuite"))
16680	}
16681	if s.SimulationSoftwareSuite == nil {
16682		invalidParams.Add(request.NewErrParamRequired("SimulationSoftwareSuite"))
16683	}
16684	if s.Sources == nil {
16685		invalidParams.Add(request.NewErrParamRequired("Sources"))
16686	}
16687	if s.RenderingEngine != nil {
16688		if err := s.RenderingEngine.Validate(); err != nil {
16689			invalidParams.AddNested("RenderingEngine", err.(request.ErrInvalidParams))
16690		}
16691	}
16692	if s.Sources != nil {
16693		for i, v := range s.Sources {
16694			if v == nil {
16695				continue
16696			}
16697			if err := v.Validate(); err != nil {
16698				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
16699			}
16700		}
16701	}
16702
16703	if invalidParams.Len() > 0 {
16704		return invalidParams
16705	}
16706	return nil
16707}
16708
16709// SetApplication sets the Application field's value.
16710func (s *UpdateSimulationApplicationInput) SetApplication(v string) *UpdateSimulationApplicationInput {
16711	s.Application = &v
16712	return s
16713}
16714
16715// SetCurrentRevisionId sets the CurrentRevisionId field's value.
16716func (s *UpdateSimulationApplicationInput) SetCurrentRevisionId(v string) *UpdateSimulationApplicationInput {
16717	s.CurrentRevisionId = &v
16718	return s
16719}
16720
16721// SetRenderingEngine sets the RenderingEngine field's value.
16722func (s *UpdateSimulationApplicationInput) SetRenderingEngine(v *RenderingEngine) *UpdateSimulationApplicationInput {
16723	s.RenderingEngine = v
16724	return s
16725}
16726
16727// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16728func (s *UpdateSimulationApplicationInput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateSimulationApplicationInput {
16729	s.RobotSoftwareSuite = v
16730	return s
16731}
16732
16733// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
16734func (s *UpdateSimulationApplicationInput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *UpdateSimulationApplicationInput {
16735	s.SimulationSoftwareSuite = v
16736	return s
16737}
16738
16739// SetSources sets the Sources field's value.
16740func (s *UpdateSimulationApplicationInput) SetSources(v []*SourceConfig) *UpdateSimulationApplicationInput {
16741	s.Sources = v
16742	return s
16743}
16744
16745type UpdateSimulationApplicationOutput struct {
16746	_ struct{} `type:"structure"`
16747
16748	// The Amazon Resource Name (ARN) of the updated simulation application.
16749	Arn *string `locationName:"arn" min:"1" type:"string"`
16750
16751	// The time, in milliseconds since the epoch, when the simulation application
16752	// was last updated.
16753	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16754
16755	// The name of the simulation application.
16756	Name *string `locationName:"name" min:"1" type:"string"`
16757
16758	// The rendering engine for the simulation application.
16759	RenderingEngine *RenderingEngine `locationName:"renderingEngine" type:"structure"`
16760
16761	// The revision id of the simulation application.
16762	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
16763
16764	// Information about the robot software suite (ROS distribution).
16765	RobotSoftwareSuite *RobotSoftwareSuite `locationName:"robotSoftwareSuite" type:"structure"`
16766
16767	// The simulation software suite used by the simulation application.
16768	SimulationSoftwareSuite *SimulationSoftwareSuite `locationName:"simulationSoftwareSuite" type:"structure"`
16769
16770	// The sources of the simulation application.
16771	Sources []*Source `locationName:"sources" type:"list"`
16772
16773	// The version of the robot application.
16774	Version *string `locationName:"version" min:"1" type:"string"`
16775}
16776
16777// String returns the string representation
16778func (s UpdateSimulationApplicationOutput) String() string {
16779	return awsutil.Prettify(s)
16780}
16781
16782// GoString returns the string representation
16783func (s UpdateSimulationApplicationOutput) GoString() string {
16784	return s.String()
16785}
16786
16787// SetArn sets the Arn field's value.
16788func (s *UpdateSimulationApplicationOutput) SetArn(v string) *UpdateSimulationApplicationOutput {
16789	s.Arn = &v
16790	return s
16791}
16792
16793// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16794func (s *UpdateSimulationApplicationOutput) SetLastUpdatedAt(v time.Time) *UpdateSimulationApplicationOutput {
16795	s.LastUpdatedAt = &v
16796	return s
16797}
16798
16799// SetName sets the Name field's value.
16800func (s *UpdateSimulationApplicationOutput) SetName(v string) *UpdateSimulationApplicationOutput {
16801	s.Name = &v
16802	return s
16803}
16804
16805// SetRenderingEngine sets the RenderingEngine field's value.
16806func (s *UpdateSimulationApplicationOutput) SetRenderingEngine(v *RenderingEngine) *UpdateSimulationApplicationOutput {
16807	s.RenderingEngine = v
16808	return s
16809}
16810
16811// SetRevisionId sets the RevisionId field's value.
16812func (s *UpdateSimulationApplicationOutput) SetRevisionId(v string) *UpdateSimulationApplicationOutput {
16813	s.RevisionId = &v
16814	return s
16815}
16816
16817// SetRobotSoftwareSuite sets the RobotSoftwareSuite field's value.
16818func (s *UpdateSimulationApplicationOutput) SetRobotSoftwareSuite(v *RobotSoftwareSuite) *UpdateSimulationApplicationOutput {
16819	s.RobotSoftwareSuite = v
16820	return s
16821}
16822
16823// SetSimulationSoftwareSuite sets the SimulationSoftwareSuite field's value.
16824func (s *UpdateSimulationApplicationOutput) SetSimulationSoftwareSuite(v *SimulationSoftwareSuite) *UpdateSimulationApplicationOutput {
16825	s.SimulationSoftwareSuite = v
16826	return s
16827}
16828
16829// SetSources sets the Sources field's value.
16830func (s *UpdateSimulationApplicationOutput) SetSources(v []*Source) *UpdateSimulationApplicationOutput {
16831	s.Sources = v
16832	return s
16833}
16834
16835// SetVersion sets the Version field's value.
16836func (s *UpdateSimulationApplicationOutput) SetVersion(v string) *UpdateSimulationApplicationOutput {
16837	s.Version = &v
16838	return s
16839}
16840
16841type UpdateWorldTemplateInput struct {
16842	_ struct{} `type:"structure"`
16843
16844	// The name of the template.
16845	Name *string `locationName:"name" type:"string"`
16846
16847	// The Amazon Resource Name (arn) of the world template to update.
16848	//
16849	// Template is a required field
16850	Template *string `locationName:"template" min:"1" type:"string" required:"true"`
16851
16852	// The world template body.
16853	TemplateBody *string `locationName:"templateBody" min:"1" type:"string"`
16854
16855	// The location of the world template.
16856	TemplateLocation *TemplateLocation `locationName:"templateLocation" type:"structure"`
16857}
16858
16859// String returns the string representation
16860func (s UpdateWorldTemplateInput) String() string {
16861	return awsutil.Prettify(s)
16862}
16863
16864// GoString returns the string representation
16865func (s UpdateWorldTemplateInput) GoString() string {
16866	return s.String()
16867}
16868
16869// Validate inspects the fields of the type to determine if they are valid.
16870func (s *UpdateWorldTemplateInput) Validate() error {
16871	invalidParams := request.ErrInvalidParams{Context: "UpdateWorldTemplateInput"}
16872	if s.Template == nil {
16873		invalidParams.Add(request.NewErrParamRequired("Template"))
16874	}
16875	if s.Template != nil && len(*s.Template) < 1 {
16876		invalidParams.Add(request.NewErrParamMinLen("Template", 1))
16877	}
16878	if s.TemplateBody != nil && len(*s.TemplateBody) < 1 {
16879		invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1))
16880	}
16881	if s.TemplateLocation != nil {
16882		if err := s.TemplateLocation.Validate(); err != nil {
16883			invalidParams.AddNested("TemplateLocation", err.(request.ErrInvalidParams))
16884		}
16885	}
16886
16887	if invalidParams.Len() > 0 {
16888		return invalidParams
16889	}
16890	return nil
16891}
16892
16893// SetName sets the Name field's value.
16894func (s *UpdateWorldTemplateInput) SetName(v string) *UpdateWorldTemplateInput {
16895	s.Name = &v
16896	return s
16897}
16898
16899// SetTemplate sets the Template field's value.
16900func (s *UpdateWorldTemplateInput) SetTemplate(v string) *UpdateWorldTemplateInput {
16901	s.Template = &v
16902	return s
16903}
16904
16905// SetTemplateBody sets the TemplateBody field's value.
16906func (s *UpdateWorldTemplateInput) SetTemplateBody(v string) *UpdateWorldTemplateInput {
16907	s.TemplateBody = &v
16908	return s
16909}
16910
16911// SetTemplateLocation sets the TemplateLocation field's value.
16912func (s *UpdateWorldTemplateInput) SetTemplateLocation(v *TemplateLocation) *UpdateWorldTemplateInput {
16913	s.TemplateLocation = v
16914	return s
16915}
16916
16917type UpdateWorldTemplateOutput struct {
16918	_ struct{} `type:"structure"`
16919
16920	// The Amazon Resource Name (arn) of the world template.
16921	Arn *string `locationName:"arn" min:"1" type:"string"`
16922
16923	// The time, in milliseconds since the epoch, when the world template was created.
16924	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
16925
16926	// The time, in milliseconds since the epoch, when the world template was last
16927	// updated.
16928	LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
16929
16930	// The name of the world template.
16931	Name *string `locationName:"name" type:"string"`
16932}
16933
16934// String returns the string representation
16935func (s UpdateWorldTemplateOutput) String() string {
16936	return awsutil.Prettify(s)
16937}
16938
16939// GoString returns the string representation
16940func (s UpdateWorldTemplateOutput) GoString() string {
16941	return s.String()
16942}
16943
16944// SetArn sets the Arn field's value.
16945func (s *UpdateWorldTemplateOutput) SetArn(v string) *UpdateWorldTemplateOutput {
16946	s.Arn = &v
16947	return s
16948}
16949
16950// SetCreatedAt sets the CreatedAt field's value.
16951func (s *UpdateWorldTemplateOutput) SetCreatedAt(v time.Time) *UpdateWorldTemplateOutput {
16952	s.CreatedAt = &v
16953	return s
16954}
16955
16956// SetLastUpdatedAt sets the LastUpdatedAt field's value.
16957func (s *UpdateWorldTemplateOutput) SetLastUpdatedAt(v time.Time) *UpdateWorldTemplateOutput {
16958	s.LastUpdatedAt = &v
16959	return s
16960}
16961
16962// SetName sets the Name field's value.
16963func (s *UpdateWorldTemplateOutput) SetName(v string) *UpdateWorldTemplateOutput {
16964	s.Name = &v
16965	return s
16966}
16967
16968// Provides upload configuration information. Files are uploaded from the simulation
16969// job to a location you specify.
16970type UploadConfiguration struct {
16971	_ struct{} `type:"structure"`
16972
16973	// A prefix that specifies where files will be uploaded in Amazon S3. It is
16974	// appended to the simulation output location to determine the final path.
16975	//
16976	// For example, if your simulation output location is s3://my-bucket and your
16977	// upload configuration name is robot-test, your files will be uploaded to s3://my-bucket/<simid>/<runid>/robot-test.
16978	//
16979	// Name is a required field
16980	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
16981
16982	// Specifies the path of the file(s) to upload. Standard Unix glob matching
16983	// rules are accepted, with the addition of ** as a super asterisk. For example,
16984	// specifying /var/log/**.log causes all .log files in the /var/log directory
16985	// tree to be collected. For more examples, see Glob Library (https://github.com/gobwas/glob).
16986	//
16987	// Path is a required field
16988	Path *string `locationName:"path" min:"1" type:"string" required:"true"`
16989
16990	// Specifies when to upload the files:
16991	//
16992	// UPLOAD_ON_TERMINATE
16993	//
16994	// Matching files are uploaded once the simulation enters the TERMINATING state.
16995	// Matching files are not uploaded until all of your code (including tools)
16996	// have stopped.
16997	//
16998	// If there is a problem uploading a file, the upload is retried. If problems
16999	// persist, no further upload attempts will be made.
17000	//
17001	// UPLOAD_ROLLING_AUTO_REMOVE
17002	//
17003	// Matching files are uploaded as they are created. They are deleted after they
17004	// are uploaded. The specified path is checked every 5 seconds. A final check
17005	// is made when all of your code (including tools) have stopped.
17006	//
17007	// UploadBehavior is a required field
17008	UploadBehavior *string `locationName:"uploadBehavior" type:"string" required:"true" enum:"UploadBehavior"`
17009}
17010
17011// String returns the string representation
17012func (s UploadConfiguration) String() string {
17013	return awsutil.Prettify(s)
17014}
17015
17016// GoString returns the string representation
17017func (s UploadConfiguration) GoString() string {
17018	return s.String()
17019}
17020
17021// Validate inspects the fields of the type to determine if they are valid.
17022func (s *UploadConfiguration) Validate() error {
17023	invalidParams := request.ErrInvalidParams{Context: "UploadConfiguration"}
17024	if s.Name == nil {
17025		invalidParams.Add(request.NewErrParamRequired("Name"))
17026	}
17027	if s.Name != nil && len(*s.Name) < 1 {
17028		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
17029	}
17030	if s.Path == nil {
17031		invalidParams.Add(request.NewErrParamRequired("Path"))
17032	}
17033	if s.Path != nil && len(*s.Path) < 1 {
17034		invalidParams.Add(request.NewErrParamMinLen("Path", 1))
17035	}
17036	if s.UploadBehavior == nil {
17037		invalidParams.Add(request.NewErrParamRequired("UploadBehavior"))
17038	}
17039
17040	if invalidParams.Len() > 0 {
17041		return invalidParams
17042	}
17043	return nil
17044}
17045
17046// SetName sets the Name field's value.
17047func (s *UploadConfiguration) SetName(v string) *UploadConfiguration {
17048	s.Name = &v
17049	return s
17050}
17051
17052// SetPath sets the Path field's value.
17053func (s *UploadConfiguration) SetPath(v string) *UploadConfiguration {
17054	s.Path = &v
17055	return s
17056}
17057
17058// SetUploadBehavior sets the UploadBehavior field's value.
17059func (s *UploadConfiguration) SetUploadBehavior(v string) *UploadConfiguration {
17060	s.UploadBehavior = &v
17061	return s
17062}
17063
17064// If your simulation job accesses resources in a VPC, you provide this parameter
17065// identifying the list of security group IDs and subnet IDs. These must belong
17066// to the same VPC. You must provide at least one security group and two subnet
17067// IDs.
17068type VPCConfig struct {
17069	_ struct{} `type:"structure"`
17070
17071	// A boolean indicating whether to assign a public IP address.
17072	AssignPublicIp *bool `locationName:"assignPublicIp" type:"boolean"`
17073
17074	// A list of one or more security groups IDs in your VPC.
17075	SecurityGroups []*string `locationName:"securityGroups" min:"1" type:"list"`
17076
17077	// A list of one or more subnet IDs in your VPC.
17078	//
17079	// Subnets is a required field
17080	Subnets []*string `locationName:"subnets" min:"1" type:"list" required:"true"`
17081}
17082
17083// String returns the string representation
17084func (s VPCConfig) String() string {
17085	return awsutil.Prettify(s)
17086}
17087
17088// GoString returns the string representation
17089func (s VPCConfig) GoString() string {
17090	return s.String()
17091}
17092
17093// Validate inspects the fields of the type to determine if they are valid.
17094func (s *VPCConfig) Validate() error {
17095	invalidParams := request.ErrInvalidParams{Context: "VPCConfig"}
17096	if s.SecurityGroups != nil && len(s.SecurityGroups) < 1 {
17097		invalidParams.Add(request.NewErrParamMinLen("SecurityGroups", 1))
17098	}
17099	if s.Subnets == nil {
17100		invalidParams.Add(request.NewErrParamRequired("Subnets"))
17101	}
17102	if s.Subnets != nil && len(s.Subnets) < 1 {
17103		invalidParams.Add(request.NewErrParamMinLen("Subnets", 1))
17104	}
17105
17106	if invalidParams.Len() > 0 {
17107		return invalidParams
17108	}
17109	return nil
17110}
17111
17112// SetAssignPublicIp sets the AssignPublicIp field's value.
17113func (s *VPCConfig) SetAssignPublicIp(v bool) *VPCConfig {
17114	s.AssignPublicIp = &v
17115	return s
17116}
17117
17118// SetSecurityGroups sets the SecurityGroups field's value.
17119func (s *VPCConfig) SetSecurityGroups(v []*string) *VPCConfig {
17120	s.SecurityGroups = v
17121	return s
17122}
17123
17124// SetSubnets sets the Subnets field's value.
17125func (s *VPCConfig) SetSubnets(v []*string) *VPCConfig {
17126	s.Subnets = v
17127	return s
17128}
17129
17130// VPC configuration associated with your simulation job.
17131type VPCConfigResponse struct {
17132	_ struct{} `type:"structure"`
17133
17134	// A boolean indicating if a public IP was assigned.
17135	AssignPublicIp *bool `locationName:"assignPublicIp" type:"boolean"`
17136
17137	// A list of security group IDs associated with the simulation job.
17138	SecurityGroups []*string `locationName:"securityGroups" min:"1" type:"list"`
17139
17140	// A list of subnet IDs associated with the simulation job.
17141	Subnets []*string `locationName:"subnets" min:"1" type:"list"`
17142
17143	// The VPC ID associated with your simulation job.
17144	VpcId *string `locationName:"vpcId" type:"string"`
17145}
17146
17147// String returns the string representation
17148func (s VPCConfigResponse) String() string {
17149	return awsutil.Prettify(s)
17150}
17151
17152// GoString returns the string representation
17153func (s VPCConfigResponse) GoString() string {
17154	return s.String()
17155}
17156
17157// SetAssignPublicIp sets the AssignPublicIp field's value.
17158func (s *VPCConfigResponse) SetAssignPublicIp(v bool) *VPCConfigResponse {
17159	s.AssignPublicIp = &v
17160	return s
17161}
17162
17163// SetSecurityGroups sets the SecurityGroups field's value.
17164func (s *VPCConfigResponse) SetSecurityGroups(v []*string) *VPCConfigResponse {
17165	s.SecurityGroups = v
17166	return s
17167}
17168
17169// SetSubnets sets the Subnets field's value.
17170func (s *VPCConfigResponse) SetSubnets(v []*string) *VPCConfigResponse {
17171	s.Subnets = v
17172	return s
17173}
17174
17175// SetVpcId sets the VpcId field's value.
17176func (s *VPCConfigResponse) SetVpcId(v string) *VPCConfigResponse {
17177	s.VpcId = &v
17178	return s
17179}
17180
17181// Configuration information for a world.
17182type WorldConfig struct {
17183	_ struct{} `type:"structure"`
17184
17185	// The world generated by Simulation WorldForge.
17186	World *string `locationName:"world" min:"1" type:"string"`
17187}
17188
17189// String returns the string representation
17190func (s WorldConfig) String() string {
17191	return awsutil.Prettify(s)
17192}
17193
17194// GoString returns the string representation
17195func (s WorldConfig) GoString() string {
17196	return s.String()
17197}
17198
17199// Validate inspects the fields of the type to determine if they are valid.
17200func (s *WorldConfig) Validate() error {
17201	invalidParams := request.ErrInvalidParams{Context: "WorldConfig"}
17202	if s.World != nil && len(*s.World) < 1 {
17203		invalidParams.Add(request.NewErrParamMinLen("World", 1))
17204	}
17205
17206	if invalidParams.Len() > 0 {
17207		return invalidParams
17208	}
17209	return nil
17210}
17211
17212// SetWorld sets the World field's value.
17213func (s *WorldConfig) SetWorld(v string) *WorldConfig {
17214	s.World = &v
17215	return s
17216}
17217
17218// The number of worlds that will be created. You can configure the number of
17219// unique floorplans and the number of unique interiors for each floor plan.
17220// For example, if you want 1 world with 20 unique interiors, you set floorplanCount
17221// = 1 and interiorCountPerFloorplan = 20. This will result in 20 worlds (floorplanCount
17222// * interiorCountPerFloorplan).
17223//
17224// If you set floorplanCount = 4 and interiorCountPerFloorplan = 5, there will
17225// be 20 worlds with 5 unique floor plans.
17226type WorldCount struct {
17227	_ struct{} `type:"structure"`
17228
17229	// The number of unique floorplans.
17230	FloorplanCount *int64 `locationName:"floorplanCount" type:"integer"`
17231
17232	// The number of unique interiors per floorplan.
17233	InteriorCountPerFloorplan *int64 `locationName:"interiorCountPerFloorplan" type:"integer"`
17234}
17235
17236// String returns the string representation
17237func (s WorldCount) String() string {
17238	return awsutil.Prettify(s)
17239}
17240
17241// GoString returns the string representation
17242func (s WorldCount) GoString() string {
17243	return s.String()
17244}
17245
17246// SetFloorplanCount sets the FloorplanCount field's value.
17247func (s *WorldCount) SetFloorplanCount(v int64) *WorldCount {
17248	s.FloorplanCount = &v
17249	return s
17250}
17251
17252// SetInteriorCountPerFloorplan sets the InteriorCountPerFloorplan field's value.
17253func (s *WorldCount) SetInteriorCountPerFloorplan(v int64) *WorldCount {
17254	s.InteriorCountPerFloorplan = &v
17255	return s
17256}
17257
17258// Information about a world export job.
17259type WorldExportJobSummary struct {
17260	_ struct{} `type:"structure"`
17261
17262	// The Amazon Resource Name (ARN) of the world export job.
17263	Arn *string `locationName:"arn" min:"1" type:"string"`
17264
17265	// The time, in milliseconds since the epoch, when the world export job was
17266	// created.
17267	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
17268
17269	// The status of the world export job.
17270	//
17271	// Pending
17272	//
17273	// The world export job request is pending.
17274	//
17275	// Running
17276	//
17277	// The world export job is running.
17278	//
17279	// Completed
17280	//
17281	// The world export job completed.
17282	//
17283	// Failed
17284	//
17285	// The world export job failed. See failureCode for more information.
17286	//
17287	// Canceled
17288	//
17289	// The world export job was cancelled.
17290	//
17291	// Canceling
17292	//
17293	// The world export job is being cancelled.
17294	Status *string `locationName:"status" type:"string" enum:"WorldExportJobStatus"`
17295
17296	// A list of worlds.
17297	Worlds []*string `locationName:"worlds" min:"1" type:"list"`
17298}
17299
17300// String returns the string representation
17301func (s WorldExportJobSummary) String() string {
17302	return awsutil.Prettify(s)
17303}
17304
17305// GoString returns the string representation
17306func (s WorldExportJobSummary) GoString() string {
17307	return s.String()
17308}
17309
17310// SetArn sets the Arn field's value.
17311func (s *WorldExportJobSummary) SetArn(v string) *WorldExportJobSummary {
17312	s.Arn = &v
17313	return s
17314}
17315
17316// SetCreatedAt sets the CreatedAt field's value.
17317func (s *WorldExportJobSummary) SetCreatedAt(v time.Time) *WorldExportJobSummary {
17318	s.CreatedAt = &v
17319	return s
17320}
17321
17322// SetStatus sets the Status field's value.
17323func (s *WorldExportJobSummary) SetStatus(v string) *WorldExportJobSummary {
17324	s.Status = &v
17325	return s
17326}
17327
17328// SetWorlds sets the Worlds field's value.
17329func (s *WorldExportJobSummary) SetWorlds(v []*string) *WorldExportJobSummary {
17330	s.Worlds = v
17331	return s
17332}
17333
17334// Information about a failed world.
17335type WorldFailure struct {
17336	_ struct{} `type:"structure"`
17337
17338	// The failure code of the world export job if it failed:
17339	//
17340	// InternalServiceError
17341	//
17342	// Internal service error.
17343	//
17344	// LimitExceeded
17345	//
17346	// The requested resource exceeds the maximum number allowed, or the number
17347	// of concurrent stream requests exceeds the maximum number allowed.
17348	//
17349	// ResourceNotFound
17350	//
17351	// The specified resource could not be found.
17352	//
17353	// RequestThrottled
17354	//
17355	// The request was throttled.
17356	//
17357	// InvalidInput
17358	//
17359	// An input parameter in the request is not valid.
17360	FailureCode *string `locationName:"failureCode" type:"string" enum:"WorldGenerationJobErrorCode"`
17361
17362	// The number of failed worlds.
17363	FailureCount *int64 `locationName:"failureCount" type:"integer"`
17364
17365	// The sample reason why the world failed. World errors are aggregated. A sample
17366	// is used as the sampleFailureReason.
17367	SampleFailureReason *string `locationName:"sampleFailureReason" type:"string"`
17368}
17369
17370// String returns the string representation
17371func (s WorldFailure) String() string {
17372	return awsutil.Prettify(s)
17373}
17374
17375// GoString returns the string representation
17376func (s WorldFailure) GoString() string {
17377	return s.String()
17378}
17379
17380// SetFailureCode sets the FailureCode field's value.
17381func (s *WorldFailure) SetFailureCode(v string) *WorldFailure {
17382	s.FailureCode = &v
17383	return s
17384}
17385
17386// SetFailureCount sets the FailureCount field's value.
17387func (s *WorldFailure) SetFailureCount(v int64) *WorldFailure {
17388	s.FailureCount = &v
17389	return s
17390}
17391
17392// SetSampleFailureReason sets the SampleFailureReason field's value.
17393func (s *WorldFailure) SetSampleFailureReason(v string) *WorldFailure {
17394	s.SampleFailureReason = &v
17395	return s
17396}
17397
17398// Information about a world generator job.
17399type WorldGenerationJobSummary struct {
17400	_ struct{} `type:"structure"`
17401
17402	// The Amazon Resource Name (ARN) of the world generator job.
17403	Arn *string `locationName:"arn" min:"1" type:"string"`
17404
17405	// The time, in milliseconds since the epoch, when the world generator job was
17406	// created.
17407	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
17408
17409	// The number of worlds that failed.
17410	FailedWorldCount *int64 `locationName:"failedWorldCount" type:"integer"`
17411
17412	// The status of the world generator job:
17413	//
17414	// Pending
17415	//
17416	// The world generator job request is pending.
17417	//
17418	// Running
17419	//
17420	// The world generator job is running.
17421	//
17422	// Completed
17423	//
17424	// The world generator job completed.
17425	//
17426	// Failed
17427	//
17428	// The world generator job failed. See failureCode for more information.
17429	//
17430	// PartialFailed
17431	//
17432	// Some worlds did not generate.
17433	//
17434	// Canceled
17435	//
17436	// The world generator job was cancelled.
17437	//
17438	// Canceling
17439	//
17440	// The world generator job is being cancelled.
17441	Status *string `locationName:"status" type:"string" enum:"WorldGenerationJobStatus"`
17442
17443	// The number of worlds that were generated.
17444	SucceededWorldCount *int64 `locationName:"succeededWorldCount" type:"integer"`
17445
17446	// The Amazon Resource Name (arn) of the world template.
17447	Template *string `locationName:"template" min:"1" type:"string"`
17448
17449	// Information about the world count.
17450	WorldCount *WorldCount `locationName:"worldCount" type:"structure"`
17451}
17452
17453// String returns the string representation
17454func (s WorldGenerationJobSummary) String() string {
17455	return awsutil.Prettify(s)
17456}
17457
17458// GoString returns the string representation
17459func (s WorldGenerationJobSummary) GoString() string {
17460	return s.String()
17461}
17462
17463// SetArn sets the Arn field's value.
17464func (s *WorldGenerationJobSummary) SetArn(v string) *WorldGenerationJobSummary {
17465	s.Arn = &v
17466	return s
17467}
17468
17469// SetCreatedAt sets the CreatedAt field's value.
17470func (s *WorldGenerationJobSummary) SetCreatedAt(v time.Time) *WorldGenerationJobSummary {
17471	s.CreatedAt = &v
17472	return s
17473}
17474
17475// SetFailedWorldCount sets the FailedWorldCount field's value.
17476func (s *WorldGenerationJobSummary) SetFailedWorldCount(v int64) *WorldGenerationJobSummary {
17477	s.FailedWorldCount = &v
17478	return s
17479}
17480
17481// SetStatus sets the Status field's value.
17482func (s *WorldGenerationJobSummary) SetStatus(v string) *WorldGenerationJobSummary {
17483	s.Status = &v
17484	return s
17485}
17486
17487// SetSucceededWorldCount sets the SucceededWorldCount field's value.
17488func (s *WorldGenerationJobSummary) SetSucceededWorldCount(v int64) *WorldGenerationJobSummary {
17489	s.SucceededWorldCount = &v
17490	return s
17491}
17492
17493// SetTemplate sets the Template field's value.
17494func (s *WorldGenerationJobSummary) SetTemplate(v string) *WorldGenerationJobSummary {
17495	s.Template = &v
17496	return s
17497}
17498
17499// SetWorldCount sets the WorldCount field's value.
17500func (s *WorldGenerationJobSummary) SetWorldCount(v *WorldCount) *WorldGenerationJobSummary {
17501	s.WorldCount = v
17502	return s
17503}
17504
17505// Information about a world.
17506type WorldSummary struct {
17507	_ struct{} `type:"structure"`
17508
17509	// The Amazon Resource Name (ARN) of the world.
17510	Arn *string `locationName:"arn" min:"1" type:"string"`
17511
17512	// The time, in milliseconds since the epoch, when the world was created.
17513	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
17514
17515	// The Amazon Resource Name (arn) of the world generation job.
17516	GenerationJob *string `locationName:"generationJob" min:"1" type:"string"`
17517
17518	// The Amazon Resource Name (arn) of the world template.
17519	Template *string `locationName:"template" min:"1" type:"string"`
17520}
17521
17522// String returns the string representation
17523func (s WorldSummary) String() string {
17524	return awsutil.Prettify(s)
17525}
17526
17527// GoString returns the string representation
17528func (s WorldSummary) GoString() string {
17529	return s.String()
17530}
17531
17532// SetArn sets the Arn field's value.
17533func (s *WorldSummary) SetArn(v string) *WorldSummary {
17534	s.Arn = &v
17535	return s
17536}
17537
17538// SetCreatedAt sets the CreatedAt field's value.
17539func (s *WorldSummary) SetCreatedAt(v time.Time) *WorldSummary {
17540	s.CreatedAt = &v
17541	return s
17542}
17543
17544// SetGenerationJob sets the GenerationJob field's value.
17545func (s *WorldSummary) SetGenerationJob(v string) *WorldSummary {
17546	s.GenerationJob = &v
17547	return s
17548}
17549
17550// SetTemplate sets the Template field's value.
17551func (s *WorldSummary) SetTemplate(v string) *WorldSummary {
17552	s.Template = &v
17553	return s
17554}
17555
17556const (
17557	// ArchitectureX8664 is a Architecture enum value
17558	ArchitectureX8664 = "X86_64"
17559
17560	// ArchitectureArm64 is a Architecture enum value
17561	ArchitectureArm64 = "ARM64"
17562
17563	// ArchitectureArmhf is a Architecture enum value
17564	ArchitectureArmhf = "ARMHF"
17565)
17566
17567// Architecture_Values returns all elements of the Architecture enum
17568func Architecture_Values() []string {
17569	return []string{
17570		ArchitectureX8664,
17571		ArchitectureArm64,
17572		ArchitectureArmhf,
17573	}
17574}
17575
17576const (
17577	// DeploymentJobErrorCodeResourceNotFound is a DeploymentJobErrorCode enum value
17578	DeploymentJobErrorCodeResourceNotFound = "ResourceNotFound"
17579
17580	// DeploymentJobErrorCodeEnvironmentSetupError is a DeploymentJobErrorCode enum value
17581	DeploymentJobErrorCodeEnvironmentSetupError = "EnvironmentSetupError"
17582
17583	// DeploymentJobErrorCodeEtagMismatch is a DeploymentJobErrorCode enum value
17584	DeploymentJobErrorCodeEtagMismatch = "EtagMismatch"
17585
17586	// DeploymentJobErrorCodeFailureThresholdBreached is a DeploymentJobErrorCode enum value
17587	DeploymentJobErrorCodeFailureThresholdBreached = "FailureThresholdBreached"
17588
17589	// DeploymentJobErrorCodeRobotDeploymentAborted is a DeploymentJobErrorCode enum value
17590	DeploymentJobErrorCodeRobotDeploymentAborted = "RobotDeploymentAborted"
17591
17592	// DeploymentJobErrorCodeRobotDeploymentNoResponse is a DeploymentJobErrorCode enum value
17593	DeploymentJobErrorCodeRobotDeploymentNoResponse = "RobotDeploymentNoResponse"
17594
17595	// DeploymentJobErrorCodeRobotAgentConnectionTimeout is a DeploymentJobErrorCode enum value
17596	DeploymentJobErrorCodeRobotAgentConnectionTimeout = "RobotAgentConnectionTimeout"
17597
17598	// DeploymentJobErrorCodeGreengrassDeploymentFailed is a DeploymentJobErrorCode enum value
17599	DeploymentJobErrorCodeGreengrassDeploymentFailed = "GreengrassDeploymentFailed"
17600
17601	// DeploymentJobErrorCodeInvalidGreengrassGroup is a DeploymentJobErrorCode enum value
17602	DeploymentJobErrorCodeInvalidGreengrassGroup = "InvalidGreengrassGroup"
17603
17604	// DeploymentJobErrorCodeMissingRobotArchitecture is a DeploymentJobErrorCode enum value
17605	DeploymentJobErrorCodeMissingRobotArchitecture = "MissingRobotArchitecture"
17606
17607	// DeploymentJobErrorCodeMissingRobotApplicationArchitecture is a DeploymentJobErrorCode enum value
17608	DeploymentJobErrorCodeMissingRobotApplicationArchitecture = "MissingRobotApplicationArchitecture"
17609
17610	// DeploymentJobErrorCodeMissingRobotDeploymentResource is a DeploymentJobErrorCode enum value
17611	DeploymentJobErrorCodeMissingRobotDeploymentResource = "MissingRobotDeploymentResource"
17612
17613	// DeploymentJobErrorCodeGreengrassGroupVersionDoesNotExist is a DeploymentJobErrorCode enum value
17614	DeploymentJobErrorCodeGreengrassGroupVersionDoesNotExist = "GreengrassGroupVersionDoesNotExist"
17615
17616	// DeploymentJobErrorCodeLambdaDeleted is a DeploymentJobErrorCode enum value
17617	DeploymentJobErrorCodeLambdaDeleted = "LambdaDeleted"
17618
17619	// DeploymentJobErrorCodeExtractingBundleFailure is a DeploymentJobErrorCode enum value
17620	DeploymentJobErrorCodeExtractingBundleFailure = "ExtractingBundleFailure"
17621
17622	// DeploymentJobErrorCodePreLaunchFileFailure is a DeploymentJobErrorCode enum value
17623	DeploymentJobErrorCodePreLaunchFileFailure = "PreLaunchFileFailure"
17624
17625	// DeploymentJobErrorCodePostLaunchFileFailure is a DeploymentJobErrorCode enum value
17626	DeploymentJobErrorCodePostLaunchFileFailure = "PostLaunchFileFailure"
17627
17628	// DeploymentJobErrorCodeBadPermissionError is a DeploymentJobErrorCode enum value
17629	DeploymentJobErrorCodeBadPermissionError = "BadPermissionError"
17630
17631	// DeploymentJobErrorCodeDownloadConditionFailed is a DeploymentJobErrorCode enum value
17632	DeploymentJobErrorCodeDownloadConditionFailed = "DownloadConditionFailed"
17633
17634	// DeploymentJobErrorCodeBadLambdaAssociated is a DeploymentJobErrorCode enum value
17635	DeploymentJobErrorCodeBadLambdaAssociated = "BadLambdaAssociated"
17636
17637	// DeploymentJobErrorCodeInternalServerError is a DeploymentJobErrorCode enum value
17638	DeploymentJobErrorCodeInternalServerError = "InternalServerError"
17639
17640	// DeploymentJobErrorCodeRobotApplicationDoesNotExist is a DeploymentJobErrorCode enum value
17641	DeploymentJobErrorCodeRobotApplicationDoesNotExist = "RobotApplicationDoesNotExist"
17642
17643	// DeploymentJobErrorCodeDeploymentFleetDoesNotExist is a DeploymentJobErrorCode enum value
17644	DeploymentJobErrorCodeDeploymentFleetDoesNotExist = "DeploymentFleetDoesNotExist"
17645
17646	// DeploymentJobErrorCodeFleetDeploymentTimeout is a DeploymentJobErrorCode enum value
17647	DeploymentJobErrorCodeFleetDeploymentTimeout = "FleetDeploymentTimeout"
17648)
17649
17650// DeploymentJobErrorCode_Values returns all elements of the DeploymentJobErrorCode enum
17651func DeploymentJobErrorCode_Values() []string {
17652	return []string{
17653		DeploymentJobErrorCodeResourceNotFound,
17654		DeploymentJobErrorCodeEnvironmentSetupError,
17655		DeploymentJobErrorCodeEtagMismatch,
17656		DeploymentJobErrorCodeFailureThresholdBreached,
17657		DeploymentJobErrorCodeRobotDeploymentAborted,
17658		DeploymentJobErrorCodeRobotDeploymentNoResponse,
17659		DeploymentJobErrorCodeRobotAgentConnectionTimeout,
17660		DeploymentJobErrorCodeGreengrassDeploymentFailed,
17661		DeploymentJobErrorCodeInvalidGreengrassGroup,
17662		DeploymentJobErrorCodeMissingRobotArchitecture,
17663		DeploymentJobErrorCodeMissingRobotApplicationArchitecture,
17664		DeploymentJobErrorCodeMissingRobotDeploymentResource,
17665		DeploymentJobErrorCodeGreengrassGroupVersionDoesNotExist,
17666		DeploymentJobErrorCodeLambdaDeleted,
17667		DeploymentJobErrorCodeExtractingBundleFailure,
17668		DeploymentJobErrorCodePreLaunchFileFailure,
17669		DeploymentJobErrorCodePostLaunchFileFailure,
17670		DeploymentJobErrorCodeBadPermissionError,
17671		DeploymentJobErrorCodeDownloadConditionFailed,
17672		DeploymentJobErrorCodeBadLambdaAssociated,
17673		DeploymentJobErrorCodeInternalServerError,
17674		DeploymentJobErrorCodeRobotApplicationDoesNotExist,
17675		DeploymentJobErrorCodeDeploymentFleetDoesNotExist,
17676		DeploymentJobErrorCodeFleetDeploymentTimeout,
17677	}
17678}
17679
17680const (
17681	// DeploymentStatusPending is a DeploymentStatus enum value
17682	DeploymentStatusPending = "Pending"
17683
17684	// DeploymentStatusPreparing is a DeploymentStatus enum value
17685	DeploymentStatusPreparing = "Preparing"
17686
17687	// DeploymentStatusInProgress is a DeploymentStatus enum value
17688	DeploymentStatusInProgress = "InProgress"
17689
17690	// DeploymentStatusFailed is a DeploymentStatus enum value
17691	DeploymentStatusFailed = "Failed"
17692
17693	// DeploymentStatusSucceeded is a DeploymentStatus enum value
17694	DeploymentStatusSucceeded = "Succeeded"
17695
17696	// DeploymentStatusCanceled is a DeploymentStatus enum value
17697	DeploymentStatusCanceled = "Canceled"
17698)
17699
17700// DeploymentStatus_Values returns all elements of the DeploymentStatus enum
17701func DeploymentStatus_Values() []string {
17702	return []string{
17703		DeploymentStatusPending,
17704		DeploymentStatusPreparing,
17705		DeploymentStatusInProgress,
17706		DeploymentStatusFailed,
17707		DeploymentStatusSucceeded,
17708		DeploymentStatusCanceled,
17709	}
17710}
17711
17712const (
17713	// ExitBehaviorFail is a ExitBehavior enum value
17714	ExitBehaviorFail = "FAIL"
17715
17716	// ExitBehaviorRestart is a ExitBehavior enum value
17717	ExitBehaviorRestart = "RESTART"
17718)
17719
17720// ExitBehavior_Values returns all elements of the ExitBehavior enum
17721func ExitBehavior_Values() []string {
17722	return []string{
17723		ExitBehaviorFail,
17724		ExitBehaviorRestart,
17725	}
17726}
17727
17728const (
17729	// FailureBehaviorFail is a FailureBehavior enum value
17730	FailureBehaviorFail = "Fail"
17731
17732	// FailureBehaviorContinue is a FailureBehavior enum value
17733	FailureBehaviorContinue = "Continue"
17734)
17735
17736// FailureBehavior_Values returns all elements of the FailureBehavior enum
17737func FailureBehavior_Values() []string {
17738	return []string{
17739		FailureBehaviorFail,
17740		FailureBehaviorContinue,
17741	}
17742}
17743
17744const (
17745	// RenderingEngineTypeOgre is a RenderingEngineType enum value
17746	RenderingEngineTypeOgre = "OGRE"
17747)
17748
17749// RenderingEngineType_Values returns all elements of the RenderingEngineType enum
17750func RenderingEngineType_Values() []string {
17751	return []string{
17752		RenderingEngineTypeOgre,
17753	}
17754}
17755
17756const (
17757	// RobotDeploymentStepValidating is a RobotDeploymentStep enum value
17758	RobotDeploymentStepValidating = "Validating"
17759
17760	// RobotDeploymentStepDownloadingExtracting is a RobotDeploymentStep enum value
17761	RobotDeploymentStepDownloadingExtracting = "DownloadingExtracting"
17762
17763	// RobotDeploymentStepExecutingDownloadCondition is a RobotDeploymentStep enum value
17764	RobotDeploymentStepExecutingDownloadCondition = "ExecutingDownloadCondition"
17765
17766	// RobotDeploymentStepExecutingPreLaunch is a RobotDeploymentStep enum value
17767	RobotDeploymentStepExecutingPreLaunch = "ExecutingPreLaunch"
17768
17769	// RobotDeploymentStepLaunching is a RobotDeploymentStep enum value
17770	RobotDeploymentStepLaunching = "Launching"
17771
17772	// RobotDeploymentStepExecutingPostLaunch is a RobotDeploymentStep enum value
17773	RobotDeploymentStepExecutingPostLaunch = "ExecutingPostLaunch"
17774
17775	// RobotDeploymentStepFinished is a RobotDeploymentStep enum value
17776	RobotDeploymentStepFinished = "Finished"
17777)
17778
17779// RobotDeploymentStep_Values returns all elements of the RobotDeploymentStep enum
17780func RobotDeploymentStep_Values() []string {
17781	return []string{
17782		RobotDeploymentStepValidating,
17783		RobotDeploymentStepDownloadingExtracting,
17784		RobotDeploymentStepExecutingDownloadCondition,
17785		RobotDeploymentStepExecutingPreLaunch,
17786		RobotDeploymentStepLaunching,
17787		RobotDeploymentStepExecutingPostLaunch,
17788		RobotDeploymentStepFinished,
17789	}
17790}
17791
17792const (
17793	// RobotSoftwareSuiteTypeRos is a RobotSoftwareSuiteType enum value
17794	RobotSoftwareSuiteTypeRos = "ROS"
17795
17796	// RobotSoftwareSuiteTypeRos2 is a RobotSoftwareSuiteType enum value
17797	RobotSoftwareSuiteTypeRos2 = "ROS2"
17798)
17799
17800// RobotSoftwareSuiteType_Values returns all elements of the RobotSoftwareSuiteType enum
17801func RobotSoftwareSuiteType_Values() []string {
17802	return []string{
17803		RobotSoftwareSuiteTypeRos,
17804		RobotSoftwareSuiteTypeRos2,
17805	}
17806}
17807
17808const (
17809	// RobotSoftwareSuiteVersionTypeKinetic is a RobotSoftwareSuiteVersionType enum value
17810	RobotSoftwareSuiteVersionTypeKinetic = "Kinetic"
17811
17812	// RobotSoftwareSuiteVersionTypeMelodic is a RobotSoftwareSuiteVersionType enum value
17813	RobotSoftwareSuiteVersionTypeMelodic = "Melodic"
17814
17815	// RobotSoftwareSuiteVersionTypeDashing is a RobotSoftwareSuiteVersionType enum value
17816	RobotSoftwareSuiteVersionTypeDashing = "Dashing"
17817
17818	// RobotSoftwareSuiteVersionTypeFoxy is a RobotSoftwareSuiteVersionType enum value
17819	RobotSoftwareSuiteVersionTypeFoxy = "Foxy"
17820)
17821
17822// RobotSoftwareSuiteVersionType_Values returns all elements of the RobotSoftwareSuiteVersionType enum
17823func RobotSoftwareSuiteVersionType_Values() []string {
17824	return []string{
17825		RobotSoftwareSuiteVersionTypeKinetic,
17826		RobotSoftwareSuiteVersionTypeMelodic,
17827		RobotSoftwareSuiteVersionTypeDashing,
17828		RobotSoftwareSuiteVersionTypeFoxy,
17829	}
17830}
17831
17832const (
17833	// RobotStatusAvailable is a RobotStatus enum value
17834	RobotStatusAvailable = "Available"
17835
17836	// RobotStatusRegistered is a RobotStatus enum value
17837	RobotStatusRegistered = "Registered"
17838
17839	// RobotStatusPendingNewDeployment is a RobotStatus enum value
17840	RobotStatusPendingNewDeployment = "PendingNewDeployment"
17841
17842	// RobotStatusDeploying is a RobotStatus enum value
17843	RobotStatusDeploying = "Deploying"
17844
17845	// RobotStatusFailed is a RobotStatus enum value
17846	RobotStatusFailed = "Failed"
17847
17848	// RobotStatusInSync is a RobotStatus enum value
17849	RobotStatusInSync = "InSync"
17850
17851	// RobotStatusNoResponse is a RobotStatus enum value
17852	RobotStatusNoResponse = "NoResponse"
17853)
17854
17855// RobotStatus_Values returns all elements of the RobotStatus enum
17856func RobotStatus_Values() []string {
17857	return []string{
17858		RobotStatusAvailable,
17859		RobotStatusRegistered,
17860		RobotStatusPendingNewDeployment,
17861		RobotStatusDeploying,
17862		RobotStatusFailed,
17863		RobotStatusInSync,
17864		RobotStatusNoResponse,
17865	}
17866}
17867
17868const (
17869	// SimulationJobBatchErrorCodeInternalServiceError is a SimulationJobBatchErrorCode enum value
17870	SimulationJobBatchErrorCodeInternalServiceError = "InternalServiceError"
17871)
17872
17873// SimulationJobBatchErrorCode_Values returns all elements of the SimulationJobBatchErrorCode enum
17874func SimulationJobBatchErrorCode_Values() []string {
17875	return []string{
17876		SimulationJobBatchErrorCodeInternalServiceError,
17877	}
17878}
17879
17880const (
17881	// SimulationJobBatchStatusPending is a SimulationJobBatchStatus enum value
17882	SimulationJobBatchStatusPending = "Pending"
17883
17884	// SimulationJobBatchStatusInProgress is a SimulationJobBatchStatus enum value
17885	SimulationJobBatchStatusInProgress = "InProgress"
17886
17887	// SimulationJobBatchStatusFailed is a SimulationJobBatchStatus enum value
17888	SimulationJobBatchStatusFailed = "Failed"
17889
17890	// SimulationJobBatchStatusCompleted is a SimulationJobBatchStatus enum value
17891	SimulationJobBatchStatusCompleted = "Completed"
17892
17893	// SimulationJobBatchStatusCanceled is a SimulationJobBatchStatus enum value
17894	SimulationJobBatchStatusCanceled = "Canceled"
17895
17896	// SimulationJobBatchStatusCanceling is a SimulationJobBatchStatus enum value
17897	SimulationJobBatchStatusCanceling = "Canceling"
17898
17899	// SimulationJobBatchStatusCompleting is a SimulationJobBatchStatus enum value
17900	SimulationJobBatchStatusCompleting = "Completing"
17901
17902	// SimulationJobBatchStatusTimingOut is a SimulationJobBatchStatus enum value
17903	SimulationJobBatchStatusTimingOut = "TimingOut"
17904
17905	// SimulationJobBatchStatusTimedOut is a SimulationJobBatchStatus enum value
17906	SimulationJobBatchStatusTimedOut = "TimedOut"
17907)
17908
17909// SimulationJobBatchStatus_Values returns all elements of the SimulationJobBatchStatus enum
17910func SimulationJobBatchStatus_Values() []string {
17911	return []string{
17912		SimulationJobBatchStatusPending,
17913		SimulationJobBatchStatusInProgress,
17914		SimulationJobBatchStatusFailed,
17915		SimulationJobBatchStatusCompleted,
17916		SimulationJobBatchStatusCanceled,
17917		SimulationJobBatchStatusCanceling,
17918		SimulationJobBatchStatusCompleting,
17919		SimulationJobBatchStatusTimingOut,
17920		SimulationJobBatchStatusTimedOut,
17921	}
17922}
17923
17924const (
17925	// SimulationJobErrorCodeInternalServiceError is a SimulationJobErrorCode enum value
17926	SimulationJobErrorCodeInternalServiceError = "InternalServiceError"
17927
17928	// SimulationJobErrorCodeRobotApplicationCrash is a SimulationJobErrorCode enum value
17929	SimulationJobErrorCodeRobotApplicationCrash = "RobotApplicationCrash"
17930
17931	// SimulationJobErrorCodeSimulationApplicationCrash is a SimulationJobErrorCode enum value
17932	SimulationJobErrorCodeSimulationApplicationCrash = "SimulationApplicationCrash"
17933
17934	// SimulationJobErrorCodeRobotApplicationHealthCheckFailure is a SimulationJobErrorCode enum value
17935	SimulationJobErrorCodeRobotApplicationHealthCheckFailure = "RobotApplicationHealthCheckFailure"
17936
17937	// SimulationJobErrorCodeSimulationApplicationHealthCheckFailure is a SimulationJobErrorCode enum value
17938	SimulationJobErrorCodeSimulationApplicationHealthCheckFailure = "SimulationApplicationHealthCheckFailure"
17939
17940	// SimulationJobErrorCodeBadPermissionsRobotApplication is a SimulationJobErrorCode enum value
17941	SimulationJobErrorCodeBadPermissionsRobotApplication = "BadPermissionsRobotApplication"
17942
17943	// SimulationJobErrorCodeBadPermissionsSimulationApplication is a SimulationJobErrorCode enum value
17944	SimulationJobErrorCodeBadPermissionsSimulationApplication = "BadPermissionsSimulationApplication"
17945
17946	// SimulationJobErrorCodeBadPermissionsS3object is a SimulationJobErrorCode enum value
17947	SimulationJobErrorCodeBadPermissionsS3object = "BadPermissionsS3Object"
17948
17949	// SimulationJobErrorCodeBadPermissionsS3output is a SimulationJobErrorCode enum value
17950	SimulationJobErrorCodeBadPermissionsS3output = "BadPermissionsS3Output"
17951
17952	// SimulationJobErrorCodeBadPermissionsCloudwatchLogs is a SimulationJobErrorCode enum value
17953	SimulationJobErrorCodeBadPermissionsCloudwatchLogs = "BadPermissionsCloudwatchLogs"
17954
17955	// SimulationJobErrorCodeSubnetIpLimitExceeded is a SimulationJobErrorCode enum value
17956	SimulationJobErrorCodeSubnetIpLimitExceeded = "SubnetIpLimitExceeded"
17957
17958	// SimulationJobErrorCodeEnilimitExceeded is a SimulationJobErrorCode enum value
17959	SimulationJobErrorCodeEnilimitExceeded = "ENILimitExceeded"
17960
17961	// SimulationJobErrorCodeBadPermissionsUserCredentials is a SimulationJobErrorCode enum value
17962	SimulationJobErrorCodeBadPermissionsUserCredentials = "BadPermissionsUserCredentials"
17963
17964	// SimulationJobErrorCodeInvalidBundleRobotApplication is a SimulationJobErrorCode enum value
17965	SimulationJobErrorCodeInvalidBundleRobotApplication = "InvalidBundleRobotApplication"
17966
17967	// SimulationJobErrorCodeInvalidBundleSimulationApplication is a SimulationJobErrorCode enum value
17968	SimulationJobErrorCodeInvalidBundleSimulationApplication = "InvalidBundleSimulationApplication"
17969
17970	// SimulationJobErrorCodeInvalidS3resource is a SimulationJobErrorCode enum value
17971	SimulationJobErrorCodeInvalidS3resource = "InvalidS3Resource"
17972
17973	// SimulationJobErrorCodeThrottlingError is a SimulationJobErrorCode enum value
17974	SimulationJobErrorCodeThrottlingError = "ThrottlingError"
17975
17976	// SimulationJobErrorCodeLimitExceeded is a SimulationJobErrorCode enum value
17977	SimulationJobErrorCodeLimitExceeded = "LimitExceeded"
17978
17979	// SimulationJobErrorCodeMismatchedEtag is a SimulationJobErrorCode enum value
17980	SimulationJobErrorCodeMismatchedEtag = "MismatchedEtag"
17981
17982	// SimulationJobErrorCodeRobotApplicationVersionMismatchedEtag is a SimulationJobErrorCode enum value
17983	SimulationJobErrorCodeRobotApplicationVersionMismatchedEtag = "RobotApplicationVersionMismatchedEtag"
17984
17985	// SimulationJobErrorCodeSimulationApplicationVersionMismatchedEtag is a SimulationJobErrorCode enum value
17986	SimulationJobErrorCodeSimulationApplicationVersionMismatchedEtag = "SimulationApplicationVersionMismatchedEtag"
17987
17988	// SimulationJobErrorCodeResourceNotFound is a SimulationJobErrorCode enum value
17989	SimulationJobErrorCodeResourceNotFound = "ResourceNotFound"
17990
17991	// SimulationJobErrorCodeRequestThrottled is a SimulationJobErrorCode enum value
17992	SimulationJobErrorCodeRequestThrottled = "RequestThrottled"
17993
17994	// SimulationJobErrorCodeBatchTimedOut is a SimulationJobErrorCode enum value
17995	SimulationJobErrorCodeBatchTimedOut = "BatchTimedOut"
17996
17997	// SimulationJobErrorCodeBatchCanceled is a SimulationJobErrorCode enum value
17998	SimulationJobErrorCodeBatchCanceled = "BatchCanceled"
17999
18000	// SimulationJobErrorCodeInvalidInput is a SimulationJobErrorCode enum value
18001	SimulationJobErrorCodeInvalidInput = "InvalidInput"
18002
18003	// SimulationJobErrorCodeWrongRegionS3bucket is a SimulationJobErrorCode enum value
18004	SimulationJobErrorCodeWrongRegionS3bucket = "WrongRegionS3Bucket"
18005
18006	// SimulationJobErrorCodeWrongRegionS3output is a SimulationJobErrorCode enum value
18007	SimulationJobErrorCodeWrongRegionS3output = "WrongRegionS3Output"
18008
18009	// SimulationJobErrorCodeWrongRegionRobotApplication is a SimulationJobErrorCode enum value
18010	SimulationJobErrorCodeWrongRegionRobotApplication = "WrongRegionRobotApplication"
18011
18012	// SimulationJobErrorCodeWrongRegionSimulationApplication is a SimulationJobErrorCode enum value
18013	SimulationJobErrorCodeWrongRegionSimulationApplication = "WrongRegionSimulationApplication"
18014
18015	// SimulationJobErrorCodeUploadContentMismatchError is a SimulationJobErrorCode enum value
18016	SimulationJobErrorCodeUploadContentMismatchError = "UploadContentMismatchError"
18017)
18018
18019// SimulationJobErrorCode_Values returns all elements of the SimulationJobErrorCode enum
18020func SimulationJobErrorCode_Values() []string {
18021	return []string{
18022		SimulationJobErrorCodeInternalServiceError,
18023		SimulationJobErrorCodeRobotApplicationCrash,
18024		SimulationJobErrorCodeSimulationApplicationCrash,
18025		SimulationJobErrorCodeRobotApplicationHealthCheckFailure,
18026		SimulationJobErrorCodeSimulationApplicationHealthCheckFailure,
18027		SimulationJobErrorCodeBadPermissionsRobotApplication,
18028		SimulationJobErrorCodeBadPermissionsSimulationApplication,
18029		SimulationJobErrorCodeBadPermissionsS3object,
18030		SimulationJobErrorCodeBadPermissionsS3output,
18031		SimulationJobErrorCodeBadPermissionsCloudwatchLogs,
18032		SimulationJobErrorCodeSubnetIpLimitExceeded,
18033		SimulationJobErrorCodeEnilimitExceeded,
18034		SimulationJobErrorCodeBadPermissionsUserCredentials,
18035		SimulationJobErrorCodeInvalidBundleRobotApplication,
18036		SimulationJobErrorCodeInvalidBundleSimulationApplication,
18037		SimulationJobErrorCodeInvalidS3resource,
18038		SimulationJobErrorCodeThrottlingError,
18039		SimulationJobErrorCodeLimitExceeded,
18040		SimulationJobErrorCodeMismatchedEtag,
18041		SimulationJobErrorCodeRobotApplicationVersionMismatchedEtag,
18042		SimulationJobErrorCodeSimulationApplicationVersionMismatchedEtag,
18043		SimulationJobErrorCodeResourceNotFound,
18044		SimulationJobErrorCodeRequestThrottled,
18045		SimulationJobErrorCodeBatchTimedOut,
18046		SimulationJobErrorCodeBatchCanceled,
18047		SimulationJobErrorCodeInvalidInput,
18048		SimulationJobErrorCodeWrongRegionS3bucket,
18049		SimulationJobErrorCodeWrongRegionS3output,
18050		SimulationJobErrorCodeWrongRegionRobotApplication,
18051		SimulationJobErrorCodeWrongRegionSimulationApplication,
18052		SimulationJobErrorCodeUploadContentMismatchError,
18053	}
18054}
18055
18056const (
18057	// SimulationJobStatusPending is a SimulationJobStatus enum value
18058	SimulationJobStatusPending = "Pending"
18059
18060	// SimulationJobStatusPreparing is a SimulationJobStatus enum value
18061	SimulationJobStatusPreparing = "Preparing"
18062
18063	// SimulationJobStatusRunning is a SimulationJobStatus enum value
18064	SimulationJobStatusRunning = "Running"
18065
18066	// SimulationJobStatusRestarting is a SimulationJobStatus enum value
18067	SimulationJobStatusRestarting = "Restarting"
18068
18069	// SimulationJobStatusCompleted is a SimulationJobStatus enum value
18070	SimulationJobStatusCompleted = "Completed"
18071
18072	// SimulationJobStatusFailed is a SimulationJobStatus enum value
18073	SimulationJobStatusFailed = "Failed"
18074
18075	// SimulationJobStatusRunningFailed is a SimulationJobStatus enum value
18076	SimulationJobStatusRunningFailed = "RunningFailed"
18077
18078	// SimulationJobStatusTerminating is a SimulationJobStatus enum value
18079	SimulationJobStatusTerminating = "Terminating"
18080
18081	// SimulationJobStatusTerminated is a SimulationJobStatus enum value
18082	SimulationJobStatusTerminated = "Terminated"
18083
18084	// SimulationJobStatusCanceled is a SimulationJobStatus enum value
18085	SimulationJobStatusCanceled = "Canceled"
18086)
18087
18088// SimulationJobStatus_Values returns all elements of the SimulationJobStatus enum
18089func SimulationJobStatus_Values() []string {
18090	return []string{
18091		SimulationJobStatusPending,
18092		SimulationJobStatusPreparing,
18093		SimulationJobStatusRunning,
18094		SimulationJobStatusRestarting,
18095		SimulationJobStatusCompleted,
18096		SimulationJobStatusFailed,
18097		SimulationJobStatusRunningFailed,
18098		SimulationJobStatusTerminating,
18099		SimulationJobStatusTerminated,
18100		SimulationJobStatusCanceled,
18101	}
18102}
18103
18104const (
18105	// SimulationSoftwareSuiteTypeGazebo is a SimulationSoftwareSuiteType enum value
18106	SimulationSoftwareSuiteTypeGazebo = "Gazebo"
18107
18108	// SimulationSoftwareSuiteTypeRosbagPlay is a SimulationSoftwareSuiteType enum value
18109	SimulationSoftwareSuiteTypeRosbagPlay = "RosbagPlay"
18110)
18111
18112// SimulationSoftwareSuiteType_Values returns all elements of the SimulationSoftwareSuiteType enum
18113func SimulationSoftwareSuiteType_Values() []string {
18114	return []string{
18115		SimulationSoftwareSuiteTypeGazebo,
18116		SimulationSoftwareSuiteTypeRosbagPlay,
18117	}
18118}
18119
18120const (
18121	// UploadBehaviorUploadOnTerminate is a UploadBehavior enum value
18122	UploadBehaviorUploadOnTerminate = "UPLOAD_ON_TERMINATE"
18123
18124	// UploadBehaviorUploadRollingAutoRemove is a UploadBehavior enum value
18125	UploadBehaviorUploadRollingAutoRemove = "UPLOAD_ROLLING_AUTO_REMOVE"
18126)
18127
18128// UploadBehavior_Values returns all elements of the UploadBehavior enum
18129func UploadBehavior_Values() []string {
18130	return []string{
18131		UploadBehaviorUploadOnTerminate,
18132		UploadBehaviorUploadRollingAutoRemove,
18133	}
18134}
18135
18136const (
18137	// WorldExportJobErrorCodeInternalServiceError is a WorldExportJobErrorCode enum value
18138	WorldExportJobErrorCodeInternalServiceError = "InternalServiceError"
18139
18140	// WorldExportJobErrorCodeLimitExceeded is a WorldExportJobErrorCode enum value
18141	WorldExportJobErrorCodeLimitExceeded = "LimitExceeded"
18142
18143	// WorldExportJobErrorCodeResourceNotFound is a WorldExportJobErrorCode enum value
18144	WorldExportJobErrorCodeResourceNotFound = "ResourceNotFound"
18145
18146	// WorldExportJobErrorCodeRequestThrottled is a WorldExportJobErrorCode enum value
18147	WorldExportJobErrorCodeRequestThrottled = "RequestThrottled"
18148
18149	// WorldExportJobErrorCodeInvalidInput is a WorldExportJobErrorCode enum value
18150	WorldExportJobErrorCodeInvalidInput = "InvalidInput"
18151
18152	// WorldExportJobErrorCodeAccessDenied is a WorldExportJobErrorCode enum value
18153	WorldExportJobErrorCodeAccessDenied = "AccessDenied"
18154)
18155
18156// WorldExportJobErrorCode_Values returns all elements of the WorldExportJobErrorCode enum
18157func WorldExportJobErrorCode_Values() []string {
18158	return []string{
18159		WorldExportJobErrorCodeInternalServiceError,
18160		WorldExportJobErrorCodeLimitExceeded,
18161		WorldExportJobErrorCodeResourceNotFound,
18162		WorldExportJobErrorCodeRequestThrottled,
18163		WorldExportJobErrorCodeInvalidInput,
18164		WorldExportJobErrorCodeAccessDenied,
18165	}
18166}
18167
18168const (
18169	// WorldExportJobStatusPending is a WorldExportJobStatus enum value
18170	WorldExportJobStatusPending = "Pending"
18171
18172	// WorldExportJobStatusRunning is a WorldExportJobStatus enum value
18173	WorldExportJobStatusRunning = "Running"
18174
18175	// WorldExportJobStatusCompleted is a WorldExportJobStatus enum value
18176	WorldExportJobStatusCompleted = "Completed"
18177
18178	// WorldExportJobStatusFailed is a WorldExportJobStatus enum value
18179	WorldExportJobStatusFailed = "Failed"
18180
18181	// WorldExportJobStatusCanceling is a WorldExportJobStatus enum value
18182	WorldExportJobStatusCanceling = "Canceling"
18183
18184	// WorldExportJobStatusCanceled is a WorldExportJobStatus enum value
18185	WorldExportJobStatusCanceled = "Canceled"
18186)
18187
18188// WorldExportJobStatus_Values returns all elements of the WorldExportJobStatus enum
18189func WorldExportJobStatus_Values() []string {
18190	return []string{
18191		WorldExportJobStatusPending,
18192		WorldExportJobStatusRunning,
18193		WorldExportJobStatusCompleted,
18194		WorldExportJobStatusFailed,
18195		WorldExportJobStatusCanceling,
18196		WorldExportJobStatusCanceled,
18197	}
18198}
18199
18200const (
18201	// WorldGenerationJobErrorCodeInternalServiceError is a WorldGenerationJobErrorCode enum value
18202	WorldGenerationJobErrorCodeInternalServiceError = "InternalServiceError"
18203
18204	// WorldGenerationJobErrorCodeLimitExceeded is a WorldGenerationJobErrorCode enum value
18205	WorldGenerationJobErrorCodeLimitExceeded = "LimitExceeded"
18206
18207	// WorldGenerationJobErrorCodeResourceNotFound is a WorldGenerationJobErrorCode enum value
18208	WorldGenerationJobErrorCodeResourceNotFound = "ResourceNotFound"
18209
18210	// WorldGenerationJobErrorCodeRequestThrottled is a WorldGenerationJobErrorCode enum value
18211	WorldGenerationJobErrorCodeRequestThrottled = "RequestThrottled"
18212
18213	// WorldGenerationJobErrorCodeInvalidInput is a WorldGenerationJobErrorCode enum value
18214	WorldGenerationJobErrorCodeInvalidInput = "InvalidInput"
18215
18216	// WorldGenerationJobErrorCodeAllWorldGenerationFailed is a WorldGenerationJobErrorCode enum value
18217	WorldGenerationJobErrorCodeAllWorldGenerationFailed = "AllWorldGenerationFailed"
18218)
18219
18220// WorldGenerationJobErrorCode_Values returns all elements of the WorldGenerationJobErrorCode enum
18221func WorldGenerationJobErrorCode_Values() []string {
18222	return []string{
18223		WorldGenerationJobErrorCodeInternalServiceError,
18224		WorldGenerationJobErrorCodeLimitExceeded,
18225		WorldGenerationJobErrorCodeResourceNotFound,
18226		WorldGenerationJobErrorCodeRequestThrottled,
18227		WorldGenerationJobErrorCodeInvalidInput,
18228		WorldGenerationJobErrorCodeAllWorldGenerationFailed,
18229	}
18230}
18231
18232const (
18233	// WorldGenerationJobStatusPending is a WorldGenerationJobStatus enum value
18234	WorldGenerationJobStatusPending = "Pending"
18235
18236	// WorldGenerationJobStatusRunning is a WorldGenerationJobStatus enum value
18237	WorldGenerationJobStatusRunning = "Running"
18238
18239	// WorldGenerationJobStatusCompleted is a WorldGenerationJobStatus enum value
18240	WorldGenerationJobStatusCompleted = "Completed"
18241
18242	// WorldGenerationJobStatusFailed is a WorldGenerationJobStatus enum value
18243	WorldGenerationJobStatusFailed = "Failed"
18244
18245	// WorldGenerationJobStatusPartialFailed is a WorldGenerationJobStatus enum value
18246	WorldGenerationJobStatusPartialFailed = "PartialFailed"
18247
18248	// WorldGenerationJobStatusCanceling is a WorldGenerationJobStatus enum value
18249	WorldGenerationJobStatusCanceling = "Canceling"
18250
18251	// WorldGenerationJobStatusCanceled is a WorldGenerationJobStatus enum value
18252	WorldGenerationJobStatusCanceled = "Canceled"
18253)
18254
18255// WorldGenerationJobStatus_Values returns all elements of the WorldGenerationJobStatus enum
18256func WorldGenerationJobStatus_Values() []string {
18257	return []string{
18258		WorldGenerationJobStatusPending,
18259		WorldGenerationJobStatusRunning,
18260		WorldGenerationJobStatusCompleted,
18261		WorldGenerationJobStatusFailed,
18262		WorldGenerationJobStatusPartialFailed,
18263		WorldGenerationJobStatusCanceling,
18264		WorldGenerationJobStatusCanceled,
18265	}
18266}
18267