1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package sfn
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/jsonrpc"
14)
15
16const opCreateActivity = "CreateActivity"
17
18// CreateActivityRequest generates a "aws/request.Request" representing the
19// client's request for the CreateActivity 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 CreateActivity for more information on using the CreateActivity
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 CreateActivityRequest method.
34//    req, resp := client.CreateActivityRequest(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/states-2016-11-23/CreateActivity
42func (c *SFN) CreateActivityRequest(input *CreateActivityInput) (req *request.Request, output *CreateActivityOutput) {
43	op := &request.Operation{
44		Name:       opCreateActivity,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &CreateActivityInput{}
51	}
52
53	output = &CreateActivityOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// CreateActivity API operation for AWS Step Functions.
59//
60// Creates an activity. An activity is a task that you write in any programming
61// language and host on any machine that has access to AWS Step Functions. Activities
62// must poll Step Functions using the GetActivityTask API action and respond
63// using SendTask* API actions. This function lets Step Functions know the existence
64// of your activity and returns an identifier for use in a state machine and
65// when polling from the activity.
66//
67// This operation is eventually consistent. The results are best effort and
68// may not reflect very recent updates and changes.
69//
70// CreateActivity is an idempotent API. Subsequent requests won’t create a
71// duplicate resource if it was already created. CreateActivity's idempotency
72// check is based on the activity name. If a following request has different
73// tags values, Step Functions will ignore these differences and treat it as
74// an idempotent request of the previous. In this case, tags will not be updated,
75// even if they are different.
76//
77// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
78// with awserr.Error's Code and Message methods to get detailed information about
79// the error.
80//
81// See the AWS API reference guide for AWS Step Functions's
82// API operation CreateActivity for usage and error information.
83//
84// Returned Error Types:
85//   * ActivityLimitExceeded
86//   The maximum number of activities has been reached. Existing activities must
87//   be deleted before a new activity can be created.
88//
89//   * InvalidName
90//   The provided name is invalid.
91//
92//   * TooManyTags
93//   You've exceeded the number of tags allowed for a resource. See the Limits
94//   Topic (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html)
95//   in the AWS Step Functions Developer Guide.
96//
97// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateActivity
98func (c *SFN) CreateActivity(input *CreateActivityInput) (*CreateActivityOutput, error) {
99	req, out := c.CreateActivityRequest(input)
100	return out, req.Send()
101}
102
103// CreateActivityWithContext is the same as CreateActivity with the addition of
104// the ability to pass a context and additional request options.
105//
106// See CreateActivity for details on how to use this API operation.
107//
108// The context must be non-nil and will be used for request cancellation. If
109// the context is nil a panic will occur. In the future the SDK may create
110// sub-contexts for http.Requests. See https://golang.org/pkg/context/
111// for more information on using Contexts.
112func (c *SFN) CreateActivityWithContext(ctx aws.Context, input *CreateActivityInput, opts ...request.Option) (*CreateActivityOutput, error) {
113	req, out := c.CreateActivityRequest(input)
114	req.SetContext(ctx)
115	req.ApplyOptions(opts...)
116	return out, req.Send()
117}
118
119const opCreateStateMachine = "CreateStateMachine"
120
121// CreateStateMachineRequest generates a "aws/request.Request" representing the
122// client's request for the CreateStateMachine operation. The "output" return
123// value will be populated with the request's response once the request completes
124// successfully.
125//
126// Use "Send" method on the returned Request to send the API call to the service.
127// the "output" return value is not valid until after Send returns without error.
128//
129// See CreateStateMachine for more information on using the CreateStateMachine
130// API call, and error handling.
131//
132// This method is useful when you want to inject custom logic or configuration
133// into the SDK's request lifecycle. Such as custom headers, or retry logic.
134//
135//
136//    // Example sending a request using the CreateStateMachineRequest method.
137//    req, resp := client.CreateStateMachineRequest(params)
138//
139//    err := req.Send()
140//    if err == nil { // resp is now filled
141//        fmt.Println(resp)
142//    }
143//
144// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateStateMachine
145func (c *SFN) CreateStateMachineRequest(input *CreateStateMachineInput) (req *request.Request, output *CreateStateMachineOutput) {
146	op := &request.Operation{
147		Name:       opCreateStateMachine,
148		HTTPMethod: "POST",
149		HTTPPath:   "/",
150	}
151
152	if input == nil {
153		input = &CreateStateMachineInput{}
154	}
155
156	output = &CreateStateMachineOutput{}
157	req = c.newRequest(op, input, output)
158	return
159}
160
161// CreateStateMachine API operation for AWS Step Functions.
162//
163// Creates a state machine. A state machine consists of a collection of states
164// that can do work (Task states), determine to which states to transition next
165// (Choice states), stop an execution with an error (Fail states), and so on.
166// State machines are specified using a JSON-based, structured language. For
167// more information, see Amazon States Language (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html)
168// in the AWS Step Functions User Guide.
169//
170// This operation is eventually consistent. The results are best effort and
171// may not reflect very recent updates and changes.
172//
173// CreateStateMachine is an idempotent API. Subsequent requests won’t create
174// a duplicate resource if it was already created. CreateStateMachine's idempotency
175// check is based on the state machine name, definition, type, and LoggingConfiguration.
176// If a following request has a different roleArn or tags, Step Functions will
177// ignore these differences and treat it as an idempotent request of the previous.
178// In this case, roleArn and tags will not be updated, even if they are different.
179//
180// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
181// with awserr.Error's Code and Message methods to get detailed information about
182// the error.
183//
184// See the AWS API reference guide for AWS Step Functions's
185// API operation CreateStateMachine for usage and error information.
186//
187// Returned Error Types:
188//   * InvalidArn
189//   The provided Amazon Resource Name (ARN) is invalid.
190//
191//   * InvalidDefinition
192//   The provided Amazon States Language definition is invalid.
193//
194//   * InvalidName
195//   The provided name is invalid.
196//
197//   * InvalidLoggingConfiguration
198//
199//   * StateMachineAlreadyExists
200//   A state machine with the same name but a different definition or role ARN
201//   already exists.
202//
203//   * StateMachineDeleting
204//   The specified state machine is being deleted.
205//
206//   * StateMachineLimitExceeded
207//   The maximum number of state machines has been reached. Existing state machines
208//   must be deleted before a new state machine can be created.
209//
210//   * StateMachineTypeNotSupported
211//
212//   * TooManyTags
213//   You've exceeded the number of tags allowed for a resource. See the Limits
214//   Topic (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html)
215//   in the AWS Step Functions Developer Guide.
216//
217// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateStateMachine
218func (c *SFN) CreateStateMachine(input *CreateStateMachineInput) (*CreateStateMachineOutput, error) {
219	req, out := c.CreateStateMachineRequest(input)
220	return out, req.Send()
221}
222
223// CreateStateMachineWithContext is the same as CreateStateMachine with the addition of
224// the ability to pass a context and additional request options.
225//
226// See CreateStateMachine for details on how to use this API operation.
227//
228// The context must be non-nil and will be used for request cancellation. If
229// the context is nil a panic will occur. In the future the SDK may create
230// sub-contexts for http.Requests. See https://golang.org/pkg/context/
231// for more information on using Contexts.
232func (c *SFN) CreateStateMachineWithContext(ctx aws.Context, input *CreateStateMachineInput, opts ...request.Option) (*CreateStateMachineOutput, error) {
233	req, out := c.CreateStateMachineRequest(input)
234	req.SetContext(ctx)
235	req.ApplyOptions(opts...)
236	return out, req.Send()
237}
238
239const opDeleteActivity = "DeleteActivity"
240
241// DeleteActivityRequest generates a "aws/request.Request" representing the
242// client's request for the DeleteActivity operation. The "output" return
243// value will be populated with the request's response once the request completes
244// successfully.
245//
246// Use "Send" method on the returned Request to send the API call to the service.
247// the "output" return value is not valid until after Send returns without error.
248//
249// See DeleteActivity for more information on using the DeleteActivity
250// API call, and error handling.
251//
252// This method is useful when you want to inject custom logic or configuration
253// into the SDK's request lifecycle. Such as custom headers, or retry logic.
254//
255//
256//    // Example sending a request using the DeleteActivityRequest method.
257//    req, resp := client.DeleteActivityRequest(params)
258//
259//    err := req.Send()
260//    if err == nil { // resp is now filled
261//        fmt.Println(resp)
262//    }
263//
264// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteActivity
265func (c *SFN) DeleteActivityRequest(input *DeleteActivityInput) (req *request.Request, output *DeleteActivityOutput) {
266	op := &request.Operation{
267		Name:       opDeleteActivity,
268		HTTPMethod: "POST",
269		HTTPPath:   "/",
270	}
271
272	if input == nil {
273		input = &DeleteActivityInput{}
274	}
275
276	output = &DeleteActivityOutput{}
277	req = c.newRequest(op, input, output)
278	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
279	return
280}
281
282// DeleteActivity API operation for AWS Step Functions.
283//
284// Deletes an activity.
285//
286// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
287// with awserr.Error's Code and Message methods to get detailed information about
288// the error.
289//
290// See the AWS API reference guide for AWS Step Functions's
291// API operation DeleteActivity for usage and error information.
292//
293// Returned Error Types:
294//   * InvalidArn
295//   The provided Amazon Resource Name (ARN) is invalid.
296//
297// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteActivity
298func (c *SFN) DeleteActivity(input *DeleteActivityInput) (*DeleteActivityOutput, error) {
299	req, out := c.DeleteActivityRequest(input)
300	return out, req.Send()
301}
302
303// DeleteActivityWithContext is the same as DeleteActivity with the addition of
304// the ability to pass a context and additional request options.
305//
306// See DeleteActivity for details on how to use this API operation.
307//
308// The context must be non-nil and will be used for request cancellation. If
309// the context is nil a panic will occur. In the future the SDK may create
310// sub-contexts for http.Requests. See https://golang.org/pkg/context/
311// for more information on using Contexts.
312func (c *SFN) DeleteActivityWithContext(ctx aws.Context, input *DeleteActivityInput, opts ...request.Option) (*DeleteActivityOutput, error) {
313	req, out := c.DeleteActivityRequest(input)
314	req.SetContext(ctx)
315	req.ApplyOptions(opts...)
316	return out, req.Send()
317}
318
319const opDeleteStateMachine = "DeleteStateMachine"
320
321// DeleteStateMachineRequest generates a "aws/request.Request" representing the
322// client's request for the DeleteStateMachine operation. The "output" return
323// value will be populated with the request's response once the request completes
324// successfully.
325//
326// Use "Send" method on the returned Request to send the API call to the service.
327// the "output" return value is not valid until after Send returns without error.
328//
329// See DeleteStateMachine for more information on using the DeleteStateMachine
330// API call, and error handling.
331//
332// This method is useful when you want to inject custom logic or configuration
333// into the SDK's request lifecycle. Such as custom headers, or retry logic.
334//
335//
336//    // Example sending a request using the DeleteStateMachineRequest method.
337//    req, resp := client.DeleteStateMachineRequest(params)
338//
339//    err := req.Send()
340//    if err == nil { // resp is now filled
341//        fmt.Println(resp)
342//    }
343//
344// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteStateMachine
345func (c *SFN) DeleteStateMachineRequest(input *DeleteStateMachineInput) (req *request.Request, output *DeleteStateMachineOutput) {
346	op := &request.Operation{
347		Name:       opDeleteStateMachine,
348		HTTPMethod: "POST",
349		HTTPPath:   "/",
350	}
351
352	if input == nil {
353		input = &DeleteStateMachineInput{}
354	}
355
356	output = &DeleteStateMachineOutput{}
357	req = c.newRequest(op, input, output)
358	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
359	return
360}
361
362// DeleteStateMachine API operation for AWS Step Functions.
363//
364// Deletes a state machine. This is an asynchronous operation: It sets the state
365// machine's status to DELETING and begins the deletion process.
366//
367// For EXPRESSstate machines, the deletion will happen eventually (usually less
368// than a minute). Running executions may emit logs after DeleteStateMachine
369// API is called.
370//
371// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
372// with awserr.Error's Code and Message methods to get detailed information about
373// the error.
374//
375// See the AWS API reference guide for AWS Step Functions's
376// API operation DeleteStateMachine for usage and error information.
377//
378// Returned Error Types:
379//   * InvalidArn
380//   The provided Amazon Resource Name (ARN) is invalid.
381//
382// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteStateMachine
383func (c *SFN) DeleteStateMachine(input *DeleteStateMachineInput) (*DeleteStateMachineOutput, error) {
384	req, out := c.DeleteStateMachineRequest(input)
385	return out, req.Send()
386}
387
388// DeleteStateMachineWithContext is the same as DeleteStateMachine with the addition of
389// the ability to pass a context and additional request options.
390//
391// See DeleteStateMachine for details on how to use this API operation.
392//
393// The context must be non-nil and will be used for request cancellation. If
394// the context is nil a panic will occur. In the future the SDK may create
395// sub-contexts for http.Requests. See https://golang.org/pkg/context/
396// for more information on using Contexts.
397func (c *SFN) DeleteStateMachineWithContext(ctx aws.Context, input *DeleteStateMachineInput, opts ...request.Option) (*DeleteStateMachineOutput, error) {
398	req, out := c.DeleteStateMachineRequest(input)
399	req.SetContext(ctx)
400	req.ApplyOptions(opts...)
401	return out, req.Send()
402}
403
404const opDescribeActivity = "DescribeActivity"
405
406// DescribeActivityRequest generates a "aws/request.Request" representing the
407// client's request for the DescribeActivity operation. The "output" return
408// value will be populated with the request's response once the request completes
409// successfully.
410//
411// Use "Send" method on the returned Request to send the API call to the service.
412// the "output" return value is not valid until after Send returns without error.
413//
414// See DescribeActivity for more information on using the DescribeActivity
415// API call, and error handling.
416//
417// This method is useful when you want to inject custom logic or configuration
418// into the SDK's request lifecycle. Such as custom headers, or retry logic.
419//
420//
421//    // Example sending a request using the DescribeActivityRequest method.
422//    req, resp := client.DescribeActivityRequest(params)
423//
424//    err := req.Send()
425//    if err == nil { // resp is now filled
426//        fmt.Println(resp)
427//    }
428//
429// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeActivity
430func (c *SFN) DescribeActivityRequest(input *DescribeActivityInput) (req *request.Request, output *DescribeActivityOutput) {
431	op := &request.Operation{
432		Name:       opDescribeActivity,
433		HTTPMethod: "POST",
434		HTTPPath:   "/",
435	}
436
437	if input == nil {
438		input = &DescribeActivityInput{}
439	}
440
441	output = &DescribeActivityOutput{}
442	req = c.newRequest(op, input, output)
443	return
444}
445
446// DescribeActivity API operation for AWS Step Functions.
447//
448// Describes an activity.
449//
450// This operation is eventually consistent. The results are best effort and
451// may not reflect very recent updates and changes.
452//
453// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
454// with awserr.Error's Code and Message methods to get detailed information about
455// the error.
456//
457// See the AWS API reference guide for AWS Step Functions's
458// API operation DescribeActivity for usage and error information.
459//
460// Returned Error Types:
461//   * ActivityDoesNotExist
462//   The specified activity does not exist.
463//
464//   * InvalidArn
465//   The provided Amazon Resource Name (ARN) is invalid.
466//
467// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeActivity
468func (c *SFN) DescribeActivity(input *DescribeActivityInput) (*DescribeActivityOutput, error) {
469	req, out := c.DescribeActivityRequest(input)
470	return out, req.Send()
471}
472
473// DescribeActivityWithContext is the same as DescribeActivity with the addition of
474// the ability to pass a context and additional request options.
475//
476// See DescribeActivity for details on how to use this API operation.
477//
478// The context must be non-nil and will be used for request cancellation. If
479// the context is nil a panic will occur. In the future the SDK may create
480// sub-contexts for http.Requests. See https://golang.org/pkg/context/
481// for more information on using Contexts.
482func (c *SFN) DescribeActivityWithContext(ctx aws.Context, input *DescribeActivityInput, opts ...request.Option) (*DescribeActivityOutput, error) {
483	req, out := c.DescribeActivityRequest(input)
484	req.SetContext(ctx)
485	req.ApplyOptions(opts...)
486	return out, req.Send()
487}
488
489const opDescribeExecution = "DescribeExecution"
490
491// DescribeExecutionRequest generates a "aws/request.Request" representing the
492// client's request for the DescribeExecution operation. The "output" return
493// value will be populated with the request's response once the request completes
494// successfully.
495//
496// Use "Send" method on the returned Request to send the API call to the service.
497// the "output" return value is not valid until after Send returns without error.
498//
499// See DescribeExecution for more information on using the DescribeExecution
500// API call, and error handling.
501//
502// This method is useful when you want to inject custom logic or configuration
503// into the SDK's request lifecycle. Such as custom headers, or retry logic.
504//
505//
506//    // Example sending a request using the DescribeExecutionRequest method.
507//    req, resp := client.DescribeExecutionRequest(params)
508//
509//    err := req.Send()
510//    if err == nil { // resp is now filled
511//        fmt.Println(resp)
512//    }
513//
514// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeExecution
515func (c *SFN) DescribeExecutionRequest(input *DescribeExecutionInput) (req *request.Request, output *DescribeExecutionOutput) {
516	op := &request.Operation{
517		Name:       opDescribeExecution,
518		HTTPMethod: "POST",
519		HTTPPath:   "/",
520	}
521
522	if input == nil {
523		input = &DescribeExecutionInput{}
524	}
525
526	output = &DescribeExecutionOutput{}
527	req = c.newRequest(op, input, output)
528	return
529}
530
531// DescribeExecution API operation for AWS Step Functions.
532//
533// Describes an execution.
534//
535// This operation is eventually consistent. The results are best effort and
536// may not reflect very recent updates and changes.
537//
538// This API action is not supported by EXPRESS state machines.
539//
540// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
541// with awserr.Error's Code and Message methods to get detailed information about
542// the error.
543//
544// See the AWS API reference guide for AWS Step Functions's
545// API operation DescribeExecution for usage and error information.
546//
547// Returned Error Types:
548//   * ExecutionDoesNotExist
549//   The specified execution does not exist.
550//
551//   * InvalidArn
552//   The provided Amazon Resource Name (ARN) is invalid.
553//
554// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeExecution
555func (c *SFN) DescribeExecution(input *DescribeExecutionInput) (*DescribeExecutionOutput, error) {
556	req, out := c.DescribeExecutionRequest(input)
557	return out, req.Send()
558}
559
560// DescribeExecutionWithContext is the same as DescribeExecution with the addition of
561// the ability to pass a context and additional request options.
562//
563// See DescribeExecution for details on how to use this API operation.
564//
565// The context must be non-nil and will be used for request cancellation. If
566// the context is nil a panic will occur. In the future the SDK may create
567// sub-contexts for http.Requests. See https://golang.org/pkg/context/
568// for more information on using Contexts.
569func (c *SFN) DescribeExecutionWithContext(ctx aws.Context, input *DescribeExecutionInput, opts ...request.Option) (*DescribeExecutionOutput, error) {
570	req, out := c.DescribeExecutionRequest(input)
571	req.SetContext(ctx)
572	req.ApplyOptions(opts...)
573	return out, req.Send()
574}
575
576const opDescribeStateMachine = "DescribeStateMachine"
577
578// DescribeStateMachineRequest generates a "aws/request.Request" representing the
579// client's request for the DescribeStateMachine operation. The "output" return
580// value will be populated with the request's response once the request completes
581// successfully.
582//
583// Use "Send" method on the returned Request to send the API call to the service.
584// the "output" return value is not valid until after Send returns without error.
585//
586// See DescribeStateMachine for more information on using the DescribeStateMachine
587// API call, and error handling.
588//
589// This method is useful when you want to inject custom logic or configuration
590// into the SDK's request lifecycle. Such as custom headers, or retry logic.
591//
592//
593//    // Example sending a request using the DescribeStateMachineRequest method.
594//    req, resp := client.DescribeStateMachineRequest(params)
595//
596//    err := req.Send()
597//    if err == nil { // resp is now filled
598//        fmt.Println(resp)
599//    }
600//
601// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachine
602func (c *SFN) DescribeStateMachineRequest(input *DescribeStateMachineInput) (req *request.Request, output *DescribeStateMachineOutput) {
603	op := &request.Operation{
604		Name:       opDescribeStateMachine,
605		HTTPMethod: "POST",
606		HTTPPath:   "/",
607	}
608
609	if input == nil {
610		input = &DescribeStateMachineInput{}
611	}
612
613	output = &DescribeStateMachineOutput{}
614	req = c.newRequest(op, input, output)
615	return
616}
617
618// DescribeStateMachine API operation for AWS Step Functions.
619//
620// Describes a state machine.
621//
622// This operation is eventually consistent. The results are best effort and
623// may not reflect very recent updates and changes.
624//
625// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
626// with awserr.Error's Code and Message methods to get detailed information about
627// the error.
628//
629// See the AWS API reference guide for AWS Step Functions's
630// API operation DescribeStateMachine for usage and error information.
631//
632// Returned Error Types:
633//   * InvalidArn
634//   The provided Amazon Resource Name (ARN) is invalid.
635//
636//   * StateMachineDoesNotExist
637//   The specified state machine does not exist.
638//
639// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachine
640func (c *SFN) DescribeStateMachine(input *DescribeStateMachineInput) (*DescribeStateMachineOutput, error) {
641	req, out := c.DescribeStateMachineRequest(input)
642	return out, req.Send()
643}
644
645// DescribeStateMachineWithContext is the same as DescribeStateMachine with the addition of
646// the ability to pass a context and additional request options.
647//
648// See DescribeStateMachine for details on how to use this API operation.
649//
650// The context must be non-nil and will be used for request cancellation. If
651// the context is nil a panic will occur. In the future the SDK may create
652// sub-contexts for http.Requests. See https://golang.org/pkg/context/
653// for more information on using Contexts.
654func (c *SFN) DescribeStateMachineWithContext(ctx aws.Context, input *DescribeStateMachineInput, opts ...request.Option) (*DescribeStateMachineOutput, error) {
655	req, out := c.DescribeStateMachineRequest(input)
656	req.SetContext(ctx)
657	req.ApplyOptions(opts...)
658	return out, req.Send()
659}
660
661const opDescribeStateMachineForExecution = "DescribeStateMachineForExecution"
662
663// DescribeStateMachineForExecutionRequest generates a "aws/request.Request" representing the
664// client's request for the DescribeStateMachineForExecution operation. The "output" return
665// value will be populated with the request's response once the request completes
666// successfully.
667//
668// Use "Send" method on the returned Request to send the API call to the service.
669// the "output" return value is not valid until after Send returns without error.
670//
671// See DescribeStateMachineForExecution for more information on using the DescribeStateMachineForExecution
672// API call, and error handling.
673//
674// This method is useful when you want to inject custom logic or configuration
675// into the SDK's request lifecycle. Such as custom headers, or retry logic.
676//
677//
678//    // Example sending a request using the DescribeStateMachineForExecutionRequest method.
679//    req, resp := client.DescribeStateMachineForExecutionRequest(params)
680//
681//    err := req.Send()
682//    if err == nil { // resp is now filled
683//        fmt.Println(resp)
684//    }
685//
686// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineForExecution
687func (c *SFN) DescribeStateMachineForExecutionRequest(input *DescribeStateMachineForExecutionInput) (req *request.Request, output *DescribeStateMachineForExecutionOutput) {
688	op := &request.Operation{
689		Name:       opDescribeStateMachineForExecution,
690		HTTPMethod: "POST",
691		HTTPPath:   "/",
692	}
693
694	if input == nil {
695		input = &DescribeStateMachineForExecutionInput{}
696	}
697
698	output = &DescribeStateMachineForExecutionOutput{}
699	req = c.newRequest(op, input, output)
700	return
701}
702
703// DescribeStateMachineForExecution API operation for AWS Step Functions.
704//
705// Describes the state machine associated with a specific execution.
706//
707// This operation is eventually consistent. The results are best effort and
708// may not reflect very recent updates and changes.
709//
710// This API action is not supported by EXPRESS state machines.
711//
712// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
713// with awserr.Error's Code and Message methods to get detailed information about
714// the error.
715//
716// See the AWS API reference guide for AWS Step Functions's
717// API operation DescribeStateMachineForExecution for usage and error information.
718//
719// Returned Error Types:
720//   * ExecutionDoesNotExist
721//   The specified execution does not exist.
722//
723//   * InvalidArn
724//   The provided Amazon Resource Name (ARN) is invalid.
725//
726// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineForExecution
727func (c *SFN) DescribeStateMachineForExecution(input *DescribeStateMachineForExecutionInput) (*DescribeStateMachineForExecutionOutput, error) {
728	req, out := c.DescribeStateMachineForExecutionRequest(input)
729	return out, req.Send()
730}
731
732// DescribeStateMachineForExecutionWithContext is the same as DescribeStateMachineForExecution with the addition of
733// the ability to pass a context and additional request options.
734//
735// See DescribeStateMachineForExecution for details on how to use this API operation.
736//
737// The context must be non-nil and will be used for request cancellation. If
738// the context is nil a panic will occur. In the future the SDK may create
739// sub-contexts for http.Requests. See https://golang.org/pkg/context/
740// for more information on using Contexts.
741func (c *SFN) DescribeStateMachineForExecutionWithContext(ctx aws.Context, input *DescribeStateMachineForExecutionInput, opts ...request.Option) (*DescribeStateMachineForExecutionOutput, error) {
742	req, out := c.DescribeStateMachineForExecutionRequest(input)
743	req.SetContext(ctx)
744	req.ApplyOptions(opts...)
745	return out, req.Send()
746}
747
748const opGetActivityTask = "GetActivityTask"
749
750// GetActivityTaskRequest generates a "aws/request.Request" representing the
751// client's request for the GetActivityTask operation. The "output" return
752// value will be populated with the request's response once the request completes
753// successfully.
754//
755// Use "Send" method on the returned Request to send the API call to the service.
756// the "output" return value is not valid until after Send returns without error.
757//
758// See GetActivityTask for more information on using the GetActivityTask
759// API call, and error handling.
760//
761// This method is useful when you want to inject custom logic or configuration
762// into the SDK's request lifecycle. Such as custom headers, or retry logic.
763//
764//
765//    // Example sending a request using the GetActivityTaskRequest method.
766//    req, resp := client.GetActivityTaskRequest(params)
767//
768//    err := req.Send()
769//    if err == nil { // resp is now filled
770//        fmt.Println(resp)
771//    }
772//
773// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/GetActivityTask
774func (c *SFN) GetActivityTaskRequest(input *GetActivityTaskInput) (req *request.Request, output *GetActivityTaskOutput) {
775	op := &request.Operation{
776		Name:       opGetActivityTask,
777		HTTPMethod: "POST",
778		HTTPPath:   "/",
779	}
780
781	if input == nil {
782		input = &GetActivityTaskInput{}
783	}
784
785	output = &GetActivityTaskOutput{}
786	req = c.newRequest(op, input, output)
787	return
788}
789
790// GetActivityTask API operation for AWS Step Functions.
791//
792// Used by workers to retrieve a task (with the specified activity ARN) which
793// has been scheduled for execution by a running state machine. This initiates
794// a long poll, where the service holds the HTTP connection open and responds
795// as soon as a task becomes available (i.e. an execution of a task of this
796// type is needed.) The maximum time the service holds on to the request before
797// responding is 60 seconds. If no task is available within 60 seconds, the
798// poll returns a taskToken with a null string.
799//
800// Workers should set their client side socket timeout to at least 65 seconds
801// (5 seconds higher than the maximum time the service may hold the poll request).
802//
803// Polling with GetActivityTask can cause latency in some implementations. See
804// Avoid Latency When Polling for Activity Tasks (https://docs.aws.amazon.com/step-functions/latest/dg/bp-activity-pollers.html)
805// in the Step Functions Developer Guide.
806//
807// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
808// with awserr.Error's Code and Message methods to get detailed information about
809// the error.
810//
811// See the AWS API reference guide for AWS Step Functions's
812// API operation GetActivityTask for usage and error information.
813//
814// Returned Error Types:
815//   * ActivityDoesNotExist
816//   The specified activity does not exist.
817//
818//   * ActivityWorkerLimitExceeded
819//   The maximum number of workers concurrently polling for activity tasks has
820//   been reached.
821//
822//   * InvalidArn
823//   The provided Amazon Resource Name (ARN) is invalid.
824//
825// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/GetActivityTask
826func (c *SFN) GetActivityTask(input *GetActivityTaskInput) (*GetActivityTaskOutput, error) {
827	req, out := c.GetActivityTaskRequest(input)
828	return out, req.Send()
829}
830
831// GetActivityTaskWithContext is the same as GetActivityTask with the addition of
832// the ability to pass a context and additional request options.
833//
834// See GetActivityTask for details on how to use this API operation.
835//
836// The context must be non-nil and will be used for request cancellation. If
837// the context is nil a panic will occur. In the future the SDK may create
838// sub-contexts for http.Requests. See https://golang.org/pkg/context/
839// for more information on using Contexts.
840func (c *SFN) GetActivityTaskWithContext(ctx aws.Context, input *GetActivityTaskInput, opts ...request.Option) (*GetActivityTaskOutput, error) {
841	req, out := c.GetActivityTaskRequest(input)
842	req.SetContext(ctx)
843	req.ApplyOptions(opts...)
844	return out, req.Send()
845}
846
847const opGetExecutionHistory = "GetExecutionHistory"
848
849// GetExecutionHistoryRequest generates a "aws/request.Request" representing the
850// client's request for the GetExecutionHistory operation. The "output" return
851// value will be populated with the request's response once the request completes
852// successfully.
853//
854// Use "Send" method on the returned Request to send the API call to the service.
855// the "output" return value is not valid until after Send returns without error.
856//
857// See GetExecutionHistory for more information on using the GetExecutionHistory
858// API call, and error handling.
859//
860// This method is useful when you want to inject custom logic or configuration
861// into the SDK's request lifecycle. Such as custom headers, or retry logic.
862//
863//
864//    // Example sending a request using the GetExecutionHistoryRequest method.
865//    req, resp := client.GetExecutionHistoryRequest(params)
866//
867//    err := req.Send()
868//    if err == nil { // resp is now filled
869//        fmt.Println(resp)
870//    }
871//
872// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/GetExecutionHistory
873func (c *SFN) GetExecutionHistoryRequest(input *GetExecutionHistoryInput) (req *request.Request, output *GetExecutionHistoryOutput) {
874	op := &request.Operation{
875		Name:       opGetExecutionHistory,
876		HTTPMethod: "POST",
877		HTTPPath:   "/",
878		Paginator: &request.Paginator{
879			InputTokens:     []string{"nextToken"},
880			OutputTokens:    []string{"nextToken"},
881			LimitToken:      "maxResults",
882			TruncationToken: "",
883		},
884	}
885
886	if input == nil {
887		input = &GetExecutionHistoryInput{}
888	}
889
890	output = &GetExecutionHistoryOutput{}
891	req = c.newRequest(op, input, output)
892	return
893}
894
895// GetExecutionHistory API operation for AWS Step Functions.
896//
897// Returns the history of the specified execution as a list of events. By default,
898// the results are returned in ascending order of the timeStamp of the events.
899// Use the reverseOrder parameter to get the latest events first.
900//
901// If nextToken is returned, there are more results available. The value of
902// nextToken is a unique pagination token for each page. Make the call again
903// using the returned token to retrieve the next page. Keep all other arguments
904// unchanged. Each pagination token expires after 24 hours. Using an expired
905// pagination token will return an HTTP 400 InvalidToken error.
906//
907// This API action is not supported by EXPRESS state machines.
908//
909// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
910// with awserr.Error's Code and Message methods to get detailed information about
911// the error.
912//
913// See the AWS API reference guide for AWS Step Functions's
914// API operation GetExecutionHistory for usage and error information.
915//
916// Returned Error Types:
917//   * ExecutionDoesNotExist
918//   The specified execution does not exist.
919//
920//   * InvalidArn
921//   The provided Amazon Resource Name (ARN) is invalid.
922//
923//   * InvalidToken
924//   The provided token is invalid.
925//
926// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/GetExecutionHistory
927func (c *SFN) GetExecutionHistory(input *GetExecutionHistoryInput) (*GetExecutionHistoryOutput, error) {
928	req, out := c.GetExecutionHistoryRequest(input)
929	return out, req.Send()
930}
931
932// GetExecutionHistoryWithContext is the same as GetExecutionHistory with the addition of
933// the ability to pass a context and additional request options.
934//
935// See GetExecutionHistory for details on how to use this API operation.
936//
937// The context must be non-nil and will be used for request cancellation. If
938// the context is nil a panic will occur. In the future the SDK may create
939// sub-contexts for http.Requests. See https://golang.org/pkg/context/
940// for more information on using Contexts.
941func (c *SFN) GetExecutionHistoryWithContext(ctx aws.Context, input *GetExecutionHistoryInput, opts ...request.Option) (*GetExecutionHistoryOutput, error) {
942	req, out := c.GetExecutionHistoryRequest(input)
943	req.SetContext(ctx)
944	req.ApplyOptions(opts...)
945	return out, req.Send()
946}
947
948// GetExecutionHistoryPages iterates over the pages of a GetExecutionHistory operation,
949// calling the "fn" function with the response data for each page. To stop
950// iterating, return false from the fn function.
951//
952// See GetExecutionHistory method for more information on how to use this operation.
953//
954// Note: This operation can generate multiple requests to a service.
955//
956//    // Example iterating over at most 3 pages of a GetExecutionHistory operation.
957//    pageNum := 0
958//    err := client.GetExecutionHistoryPages(params,
959//        func(page *sfn.GetExecutionHistoryOutput, lastPage bool) bool {
960//            pageNum++
961//            fmt.Println(page)
962//            return pageNum <= 3
963//        })
964//
965func (c *SFN) GetExecutionHistoryPages(input *GetExecutionHistoryInput, fn func(*GetExecutionHistoryOutput, bool) bool) error {
966	return c.GetExecutionHistoryPagesWithContext(aws.BackgroundContext(), input, fn)
967}
968
969// GetExecutionHistoryPagesWithContext same as GetExecutionHistoryPages except
970// it takes a Context and allows setting request options on the pages.
971//
972// The context must be non-nil and will be used for request cancellation. If
973// the context is nil a panic will occur. In the future the SDK may create
974// sub-contexts for http.Requests. See https://golang.org/pkg/context/
975// for more information on using Contexts.
976func (c *SFN) GetExecutionHistoryPagesWithContext(ctx aws.Context, input *GetExecutionHistoryInput, fn func(*GetExecutionHistoryOutput, bool) bool, opts ...request.Option) error {
977	p := request.Pagination{
978		NewRequest: func() (*request.Request, error) {
979			var inCpy *GetExecutionHistoryInput
980			if input != nil {
981				tmp := *input
982				inCpy = &tmp
983			}
984			req, _ := c.GetExecutionHistoryRequest(inCpy)
985			req.SetContext(ctx)
986			req.ApplyOptions(opts...)
987			return req, nil
988		},
989	}
990
991	for p.Next() {
992		if !fn(p.Page().(*GetExecutionHistoryOutput), !p.HasNextPage()) {
993			break
994		}
995	}
996
997	return p.Err()
998}
999
1000const opListActivities = "ListActivities"
1001
1002// ListActivitiesRequest generates a "aws/request.Request" representing the
1003// client's request for the ListActivities operation. The "output" return
1004// value will be populated with the request's response once the request completes
1005// successfully.
1006//
1007// Use "Send" method on the returned Request to send the API call to the service.
1008// the "output" return value is not valid until after Send returns without error.
1009//
1010// See ListActivities for more information on using the ListActivities
1011// API call, and error handling.
1012//
1013// This method is useful when you want to inject custom logic or configuration
1014// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1015//
1016//
1017//    // Example sending a request using the ListActivitiesRequest method.
1018//    req, resp := client.ListActivitiesRequest(params)
1019//
1020//    err := req.Send()
1021//    if err == nil { // resp is now filled
1022//        fmt.Println(resp)
1023//    }
1024//
1025// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListActivities
1026func (c *SFN) ListActivitiesRequest(input *ListActivitiesInput) (req *request.Request, output *ListActivitiesOutput) {
1027	op := &request.Operation{
1028		Name:       opListActivities,
1029		HTTPMethod: "POST",
1030		HTTPPath:   "/",
1031		Paginator: &request.Paginator{
1032			InputTokens:     []string{"nextToken"},
1033			OutputTokens:    []string{"nextToken"},
1034			LimitToken:      "maxResults",
1035			TruncationToken: "",
1036		},
1037	}
1038
1039	if input == nil {
1040		input = &ListActivitiesInput{}
1041	}
1042
1043	output = &ListActivitiesOutput{}
1044	req = c.newRequest(op, input, output)
1045	return
1046}
1047
1048// ListActivities API operation for AWS Step Functions.
1049//
1050// Lists the existing activities.
1051//
1052// If nextToken is returned, there are more results available. The value of
1053// nextToken is a unique pagination token for each page. Make the call again
1054// using the returned token to retrieve the next page. Keep all other arguments
1055// unchanged. Each pagination token expires after 24 hours. Using an expired
1056// pagination token will return an HTTP 400 InvalidToken error.
1057//
1058// This operation is eventually consistent. The results are best effort and
1059// may not reflect very recent updates and changes.
1060//
1061// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1062// with awserr.Error's Code and Message methods to get detailed information about
1063// the error.
1064//
1065// See the AWS API reference guide for AWS Step Functions's
1066// API operation ListActivities for usage and error information.
1067//
1068// Returned Error Types:
1069//   * InvalidToken
1070//   The provided token is invalid.
1071//
1072// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListActivities
1073func (c *SFN) ListActivities(input *ListActivitiesInput) (*ListActivitiesOutput, error) {
1074	req, out := c.ListActivitiesRequest(input)
1075	return out, req.Send()
1076}
1077
1078// ListActivitiesWithContext is the same as ListActivities with the addition of
1079// the ability to pass a context and additional request options.
1080//
1081// See ListActivities for details on how to use this API operation.
1082//
1083// The context must be non-nil and will be used for request cancellation. If
1084// the context is nil a panic will occur. In the future the SDK may create
1085// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1086// for more information on using Contexts.
1087func (c *SFN) ListActivitiesWithContext(ctx aws.Context, input *ListActivitiesInput, opts ...request.Option) (*ListActivitiesOutput, error) {
1088	req, out := c.ListActivitiesRequest(input)
1089	req.SetContext(ctx)
1090	req.ApplyOptions(opts...)
1091	return out, req.Send()
1092}
1093
1094// ListActivitiesPages iterates over the pages of a ListActivities operation,
1095// calling the "fn" function with the response data for each page. To stop
1096// iterating, return false from the fn function.
1097//
1098// See ListActivities method for more information on how to use this operation.
1099//
1100// Note: This operation can generate multiple requests to a service.
1101//
1102//    // Example iterating over at most 3 pages of a ListActivities operation.
1103//    pageNum := 0
1104//    err := client.ListActivitiesPages(params,
1105//        func(page *sfn.ListActivitiesOutput, lastPage bool) bool {
1106//            pageNum++
1107//            fmt.Println(page)
1108//            return pageNum <= 3
1109//        })
1110//
1111func (c *SFN) ListActivitiesPages(input *ListActivitiesInput, fn func(*ListActivitiesOutput, bool) bool) error {
1112	return c.ListActivitiesPagesWithContext(aws.BackgroundContext(), input, fn)
1113}
1114
1115// ListActivitiesPagesWithContext same as ListActivitiesPages except
1116// it takes a Context and allows setting request options on the pages.
1117//
1118// The context must be non-nil and will be used for request cancellation. If
1119// the context is nil a panic will occur. In the future the SDK may create
1120// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1121// for more information on using Contexts.
1122func (c *SFN) ListActivitiesPagesWithContext(ctx aws.Context, input *ListActivitiesInput, fn func(*ListActivitiesOutput, bool) bool, opts ...request.Option) error {
1123	p := request.Pagination{
1124		NewRequest: func() (*request.Request, error) {
1125			var inCpy *ListActivitiesInput
1126			if input != nil {
1127				tmp := *input
1128				inCpy = &tmp
1129			}
1130			req, _ := c.ListActivitiesRequest(inCpy)
1131			req.SetContext(ctx)
1132			req.ApplyOptions(opts...)
1133			return req, nil
1134		},
1135	}
1136
1137	for p.Next() {
1138		if !fn(p.Page().(*ListActivitiesOutput), !p.HasNextPage()) {
1139			break
1140		}
1141	}
1142
1143	return p.Err()
1144}
1145
1146const opListExecutions = "ListExecutions"
1147
1148// ListExecutionsRequest generates a "aws/request.Request" representing the
1149// client's request for the ListExecutions operation. The "output" return
1150// value will be populated with the request's response once the request completes
1151// successfully.
1152//
1153// Use "Send" method on the returned Request to send the API call to the service.
1154// the "output" return value is not valid until after Send returns without error.
1155//
1156// See ListExecutions for more information on using the ListExecutions
1157// API call, and error handling.
1158//
1159// This method is useful when you want to inject custom logic or configuration
1160// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1161//
1162//
1163//    // Example sending a request using the ListExecutionsRequest method.
1164//    req, resp := client.ListExecutionsRequest(params)
1165//
1166//    err := req.Send()
1167//    if err == nil { // resp is now filled
1168//        fmt.Println(resp)
1169//    }
1170//
1171// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListExecutions
1172func (c *SFN) ListExecutionsRequest(input *ListExecutionsInput) (req *request.Request, output *ListExecutionsOutput) {
1173	op := &request.Operation{
1174		Name:       opListExecutions,
1175		HTTPMethod: "POST",
1176		HTTPPath:   "/",
1177		Paginator: &request.Paginator{
1178			InputTokens:     []string{"nextToken"},
1179			OutputTokens:    []string{"nextToken"},
1180			LimitToken:      "maxResults",
1181			TruncationToken: "",
1182		},
1183	}
1184
1185	if input == nil {
1186		input = &ListExecutionsInput{}
1187	}
1188
1189	output = &ListExecutionsOutput{}
1190	req = c.newRequest(op, input, output)
1191	return
1192}
1193
1194// ListExecutions API operation for AWS Step Functions.
1195//
1196// Lists the executions of a state machine that meet the filtering criteria.
1197// Results are sorted by time, with the most recent execution first.
1198//
1199// If nextToken is returned, there are more results available. The value of
1200// nextToken is a unique pagination token for each page. Make the call again
1201// using the returned token to retrieve the next page. Keep all other arguments
1202// unchanged. Each pagination token expires after 24 hours. Using an expired
1203// pagination token will return an HTTP 400 InvalidToken error.
1204//
1205// This operation is eventually consistent. The results are best effort and
1206// may not reflect very recent updates and changes.
1207//
1208// This API action is not supported by EXPRESS state machines.
1209//
1210// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1211// with awserr.Error's Code and Message methods to get detailed information about
1212// the error.
1213//
1214// See the AWS API reference guide for AWS Step Functions's
1215// API operation ListExecutions for usage and error information.
1216//
1217// Returned Error Types:
1218//   * InvalidArn
1219//   The provided Amazon Resource Name (ARN) is invalid.
1220//
1221//   * InvalidToken
1222//   The provided token is invalid.
1223//
1224//   * StateMachineDoesNotExist
1225//   The specified state machine does not exist.
1226//
1227//   * StateMachineTypeNotSupported
1228//
1229// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListExecutions
1230func (c *SFN) ListExecutions(input *ListExecutionsInput) (*ListExecutionsOutput, error) {
1231	req, out := c.ListExecutionsRequest(input)
1232	return out, req.Send()
1233}
1234
1235// ListExecutionsWithContext is the same as ListExecutions with the addition of
1236// the ability to pass a context and additional request options.
1237//
1238// See ListExecutions for details on how to use this API operation.
1239//
1240// The context must be non-nil and will be used for request cancellation. If
1241// the context is nil a panic will occur. In the future the SDK may create
1242// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1243// for more information on using Contexts.
1244func (c *SFN) ListExecutionsWithContext(ctx aws.Context, input *ListExecutionsInput, opts ...request.Option) (*ListExecutionsOutput, error) {
1245	req, out := c.ListExecutionsRequest(input)
1246	req.SetContext(ctx)
1247	req.ApplyOptions(opts...)
1248	return out, req.Send()
1249}
1250
1251// ListExecutionsPages iterates over the pages of a ListExecutions operation,
1252// calling the "fn" function with the response data for each page. To stop
1253// iterating, return false from the fn function.
1254//
1255// See ListExecutions method for more information on how to use this operation.
1256//
1257// Note: This operation can generate multiple requests to a service.
1258//
1259//    // Example iterating over at most 3 pages of a ListExecutions operation.
1260//    pageNum := 0
1261//    err := client.ListExecutionsPages(params,
1262//        func(page *sfn.ListExecutionsOutput, lastPage bool) bool {
1263//            pageNum++
1264//            fmt.Println(page)
1265//            return pageNum <= 3
1266//        })
1267//
1268func (c *SFN) ListExecutionsPages(input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool) error {
1269	return c.ListExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
1270}
1271
1272// ListExecutionsPagesWithContext same as ListExecutionsPages except
1273// it takes a Context and allows setting request options on the pages.
1274//
1275// The context must be non-nil and will be used for request cancellation. If
1276// the context is nil a panic will occur. In the future the SDK may create
1277// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1278// for more information on using Contexts.
1279func (c *SFN) ListExecutionsPagesWithContext(ctx aws.Context, input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool, opts ...request.Option) error {
1280	p := request.Pagination{
1281		NewRequest: func() (*request.Request, error) {
1282			var inCpy *ListExecutionsInput
1283			if input != nil {
1284				tmp := *input
1285				inCpy = &tmp
1286			}
1287			req, _ := c.ListExecutionsRequest(inCpy)
1288			req.SetContext(ctx)
1289			req.ApplyOptions(opts...)
1290			return req, nil
1291		},
1292	}
1293
1294	for p.Next() {
1295		if !fn(p.Page().(*ListExecutionsOutput), !p.HasNextPage()) {
1296			break
1297		}
1298	}
1299
1300	return p.Err()
1301}
1302
1303const opListStateMachines = "ListStateMachines"
1304
1305// ListStateMachinesRequest generates a "aws/request.Request" representing the
1306// client's request for the ListStateMachines operation. The "output" return
1307// value will be populated with the request's response once the request completes
1308// successfully.
1309//
1310// Use "Send" method on the returned Request to send the API call to the service.
1311// the "output" return value is not valid until after Send returns without error.
1312//
1313// See ListStateMachines for more information on using the ListStateMachines
1314// API call, and error handling.
1315//
1316// This method is useful when you want to inject custom logic or configuration
1317// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1318//
1319//
1320//    // Example sending a request using the ListStateMachinesRequest method.
1321//    req, resp := client.ListStateMachinesRequest(params)
1322//
1323//    err := req.Send()
1324//    if err == nil { // resp is now filled
1325//        fmt.Println(resp)
1326//    }
1327//
1328// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListStateMachines
1329func (c *SFN) ListStateMachinesRequest(input *ListStateMachinesInput) (req *request.Request, output *ListStateMachinesOutput) {
1330	op := &request.Operation{
1331		Name:       opListStateMachines,
1332		HTTPMethod: "POST",
1333		HTTPPath:   "/",
1334		Paginator: &request.Paginator{
1335			InputTokens:     []string{"nextToken"},
1336			OutputTokens:    []string{"nextToken"},
1337			LimitToken:      "maxResults",
1338			TruncationToken: "",
1339		},
1340	}
1341
1342	if input == nil {
1343		input = &ListStateMachinesInput{}
1344	}
1345
1346	output = &ListStateMachinesOutput{}
1347	req = c.newRequest(op, input, output)
1348	return
1349}
1350
1351// ListStateMachines API operation for AWS Step Functions.
1352//
1353// Lists the existing state machines.
1354//
1355// If nextToken is returned, there are more results available. The value of
1356// nextToken is a unique pagination token for each page. Make the call again
1357// using the returned token to retrieve the next page. Keep all other arguments
1358// unchanged. Each pagination token expires after 24 hours. Using an expired
1359// pagination token will return an HTTP 400 InvalidToken error.
1360//
1361// This operation is eventually consistent. The results are best effort and
1362// may not reflect very recent updates and changes.
1363//
1364// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1365// with awserr.Error's Code and Message methods to get detailed information about
1366// the error.
1367//
1368// See the AWS API reference guide for AWS Step Functions's
1369// API operation ListStateMachines for usage and error information.
1370//
1371// Returned Error Types:
1372//   * InvalidToken
1373//   The provided token is invalid.
1374//
1375// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListStateMachines
1376func (c *SFN) ListStateMachines(input *ListStateMachinesInput) (*ListStateMachinesOutput, error) {
1377	req, out := c.ListStateMachinesRequest(input)
1378	return out, req.Send()
1379}
1380
1381// ListStateMachinesWithContext is the same as ListStateMachines with the addition of
1382// the ability to pass a context and additional request options.
1383//
1384// See ListStateMachines for details on how to use this API operation.
1385//
1386// The context must be non-nil and will be used for request cancellation. If
1387// the context is nil a panic will occur. In the future the SDK may create
1388// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1389// for more information on using Contexts.
1390func (c *SFN) ListStateMachinesWithContext(ctx aws.Context, input *ListStateMachinesInput, opts ...request.Option) (*ListStateMachinesOutput, error) {
1391	req, out := c.ListStateMachinesRequest(input)
1392	req.SetContext(ctx)
1393	req.ApplyOptions(opts...)
1394	return out, req.Send()
1395}
1396
1397// ListStateMachinesPages iterates over the pages of a ListStateMachines operation,
1398// calling the "fn" function with the response data for each page. To stop
1399// iterating, return false from the fn function.
1400//
1401// See ListStateMachines method for more information on how to use this operation.
1402//
1403// Note: This operation can generate multiple requests to a service.
1404//
1405//    // Example iterating over at most 3 pages of a ListStateMachines operation.
1406//    pageNum := 0
1407//    err := client.ListStateMachinesPages(params,
1408//        func(page *sfn.ListStateMachinesOutput, lastPage bool) bool {
1409//            pageNum++
1410//            fmt.Println(page)
1411//            return pageNum <= 3
1412//        })
1413//
1414func (c *SFN) ListStateMachinesPages(input *ListStateMachinesInput, fn func(*ListStateMachinesOutput, bool) bool) error {
1415	return c.ListStateMachinesPagesWithContext(aws.BackgroundContext(), input, fn)
1416}
1417
1418// ListStateMachinesPagesWithContext same as ListStateMachinesPages except
1419// it takes a Context and allows setting request options on the pages.
1420//
1421// The context must be non-nil and will be used for request cancellation. If
1422// the context is nil a panic will occur. In the future the SDK may create
1423// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1424// for more information on using Contexts.
1425func (c *SFN) ListStateMachinesPagesWithContext(ctx aws.Context, input *ListStateMachinesInput, fn func(*ListStateMachinesOutput, bool) bool, opts ...request.Option) error {
1426	p := request.Pagination{
1427		NewRequest: func() (*request.Request, error) {
1428			var inCpy *ListStateMachinesInput
1429			if input != nil {
1430				tmp := *input
1431				inCpy = &tmp
1432			}
1433			req, _ := c.ListStateMachinesRequest(inCpy)
1434			req.SetContext(ctx)
1435			req.ApplyOptions(opts...)
1436			return req, nil
1437		},
1438	}
1439
1440	for p.Next() {
1441		if !fn(p.Page().(*ListStateMachinesOutput), !p.HasNextPage()) {
1442			break
1443		}
1444	}
1445
1446	return p.Err()
1447}
1448
1449const opListTagsForResource = "ListTagsForResource"
1450
1451// ListTagsForResourceRequest generates a "aws/request.Request" representing the
1452// client's request for the ListTagsForResource operation. The "output" return
1453// value will be populated with the request's response once the request completes
1454// successfully.
1455//
1456// Use "Send" method on the returned Request to send the API call to the service.
1457// the "output" return value is not valid until after Send returns without error.
1458//
1459// See ListTagsForResource for more information on using the ListTagsForResource
1460// API call, and error handling.
1461//
1462// This method is useful when you want to inject custom logic or configuration
1463// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1464//
1465//
1466//    // Example sending a request using the ListTagsForResourceRequest method.
1467//    req, resp := client.ListTagsForResourceRequest(params)
1468//
1469//    err := req.Send()
1470//    if err == nil { // resp is now filled
1471//        fmt.Println(resp)
1472//    }
1473//
1474// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListTagsForResource
1475func (c *SFN) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
1476	op := &request.Operation{
1477		Name:       opListTagsForResource,
1478		HTTPMethod: "POST",
1479		HTTPPath:   "/",
1480	}
1481
1482	if input == nil {
1483		input = &ListTagsForResourceInput{}
1484	}
1485
1486	output = &ListTagsForResourceOutput{}
1487	req = c.newRequest(op, input, output)
1488	return
1489}
1490
1491// ListTagsForResource API operation for AWS Step Functions.
1492//
1493// List tags for a given resource.
1494//
1495// Tags may only contain Unicode letters, digits, white space, or these symbols:
1496// _ . : / = + - @.
1497//
1498// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1499// with awserr.Error's Code and Message methods to get detailed information about
1500// the error.
1501//
1502// See the AWS API reference guide for AWS Step Functions's
1503// API operation ListTagsForResource for usage and error information.
1504//
1505// Returned Error Types:
1506//   * InvalidArn
1507//   The provided Amazon Resource Name (ARN) is invalid.
1508//
1509//   * ResourceNotFound
1510//   Could not find the referenced resource. Only state machine and activity ARNs
1511//   are supported.
1512//
1513// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListTagsForResource
1514func (c *SFN) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
1515	req, out := c.ListTagsForResourceRequest(input)
1516	return out, req.Send()
1517}
1518
1519// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
1520// the ability to pass a context and additional request options.
1521//
1522// See ListTagsForResource for details on how to use this API operation.
1523//
1524// The context must be non-nil and will be used for request cancellation. If
1525// the context is nil a panic will occur. In the future the SDK may create
1526// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1527// for more information on using Contexts.
1528func (c *SFN) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
1529	req, out := c.ListTagsForResourceRequest(input)
1530	req.SetContext(ctx)
1531	req.ApplyOptions(opts...)
1532	return out, req.Send()
1533}
1534
1535const opSendTaskFailure = "SendTaskFailure"
1536
1537// SendTaskFailureRequest generates a "aws/request.Request" representing the
1538// client's request for the SendTaskFailure operation. The "output" return
1539// value will be populated with the request's response once the request completes
1540// successfully.
1541//
1542// Use "Send" method on the returned Request to send the API call to the service.
1543// the "output" return value is not valid until after Send returns without error.
1544//
1545// See SendTaskFailure for more information on using the SendTaskFailure
1546// API call, and error handling.
1547//
1548// This method is useful when you want to inject custom logic or configuration
1549// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1550//
1551//
1552//    // Example sending a request using the SendTaskFailureRequest method.
1553//    req, resp := client.SendTaskFailureRequest(params)
1554//
1555//    err := req.Send()
1556//    if err == nil { // resp is now filled
1557//        fmt.Println(resp)
1558//    }
1559//
1560// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskFailure
1561func (c *SFN) SendTaskFailureRequest(input *SendTaskFailureInput) (req *request.Request, output *SendTaskFailureOutput) {
1562	op := &request.Operation{
1563		Name:       opSendTaskFailure,
1564		HTTPMethod: "POST",
1565		HTTPPath:   "/",
1566	}
1567
1568	if input == nil {
1569		input = &SendTaskFailureInput{}
1570	}
1571
1572	output = &SendTaskFailureOutput{}
1573	req = c.newRequest(op, input, output)
1574	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1575	return
1576}
1577
1578// SendTaskFailure API operation for AWS Step Functions.
1579//
1580// Used by activity workers and task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token)
1581// pattern to report that the task identified by the taskToken failed.
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 Step Functions's
1588// API operation SendTaskFailure for usage and error information.
1589//
1590// Returned Error Types:
1591//   * TaskDoesNotExist
1592//
1593//   * InvalidToken
1594//   The provided token is invalid.
1595//
1596//   * TaskTimedOut
1597//
1598// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskFailure
1599func (c *SFN) SendTaskFailure(input *SendTaskFailureInput) (*SendTaskFailureOutput, error) {
1600	req, out := c.SendTaskFailureRequest(input)
1601	return out, req.Send()
1602}
1603
1604// SendTaskFailureWithContext is the same as SendTaskFailure with the addition of
1605// the ability to pass a context and additional request options.
1606//
1607// See SendTaskFailure for details on how to use this API operation.
1608//
1609// The context must be non-nil and will be used for request cancellation. If
1610// the context is nil a panic will occur. In the future the SDK may create
1611// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1612// for more information on using Contexts.
1613func (c *SFN) SendTaskFailureWithContext(ctx aws.Context, input *SendTaskFailureInput, opts ...request.Option) (*SendTaskFailureOutput, error) {
1614	req, out := c.SendTaskFailureRequest(input)
1615	req.SetContext(ctx)
1616	req.ApplyOptions(opts...)
1617	return out, req.Send()
1618}
1619
1620const opSendTaskHeartbeat = "SendTaskHeartbeat"
1621
1622// SendTaskHeartbeatRequest generates a "aws/request.Request" representing the
1623// client's request for the SendTaskHeartbeat operation. The "output" return
1624// value will be populated with the request's response once the request completes
1625// successfully.
1626//
1627// Use "Send" method on the returned Request to send the API call to the service.
1628// the "output" return value is not valid until after Send returns without error.
1629//
1630// See SendTaskHeartbeat for more information on using the SendTaskHeartbeat
1631// API call, and error handling.
1632//
1633// This method is useful when you want to inject custom logic or configuration
1634// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1635//
1636//
1637//    // Example sending a request using the SendTaskHeartbeatRequest method.
1638//    req, resp := client.SendTaskHeartbeatRequest(params)
1639//
1640//    err := req.Send()
1641//    if err == nil { // resp is now filled
1642//        fmt.Println(resp)
1643//    }
1644//
1645// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskHeartbeat
1646func (c *SFN) SendTaskHeartbeatRequest(input *SendTaskHeartbeatInput) (req *request.Request, output *SendTaskHeartbeatOutput) {
1647	op := &request.Operation{
1648		Name:       opSendTaskHeartbeat,
1649		HTTPMethod: "POST",
1650		HTTPPath:   "/",
1651	}
1652
1653	if input == nil {
1654		input = &SendTaskHeartbeatInput{}
1655	}
1656
1657	output = &SendTaskHeartbeatOutput{}
1658	req = c.newRequest(op, input, output)
1659	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1660	return
1661}
1662
1663// SendTaskHeartbeat API operation for AWS Step Functions.
1664//
1665// Used by activity workers and task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token)
1666// pattern to report to Step Functions that the task represented by the specified
1667// taskToken is still making progress. This action resets the Heartbeat clock.
1668// The Heartbeat threshold is specified in the state machine's Amazon States
1669// Language definition (HeartbeatSeconds). This action does not in itself create
1670// an event in the execution history. However, if the task times out, the execution
1671// history contains an ActivityTimedOut entry for activities, or a TaskTimedOut
1672// entry for for tasks using the job run (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync)
1673// or callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token)
1674// pattern.
1675//
1676// The Timeout of a task, defined in the state machine's Amazon States Language
1677// definition, is its maximum allowed duration, regardless of the number of
1678// SendTaskHeartbeat requests received. Use HeartbeatSeconds to configure the
1679// timeout interval for heartbeats.
1680//
1681// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1682// with awserr.Error's Code and Message methods to get detailed information about
1683// the error.
1684//
1685// See the AWS API reference guide for AWS Step Functions's
1686// API operation SendTaskHeartbeat for usage and error information.
1687//
1688// Returned Error Types:
1689//   * TaskDoesNotExist
1690//
1691//   * InvalidToken
1692//   The provided token is invalid.
1693//
1694//   * TaskTimedOut
1695//
1696// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskHeartbeat
1697func (c *SFN) SendTaskHeartbeat(input *SendTaskHeartbeatInput) (*SendTaskHeartbeatOutput, error) {
1698	req, out := c.SendTaskHeartbeatRequest(input)
1699	return out, req.Send()
1700}
1701
1702// SendTaskHeartbeatWithContext is the same as SendTaskHeartbeat with the addition of
1703// the ability to pass a context and additional request options.
1704//
1705// See SendTaskHeartbeat for details on how to use this API operation.
1706//
1707// The context must be non-nil and will be used for request cancellation. If
1708// the context is nil a panic will occur. In the future the SDK may create
1709// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1710// for more information on using Contexts.
1711func (c *SFN) SendTaskHeartbeatWithContext(ctx aws.Context, input *SendTaskHeartbeatInput, opts ...request.Option) (*SendTaskHeartbeatOutput, error) {
1712	req, out := c.SendTaskHeartbeatRequest(input)
1713	req.SetContext(ctx)
1714	req.ApplyOptions(opts...)
1715	return out, req.Send()
1716}
1717
1718const opSendTaskSuccess = "SendTaskSuccess"
1719
1720// SendTaskSuccessRequest generates a "aws/request.Request" representing the
1721// client's request for the SendTaskSuccess operation. The "output" return
1722// value will be populated with the request's response once the request completes
1723// successfully.
1724//
1725// Use "Send" method on the returned Request to send the API call to the service.
1726// the "output" return value is not valid until after Send returns without error.
1727//
1728// See SendTaskSuccess for more information on using the SendTaskSuccess
1729// API call, and error handling.
1730//
1731// This method is useful when you want to inject custom logic or configuration
1732// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1733//
1734//
1735//    // Example sending a request using the SendTaskSuccessRequest method.
1736//    req, resp := client.SendTaskSuccessRequest(params)
1737//
1738//    err := req.Send()
1739//    if err == nil { // resp is now filled
1740//        fmt.Println(resp)
1741//    }
1742//
1743// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskSuccess
1744func (c *SFN) SendTaskSuccessRequest(input *SendTaskSuccessInput) (req *request.Request, output *SendTaskSuccessOutput) {
1745	op := &request.Operation{
1746		Name:       opSendTaskSuccess,
1747		HTTPMethod: "POST",
1748		HTTPPath:   "/",
1749	}
1750
1751	if input == nil {
1752		input = &SendTaskSuccessInput{}
1753	}
1754
1755	output = &SendTaskSuccessOutput{}
1756	req = c.newRequest(op, input, output)
1757	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1758	return
1759}
1760
1761// SendTaskSuccess API operation for AWS Step Functions.
1762//
1763// Used by activity workers and task states using the callback (https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token)
1764// pattern to report that the task identified by the taskToken completed successfully.
1765//
1766// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1767// with awserr.Error's Code and Message methods to get detailed information about
1768// the error.
1769//
1770// See the AWS API reference guide for AWS Step Functions's
1771// API operation SendTaskSuccess for usage and error information.
1772//
1773// Returned Error Types:
1774//   * TaskDoesNotExist
1775//
1776//   * InvalidOutput
1777//   The provided JSON output data is invalid.
1778//
1779//   * InvalidToken
1780//   The provided token is invalid.
1781//
1782//   * TaskTimedOut
1783//
1784// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/SendTaskSuccess
1785func (c *SFN) SendTaskSuccess(input *SendTaskSuccessInput) (*SendTaskSuccessOutput, error) {
1786	req, out := c.SendTaskSuccessRequest(input)
1787	return out, req.Send()
1788}
1789
1790// SendTaskSuccessWithContext is the same as SendTaskSuccess with the addition of
1791// the ability to pass a context and additional request options.
1792//
1793// See SendTaskSuccess for details on how to use this API operation.
1794//
1795// The context must be non-nil and will be used for request cancellation. If
1796// the context is nil a panic will occur. In the future the SDK may create
1797// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1798// for more information on using Contexts.
1799func (c *SFN) SendTaskSuccessWithContext(ctx aws.Context, input *SendTaskSuccessInput, opts ...request.Option) (*SendTaskSuccessOutput, error) {
1800	req, out := c.SendTaskSuccessRequest(input)
1801	req.SetContext(ctx)
1802	req.ApplyOptions(opts...)
1803	return out, req.Send()
1804}
1805
1806const opStartExecution = "StartExecution"
1807
1808// StartExecutionRequest generates a "aws/request.Request" representing the
1809// client's request for the StartExecution operation. The "output" return
1810// value will be populated with the request's response once the request completes
1811// successfully.
1812//
1813// Use "Send" method on the returned Request to send the API call to the service.
1814// the "output" return value is not valid until after Send returns without error.
1815//
1816// See StartExecution for more information on using the StartExecution
1817// API call, and error handling.
1818//
1819// This method is useful when you want to inject custom logic or configuration
1820// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1821//
1822//
1823//    // Example sending a request using the StartExecutionRequest method.
1824//    req, resp := client.StartExecutionRequest(params)
1825//
1826//    err := req.Send()
1827//    if err == nil { // resp is now filled
1828//        fmt.Println(resp)
1829//    }
1830//
1831// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/StartExecution
1832func (c *SFN) StartExecutionRequest(input *StartExecutionInput) (req *request.Request, output *StartExecutionOutput) {
1833	op := &request.Operation{
1834		Name:       opStartExecution,
1835		HTTPMethod: "POST",
1836		HTTPPath:   "/",
1837	}
1838
1839	if input == nil {
1840		input = &StartExecutionInput{}
1841	}
1842
1843	output = &StartExecutionOutput{}
1844	req = c.newRequest(op, input, output)
1845	return
1846}
1847
1848// StartExecution API operation for AWS Step Functions.
1849//
1850// Starts a state machine execution.
1851//
1852// StartExecution is idempotent. If StartExecution is called with the same name
1853// and input as a running execution, the call will succeed and return the same
1854// response as the original request. If the execution is closed or if the input
1855// is different, it will return a 400 ExecutionAlreadyExists error. Names can
1856// be reused after 90 days.
1857//
1858// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1859// with awserr.Error's Code and Message methods to get detailed information about
1860// the error.
1861//
1862// See the AWS API reference guide for AWS Step Functions's
1863// API operation StartExecution for usage and error information.
1864//
1865// Returned Error Types:
1866//   * ExecutionLimitExceeded
1867//   The maximum number of running executions has been reached. Running executions
1868//   must end or be stopped before a new execution can be started.
1869//
1870//   * ExecutionAlreadyExists
1871//   The execution has the same name as another execution (but a different input).
1872//
1873//   Executions with the same name and input are considered idempotent.
1874//
1875//   * InvalidArn
1876//   The provided Amazon Resource Name (ARN) is invalid.
1877//
1878//   * InvalidExecutionInput
1879//   The provided JSON input data is invalid.
1880//
1881//   * InvalidName
1882//   The provided name is invalid.
1883//
1884//   * StateMachineDoesNotExist
1885//   The specified state machine does not exist.
1886//
1887//   * StateMachineDeleting
1888//   The specified state machine is being deleted.
1889//
1890// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/StartExecution
1891func (c *SFN) StartExecution(input *StartExecutionInput) (*StartExecutionOutput, error) {
1892	req, out := c.StartExecutionRequest(input)
1893	return out, req.Send()
1894}
1895
1896// StartExecutionWithContext is the same as StartExecution with the addition of
1897// the ability to pass a context and additional request options.
1898//
1899// See StartExecution 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 *SFN) StartExecutionWithContext(ctx aws.Context, input *StartExecutionInput, opts ...request.Option) (*StartExecutionOutput, error) {
1906	req, out := c.StartExecutionRequest(input)
1907	req.SetContext(ctx)
1908	req.ApplyOptions(opts...)
1909	return out, req.Send()
1910}
1911
1912const opStopExecution = "StopExecution"
1913
1914// StopExecutionRequest generates a "aws/request.Request" representing the
1915// client's request for the StopExecution 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 StopExecution for more information on using the StopExecution
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 StopExecutionRequest method.
1930//    req, resp := client.StopExecutionRequest(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/states-2016-11-23/StopExecution
1938func (c *SFN) StopExecutionRequest(input *StopExecutionInput) (req *request.Request, output *StopExecutionOutput) {
1939	op := &request.Operation{
1940		Name:       opStopExecution,
1941		HTTPMethod: "POST",
1942		HTTPPath:   "/",
1943	}
1944
1945	if input == nil {
1946		input = &StopExecutionInput{}
1947	}
1948
1949	output = &StopExecutionOutput{}
1950	req = c.newRequest(op, input, output)
1951	return
1952}
1953
1954// StopExecution API operation for AWS Step Functions.
1955//
1956// Stops an execution.
1957//
1958// This API action is not supported by EXPRESS state machines.
1959//
1960// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1961// with awserr.Error's Code and Message methods to get detailed information about
1962// the error.
1963//
1964// See the AWS API reference guide for AWS Step Functions's
1965// API operation StopExecution for usage and error information.
1966//
1967// Returned Error Types:
1968//   * ExecutionDoesNotExist
1969//   The specified execution does not exist.
1970//
1971//   * InvalidArn
1972//   The provided Amazon Resource Name (ARN) is invalid.
1973//
1974// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/StopExecution
1975func (c *SFN) StopExecution(input *StopExecutionInput) (*StopExecutionOutput, error) {
1976	req, out := c.StopExecutionRequest(input)
1977	return out, req.Send()
1978}
1979
1980// StopExecutionWithContext is the same as StopExecution with the addition of
1981// the ability to pass a context and additional request options.
1982//
1983// See StopExecution for details on how to use this API operation.
1984//
1985// The context must be non-nil and will be used for request cancellation. If
1986// the context is nil a panic will occur. In the future the SDK may create
1987// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1988// for more information on using Contexts.
1989func (c *SFN) StopExecutionWithContext(ctx aws.Context, input *StopExecutionInput, opts ...request.Option) (*StopExecutionOutput, error) {
1990	req, out := c.StopExecutionRequest(input)
1991	req.SetContext(ctx)
1992	req.ApplyOptions(opts...)
1993	return out, req.Send()
1994}
1995
1996const opTagResource = "TagResource"
1997
1998// TagResourceRequest generates a "aws/request.Request" representing the
1999// client's request for the TagResource operation. The "output" return
2000// value will be populated with the request's response once the request completes
2001// successfully.
2002//
2003// Use "Send" method on the returned Request to send the API call to the service.
2004// the "output" return value is not valid until after Send returns without error.
2005//
2006// See TagResource for more information on using the TagResource
2007// API call, and error handling.
2008//
2009// This method is useful when you want to inject custom logic or configuration
2010// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2011//
2012//
2013//    // Example sending a request using the TagResourceRequest method.
2014//    req, resp := client.TagResourceRequest(params)
2015//
2016//    err := req.Send()
2017//    if err == nil { // resp is now filled
2018//        fmt.Println(resp)
2019//    }
2020//
2021// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/TagResource
2022func (c *SFN) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
2023	op := &request.Operation{
2024		Name:       opTagResource,
2025		HTTPMethod: "POST",
2026		HTTPPath:   "/",
2027	}
2028
2029	if input == nil {
2030		input = &TagResourceInput{}
2031	}
2032
2033	output = &TagResourceOutput{}
2034	req = c.newRequest(op, input, output)
2035	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2036	return
2037}
2038
2039// TagResource API operation for AWS Step Functions.
2040//
2041// Add a tag to a Step Functions resource.
2042//
2043// An array of key-value pairs. For more information, see Using Cost Allocation
2044// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
2045// in the AWS Billing and Cost Management User Guide, and Controlling Access
2046// Using IAM Tags (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html).
2047//
2048// Tags may only contain Unicode letters, digits, white space, or these symbols:
2049// _ . : / = + - @.
2050//
2051// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2052// with awserr.Error's Code and Message methods to get detailed information about
2053// the error.
2054//
2055// See the AWS API reference guide for AWS Step Functions's
2056// API operation TagResource for usage and error information.
2057//
2058// Returned Error Types:
2059//   * InvalidArn
2060//   The provided Amazon Resource Name (ARN) is invalid.
2061//
2062//   * ResourceNotFound
2063//   Could not find the referenced resource. Only state machine and activity ARNs
2064//   are supported.
2065//
2066//   * TooManyTags
2067//   You've exceeded the number of tags allowed for a resource. See the Limits
2068//   Topic (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html)
2069//   in the AWS Step Functions Developer Guide.
2070//
2071// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/TagResource
2072func (c *SFN) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
2073	req, out := c.TagResourceRequest(input)
2074	return out, req.Send()
2075}
2076
2077// TagResourceWithContext is the same as TagResource with the addition of
2078// the ability to pass a context and additional request options.
2079//
2080// See TagResource for details on how to use this API operation.
2081//
2082// The context must be non-nil and will be used for request cancellation. If
2083// the context is nil a panic will occur. In the future the SDK may create
2084// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2085// for more information on using Contexts.
2086func (c *SFN) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
2087	req, out := c.TagResourceRequest(input)
2088	req.SetContext(ctx)
2089	req.ApplyOptions(opts...)
2090	return out, req.Send()
2091}
2092
2093const opUntagResource = "UntagResource"
2094
2095// UntagResourceRequest generates a "aws/request.Request" representing the
2096// client's request for the UntagResource operation. The "output" return
2097// value will be populated with the request's response once the request completes
2098// successfully.
2099//
2100// Use "Send" method on the returned Request to send the API call to the service.
2101// the "output" return value is not valid until after Send returns without error.
2102//
2103// See UntagResource for more information on using the UntagResource
2104// API call, and error handling.
2105//
2106// This method is useful when you want to inject custom logic or configuration
2107// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2108//
2109//
2110//    // Example sending a request using the UntagResourceRequest method.
2111//    req, resp := client.UntagResourceRequest(params)
2112//
2113//    err := req.Send()
2114//    if err == nil { // resp is now filled
2115//        fmt.Println(resp)
2116//    }
2117//
2118// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UntagResource
2119func (c *SFN) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
2120	op := &request.Operation{
2121		Name:       opUntagResource,
2122		HTTPMethod: "POST",
2123		HTTPPath:   "/",
2124	}
2125
2126	if input == nil {
2127		input = &UntagResourceInput{}
2128	}
2129
2130	output = &UntagResourceOutput{}
2131	req = c.newRequest(op, input, output)
2132	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2133	return
2134}
2135
2136// UntagResource API operation for AWS Step Functions.
2137//
2138// Remove a tag from a Step Functions resource
2139//
2140// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2141// with awserr.Error's Code and Message methods to get detailed information about
2142// the error.
2143//
2144// See the AWS API reference guide for AWS Step Functions's
2145// API operation UntagResource for usage and error information.
2146//
2147// Returned Error Types:
2148//   * InvalidArn
2149//   The provided Amazon Resource Name (ARN) is invalid.
2150//
2151//   * ResourceNotFound
2152//   Could not find the referenced resource. Only state machine and activity ARNs
2153//   are supported.
2154//
2155// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UntagResource
2156func (c *SFN) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
2157	req, out := c.UntagResourceRequest(input)
2158	return out, req.Send()
2159}
2160
2161// UntagResourceWithContext is the same as UntagResource with the addition of
2162// the ability to pass a context and additional request options.
2163//
2164// See UntagResource for details on how to use this API operation.
2165//
2166// The context must be non-nil and will be used for request cancellation. If
2167// the context is nil a panic will occur. In the future the SDK may create
2168// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2169// for more information on using Contexts.
2170func (c *SFN) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
2171	req, out := c.UntagResourceRequest(input)
2172	req.SetContext(ctx)
2173	req.ApplyOptions(opts...)
2174	return out, req.Send()
2175}
2176
2177const opUpdateStateMachine = "UpdateStateMachine"
2178
2179// UpdateStateMachineRequest generates a "aws/request.Request" representing the
2180// client's request for the UpdateStateMachine operation. The "output" return
2181// value will be populated with the request's response once the request completes
2182// successfully.
2183//
2184// Use "Send" method on the returned Request to send the API call to the service.
2185// the "output" return value is not valid until after Send returns without error.
2186//
2187// See UpdateStateMachine for more information on using the UpdateStateMachine
2188// API call, and error handling.
2189//
2190// This method is useful when you want to inject custom logic or configuration
2191// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2192//
2193//
2194//    // Example sending a request using the UpdateStateMachineRequest method.
2195//    req, resp := client.UpdateStateMachineRequest(params)
2196//
2197//    err := req.Send()
2198//    if err == nil { // resp is now filled
2199//        fmt.Println(resp)
2200//    }
2201//
2202// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachine
2203func (c *SFN) UpdateStateMachineRequest(input *UpdateStateMachineInput) (req *request.Request, output *UpdateStateMachineOutput) {
2204	op := &request.Operation{
2205		Name:       opUpdateStateMachine,
2206		HTTPMethod: "POST",
2207		HTTPPath:   "/",
2208	}
2209
2210	if input == nil {
2211		input = &UpdateStateMachineInput{}
2212	}
2213
2214	output = &UpdateStateMachineOutput{}
2215	req = c.newRequest(op, input, output)
2216	return
2217}
2218
2219// UpdateStateMachine API operation for AWS Step Functions.
2220//
2221// Updates an existing state machine by modifying its definition, roleArn, or
2222// loggingConfiguration. Running executions will continue to use the previous
2223// definition and roleArn. You must include at least one of definition or roleArn
2224// or you will receive a MissingRequiredParameter error.
2225//
2226// All StartExecution calls within a few seconds will use the updated definition
2227// and roleArn. Executions started immediately after calling UpdateStateMachine
2228// may use the previous state machine definition and roleArn.
2229//
2230// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2231// with awserr.Error's Code and Message methods to get detailed information about
2232// the error.
2233//
2234// See the AWS API reference guide for AWS Step Functions's
2235// API operation UpdateStateMachine for usage and error information.
2236//
2237// Returned Error Types:
2238//   * InvalidArn
2239//   The provided Amazon Resource Name (ARN) is invalid.
2240//
2241//   * InvalidDefinition
2242//   The provided Amazon States Language definition is invalid.
2243//
2244//   * InvalidLoggingConfiguration
2245//
2246//   * MissingRequiredParameter
2247//   Request is missing a required parameter. This error occurs if both definition
2248//   and roleArn are not specified.
2249//
2250//   * StateMachineDeleting
2251//   The specified state machine is being deleted.
2252//
2253//   * StateMachineDoesNotExist
2254//   The specified state machine does not exist.
2255//
2256// See also, https://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachine
2257func (c *SFN) UpdateStateMachine(input *UpdateStateMachineInput) (*UpdateStateMachineOutput, error) {
2258	req, out := c.UpdateStateMachineRequest(input)
2259	return out, req.Send()
2260}
2261
2262// UpdateStateMachineWithContext is the same as UpdateStateMachine with the addition of
2263// the ability to pass a context and additional request options.
2264//
2265// See UpdateStateMachine for details on how to use this API operation.
2266//
2267// The context must be non-nil and will be used for request cancellation. If
2268// the context is nil a panic will occur. In the future the SDK may create
2269// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2270// for more information on using Contexts.
2271func (c *SFN) UpdateStateMachineWithContext(ctx aws.Context, input *UpdateStateMachineInput, opts ...request.Option) (*UpdateStateMachineOutput, error) {
2272	req, out := c.UpdateStateMachineRequest(input)
2273	req.SetContext(ctx)
2274	req.ApplyOptions(opts...)
2275	return out, req.Send()
2276}
2277
2278// The specified activity does not exist.
2279type ActivityDoesNotExist struct {
2280	_            struct{} `type:"structure"`
2281	respMetadata protocol.ResponseMetadata
2282
2283	Message_ *string `locationName:"message" type:"string"`
2284}
2285
2286// String returns the string representation
2287func (s ActivityDoesNotExist) String() string {
2288	return awsutil.Prettify(s)
2289}
2290
2291// GoString returns the string representation
2292func (s ActivityDoesNotExist) GoString() string {
2293	return s.String()
2294}
2295
2296func newErrorActivityDoesNotExist(v protocol.ResponseMetadata) error {
2297	return &ActivityDoesNotExist{
2298		respMetadata: v,
2299	}
2300}
2301
2302// Code returns the exception type name.
2303func (s ActivityDoesNotExist) Code() string {
2304	return "ActivityDoesNotExist"
2305}
2306
2307// Message returns the exception's message.
2308func (s ActivityDoesNotExist) Message() string {
2309	if s.Message_ != nil {
2310		return *s.Message_
2311	}
2312	return ""
2313}
2314
2315// OrigErr always returns nil, satisfies awserr.Error interface.
2316func (s ActivityDoesNotExist) OrigErr() error {
2317	return nil
2318}
2319
2320func (s ActivityDoesNotExist) Error() string {
2321	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2322}
2323
2324// Status code returns the HTTP status code for the request's response error.
2325func (s ActivityDoesNotExist) StatusCode() int {
2326	return s.respMetadata.StatusCode
2327}
2328
2329// RequestID returns the service's response RequestID for request.
2330func (s ActivityDoesNotExist) RequestID() string {
2331	return s.respMetadata.RequestID
2332}
2333
2334// Contains details about an activity that failed during an execution.
2335type ActivityFailedEventDetails struct {
2336	_ struct{} `type:"structure"`
2337
2338	// A more detailed explanation of the cause of the failure.
2339	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
2340
2341	// The error code of the failure.
2342	Error *string `locationName:"error" type:"string" sensitive:"true"`
2343}
2344
2345// String returns the string representation
2346func (s ActivityFailedEventDetails) String() string {
2347	return awsutil.Prettify(s)
2348}
2349
2350// GoString returns the string representation
2351func (s ActivityFailedEventDetails) GoString() string {
2352	return s.String()
2353}
2354
2355// SetCause sets the Cause field's value.
2356func (s *ActivityFailedEventDetails) SetCause(v string) *ActivityFailedEventDetails {
2357	s.Cause = &v
2358	return s
2359}
2360
2361// SetError sets the Error field's value.
2362func (s *ActivityFailedEventDetails) SetError(v string) *ActivityFailedEventDetails {
2363	s.Error = &v
2364	return s
2365}
2366
2367// The maximum number of activities has been reached. Existing activities must
2368// be deleted before a new activity can be created.
2369type ActivityLimitExceeded struct {
2370	_            struct{} `type:"structure"`
2371	respMetadata protocol.ResponseMetadata
2372
2373	Message_ *string `locationName:"message" type:"string"`
2374}
2375
2376// String returns the string representation
2377func (s ActivityLimitExceeded) String() string {
2378	return awsutil.Prettify(s)
2379}
2380
2381// GoString returns the string representation
2382func (s ActivityLimitExceeded) GoString() string {
2383	return s.String()
2384}
2385
2386func newErrorActivityLimitExceeded(v protocol.ResponseMetadata) error {
2387	return &ActivityLimitExceeded{
2388		respMetadata: v,
2389	}
2390}
2391
2392// Code returns the exception type name.
2393func (s ActivityLimitExceeded) Code() string {
2394	return "ActivityLimitExceeded"
2395}
2396
2397// Message returns the exception's message.
2398func (s ActivityLimitExceeded) Message() string {
2399	if s.Message_ != nil {
2400		return *s.Message_
2401	}
2402	return ""
2403}
2404
2405// OrigErr always returns nil, satisfies awserr.Error interface.
2406func (s ActivityLimitExceeded) OrigErr() error {
2407	return nil
2408}
2409
2410func (s ActivityLimitExceeded) Error() string {
2411	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2412}
2413
2414// Status code returns the HTTP status code for the request's response error.
2415func (s ActivityLimitExceeded) StatusCode() int {
2416	return s.respMetadata.StatusCode
2417}
2418
2419// RequestID returns the service's response RequestID for request.
2420func (s ActivityLimitExceeded) RequestID() string {
2421	return s.respMetadata.RequestID
2422}
2423
2424// Contains details about an activity.
2425type ActivityListItem struct {
2426	_ struct{} `type:"structure"`
2427
2428	// The Amazon Resource Name (ARN) that identifies the activity.
2429	//
2430	// ActivityArn is a required field
2431	ActivityArn *string `locationName:"activityArn" min:"1" type:"string" required:"true"`
2432
2433	// The date the activity is created.
2434	//
2435	// CreationDate is a required field
2436	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" required:"true"`
2437
2438	// The name of the activity.
2439	//
2440	// A name must not contain:
2441	//
2442	//    * white space
2443	//
2444	//    * brackets < > { } [ ]
2445	//
2446	//    * wildcard characters ? *
2447	//
2448	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
2449	//
2450	//    * control characters (U+0000-001F, U+007F-009F)
2451	//
2452	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
2453	// A-Z, a-z, - and _.
2454	//
2455	// Name is a required field
2456	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
2457}
2458
2459// String returns the string representation
2460func (s ActivityListItem) String() string {
2461	return awsutil.Prettify(s)
2462}
2463
2464// GoString returns the string representation
2465func (s ActivityListItem) GoString() string {
2466	return s.String()
2467}
2468
2469// SetActivityArn sets the ActivityArn field's value.
2470func (s *ActivityListItem) SetActivityArn(v string) *ActivityListItem {
2471	s.ActivityArn = &v
2472	return s
2473}
2474
2475// SetCreationDate sets the CreationDate field's value.
2476func (s *ActivityListItem) SetCreationDate(v time.Time) *ActivityListItem {
2477	s.CreationDate = &v
2478	return s
2479}
2480
2481// SetName sets the Name field's value.
2482func (s *ActivityListItem) SetName(v string) *ActivityListItem {
2483	s.Name = &v
2484	return s
2485}
2486
2487// Contains details about an activity schedule failure that occurred during
2488// an execution.
2489type ActivityScheduleFailedEventDetails struct {
2490	_ struct{} `type:"structure"`
2491
2492	// A more detailed explanation of the cause of the failure.
2493	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
2494
2495	// The error code of the failure.
2496	Error *string `locationName:"error" type:"string" sensitive:"true"`
2497}
2498
2499// String returns the string representation
2500func (s ActivityScheduleFailedEventDetails) String() string {
2501	return awsutil.Prettify(s)
2502}
2503
2504// GoString returns the string representation
2505func (s ActivityScheduleFailedEventDetails) GoString() string {
2506	return s.String()
2507}
2508
2509// SetCause sets the Cause field's value.
2510func (s *ActivityScheduleFailedEventDetails) SetCause(v string) *ActivityScheduleFailedEventDetails {
2511	s.Cause = &v
2512	return s
2513}
2514
2515// SetError sets the Error field's value.
2516func (s *ActivityScheduleFailedEventDetails) SetError(v string) *ActivityScheduleFailedEventDetails {
2517	s.Error = &v
2518	return s
2519}
2520
2521// Contains details about an activity scheduled during an execution.
2522type ActivityScheduledEventDetails struct {
2523	_ struct{} `type:"structure"`
2524
2525	// The maximum allowed duration between two heartbeats for the activity task.
2526	HeartbeatInSeconds *int64 `locationName:"heartbeatInSeconds" type:"long"`
2527
2528	// The JSON data input to the activity task.
2529	Input *string `locationName:"input" type:"string" sensitive:"true"`
2530
2531	// The Amazon Resource Name (ARN) of the scheduled activity.
2532	//
2533	// Resource is a required field
2534	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
2535
2536	// The maximum allowed duration of the activity task.
2537	TimeoutInSeconds *int64 `locationName:"timeoutInSeconds" type:"long"`
2538}
2539
2540// String returns the string representation
2541func (s ActivityScheduledEventDetails) String() string {
2542	return awsutil.Prettify(s)
2543}
2544
2545// GoString returns the string representation
2546func (s ActivityScheduledEventDetails) GoString() string {
2547	return s.String()
2548}
2549
2550// SetHeartbeatInSeconds sets the HeartbeatInSeconds field's value.
2551func (s *ActivityScheduledEventDetails) SetHeartbeatInSeconds(v int64) *ActivityScheduledEventDetails {
2552	s.HeartbeatInSeconds = &v
2553	return s
2554}
2555
2556// SetInput sets the Input field's value.
2557func (s *ActivityScheduledEventDetails) SetInput(v string) *ActivityScheduledEventDetails {
2558	s.Input = &v
2559	return s
2560}
2561
2562// SetResource sets the Resource field's value.
2563func (s *ActivityScheduledEventDetails) SetResource(v string) *ActivityScheduledEventDetails {
2564	s.Resource = &v
2565	return s
2566}
2567
2568// SetTimeoutInSeconds sets the TimeoutInSeconds field's value.
2569func (s *ActivityScheduledEventDetails) SetTimeoutInSeconds(v int64) *ActivityScheduledEventDetails {
2570	s.TimeoutInSeconds = &v
2571	return s
2572}
2573
2574// Contains details about the start of an activity during an execution.
2575type ActivityStartedEventDetails struct {
2576	_ struct{} `type:"structure"`
2577
2578	// The name of the worker that the task is assigned to. These names are provided
2579	// by the workers when calling GetActivityTask.
2580	WorkerName *string `locationName:"workerName" type:"string"`
2581}
2582
2583// String returns the string representation
2584func (s ActivityStartedEventDetails) String() string {
2585	return awsutil.Prettify(s)
2586}
2587
2588// GoString returns the string representation
2589func (s ActivityStartedEventDetails) GoString() string {
2590	return s.String()
2591}
2592
2593// SetWorkerName sets the WorkerName field's value.
2594func (s *ActivityStartedEventDetails) SetWorkerName(v string) *ActivityStartedEventDetails {
2595	s.WorkerName = &v
2596	return s
2597}
2598
2599// Contains details about an activity that successfully terminated during an
2600// execution.
2601type ActivitySucceededEventDetails struct {
2602	_ struct{} `type:"structure"`
2603
2604	// The JSON data output by the activity task.
2605	Output *string `locationName:"output" type:"string" sensitive:"true"`
2606}
2607
2608// String returns the string representation
2609func (s ActivitySucceededEventDetails) String() string {
2610	return awsutil.Prettify(s)
2611}
2612
2613// GoString returns the string representation
2614func (s ActivitySucceededEventDetails) GoString() string {
2615	return s.String()
2616}
2617
2618// SetOutput sets the Output field's value.
2619func (s *ActivitySucceededEventDetails) SetOutput(v string) *ActivitySucceededEventDetails {
2620	s.Output = &v
2621	return s
2622}
2623
2624// Contains details about an activity timeout that occurred during an execution.
2625type ActivityTimedOutEventDetails struct {
2626	_ struct{} `type:"structure"`
2627
2628	// A more detailed explanation of the cause of the timeout.
2629	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
2630
2631	// The error code of the failure.
2632	Error *string `locationName:"error" type:"string" sensitive:"true"`
2633}
2634
2635// String returns the string representation
2636func (s ActivityTimedOutEventDetails) String() string {
2637	return awsutil.Prettify(s)
2638}
2639
2640// GoString returns the string representation
2641func (s ActivityTimedOutEventDetails) GoString() string {
2642	return s.String()
2643}
2644
2645// SetCause sets the Cause field's value.
2646func (s *ActivityTimedOutEventDetails) SetCause(v string) *ActivityTimedOutEventDetails {
2647	s.Cause = &v
2648	return s
2649}
2650
2651// SetError sets the Error field's value.
2652func (s *ActivityTimedOutEventDetails) SetError(v string) *ActivityTimedOutEventDetails {
2653	s.Error = &v
2654	return s
2655}
2656
2657// The maximum number of workers concurrently polling for activity tasks has
2658// been reached.
2659type ActivityWorkerLimitExceeded struct {
2660	_            struct{} `type:"structure"`
2661	respMetadata protocol.ResponseMetadata
2662
2663	Message_ *string `locationName:"message" type:"string"`
2664}
2665
2666// String returns the string representation
2667func (s ActivityWorkerLimitExceeded) String() string {
2668	return awsutil.Prettify(s)
2669}
2670
2671// GoString returns the string representation
2672func (s ActivityWorkerLimitExceeded) GoString() string {
2673	return s.String()
2674}
2675
2676func newErrorActivityWorkerLimitExceeded(v protocol.ResponseMetadata) error {
2677	return &ActivityWorkerLimitExceeded{
2678		respMetadata: v,
2679	}
2680}
2681
2682// Code returns the exception type name.
2683func (s ActivityWorkerLimitExceeded) Code() string {
2684	return "ActivityWorkerLimitExceeded"
2685}
2686
2687// Message returns the exception's message.
2688func (s ActivityWorkerLimitExceeded) Message() string {
2689	if s.Message_ != nil {
2690		return *s.Message_
2691	}
2692	return ""
2693}
2694
2695// OrigErr always returns nil, satisfies awserr.Error interface.
2696func (s ActivityWorkerLimitExceeded) OrigErr() error {
2697	return nil
2698}
2699
2700func (s ActivityWorkerLimitExceeded) Error() string {
2701	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2702}
2703
2704// Status code returns the HTTP status code for the request's response error.
2705func (s ActivityWorkerLimitExceeded) StatusCode() int {
2706	return s.respMetadata.StatusCode
2707}
2708
2709// RequestID returns the service's response RequestID for request.
2710func (s ActivityWorkerLimitExceeded) RequestID() string {
2711	return s.respMetadata.RequestID
2712}
2713
2714type CloudWatchLogsLogGroup struct {
2715	_ struct{} `type:"structure"`
2716
2717	// The ARN of the the CloudWatch log group to which you want your logs emitted
2718	// to. The ARN must end with :*
2719	LogGroupArn *string `locationName:"logGroupArn" min:"1" type:"string"`
2720}
2721
2722// String returns the string representation
2723func (s CloudWatchLogsLogGroup) String() string {
2724	return awsutil.Prettify(s)
2725}
2726
2727// GoString returns the string representation
2728func (s CloudWatchLogsLogGroup) GoString() string {
2729	return s.String()
2730}
2731
2732// Validate inspects the fields of the type to determine if they are valid.
2733func (s *CloudWatchLogsLogGroup) Validate() error {
2734	invalidParams := request.ErrInvalidParams{Context: "CloudWatchLogsLogGroup"}
2735	if s.LogGroupArn != nil && len(*s.LogGroupArn) < 1 {
2736		invalidParams.Add(request.NewErrParamMinLen("LogGroupArn", 1))
2737	}
2738
2739	if invalidParams.Len() > 0 {
2740		return invalidParams
2741	}
2742	return nil
2743}
2744
2745// SetLogGroupArn sets the LogGroupArn field's value.
2746func (s *CloudWatchLogsLogGroup) SetLogGroupArn(v string) *CloudWatchLogsLogGroup {
2747	s.LogGroupArn = &v
2748	return s
2749}
2750
2751type CreateActivityInput struct {
2752	_ struct{} `type:"structure"`
2753
2754	// The name of the activity to create. This name must be unique for your AWS
2755	// account and region for 90 days. For more information, see Limits Related
2756	// to State Machine Executions (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html#service-limits-state-machine-executions)
2757	// in the AWS Step Functions Developer Guide.
2758	//
2759	// A name must not contain:
2760	//
2761	//    * white space
2762	//
2763	//    * brackets < > { } [ ]
2764	//
2765	//    * wildcard characters ? *
2766	//
2767	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
2768	//
2769	//    * control characters (U+0000-001F, U+007F-009F)
2770	//
2771	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
2772	// A-Z, a-z, - and _.
2773	//
2774	// Name is a required field
2775	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
2776
2777	// The list of tags to add to a resource.
2778	//
2779	// An array of key-value pairs. For more information, see Using Cost Allocation
2780	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
2781	// in the AWS Billing and Cost Management User Guide, and Controlling Access
2782	// Using IAM Tags (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html).
2783	//
2784	// Tags may only contain Unicode letters, digits, white space, or these symbols:
2785	// _ . : / = + - @.
2786	Tags []*Tag `locationName:"tags" type:"list"`
2787}
2788
2789// String returns the string representation
2790func (s CreateActivityInput) String() string {
2791	return awsutil.Prettify(s)
2792}
2793
2794// GoString returns the string representation
2795func (s CreateActivityInput) GoString() string {
2796	return s.String()
2797}
2798
2799// Validate inspects the fields of the type to determine if they are valid.
2800func (s *CreateActivityInput) Validate() error {
2801	invalidParams := request.ErrInvalidParams{Context: "CreateActivityInput"}
2802	if s.Name == nil {
2803		invalidParams.Add(request.NewErrParamRequired("Name"))
2804	}
2805	if s.Name != nil && len(*s.Name) < 1 {
2806		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
2807	}
2808	if s.Tags != nil {
2809		for i, v := range s.Tags {
2810			if v == nil {
2811				continue
2812			}
2813			if err := v.Validate(); err != nil {
2814				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
2815			}
2816		}
2817	}
2818
2819	if invalidParams.Len() > 0 {
2820		return invalidParams
2821	}
2822	return nil
2823}
2824
2825// SetName sets the Name field's value.
2826func (s *CreateActivityInput) SetName(v string) *CreateActivityInput {
2827	s.Name = &v
2828	return s
2829}
2830
2831// SetTags sets the Tags field's value.
2832func (s *CreateActivityInput) SetTags(v []*Tag) *CreateActivityInput {
2833	s.Tags = v
2834	return s
2835}
2836
2837type CreateActivityOutput struct {
2838	_ struct{} `type:"structure"`
2839
2840	// The Amazon Resource Name (ARN) that identifies the created activity.
2841	//
2842	// ActivityArn is a required field
2843	ActivityArn *string `locationName:"activityArn" min:"1" type:"string" required:"true"`
2844
2845	// The date the activity is created.
2846	//
2847	// CreationDate is a required field
2848	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" required:"true"`
2849}
2850
2851// String returns the string representation
2852func (s CreateActivityOutput) String() string {
2853	return awsutil.Prettify(s)
2854}
2855
2856// GoString returns the string representation
2857func (s CreateActivityOutput) GoString() string {
2858	return s.String()
2859}
2860
2861// SetActivityArn sets the ActivityArn field's value.
2862func (s *CreateActivityOutput) SetActivityArn(v string) *CreateActivityOutput {
2863	s.ActivityArn = &v
2864	return s
2865}
2866
2867// SetCreationDate sets the CreationDate field's value.
2868func (s *CreateActivityOutput) SetCreationDate(v time.Time) *CreateActivityOutput {
2869	s.CreationDate = &v
2870	return s
2871}
2872
2873type CreateStateMachineInput struct {
2874	_ struct{} `type:"structure"`
2875
2876	// The Amazon States Language definition of the state machine. See Amazon States
2877	// Language (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html).
2878	//
2879	// Definition is a required field
2880	Definition *string `locationName:"definition" min:"1" type:"string" required:"true" sensitive:"true"`
2881
2882	// Defines what execution history events are logged and where they are logged.
2883	//
2884	// By default, the level is set to OFF. For more information see Log Levels
2885	// (https://docs.aws.amazon.com/step-functions/latest/dg/cloudwatch-log-level.html)
2886	// in the AWS Step Functions User Guide.
2887	LoggingConfiguration *LoggingConfiguration `locationName:"loggingConfiguration" type:"structure"`
2888
2889	// The name of the state machine.
2890	//
2891	// A name must not contain:
2892	//
2893	//    * white space
2894	//
2895	//    * brackets < > { } [ ]
2896	//
2897	//    * wildcard characters ? *
2898	//
2899	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
2900	//
2901	//    * control characters (U+0000-001F, U+007F-009F)
2902	//
2903	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
2904	// A-Z, a-z, - and _.
2905	//
2906	// Name is a required field
2907	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
2908
2909	// The Amazon Resource Name (ARN) of the IAM role to use for this state machine.
2910	//
2911	// RoleArn is a required field
2912	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
2913
2914	// Tags to be added when creating a state machine.
2915	//
2916	// An array of key-value pairs. For more information, see Using Cost Allocation
2917	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
2918	// in the AWS Billing and Cost Management User Guide, and Controlling Access
2919	// Using IAM Tags (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html).
2920	//
2921	// Tags may only contain Unicode letters, digits, white space, or these symbols:
2922	// _ . : / = + - @.
2923	Tags []*Tag `locationName:"tags" type:"list"`
2924
2925	// Determines whether a Standard or Express state machine is created. The default
2926	// is STANDARD. You cannot update the type of a state machine once it has been
2927	// created.
2928	Type *string `locationName:"type" type:"string" enum:"StateMachineType"`
2929}
2930
2931// String returns the string representation
2932func (s CreateStateMachineInput) String() string {
2933	return awsutil.Prettify(s)
2934}
2935
2936// GoString returns the string representation
2937func (s CreateStateMachineInput) GoString() string {
2938	return s.String()
2939}
2940
2941// Validate inspects the fields of the type to determine if they are valid.
2942func (s *CreateStateMachineInput) Validate() error {
2943	invalidParams := request.ErrInvalidParams{Context: "CreateStateMachineInput"}
2944	if s.Definition == nil {
2945		invalidParams.Add(request.NewErrParamRequired("Definition"))
2946	}
2947	if s.Definition != nil && len(*s.Definition) < 1 {
2948		invalidParams.Add(request.NewErrParamMinLen("Definition", 1))
2949	}
2950	if s.Name == nil {
2951		invalidParams.Add(request.NewErrParamRequired("Name"))
2952	}
2953	if s.Name != nil && len(*s.Name) < 1 {
2954		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
2955	}
2956	if s.RoleArn == nil {
2957		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
2958	}
2959	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
2960		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
2961	}
2962	if s.LoggingConfiguration != nil {
2963		if err := s.LoggingConfiguration.Validate(); err != nil {
2964			invalidParams.AddNested("LoggingConfiguration", err.(request.ErrInvalidParams))
2965		}
2966	}
2967	if s.Tags != nil {
2968		for i, v := range s.Tags {
2969			if v == nil {
2970				continue
2971			}
2972			if err := v.Validate(); err != nil {
2973				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
2974			}
2975		}
2976	}
2977
2978	if invalidParams.Len() > 0 {
2979		return invalidParams
2980	}
2981	return nil
2982}
2983
2984// SetDefinition sets the Definition field's value.
2985func (s *CreateStateMachineInput) SetDefinition(v string) *CreateStateMachineInput {
2986	s.Definition = &v
2987	return s
2988}
2989
2990// SetLoggingConfiguration sets the LoggingConfiguration field's value.
2991func (s *CreateStateMachineInput) SetLoggingConfiguration(v *LoggingConfiguration) *CreateStateMachineInput {
2992	s.LoggingConfiguration = v
2993	return s
2994}
2995
2996// SetName sets the Name field's value.
2997func (s *CreateStateMachineInput) SetName(v string) *CreateStateMachineInput {
2998	s.Name = &v
2999	return s
3000}
3001
3002// SetRoleArn sets the RoleArn field's value.
3003func (s *CreateStateMachineInput) SetRoleArn(v string) *CreateStateMachineInput {
3004	s.RoleArn = &v
3005	return s
3006}
3007
3008// SetTags sets the Tags field's value.
3009func (s *CreateStateMachineInput) SetTags(v []*Tag) *CreateStateMachineInput {
3010	s.Tags = v
3011	return s
3012}
3013
3014// SetType sets the Type field's value.
3015func (s *CreateStateMachineInput) SetType(v string) *CreateStateMachineInput {
3016	s.Type = &v
3017	return s
3018}
3019
3020type CreateStateMachineOutput struct {
3021	_ struct{} `type:"structure"`
3022
3023	// The date the state machine is created.
3024	//
3025	// CreationDate is a required field
3026	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" required:"true"`
3027
3028	// The Amazon Resource Name (ARN) that identifies the created state machine.
3029	//
3030	// StateMachineArn is a required field
3031	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3032}
3033
3034// String returns the string representation
3035func (s CreateStateMachineOutput) String() string {
3036	return awsutil.Prettify(s)
3037}
3038
3039// GoString returns the string representation
3040func (s CreateStateMachineOutput) GoString() string {
3041	return s.String()
3042}
3043
3044// SetCreationDate sets the CreationDate field's value.
3045func (s *CreateStateMachineOutput) SetCreationDate(v time.Time) *CreateStateMachineOutput {
3046	s.CreationDate = &v
3047	return s
3048}
3049
3050// SetStateMachineArn sets the StateMachineArn field's value.
3051func (s *CreateStateMachineOutput) SetStateMachineArn(v string) *CreateStateMachineOutput {
3052	s.StateMachineArn = &v
3053	return s
3054}
3055
3056type DeleteActivityInput struct {
3057	_ struct{} `type:"structure"`
3058
3059	// The Amazon Resource Name (ARN) of the activity to delete.
3060	//
3061	// ActivityArn is a required field
3062	ActivityArn *string `locationName:"activityArn" min:"1" type:"string" required:"true"`
3063}
3064
3065// String returns the string representation
3066func (s DeleteActivityInput) String() string {
3067	return awsutil.Prettify(s)
3068}
3069
3070// GoString returns the string representation
3071func (s DeleteActivityInput) GoString() string {
3072	return s.String()
3073}
3074
3075// Validate inspects the fields of the type to determine if they are valid.
3076func (s *DeleteActivityInput) Validate() error {
3077	invalidParams := request.ErrInvalidParams{Context: "DeleteActivityInput"}
3078	if s.ActivityArn == nil {
3079		invalidParams.Add(request.NewErrParamRequired("ActivityArn"))
3080	}
3081	if s.ActivityArn != nil && len(*s.ActivityArn) < 1 {
3082		invalidParams.Add(request.NewErrParamMinLen("ActivityArn", 1))
3083	}
3084
3085	if invalidParams.Len() > 0 {
3086		return invalidParams
3087	}
3088	return nil
3089}
3090
3091// SetActivityArn sets the ActivityArn field's value.
3092func (s *DeleteActivityInput) SetActivityArn(v string) *DeleteActivityInput {
3093	s.ActivityArn = &v
3094	return s
3095}
3096
3097type DeleteActivityOutput struct {
3098	_ struct{} `type:"structure"`
3099}
3100
3101// String returns the string representation
3102func (s DeleteActivityOutput) String() string {
3103	return awsutil.Prettify(s)
3104}
3105
3106// GoString returns the string representation
3107func (s DeleteActivityOutput) GoString() string {
3108	return s.String()
3109}
3110
3111type DeleteStateMachineInput struct {
3112	_ struct{} `type:"structure"`
3113
3114	// The Amazon Resource Name (ARN) of the state machine to delete.
3115	//
3116	// StateMachineArn is a required field
3117	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3118}
3119
3120// String returns the string representation
3121func (s DeleteStateMachineInput) String() string {
3122	return awsutil.Prettify(s)
3123}
3124
3125// GoString returns the string representation
3126func (s DeleteStateMachineInput) GoString() string {
3127	return s.String()
3128}
3129
3130// Validate inspects the fields of the type to determine if they are valid.
3131func (s *DeleteStateMachineInput) Validate() error {
3132	invalidParams := request.ErrInvalidParams{Context: "DeleteStateMachineInput"}
3133	if s.StateMachineArn == nil {
3134		invalidParams.Add(request.NewErrParamRequired("StateMachineArn"))
3135	}
3136	if s.StateMachineArn != nil && len(*s.StateMachineArn) < 1 {
3137		invalidParams.Add(request.NewErrParamMinLen("StateMachineArn", 1))
3138	}
3139
3140	if invalidParams.Len() > 0 {
3141		return invalidParams
3142	}
3143	return nil
3144}
3145
3146// SetStateMachineArn sets the StateMachineArn field's value.
3147func (s *DeleteStateMachineInput) SetStateMachineArn(v string) *DeleteStateMachineInput {
3148	s.StateMachineArn = &v
3149	return s
3150}
3151
3152type DeleteStateMachineOutput struct {
3153	_ struct{} `type:"structure"`
3154}
3155
3156// String returns the string representation
3157func (s DeleteStateMachineOutput) String() string {
3158	return awsutil.Prettify(s)
3159}
3160
3161// GoString returns the string representation
3162func (s DeleteStateMachineOutput) GoString() string {
3163	return s.String()
3164}
3165
3166type DescribeActivityInput struct {
3167	_ struct{} `type:"structure"`
3168
3169	// The Amazon Resource Name (ARN) of the activity to describe.
3170	//
3171	// ActivityArn is a required field
3172	ActivityArn *string `locationName:"activityArn" min:"1" type:"string" required:"true"`
3173}
3174
3175// String returns the string representation
3176func (s DescribeActivityInput) String() string {
3177	return awsutil.Prettify(s)
3178}
3179
3180// GoString returns the string representation
3181func (s DescribeActivityInput) GoString() string {
3182	return s.String()
3183}
3184
3185// Validate inspects the fields of the type to determine if they are valid.
3186func (s *DescribeActivityInput) Validate() error {
3187	invalidParams := request.ErrInvalidParams{Context: "DescribeActivityInput"}
3188	if s.ActivityArn == nil {
3189		invalidParams.Add(request.NewErrParamRequired("ActivityArn"))
3190	}
3191	if s.ActivityArn != nil && len(*s.ActivityArn) < 1 {
3192		invalidParams.Add(request.NewErrParamMinLen("ActivityArn", 1))
3193	}
3194
3195	if invalidParams.Len() > 0 {
3196		return invalidParams
3197	}
3198	return nil
3199}
3200
3201// SetActivityArn sets the ActivityArn field's value.
3202func (s *DescribeActivityInput) SetActivityArn(v string) *DescribeActivityInput {
3203	s.ActivityArn = &v
3204	return s
3205}
3206
3207type DescribeActivityOutput struct {
3208	_ struct{} `type:"structure"`
3209
3210	// The Amazon Resource Name (ARN) that identifies the activity.
3211	//
3212	// ActivityArn is a required field
3213	ActivityArn *string `locationName:"activityArn" min:"1" type:"string" required:"true"`
3214
3215	// The date the activity is created.
3216	//
3217	// CreationDate is a required field
3218	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" required:"true"`
3219
3220	// The name of the activity.
3221	//
3222	// A name must not contain:
3223	//
3224	//    * white space
3225	//
3226	//    * brackets < > { } [ ]
3227	//
3228	//    * wildcard characters ? *
3229	//
3230	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
3231	//
3232	//    * control characters (U+0000-001F, U+007F-009F)
3233	//
3234	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
3235	// A-Z, a-z, - and _.
3236	//
3237	// Name is a required field
3238	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3239}
3240
3241// String returns the string representation
3242func (s DescribeActivityOutput) String() string {
3243	return awsutil.Prettify(s)
3244}
3245
3246// GoString returns the string representation
3247func (s DescribeActivityOutput) GoString() string {
3248	return s.String()
3249}
3250
3251// SetActivityArn sets the ActivityArn field's value.
3252func (s *DescribeActivityOutput) SetActivityArn(v string) *DescribeActivityOutput {
3253	s.ActivityArn = &v
3254	return s
3255}
3256
3257// SetCreationDate sets the CreationDate field's value.
3258func (s *DescribeActivityOutput) SetCreationDate(v time.Time) *DescribeActivityOutput {
3259	s.CreationDate = &v
3260	return s
3261}
3262
3263// SetName sets the Name field's value.
3264func (s *DescribeActivityOutput) SetName(v string) *DescribeActivityOutput {
3265	s.Name = &v
3266	return s
3267}
3268
3269type DescribeExecutionInput struct {
3270	_ struct{} `type:"structure"`
3271
3272	// The Amazon Resource Name (ARN) of the execution to describe.
3273	//
3274	// ExecutionArn is a required field
3275	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
3276}
3277
3278// String returns the string representation
3279func (s DescribeExecutionInput) String() string {
3280	return awsutil.Prettify(s)
3281}
3282
3283// GoString returns the string representation
3284func (s DescribeExecutionInput) GoString() string {
3285	return s.String()
3286}
3287
3288// Validate inspects the fields of the type to determine if they are valid.
3289func (s *DescribeExecutionInput) Validate() error {
3290	invalidParams := request.ErrInvalidParams{Context: "DescribeExecutionInput"}
3291	if s.ExecutionArn == nil {
3292		invalidParams.Add(request.NewErrParamRequired("ExecutionArn"))
3293	}
3294	if s.ExecutionArn != nil && len(*s.ExecutionArn) < 1 {
3295		invalidParams.Add(request.NewErrParamMinLen("ExecutionArn", 1))
3296	}
3297
3298	if invalidParams.Len() > 0 {
3299		return invalidParams
3300	}
3301	return nil
3302}
3303
3304// SetExecutionArn sets the ExecutionArn field's value.
3305func (s *DescribeExecutionInput) SetExecutionArn(v string) *DescribeExecutionInput {
3306	s.ExecutionArn = &v
3307	return s
3308}
3309
3310type DescribeExecutionOutput struct {
3311	_ struct{} `type:"structure"`
3312
3313	// The Amazon Resource Name (ARN) that id entifies the execution.
3314	//
3315	// ExecutionArn is a required field
3316	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
3317
3318	// The string that contains the JSON input data of the execution.
3319	//
3320	// Input is a required field
3321	Input *string `locationName:"input" type:"string" required:"true" sensitive:"true"`
3322
3323	// The name of the execution.
3324	//
3325	// A name must not contain:
3326	//
3327	//    * white space
3328	//
3329	//    * brackets < > { } [ ]
3330	//
3331	//    * wildcard characters ? *
3332	//
3333	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
3334	//
3335	//    * control characters (U+0000-001F, U+007F-009F)
3336	//
3337	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
3338	// A-Z, a-z, - and _.
3339	Name *string `locationName:"name" min:"1" type:"string"`
3340
3341	// The JSON output data of the execution.
3342	//
3343	// This field is set only if the execution succeeds. If the execution fails,
3344	// this field is null.
3345	Output *string `locationName:"output" type:"string" sensitive:"true"`
3346
3347	// The date the execution is started.
3348	//
3349	// StartDate is a required field
3350	StartDate *time.Time `locationName:"startDate" type:"timestamp" required:"true"`
3351
3352	// The Amazon Resource Name (ARN) of the executed stated machine.
3353	//
3354	// StateMachineArn is a required field
3355	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3356
3357	// The current status of the execution.
3358	//
3359	// Status is a required field
3360	Status *string `locationName:"status" type:"string" required:"true" enum:"ExecutionStatus"`
3361
3362	// If the execution has already ended, the date the execution stopped.
3363	StopDate *time.Time `locationName:"stopDate" type:"timestamp"`
3364}
3365
3366// String returns the string representation
3367func (s DescribeExecutionOutput) String() string {
3368	return awsutil.Prettify(s)
3369}
3370
3371// GoString returns the string representation
3372func (s DescribeExecutionOutput) GoString() string {
3373	return s.String()
3374}
3375
3376// SetExecutionArn sets the ExecutionArn field's value.
3377func (s *DescribeExecutionOutput) SetExecutionArn(v string) *DescribeExecutionOutput {
3378	s.ExecutionArn = &v
3379	return s
3380}
3381
3382// SetInput sets the Input field's value.
3383func (s *DescribeExecutionOutput) SetInput(v string) *DescribeExecutionOutput {
3384	s.Input = &v
3385	return s
3386}
3387
3388// SetName sets the Name field's value.
3389func (s *DescribeExecutionOutput) SetName(v string) *DescribeExecutionOutput {
3390	s.Name = &v
3391	return s
3392}
3393
3394// SetOutput sets the Output field's value.
3395func (s *DescribeExecutionOutput) SetOutput(v string) *DescribeExecutionOutput {
3396	s.Output = &v
3397	return s
3398}
3399
3400// SetStartDate sets the StartDate field's value.
3401func (s *DescribeExecutionOutput) SetStartDate(v time.Time) *DescribeExecutionOutput {
3402	s.StartDate = &v
3403	return s
3404}
3405
3406// SetStateMachineArn sets the StateMachineArn field's value.
3407func (s *DescribeExecutionOutput) SetStateMachineArn(v string) *DescribeExecutionOutput {
3408	s.StateMachineArn = &v
3409	return s
3410}
3411
3412// SetStatus sets the Status field's value.
3413func (s *DescribeExecutionOutput) SetStatus(v string) *DescribeExecutionOutput {
3414	s.Status = &v
3415	return s
3416}
3417
3418// SetStopDate sets the StopDate field's value.
3419func (s *DescribeExecutionOutput) SetStopDate(v time.Time) *DescribeExecutionOutput {
3420	s.StopDate = &v
3421	return s
3422}
3423
3424type DescribeStateMachineForExecutionInput struct {
3425	_ struct{} `type:"structure"`
3426
3427	// The Amazon Resource Name (ARN) of the execution you want state machine information
3428	// for.
3429	//
3430	// ExecutionArn is a required field
3431	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
3432}
3433
3434// String returns the string representation
3435func (s DescribeStateMachineForExecutionInput) String() string {
3436	return awsutil.Prettify(s)
3437}
3438
3439// GoString returns the string representation
3440func (s DescribeStateMachineForExecutionInput) GoString() string {
3441	return s.String()
3442}
3443
3444// Validate inspects the fields of the type to determine if they are valid.
3445func (s *DescribeStateMachineForExecutionInput) Validate() error {
3446	invalidParams := request.ErrInvalidParams{Context: "DescribeStateMachineForExecutionInput"}
3447	if s.ExecutionArn == nil {
3448		invalidParams.Add(request.NewErrParamRequired("ExecutionArn"))
3449	}
3450	if s.ExecutionArn != nil && len(*s.ExecutionArn) < 1 {
3451		invalidParams.Add(request.NewErrParamMinLen("ExecutionArn", 1))
3452	}
3453
3454	if invalidParams.Len() > 0 {
3455		return invalidParams
3456	}
3457	return nil
3458}
3459
3460// SetExecutionArn sets the ExecutionArn field's value.
3461func (s *DescribeStateMachineForExecutionInput) SetExecutionArn(v string) *DescribeStateMachineForExecutionInput {
3462	s.ExecutionArn = &v
3463	return s
3464}
3465
3466type DescribeStateMachineForExecutionOutput struct {
3467	_ struct{} `type:"structure"`
3468
3469	// The Amazon States Language definition of the state machine. See Amazon States
3470	// Language (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html).
3471	//
3472	// Definition is a required field
3473	Definition *string `locationName:"definition" min:"1" type:"string" required:"true" sensitive:"true"`
3474
3475	// The LoggingConfiguration data type is used to set CloudWatch Logs options.
3476	LoggingConfiguration *LoggingConfiguration `locationName:"loggingConfiguration" type:"structure"`
3477
3478	// The name of the state machine associated with the execution.
3479	//
3480	// Name is a required field
3481	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3482
3483	// The Amazon Resource Name (ARN) of the IAM role of the State Machine for the
3484	// execution.
3485	//
3486	// RoleArn is a required field
3487	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
3488
3489	// The Amazon Resource Name (ARN) of the state machine associated with the execution.
3490	//
3491	// StateMachineArn is a required field
3492	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3493
3494	// The date and time the state machine associated with an execution was updated.
3495	// For a newly created state machine, this is the creation date.
3496	//
3497	// UpdateDate is a required field
3498	UpdateDate *time.Time `locationName:"updateDate" type:"timestamp" required:"true"`
3499}
3500
3501// String returns the string representation
3502func (s DescribeStateMachineForExecutionOutput) String() string {
3503	return awsutil.Prettify(s)
3504}
3505
3506// GoString returns the string representation
3507func (s DescribeStateMachineForExecutionOutput) GoString() string {
3508	return s.String()
3509}
3510
3511// SetDefinition sets the Definition field's value.
3512func (s *DescribeStateMachineForExecutionOutput) SetDefinition(v string) *DescribeStateMachineForExecutionOutput {
3513	s.Definition = &v
3514	return s
3515}
3516
3517// SetLoggingConfiguration sets the LoggingConfiguration field's value.
3518func (s *DescribeStateMachineForExecutionOutput) SetLoggingConfiguration(v *LoggingConfiguration) *DescribeStateMachineForExecutionOutput {
3519	s.LoggingConfiguration = v
3520	return s
3521}
3522
3523// SetName sets the Name field's value.
3524func (s *DescribeStateMachineForExecutionOutput) SetName(v string) *DescribeStateMachineForExecutionOutput {
3525	s.Name = &v
3526	return s
3527}
3528
3529// SetRoleArn sets the RoleArn field's value.
3530func (s *DescribeStateMachineForExecutionOutput) SetRoleArn(v string) *DescribeStateMachineForExecutionOutput {
3531	s.RoleArn = &v
3532	return s
3533}
3534
3535// SetStateMachineArn sets the StateMachineArn field's value.
3536func (s *DescribeStateMachineForExecutionOutput) SetStateMachineArn(v string) *DescribeStateMachineForExecutionOutput {
3537	s.StateMachineArn = &v
3538	return s
3539}
3540
3541// SetUpdateDate sets the UpdateDate field's value.
3542func (s *DescribeStateMachineForExecutionOutput) SetUpdateDate(v time.Time) *DescribeStateMachineForExecutionOutput {
3543	s.UpdateDate = &v
3544	return s
3545}
3546
3547type DescribeStateMachineInput struct {
3548	_ struct{} `type:"structure"`
3549
3550	// The Amazon Resource Name (ARN) of the state machine to describe.
3551	//
3552	// StateMachineArn is a required field
3553	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3554}
3555
3556// String returns the string representation
3557func (s DescribeStateMachineInput) String() string {
3558	return awsutil.Prettify(s)
3559}
3560
3561// GoString returns the string representation
3562func (s DescribeStateMachineInput) GoString() string {
3563	return s.String()
3564}
3565
3566// Validate inspects the fields of the type to determine if they are valid.
3567func (s *DescribeStateMachineInput) Validate() error {
3568	invalidParams := request.ErrInvalidParams{Context: "DescribeStateMachineInput"}
3569	if s.StateMachineArn == nil {
3570		invalidParams.Add(request.NewErrParamRequired("StateMachineArn"))
3571	}
3572	if s.StateMachineArn != nil && len(*s.StateMachineArn) < 1 {
3573		invalidParams.Add(request.NewErrParamMinLen("StateMachineArn", 1))
3574	}
3575
3576	if invalidParams.Len() > 0 {
3577		return invalidParams
3578	}
3579	return nil
3580}
3581
3582// SetStateMachineArn sets the StateMachineArn field's value.
3583func (s *DescribeStateMachineInput) SetStateMachineArn(v string) *DescribeStateMachineInput {
3584	s.StateMachineArn = &v
3585	return s
3586}
3587
3588type DescribeStateMachineOutput struct {
3589	_ struct{} `type:"structure"`
3590
3591	// The date the state machine is created.
3592	//
3593	// CreationDate is a required field
3594	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" required:"true"`
3595
3596	// The Amazon States Language definition of the state machine. See Amazon States
3597	// Language (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html).
3598	//
3599	// Definition is a required field
3600	Definition *string `locationName:"definition" min:"1" type:"string" required:"true" sensitive:"true"`
3601
3602	// The LoggingConfiguration data type is used to set CloudWatch Logs options.
3603	LoggingConfiguration *LoggingConfiguration `locationName:"loggingConfiguration" type:"structure"`
3604
3605	// The name of the state machine.
3606	//
3607	// A name must not contain:
3608	//
3609	//    * white space
3610	//
3611	//    * brackets < > { } [ ]
3612	//
3613	//    * wildcard characters ? *
3614	//
3615	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
3616	//
3617	//    * control characters (U+0000-001F, U+007F-009F)
3618	//
3619	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
3620	// A-Z, a-z, - and _.
3621	//
3622	// Name is a required field
3623	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3624
3625	// The Amazon Resource Name (ARN) of the IAM role used when creating this state
3626	// machine. (The IAM role maintains security by granting Step Functions access
3627	// to AWS resources.)
3628	//
3629	// RoleArn is a required field
3630	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
3631
3632	// The Amazon Resource Name (ARN) that identifies the state machine.
3633	//
3634	// StateMachineArn is a required field
3635	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3636
3637	// The current status of the state machine.
3638	Status *string `locationName:"status" type:"string" enum:"StateMachineStatus"`
3639
3640	// The type of the state machine (STANDARD or EXPRESS).
3641	//
3642	// Type is a required field
3643	Type *string `locationName:"type" type:"string" required:"true" enum:"StateMachineType"`
3644}
3645
3646// String returns the string representation
3647func (s DescribeStateMachineOutput) String() string {
3648	return awsutil.Prettify(s)
3649}
3650
3651// GoString returns the string representation
3652func (s DescribeStateMachineOutput) GoString() string {
3653	return s.String()
3654}
3655
3656// SetCreationDate sets the CreationDate field's value.
3657func (s *DescribeStateMachineOutput) SetCreationDate(v time.Time) *DescribeStateMachineOutput {
3658	s.CreationDate = &v
3659	return s
3660}
3661
3662// SetDefinition sets the Definition field's value.
3663func (s *DescribeStateMachineOutput) SetDefinition(v string) *DescribeStateMachineOutput {
3664	s.Definition = &v
3665	return s
3666}
3667
3668// SetLoggingConfiguration sets the LoggingConfiguration field's value.
3669func (s *DescribeStateMachineOutput) SetLoggingConfiguration(v *LoggingConfiguration) *DescribeStateMachineOutput {
3670	s.LoggingConfiguration = v
3671	return s
3672}
3673
3674// SetName sets the Name field's value.
3675func (s *DescribeStateMachineOutput) SetName(v string) *DescribeStateMachineOutput {
3676	s.Name = &v
3677	return s
3678}
3679
3680// SetRoleArn sets the RoleArn field's value.
3681func (s *DescribeStateMachineOutput) SetRoleArn(v string) *DescribeStateMachineOutput {
3682	s.RoleArn = &v
3683	return s
3684}
3685
3686// SetStateMachineArn sets the StateMachineArn field's value.
3687func (s *DescribeStateMachineOutput) SetStateMachineArn(v string) *DescribeStateMachineOutput {
3688	s.StateMachineArn = &v
3689	return s
3690}
3691
3692// SetStatus sets the Status field's value.
3693func (s *DescribeStateMachineOutput) SetStatus(v string) *DescribeStateMachineOutput {
3694	s.Status = &v
3695	return s
3696}
3697
3698// SetType sets the Type field's value.
3699func (s *DescribeStateMachineOutput) SetType(v string) *DescribeStateMachineOutput {
3700	s.Type = &v
3701	return s
3702}
3703
3704// Contains details about an abort of an execution.
3705type ExecutionAbortedEventDetails struct {
3706	_ struct{} `type:"structure"`
3707
3708	// A more detailed explanation of the cause of the failure.
3709	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
3710
3711	// The error code of the failure.
3712	Error *string `locationName:"error" type:"string" sensitive:"true"`
3713}
3714
3715// String returns the string representation
3716func (s ExecutionAbortedEventDetails) String() string {
3717	return awsutil.Prettify(s)
3718}
3719
3720// GoString returns the string representation
3721func (s ExecutionAbortedEventDetails) GoString() string {
3722	return s.String()
3723}
3724
3725// SetCause sets the Cause field's value.
3726func (s *ExecutionAbortedEventDetails) SetCause(v string) *ExecutionAbortedEventDetails {
3727	s.Cause = &v
3728	return s
3729}
3730
3731// SetError sets the Error field's value.
3732func (s *ExecutionAbortedEventDetails) SetError(v string) *ExecutionAbortedEventDetails {
3733	s.Error = &v
3734	return s
3735}
3736
3737// The execution has the same name as another execution (but a different input).
3738//
3739// Executions with the same name and input are considered idempotent.
3740type ExecutionAlreadyExists struct {
3741	_            struct{} `type:"structure"`
3742	respMetadata protocol.ResponseMetadata
3743
3744	Message_ *string `locationName:"message" type:"string"`
3745}
3746
3747// String returns the string representation
3748func (s ExecutionAlreadyExists) String() string {
3749	return awsutil.Prettify(s)
3750}
3751
3752// GoString returns the string representation
3753func (s ExecutionAlreadyExists) GoString() string {
3754	return s.String()
3755}
3756
3757func newErrorExecutionAlreadyExists(v protocol.ResponseMetadata) error {
3758	return &ExecutionAlreadyExists{
3759		respMetadata: v,
3760	}
3761}
3762
3763// Code returns the exception type name.
3764func (s ExecutionAlreadyExists) Code() string {
3765	return "ExecutionAlreadyExists"
3766}
3767
3768// Message returns the exception's message.
3769func (s ExecutionAlreadyExists) Message() string {
3770	if s.Message_ != nil {
3771		return *s.Message_
3772	}
3773	return ""
3774}
3775
3776// OrigErr always returns nil, satisfies awserr.Error interface.
3777func (s ExecutionAlreadyExists) OrigErr() error {
3778	return nil
3779}
3780
3781func (s ExecutionAlreadyExists) Error() string {
3782	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3783}
3784
3785// Status code returns the HTTP status code for the request's response error.
3786func (s ExecutionAlreadyExists) StatusCode() int {
3787	return s.respMetadata.StatusCode
3788}
3789
3790// RequestID returns the service's response RequestID for request.
3791func (s ExecutionAlreadyExists) RequestID() string {
3792	return s.respMetadata.RequestID
3793}
3794
3795// The specified execution does not exist.
3796type ExecutionDoesNotExist struct {
3797	_            struct{} `type:"structure"`
3798	respMetadata protocol.ResponseMetadata
3799
3800	Message_ *string `locationName:"message" type:"string"`
3801}
3802
3803// String returns the string representation
3804func (s ExecutionDoesNotExist) String() string {
3805	return awsutil.Prettify(s)
3806}
3807
3808// GoString returns the string representation
3809func (s ExecutionDoesNotExist) GoString() string {
3810	return s.String()
3811}
3812
3813func newErrorExecutionDoesNotExist(v protocol.ResponseMetadata) error {
3814	return &ExecutionDoesNotExist{
3815		respMetadata: v,
3816	}
3817}
3818
3819// Code returns the exception type name.
3820func (s ExecutionDoesNotExist) Code() string {
3821	return "ExecutionDoesNotExist"
3822}
3823
3824// Message returns the exception's message.
3825func (s ExecutionDoesNotExist) Message() string {
3826	if s.Message_ != nil {
3827		return *s.Message_
3828	}
3829	return ""
3830}
3831
3832// OrigErr always returns nil, satisfies awserr.Error interface.
3833func (s ExecutionDoesNotExist) OrigErr() error {
3834	return nil
3835}
3836
3837func (s ExecutionDoesNotExist) Error() string {
3838	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3839}
3840
3841// Status code returns the HTTP status code for the request's response error.
3842func (s ExecutionDoesNotExist) StatusCode() int {
3843	return s.respMetadata.StatusCode
3844}
3845
3846// RequestID returns the service's response RequestID for request.
3847func (s ExecutionDoesNotExist) RequestID() string {
3848	return s.respMetadata.RequestID
3849}
3850
3851// Contains details about an execution failure event.
3852type ExecutionFailedEventDetails struct {
3853	_ struct{} `type:"structure"`
3854
3855	// A more detailed explanation of the cause of the failure.
3856	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
3857
3858	// The error code of the failure.
3859	Error *string `locationName:"error" type:"string" sensitive:"true"`
3860}
3861
3862// String returns the string representation
3863func (s ExecutionFailedEventDetails) String() string {
3864	return awsutil.Prettify(s)
3865}
3866
3867// GoString returns the string representation
3868func (s ExecutionFailedEventDetails) GoString() string {
3869	return s.String()
3870}
3871
3872// SetCause sets the Cause field's value.
3873func (s *ExecutionFailedEventDetails) SetCause(v string) *ExecutionFailedEventDetails {
3874	s.Cause = &v
3875	return s
3876}
3877
3878// SetError sets the Error field's value.
3879func (s *ExecutionFailedEventDetails) SetError(v string) *ExecutionFailedEventDetails {
3880	s.Error = &v
3881	return s
3882}
3883
3884// The maximum number of running executions has been reached. Running executions
3885// must end or be stopped before a new execution can be started.
3886type ExecutionLimitExceeded struct {
3887	_            struct{} `type:"structure"`
3888	respMetadata protocol.ResponseMetadata
3889
3890	Message_ *string `locationName:"message" type:"string"`
3891}
3892
3893// String returns the string representation
3894func (s ExecutionLimitExceeded) String() string {
3895	return awsutil.Prettify(s)
3896}
3897
3898// GoString returns the string representation
3899func (s ExecutionLimitExceeded) GoString() string {
3900	return s.String()
3901}
3902
3903func newErrorExecutionLimitExceeded(v protocol.ResponseMetadata) error {
3904	return &ExecutionLimitExceeded{
3905		respMetadata: v,
3906	}
3907}
3908
3909// Code returns the exception type name.
3910func (s ExecutionLimitExceeded) Code() string {
3911	return "ExecutionLimitExceeded"
3912}
3913
3914// Message returns the exception's message.
3915func (s ExecutionLimitExceeded) Message() string {
3916	if s.Message_ != nil {
3917		return *s.Message_
3918	}
3919	return ""
3920}
3921
3922// OrigErr always returns nil, satisfies awserr.Error interface.
3923func (s ExecutionLimitExceeded) OrigErr() error {
3924	return nil
3925}
3926
3927func (s ExecutionLimitExceeded) Error() string {
3928	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3929}
3930
3931// Status code returns the HTTP status code for the request's response error.
3932func (s ExecutionLimitExceeded) StatusCode() int {
3933	return s.respMetadata.StatusCode
3934}
3935
3936// RequestID returns the service's response RequestID for request.
3937func (s ExecutionLimitExceeded) RequestID() string {
3938	return s.respMetadata.RequestID
3939}
3940
3941// Contains details about an execution.
3942type ExecutionListItem struct {
3943	_ struct{} `type:"structure"`
3944
3945	// The Amazon Resource Name (ARN) that id entifies the execution.
3946	//
3947	// ExecutionArn is a required field
3948	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
3949
3950	// The name of the execution.
3951	//
3952	// A name must not contain:
3953	//
3954	//    * white space
3955	//
3956	//    * brackets < > { } [ ]
3957	//
3958	//    * wildcard characters ? *
3959	//
3960	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
3961	//
3962	//    * control characters (U+0000-001F, U+007F-009F)
3963	//
3964	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
3965	// A-Z, a-z, - and _.
3966	//
3967	// Name is a required field
3968	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3969
3970	// The date the execution started.
3971	//
3972	// StartDate is a required field
3973	StartDate *time.Time `locationName:"startDate" type:"timestamp" required:"true"`
3974
3975	// The Amazon Resource Name (ARN) of the executed state machine.
3976	//
3977	// StateMachineArn is a required field
3978	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
3979
3980	// The current status of the execution.
3981	//
3982	// Status is a required field
3983	Status *string `locationName:"status" type:"string" required:"true" enum:"ExecutionStatus"`
3984
3985	// If the execution already ended, the date the execution stopped.
3986	StopDate *time.Time `locationName:"stopDate" type:"timestamp"`
3987}
3988
3989// String returns the string representation
3990func (s ExecutionListItem) String() string {
3991	return awsutil.Prettify(s)
3992}
3993
3994// GoString returns the string representation
3995func (s ExecutionListItem) GoString() string {
3996	return s.String()
3997}
3998
3999// SetExecutionArn sets the ExecutionArn field's value.
4000func (s *ExecutionListItem) SetExecutionArn(v string) *ExecutionListItem {
4001	s.ExecutionArn = &v
4002	return s
4003}
4004
4005// SetName sets the Name field's value.
4006func (s *ExecutionListItem) SetName(v string) *ExecutionListItem {
4007	s.Name = &v
4008	return s
4009}
4010
4011// SetStartDate sets the StartDate field's value.
4012func (s *ExecutionListItem) SetStartDate(v time.Time) *ExecutionListItem {
4013	s.StartDate = &v
4014	return s
4015}
4016
4017// SetStateMachineArn sets the StateMachineArn field's value.
4018func (s *ExecutionListItem) SetStateMachineArn(v string) *ExecutionListItem {
4019	s.StateMachineArn = &v
4020	return s
4021}
4022
4023// SetStatus sets the Status field's value.
4024func (s *ExecutionListItem) SetStatus(v string) *ExecutionListItem {
4025	s.Status = &v
4026	return s
4027}
4028
4029// SetStopDate sets the StopDate field's value.
4030func (s *ExecutionListItem) SetStopDate(v time.Time) *ExecutionListItem {
4031	s.StopDate = &v
4032	return s
4033}
4034
4035// Contains details about the start of the execution.
4036type ExecutionStartedEventDetails struct {
4037	_ struct{} `type:"structure"`
4038
4039	// The JSON data input to the execution.
4040	Input *string `locationName:"input" type:"string" sensitive:"true"`
4041
4042	// The Amazon Resource Name (ARN) of the IAM role used for executing AWS Lambda
4043	// tasks.
4044	RoleArn *string `locationName:"roleArn" min:"1" type:"string"`
4045}
4046
4047// String returns the string representation
4048func (s ExecutionStartedEventDetails) String() string {
4049	return awsutil.Prettify(s)
4050}
4051
4052// GoString returns the string representation
4053func (s ExecutionStartedEventDetails) GoString() string {
4054	return s.String()
4055}
4056
4057// SetInput sets the Input field's value.
4058func (s *ExecutionStartedEventDetails) SetInput(v string) *ExecutionStartedEventDetails {
4059	s.Input = &v
4060	return s
4061}
4062
4063// SetRoleArn sets the RoleArn field's value.
4064func (s *ExecutionStartedEventDetails) SetRoleArn(v string) *ExecutionStartedEventDetails {
4065	s.RoleArn = &v
4066	return s
4067}
4068
4069// Contains details about the successful termination of the execution.
4070type ExecutionSucceededEventDetails struct {
4071	_ struct{} `type:"structure"`
4072
4073	// The JSON data output by the execution.
4074	Output *string `locationName:"output" type:"string" sensitive:"true"`
4075}
4076
4077// String returns the string representation
4078func (s ExecutionSucceededEventDetails) String() string {
4079	return awsutil.Prettify(s)
4080}
4081
4082// GoString returns the string representation
4083func (s ExecutionSucceededEventDetails) GoString() string {
4084	return s.String()
4085}
4086
4087// SetOutput sets the Output field's value.
4088func (s *ExecutionSucceededEventDetails) SetOutput(v string) *ExecutionSucceededEventDetails {
4089	s.Output = &v
4090	return s
4091}
4092
4093// Contains details about the execution timeout that occurred during the execution.
4094type ExecutionTimedOutEventDetails struct {
4095	_ struct{} `type:"structure"`
4096
4097	// A more detailed explanation of the cause of the timeout.
4098	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
4099
4100	// The error code of the failure.
4101	Error *string `locationName:"error" type:"string" sensitive:"true"`
4102}
4103
4104// String returns the string representation
4105func (s ExecutionTimedOutEventDetails) String() string {
4106	return awsutil.Prettify(s)
4107}
4108
4109// GoString returns the string representation
4110func (s ExecutionTimedOutEventDetails) GoString() string {
4111	return s.String()
4112}
4113
4114// SetCause sets the Cause field's value.
4115func (s *ExecutionTimedOutEventDetails) SetCause(v string) *ExecutionTimedOutEventDetails {
4116	s.Cause = &v
4117	return s
4118}
4119
4120// SetError sets the Error field's value.
4121func (s *ExecutionTimedOutEventDetails) SetError(v string) *ExecutionTimedOutEventDetails {
4122	s.Error = &v
4123	return s
4124}
4125
4126type GetActivityTaskInput struct {
4127	_ struct{} `type:"structure"`
4128
4129	// The Amazon Resource Name (ARN) of the activity to retrieve tasks from (assigned
4130	// when you create the task using CreateActivity.)
4131	//
4132	// ActivityArn is a required field
4133	ActivityArn *string `locationName:"activityArn" min:"1" type:"string" required:"true"`
4134
4135	// You can provide an arbitrary name in order to identify the worker that the
4136	// task is assigned to. This name is used when it is logged in the execution
4137	// history.
4138	WorkerName *string `locationName:"workerName" min:"1" type:"string"`
4139}
4140
4141// String returns the string representation
4142func (s GetActivityTaskInput) String() string {
4143	return awsutil.Prettify(s)
4144}
4145
4146// GoString returns the string representation
4147func (s GetActivityTaskInput) GoString() string {
4148	return s.String()
4149}
4150
4151// Validate inspects the fields of the type to determine if they are valid.
4152func (s *GetActivityTaskInput) Validate() error {
4153	invalidParams := request.ErrInvalidParams{Context: "GetActivityTaskInput"}
4154	if s.ActivityArn == nil {
4155		invalidParams.Add(request.NewErrParamRequired("ActivityArn"))
4156	}
4157	if s.ActivityArn != nil && len(*s.ActivityArn) < 1 {
4158		invalidParams.Add(request.NewErrParamMinLen("ActivityArn", 1))
4159	}
4160	if s.WorkerName != nil && len(*s.WorkerName) < 1 {
4161		invalidParams.Add(request.NewErrParamMinLen("WorkerName", 1))
4162	}
4163
4164	if invalidParams.Len() > 0 {
4165		return invalidParams
4166	}
4167	return nil
4168}
4169
4170// SetActivityArn sets the ActivityArn field's value.
4171func (s *GetActivityTaskInput) SetActivityArn(v string) *GetActivityTaskInput {
4172	s.ActivityArn = &v
4173	return s
4174}
4175
4176// SetWorkerName sets the WorkerName field's value.
4177func (s *GetActivityTaskInput) SetWorkerName(v string) *GetActivityTaskInput {
4178	s.WorkerName = &v
4179	return s
4180}
4181
4182type GetActivityTaskOutput struct {
4183	_ struct{} `type:"structure"`
4184
4185	// The string that contains the JSON input data for the task.
4186	Input *string `locationName:"input" type:"string" sensitive:"true"`
4187
4188	// A token that identifies the scheduled task. This token must be copied and
4189	// included in subsequent calls to SendTaskHeartbeat, SendTaskSuccess or SendTaskFailure
4190	// in order to report the progress or completion of the task.
4191	TaskToken *string `locationName:"taskToken" min:"1" type:"string"`
4192}
4193
4194// String returns the string representation
4195func (s GetActivityTaskOutput) String() string {
4196	return awsutil.Prettify(s)
4197}
4198
4199// GoString returns the string representation
4200func (s GetActivityTaskOutput) GoString() string {
4201	return s.String()
4202}
4203
4204// SetInput sets the Input field's value.
4205func (s *GetActivityTaskOutput) SetInput(v string) *GetActivityTaskOutput {
4206	s.Input = &v
4207	return s
4208}
4209
4210// SetTaskToken sets the TaskToken field's value.
4211func (s *GetActivityTaskOutput) SetTaskToken(v string) *GetActivityTaskOutput {
4212	s.TaskToken = &v
4213	return s
4214}
4215
4216type GetExecutionHistoryInput struct {
4217	_ struct{} `type:"structure"`
4218
4219	// The Amazon Resource Name (ARN) of the execution.
4220	//
4221	// ExecutionArn is a required field
4222	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
4223
4224	// The maximum number of results that are returned per call. You can use nextToken
4225	// to obtain further pages of results. The default is 100 and the maximum allowed
4226	// page size is 1000. A value of 0 uses the default.
4227	//
4228	// This is only an upper limit. The actual number of results returned per call
4229	// might be fewer than the specified maximum.
4230	MaxResults *int64 `locationName:"maxResults" type:"integer"`
4231
4232	// If nextToken is returned, there are more results available. The value of
4233	// nextToken is a unique pagination token for each page. Make the call again
4234	// using the returned token to retrieve the next page. Keep all other arguments
4235	// unchanged. Each pagination token expires after 24 hours. Using an expired
4236	// pagination token will return an HTTP 400 InvalidToken error.
4237	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
4238
4239	// Lists events in descending order of their timeStamp.
4240	ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"`
4241}
4242
4243// String returns the string representation
4244func (s GetExecutionHistoryInput) String() string {
4245	return awsutil.Prettify(s)
4246}
4247
4248// GoString returns the string representation
4249func (s GetExecutionHistoryInput) GoString() string {
4250	return s.String()
4251}
4252
4253// Validate inspects the fields of the type to determine if they are valid.
4254func (s *GetExecutionHistoryInput) Validate() error {
4255	invalidParams := request.ErrInvalidParams{Context: "GetExecutionHistoryInput"}
4256	if s.ExecutionArn == nil {
4257		invalidParams.Add(request.NewErrParamRequired("ExecutionArn"))
4258	}
4259	if s.ExecutionArn != nil && len(*s.ExecutionArn) < 1 {
4260		invalidParams.Add(request.NewErrParamMinLen("ExecutionArn", 1))
4261	}
4262	if s.NextToken != nil && len(*s.NextToken) < 1 {
4263		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
4264	}
4265
4266	if invalidParams.Len() > 0 {
4267		return invalidParams
4268	}
4269	return nil
4270}
4271
4272// SetExecutionArn sets the ExecutionArn field's value.
4273func (s *GetExecutionHistoryInput) SetExecutionArn(v string) *GetExecutionHistoryInput {
4274	s.ExecutionArn = &v
4275	return s
4276}
4277
4278// SetMaxResults sets the MaxResults field's value.
4279func (s *GetExecutionHistoryInput) SetMaxResults(v int64) *GetExecutionHistoryInput {
4280	s.MaxResults = &v
4281	return s
4282}
4283
4284// SetNextToken sets the NextToken field's value.
4285func (s *GetExecutionHistoryInput) SetNextToken(v string) *GetExecutionHistoryInput {
4286	s.NextToken = &v
4287	return s
4288}
4289
4290// SetReverseOrder sets the ReverseOrder field's value.
4291func (s *GetExecutionHistoryInput) SetReverseOrder(v bool) *GetExecutionHistoryInput {
4292	s.ReverseOrder = &v
4293	return s
4294}
4295
4296type GetExecutionHistoryOutput struct {
4297	_ struct{} `type:"structure"`
4298
4299	// The list of events that occurred in the execution.
4300	//
4301	// Events is a required field
4302	Events []*HistoryEvent `locationName:"events" type:"list" required:"true"`
4303
4304	// If nextToken is returned, there are more results available. The value of
4305	// nextToken is a unique pagination token for each page. Make the call again
4306	// using the returned token to retrieve the next page. Keep all other arguments
4307	// unchanged. Each pagination token expires after 24 hours. Using an expired
4308	// pagination token will return an HTTP 400 InvalidToken error.
4309	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
4310}
4311
4312// String returns the string representation
4313func (s GetExecutionHistoryOutput) String() string {
4314	return awsutil.Prettify(s)
4315}
4316
4317// GoString returns the string representation
4318func (s GetExecutionHistoryOutput) GoString() string {
4319	return s.String()
4320}
4321
4322// SetEvents sets the Events field's value.
4323func (s *GetExecutionHistoryOutput) SetEvents(v []*HistoryEvent) *GetExecutionHistoryOutput {
4324	s.Events = v
4325	return s
4326}
4327
4328// SetNextToken sets the NextToken field's value.
4329func (s *GetExecutionHistoryOutput) SetNextToken(v string) *GetExecutionHistoryOutput {
4330	s.NextToken = &v
4331	return s
4332}
4333
4334// Contains details about the events of an execution.
4335type HistoryEvent struct {
4336	_ struct{} `type:"structure"`
4337
4338	// Contains details about an activity that failed during an execution.
4339	ActivityFailedEventDetails *ActivityFailedEventDetails `locationName:"activityFailedEventDetails" type:"structure"`
4340
4341	// Contains details about an activity schedule event that failed during an execution.
4342	ActivityScheduleFailedEventDetails *ActivityScheduleFailedEventDetails `locationName:"activityScheduleFailedEventDetails" type:"structure"`
4343
4344	// Contains details about an activity scheduled during an execution.
4345	ActivityScheduledEventDetails *ActivityScheduledEventDetails `locationName:"activityScheduledEventDetails" type:"structure"`
4346
4347	// Contains details about the start of an activity during an execution.
4348	ActivityStartedEventDetails *ActivityStartedEventDetails `locationName:"activityStartedEventDetails" type:"structure"`
4349
4350	// Contains details about an activity that successfully terminated during an
4351	// execution.
4352	ActivitySucceededEventDetails *ActivitySucceededEventDetails `locationName:"activitySucceededEventDetails" type:"structure"`
4353
4354	// Contains details about an activity timeout that occurred during an execution.
4355	ActivityTimedOutEventDetails *ActivityTimedOutEventDetails `locationName:"activityTimedOutEventDetails" type:"structure"`
4356
4357	// Contains details about an abort of an execution.
4358	ExecutionAbortedEventDetails *ExecutionAbortedEventDetails `locationName:"executionAbortedEventDetails" type:"structure"`
4359
4360	// Contains details about an execution failure event.
4361	ExecutionFailedEventDetails *ExecutionFailedEventDetails `locationName:"executionFailedEventDetails" type:"structure"`
4362
4363	// Contains details about the start of the execution.
4364	ExecutionStartedEventDetails *ExecutionStartedEventDetails `locationName:"executionStartedEventDetails" type:"structure"`
4365
4366	// Contains details about the successful termination of the execution.
4367	ExecutionSucceededEventDetails *ExecutionSucceededEventDetails `locationName:"executionSucceededEventDetails" type:"structure"`
4368
4369	// Contains details about the execution timeout that occurred during the execution.
4370	ExecutionTimedOutEventDetails *ExecutionTimedOutEventDetails `locationName:"executionTimedOutEventDetails" type:"structure"`
4371
4372	// The id of the event. Events are numbered sequentially, starting at one.
4373	//
4374	// Id is a required field
4375	Id *int64 `locationName:"id" type:"long" required:"true"`
4376
4377	// Contains details about a lambda function that failed during an execution.
4378	LambdaFunctionFailedEventDetails *LambdaFunctionFailedEventDetails `locationName:"lambdaFunctionFailedEventDetails" type:"structure"`
4379
4380	// Contains details about a failed lambda function schedule event that occurred
4381	// during an execution.
4382	LambdaFunctionScheduleFailedEventDetails *LambdaFunctionScheduleFailedEventDetails `locationName:"lambdaFunctionScheduleFailedEventDetails" type:"structure"`
4383
4384	// Contains details about a lambda function scheduled during an execution.
4385	LambdaFunctionScheduledEventDetails *LambdaFunctionScheduledEventDetails `locationName:"lambdaFunctionScheduledEventDetails" type:"structure"`
4386
4387	// Contains details about a lambda function that failed to start during an execution.
4388	LambdaFunctionStartFailedEventDetails *LambdaFunctionStartFailedEventDetails `locationName:"lambdaFunctionStartFailedEventDetails" type:"structure"`
4389
4390	// Contains details about a lambda function that terminated successfully during
4391	// an execution.
4392	LambdaFunctionSucceededEventDetails *LambdaFunctionSucceededEventDetails `locationName:"lambdaFunctionSucceededEventDetails" type:"structure"`
4393
4394	// Contains details about a lambda function timeout that occurred during an
4395	// execution.
4396	LambdaFunctionTimedOutEventDetails *LambdaFunctionTimedOutEventDetails `locationName:"lambdaFunctionTimedOutEventDetails" type:"structure"`
4397
4398	// Contains details about an iteration of a Map state that was aborted.
4399	MapIterationAbortedEventDetails *MapIterationEventDetails `locationName:"mapIterationAbortedEventDetails" type:"structure"`
4400
4401	// Contains details about an iteration of a Map state that failed.
4402	MapIterationFailedEventDetails *MapIterationEventDetails `locationName:"mapIterationFailedEventDetails" type:"structure"`
4403
4404	// Contains details about an iteration of a Map state that was started.
4405	MapIterationStartedEventDetails *MapIterationEventDetails `locationName:"mapIterationStartedEventDetails" type:"structure"`
4406
4407	// Contains details about an iteration of a Map state that succeeded.
4408	MapIterationSucceededEventDetails *MapIterationEventDetails `locationName:"mapIterationSucceededEventDetails" type:"structure"`
4409
4410	// Contains details about Map state that was started.
4411	MapStateStartedEventDetails *MapStateStartedEventDetails `locationName:"mapStateStartedEventDetails" type:"structure"`
4412
4413	// The id of the previous event.
4414	PreviousEventId *int64 `locationName:"previousEventId" type:"long"`
4415
4416	// Contains details about a state entered during an execution.
4417	StateEnteredEventDetails *StateEnteredEventDetails `locationName:"stateEnteredEventDetails" type:"structure"`
4418
4419	// Contains details about an exit from a state during an execution.
4420	StateExitedEventDetails *StateExitedEventDetails `locationName:"stateExitedEventDetails" type:"structure"`
4421
4422	// Contains details about the failure of a task.
4423	TaskFailedEventDetails *TaskFailedEventDetails `locationName:"taskFailedEventDetails" type:"structure"`
4424
4425	// Contains details about a task that was scheduled.
4426	TaskScheduledEventDetails *TaskScheduledEventDetails `locationName:"taskScheduledEventDetails" type:"structure"`
4427
4428	// Contains details about a task that failed to start.
4429	TaskStartFailedEventDetails *TaskStartFailedEventDetails `locationName:"taskStartFailedEventDetails" type:"structure"`
4430
4431	// Contains details about a task that was started.
4432	TaskStartedEventDetails *TaskStartedEventDetails `locationName:"taskStartedEventDetails" type:"structure"`
4433
4434	// Contains details about a task that where the submit failed.
4435	TaskSubmitFailedEventDetails *TaskSubmitFailedEventDetails `locationName:"taskSubmitFailedEventDetails" type:"structure"`
4436
4437	// Contains details about a submitted task.
4438	TaskSubmittedEventDetails *TaskSubmittedEventDetails `locationName:"taskSubmittedEventDetails" type:"structure"`
4439
4440	// Contains details about a task that succeeded.
4441	TaskSucceededEventDetails *TaskSucceededEventDetails `locationName:"taskSucceededEventDetails" type:"structure"`
4442
4443	// Contains details about a task that timed out.
4444	TaskTimedOutEventDetails *TaskTimedOutEventDetails `locationName:"taskTimedOutEventDetails" type:"structure"`
4445
4446	// The date and time the event occurred.
4447	//
4448	// Timestamp is a required field
4449	Timestamp *time.Time `locationName:"timestamp" type:"timestamp" required:"true"`
4450
4451	// The type of the event.
4452	//
4453	// Type is a required field
4454	Type *string `locationName:"type" type:"string" required:"true" enum:"HistoryEventType"`
4455}
4456
4457// String returns the string representation
4458func (s HistoryEvent) String() string {
4459	return awsutil.Prettify(s)
4460}
4461
4462// GoString returns the string representation
4463func (s HistoryEvent) GoString() string {
4464	return s.String()
4465}
4466
4467// SetActivityFailedEventDetails sets the ActivityFailedEventDetails field's value.
4468func (s *HistoryEvent) SetActivityFailedEventDetails(v *ActivityFailedEventDetails) *HistoryEvent {
4469	s.ActivityFailedEventDetails = v
4470	return s
4471}
4472
4473// SetActivityScheduleFailedEventDetails sets the ActivityScheduleFailedEventDetails field's value.
4474func (s *HistoryEvent) SetActivityScheduleFailedEventDetails(v *ActivityScheduleFailedEventDetails) *HistoryEvent {
4475	s.ActivityScheduleFailedEventDetails = v
4476	return s
4477}
4478
4479// SetActivityScheduledEventDetails sets the ActivityScheduledEventDetails field's value.
4480func (s *HistoryEvent) SetActivityScheduledEventDetails(v *ActivityScheduledEventDetails) *HistoryEvent {
4481	s.ActivityScheduledEventDetails = v
4482	return s
4483}
4484
4485// SetActivityStartedEventDetails sets the ActivityStartedEventDetails field's value.
4486func (s *HistoryEvent) SetActivityStartedEventDetails(v *ActivityStartedEventDetails) *HistoryEvent {
4487	s.ActivityStartedEventDetails = v
4488	return s
4489}
4490
4491// SetActivitySucceededEventDetails sets the ActivitySucceededEventDetails field's value.
4492func (s *HistoryEvent) SetActivitySucceededEventDetails(v *ActivitySucceededEventDetails) *HistoryEvent {
4493	s.ActivitySucceededEventDetails = v
4494	return s
4495}
4496
4497// SetActivityTimedOutEventDetails sets the ActivityTimedOutEventDetails field's value.
4498func (s *HistoryEvent) SetActivityTimedOutEventDetails(v *ActivityTimedOutEventDetails) *HistoryEvent {
4499	s.ActivityTimedOutEventDetails = v
4500	return s
4501}
4502
4503// SetExecutionAbortedEventDetails sets the ExecutionAbortedEventDetails field's value.
4504func (s *HistoryEvent) SetExecutionAbortedEventDetails(v *ExecutionAbortedEventDetails) *HistoryEvent {
4505	s.ExecutionAbortedEventDetails = v
4506	return s
4507}
4508
4509// SetExecutionFailedEventDetails sets the ExecutionFailedEventDetails field's value.
4510func (s *HistoryEvent) SetExecutionFailedEventDetails(v *ExecutionFailedEventDetails) *HistoryEvent {
4511	s.ExecutionFailedEventDetails = v
4512	return s
4513}
4514
4515// SetExecutionStartedEventDetails sets the ExecutionStartedEventDetails field's value.
4516func (s *HistoryEvent) SetExecutionStartedEventDetails(v *ExecutionStartedEventDetails) *HistoryEvent {
4517	s.ExecutionStartedEventDetails = v
4518	return s
4519}
4520
4521// SetExecutionSucceededEventDetails sets the ExecutionSucceededEventDetails field's value.
4522func (s *HistoryEvent) SetExecutionSucceededEventDetails(v *ExecutionSucceededEventDetails) *HistoryEvent {
4523	s.ExecutionSucceededEventDetails = v
4524	return s
4525}
4526
4527// SetExecutionTimedOutEventDetails sets the ExecutionTimedOutEventDetails field's value.
4528func (s *HistoryEvent) SetExecutionTimedOutEventDetails(v *ExecutionTimedOutEventDetails) *HistoryEvent {
4529	s.ExecutionTimedOutEventDetails = v
4530	return s
4531}
4532
4533// SetId sets the Id field's value.
4534func (s *HistoryEvent) SetId(v int64) *HistoryEvent {
4535	s.Id = &v
4536	return s
4537}
4538
4539// SetLambdaFunctionFailedEventDetails sets the LambdaFunctionFailedEventDetails field's value.
4540func (s *HistoryEvent) SetLambdaFunctionFailedEventDetails(v *LambdaFunctionFailedEventDetails) *HistoryEvent {
4541	s.LambdaFunctionFailedEventDetails = v
4542	return s
4543}
4544
4545// SetLambdaFunctionScheduleFailedEventDetails sets the LambdaFunctionScheduleFailedEventDetails field's value.
4546func (s *HistoryEvent) SetLambdaFunctionScheduleFailedEventDetails(v *LambdaFunctionScheduleFailedEventDetails) *HistoryEvent {
4547	s.LambdaFunctionScheduleFailedEventDetails = v
4548	return s
4549}
4550
4551// SetLambdaFunctionScheduledEventDetails sets the LambdaFunctionScheduledEventDetails field's value.
4552func (s *HistoryEvent) SetLambdaFunctionScheduledEventDetails(v *LambdaFunctionScheduledEventDetails) *HistoryEvent {
4553	s.LambdaFunctionScheduledEventDetails = v
4554	return s
4555}
4556
4557// SetLambdaFunctionStartFailedEventDetails sets the LambdaFunctionStartFailedEventDetails field's value.
4558func (s *HistoryEvent) SetLambdaFunctionStartFailedEventDetails(v *LambdaFunctionStartFailedEventDetails) *HistoryEvent {
4559	s.LambdaFunctionStartFailedEventDetails = v
4560	return s
4561}
4562
4563// SetLambdaFunctionSucceededEventDetails sets the LambdaFunctionSucceededEventDetails field's value.
4564func (s *HistoryEvent) SetLambdaFunctionSucceededEventDetails(v *LambdaFunctionSucceededEventDetails) *HistoryEvent {
4565	s.LambdaFunctionSucceededEventDetails = v
4566	return s
4567}
4568
4569// SetLambdaFunctionTimedOutEventDetails sets the LambdaFunctionTimedOutEventDetails field's value.
4570func (s *HistoryEvent) SetLambdaFunctionTimedOutEventDetails(v *LambdaFunctionTimedOutEventDetails) *HistoryEvent {
4571	s.LambdaFunctionTimedOutEventDetails = v
4572	return s
4573}
4574
4575// SetMapIterationAbortedEventDetails sets the MapIterationAbortedEventDetails field's value.
4576func (s *HistoryEvent) SetMapIterationAbortedEventDetails(v *MapIterationEventDetails) *HistoryEvent {
4577	s.MapIterationAbortedEventDetails = v
4578	return s
4579}
4580
4581// SetMapIterationFailedEventDetails sets the MapIterationFailedEventDetails field's value.
4582func (s *HistoryEvent) SetMapIterationFailedEventDetails(v *MapIterationEventDetails) *HistoryEvent {
4583	s.MapIterationFailedEventDetails = v
4584	return s
4585}
4586
4587// SetMapIterationStartedEventDetails sets the MapIterationStartedEventDetails field's value.
4588func (s *HistoryEvent) SetMapIterationStartedEventDetails(v *MapIterationEventDetails) *HistoryEvent {
4589	s.MapIterationStartedEventDetails = v
4590	return s
4591}
4592
4593// SetMapIterationSucceededEventDetails sets the MapIterationSucceededEventDetails field's value.
4594func (s *HistoryEvent) SetMapIterationSucceededEventDetails(v *MapIterationEventDetails) *HistoryEvent {
4595	s.MapIterationSucceededEventDetails = v
4596	return s
4597}
4598
4599// SetMapStateStartedEventDetails sets the MapStateStartedEventDetails field's value.
4600func (s *HistoryEvent) SetMapStateStartedEventDetails(v *MapStateStartedEventDetails) *HistoryEvent {
4601	s.MapStateStartedEventDetails = v
4602	return s
4603}
4604
4605// SetPreviousEventId sets the PreviousEventId field's value.
4606func (s *HistoryEvent) SetPreviousEventId(v int64) *HistoryEvent {
4607	s.PreviousEventId = &v
4608	return s
4609}
4610
4611// SetStateEnteredEventDetails sets the StateEnteredEventDetails field's value.
4612func (s *HistoryEvent) SetStateEnteredEventDetails(v *StateEnteredEventDetails) *HistoryEvent {
4613	s.StateEnteredEventDetails = v
4614	return s
4615}
4616
4617// SetStateExitedEventDetails sets the StateExitedEventDetails field's value.
4618func (s *HistoryEvent) SetStateExitedEventDetails(v *StateExitedEventDetails) *HistoryEvent {
4619	s.StateExitedEventDetails = v
4620	return s
4621}
4622
4623// SetTaskFailedEventDetails sets the TaskFailedEventDetails field's value.
4624func (s *HistoryEvent) SetTaskFailedEventDetails(v *TaskFailedEventDetails) *HistoryEvent {
4625	s.TaskFailedEventDetails = v
4626	return s
4627}
4628
4629// SetTaskScheduledEventDetails sets the TaskScheduledEventDetails field's value.
4630func (s *HistoryEvent) SetTaskScheduledEventDetails(v *TaskScheduledEventDetails) *HistoryEvent {
4631	s.TaskScheduledEventDetails = v
4632	return s
4633}
4634
4635// SetTaskStartFailedEventDetails sets the TaskStartFailedEventDetails field's value.
4636func (s *HistoryEvent) SetTaskStartFailedEventDetails(v *TaskStartFailedEventDetails) *HistoryEvent {
4637	s.TaskStartFailedEventDetails = v
4638	return s
4639}
4640
4641// SetTaskStartedEventDetails sets the TaskStartedEventDetails field's value.
4642func (s *HistoryEvent) SetTaskStartedEventDetails(v *TaskStartedEventDetails) *HistoryEvent {
4643	s.TaskStartedEventDetails = v
4644	return s
4645}
4646
4647// SetTaskSubmitFailedEventDetails sets the TaskSubmitFailedEventDetails field's value.
4648func (s *HistoryEvent) SetTaskSubmitFailedEventDetails(v *TaskSubmitFailedEventDetails) *HistoryEvent {
4649	s.TaskSubmitFailedEventDetails = v
4650	return s
4651}
4652
4653// SetTaskSubmittedEventDetails sets the TaskSubmittedEventDetails field's value.
4654func (s *HistoryEvent) SetTaskSubmittedEventDetails(v *TaskSubmittedEventDetails) *HistoryEvent {
4655	s.TaskSubmittedEventDetails = v
4656	return s
4657}
4658
4659// SetTaskSucceededEventDetails sets the TaskSucceededEventDetails field's value.
4660func (s *HistoryEvent) SetTaskSucceededEventDetails(v *TaskSucceededEventDetails) *HistoryEvent {
4661	s.TaskSucceededEventDetails = v
4662	return s
4663}
4664
4665// SetTaskTimedOutEventDetails sets the TaskTimedOutEventDetails field's value.
4666func (s *HistoryEvent) SetTaskTimedOutEventDetails(v *TaskTimedOutEventDetails) *HistoryEvent {
4667	s.TaskTimedOutEventDetails = v
4668	return s
4669}
4670
4671// SetTimestamp sets the Timestamp field's value.
4672func (s *HistoryEvent) SetTimestamp(v time.Time) *HistoryEvent {
4673	s.Timestamp = &v
4674	return s
4675}
4676
4677// SetType sets the Type field's value.
4678func (s *HistoryEvent) SetType(v string) *HistoryEvent {
4679	s.Type = &v
4680	return s
4681}
4682
4683// The provided Amazon Resource Name (ARN) is invalid.
4684type InvalidArn struct {
4685	_            struct{} `type:"structure"`
4686	respMetadata protocol.ResponseMetadata
4687
4688	Message_ *string `locationName:"message" type:"string"`
4689}
4690
4691// String returns the string representation
4692func (s InvalidArn) String() string {
4693	return awsutil.Prettify(s)
4694}
4695
4696// GoString returns the string representation
4697func (s InvalidArn) GoString() string {
4698	return s.String()
4699}
4700
4701func newErrorInvalidArn(v protocol.ResponseMetadata) error {
4702	return &InvalidArn{
4703		respMetadata: v,
4704	}
4705}
4706
4707// Code returns the exception type name.
4708func (s InvalidArn) Code() string {
4709	return "InvalidArn"
4710}
4711
4712// Message returns the exception's message.
4713func (s InvalidArn) Message() string {
4714	if s.Message_ != nil {
4715		return *s.Message_
4716	}
4717	return ""
4718}
4719
4720// OrigErr always returns nil, satisfies awserr.Error interface.
4721func (s InvalidArn) OrigErr() error {
4722	return nil
4723}
4724
4725func (s InvalidArn) Error() string {
4726	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4727}
4728
4729// Status code returns the HTTP status code for the request's response error.
4730func (s InvalidArn) StatusCode() int {
4731	return s.respMetadata.StatusCode
4732}
4733
4734// RequestID returns the service's response RequestID for request.
4735func (s InvalidArn) RequestID() string {
4736	return s.respMetadata.RequestID
4737}
4738
4739// The provided Amazon States Language definition is invalid.
4740type InvalidDefinition struct {
4741	_            struct{} `type:"structure"`
4742	respMetadata protocol.ResponseMetadata
4743
4744	Message_ *string `locationName:"message" type:"string"`
4745}
4746
4747// String returns the string representation
4748func (s InvalidDefinition) String() string {
4749	return awsutil.Prettify(s)
4750}
4751
4752// GoString returns the string representation
4753func (s InvalidDefinition) GoString() string {
4754	return s.String()
4755}
4756
4757func newErrorInvalidDefinition(v protocol.ResponseMetadata) error {
4758	return &InvalidDefinition{
4759		respMetadata: v,
4760	}
4761}
4762
4763// Code returns the exception type name.
4764func (s InvalidDefinition) Code() string {
4765	return "InvalidDefinition"
4766}
4767
4768// Message returns the exception's message.
4769func (s InvalidDefinition) Message() string {
4770	if s.Message_ != nil {
4771		return *s.Message_
4772	}
4773	return ""
4774}
4775
4776// OrigErr always returns nil, satisfies awserr.Error interface.
4777func (s InvalidDefinition) OrigErr() error {
4778	return nil
4779}
4780
4781func (s InvalidDefinition) Error() string {
4782	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4783}
4784
4785// Status code returns the HTTP status code for the request's response error.
4786func (s InvalidDefinition) StatusCode() int {
4787	return s.respMetadata.StatusCode
4788}
4789
4790// RequestID returns the service's response RequestID for request.
4791func (s InvalidDefinition) RequestID() string {
4792	return s.respMetadata.RequestID
4793}
4794
4795// The provided JSON input data is invalid.
4796type InvalidExecutionInput struct {
4797	_            struct{} `type:"structure"`
4798	respMetadata protocol.ResponseMetadata
4799
4800	Message_ *string `locationName:"message" type:"string"`
4801}
4802
4803// String returns the string representation
4804func (s InvalidExecutionInput) String() string {
4805	return awsutil.Prettify(s)
4806}
4807
4808// GoString returns the string representation
4809func (s InvalidExecutionInput) GoString() string {
4810	return s.String()
4811}
4812
4813func newErrorInvalidExecutionInput(v protocol.ResponseMetadata) error {
4814	return &InvalidExecutionInput{
4815		respMetadata: v,
4816	}
4817}
4818
4819// Code returns the exception type name.
4820func (s InvalidExecutionInput) Code() string {
4821	return "InvalidExecutionInput"
4822}
4823
4824// Message returns the exception's message.
4825func (s InvalidExecutionInput) Message() string {
4826	if s.Message_ != nil {
4827		return *s.Message_
4828	}
4829	return ""
4830}
4831
4832// OrigErr always returns nil, satisfies awserr.Error interface.
4833func (s InvalidExecutionInput) OrigErr() error {
4834	return nil
4835}
4836
4837func (s InvalidExecutionInput) Error() string {
4838	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4839}
4840
4841// Status code returns the HTTP status code for the request's response error.
4842func (s InvalidExecutionInput) StatusCode() int {
4843	return s.respMetadata.StatusCode
4844}
4845
4846// RequestID returns the service's response RequestID for request.
4847func (s InvalidExecutionInput) RequestID() string {
4848	return s.respMetadata.RequestID
4849}
4850
4851type InvalidLoggingConfiguration struct {
4852	_            struct{} `type:"structure"`
4853	respMetadata protocol.ResponseMetadata
4854
4855	Message_ *string `locationName:"message" type:"string"`
4856}
4857
4858// String returns the string representation
4859func (s InvalidLoggingConfiguration) String() string {
4860	return awsutil.Prettify(s)
4861}
4862
4863// GoString returns the string representation
4864func (s InvalidLoggingConfiguration) GoString() string {
4865	return s.String()
4866}
4867
4868func newErrorInvalidLoggingConfiguration(v protocol.ResponseMetadata) error {
4869	return &InvalidLoggingConfiguration{
4870		respMetadata: v,
4871	}
4872}
4873
4874// Code returns the exception type name.
4875func (s InvalidLoggingConfiguration) Code() string {
4876	return "InvalidLoggingConfiguration"
4877}
4878
4879// Message returns the exception's message.
4880func (s InvalidLoggingConfiguration) Message() string {
4881	if s.Message_ != nil {
4882		return *s.Message_
4883	}
4884	return ""
4885}
4886
4887// OrigErr always returns nil, satisfies awserr.Error interface.
4888func (s InvalidLoggingConfiguration) OrigErr() error {
4889	return nil
4890}
4891
4892func (s InvalidLoggingConfiguration) Error() string {
4893	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4894}
4895
4896// Status code returns the HTTP status code for the request's response error.
4897func (s InvalidLoggingConfiguration) StatusCode() int {
4898	return s.respMetadata.StatusCode
4899}
4900
4901// RequestID returns the service's response RequestID for request.
4902func (s InvalidLoggingConfiguration) RequestID() string {
4903	return s.respMetadata.RequestID
4904}
4905
4906// The provided name is invalid.
4907type InvalidName struct {
4908	_            struct{} `type:"structure"`
4909	respMetadata protocol.ResponseMetadata
4910
4911	Message_ *string `locationName:"message" type:"string"`
4912}
4913
4914// String returns the string representation
4915func (s InvalidName) String() string {
4916	return awsutil.Prettify(s)
4917}
4918
4919// GoString returns the string representation
4920func (s InvalidName) GoString() string {
4921	return s.String()
4922}
4923
4924func newErrorInvalidName(v protocol.ResponseMetadata) error {
4925	return &InvalidName{
4926		respMetadata: v,
4927	}
4928}
4929
4930// Code returns the exception type name.
4931func (s InvalidName) Code() string {
4932	return "InvalidName"
4933}
4934
4935// Message returns the exception's message.
4936func (s InvalidName) Message() string {
4937	if s.Message_ != nil {
4938		return *s.Message_
4939	}
4940	return ""
4941}
4942
4943// OrigErr always returns nil, satisfies awserr.Error interface.
4944func (s InvalidName) OrigErr() error {
4945	return nil
4946}
4947
4948func (s InvalidName) Error() string {
4949	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4950}
4951
4952// Status code returns the HTTP status code for the request's response error.
4953func (s InvalidName) StatusCode() int {
4954	return s.respMetadata.StatusCode
4955}
4956
4957// RequestID returns the service's response RequestID for request.
4958func (s InvalidName) RequestID() string {
4959	return s.respMetadata.RequestID
4960}
4961
4962// The provided JSON output data is invalid.
4963type InvalidOutput struct {
4964	_            struct{} `type:"structure"`
4965	respMetadata protocol.ResponseMetadata
4966
4967	Message_ *string `locationName:"message" type:"string"`
4968}
4969
4970// String returns the string representation
4971func (s InvalidOutput) String() string {
4972	return awsutil.Prettify(s)
4973}
4974
4975// GoString returns the string representation
4976func (s InvalidOutput) GoString() string {
4977	return s.String()
4978}
4979
4980func newErrorInvalidOutput(v protocol.ResponseMetadata) error {
4981	return &InvalidOutput{
4982		respMetadata: v,
4983	}
4984}
4985
4986// Code returns the exception type name.
4987func (s InvalidOutput) Code() string {
4988	return "InvalidOutput"
4989}
4990
4991// Message returns the exception's message.
4992func (s InvalidOutput) Message() string {
4993	if s.Message_ != nil {
4994		return *s.Message_
4995	}
4996	return ""
4997}
4998
4999// OrigErr always returns nil, satisfies awserr.Error interface.
5000func (s InvalidOutput) OrigErr() error {
5001	return nil
5002}
5003
5004func (s InvalidOutput) Error() string {
5005	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5006}
5007
5008// Status code returns the HTTP status code for the request's response error.
5009func (s InvalidOutput) StatusCode() int {
5010	return s.respMetadata.StatusCode
5011}
5012
5013// RequestID returns the service's response RequestID for request.
5014func (s InvalidOutput) RequestID() string {
5015	return s.respMetadata.RequestID
5016}
5017
5018// The provided token is invalid.
5019type InvalidToken struct {
5020	_            struct{} `type:"structure"`
5021	respMetadata protocol.ResponseMetadata
5022
5023	Message_ *string `locationName:"message" type:"string"`
5024}
5025
5026// String returns the string representation
5027func (s InvalidToken) String() string {
5028	return awsutil.Prettify(s)
5029}
5030
5031// GoString returns the string representation
5032func (s InvalidToken) GoString() string {
5033	return s.String()
5034}
5035
5036func newErrorInvalidToken(v protocol.ResponseMetadata) error {
5037	return &InvalidToken{
5038		respMetadata: v,
5039	}
5040}
5041
5042// Code returns the exception type name.
5043func (s InvalidToken) Code() string {
5044	return "InvalidToken"
5045}
5046
5047// Message returns the exception's message.
5048func (s InvalidToken) Message() string {
5049	if s.Message_ != nil {
5050		return *s.Message_
5051	}
5052	return ""
5053}
5054
5055// OrigErr always returns nil, satisfies awserr.Error interface.
5056func (s InvalidToken) OrigErr() error {
5057	return nil
5058}
5059
5060func (s InvalidToken) Error() string {
5061	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5062}
5063
5064// Status code returns the HTTP status code for the request's response error.
5065func (s InvalidToken) StatusCode() int {
5066	return s.respMetadata.StatusCode
5067}
5068
5069// RequestID returns the service's response RequestID for request.
5070func (s InvalidToken) RequestID() string {
5071	return s.respMetadata.RequestID
5072}
5073
5074// Contains details about a lambda function that failed during an execution.
5075type LambdaFunctionFailedEventDetails struct {
5076	_ struct{} `type:"structure"`
5077
5078	// A more detailed explanation of the cause of the failure.
5079	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
5080
5081	// The error code of the failure.
5082	Error *string `locationName:"error" type:"string" sensitive:"true"`
5083}
5084
5085// String returns the string representation
5086func (s LambdaFunctionFailedEventDetails) String() string {
5087	return awsutil.Prettify(s)
5088}
5089
5090// GoString returns the string representation
5091func (s LambdaFunctionFailedEventDetails) GoString() string {
5092	return s.String()
5093}
5094
5095// SetCause sets the Cause field's value.
5096func (s *LambdaFunctionFailedEventDetails) SetCause(v string) *LambdaFunctionFailedEventDetails {
5097	s.Cause = &v
5098	return s
5099}
5100
5101// SetError sets the Error field's value.
5102func (s *LambdaFunctionFailedEventDetails) SetError(v string) *LambdaFunctionFailedEventDetails {
5103	s.Error = &v
5104	return s
5105}
5106
5107// Contains details about a failed lambda function schedule event that occurred
5108// during an execution.
5109type LambdaFunctionScheduleFailedEventDetails struct {
5110	_ struct{} `type:"structure"`
5111
5112	// A more detailed explanation of the cause of the failure.
5113	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
5114
5115	// The error code of the failure.
5116	Error *string `locationName:"error" type:"string" sensitive:"true"`
5117}
5118
5119// String returns the string representation
5120func (s LambdaFunctionScheduleFailedEventDetails) String() string {
5121	return awsutil.Prettify(s)
5122}
5123
5124// GoString returns the string representation
5125func (s LambdaFunctionScheduleFailedEventDetails) GoString() string {
5126	return s.String()
5127}
5128
5129// SetCause sets the Cause field's value.
5130func (s *LambdaFunctionScheduleFailedEventDetails) SetCause(v string) *LambdaFunctionScheduleFailedEventDetails {
5131	s.Cause = &v
5132	return s
5133}
5134
5135// SetError sets the Error field's value.
5136func (s *LambdaFunctionScheduleFailedEventDetails) SetError(v string) *LambdaFunctionScheduleFailedEventDetails {
5137	s.Error = &v
5138	return s
5139}
5140
5141// Contains details about a lambda function scheduled during an execution.
5142type LambdaFunctionScheduledEventDetails struct {
5143	_ struct{} `type:"structure"`
5144
5145	// The JSON data input to the lambda function.
5146	Input *string `locationName:"input" type:"string" sensitive:"true"`
5147
5148	// The Amazon Resource Name (ARN) of the scheduled lambda function.
5149	//
5150	// Resource is a required field
5151	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
5152
5153	// The maximum allowed duration of the lambda function.
5154	TimeoutInSeconds *int64 `locationName:"timeoutInSeconds" type:"long"`
5155}
5156
5157// String returns the string representation
5158func (s LambdaFunctionScheduledEventDetails) String() string {
5159	return awsutil.Prettify(s)
5160}
5161
5162// GoString returns the string representation
5163func (s LambdaFunctionScheduledEventDetails) GoString() string {
5164	return s.String()
5165}
5166
5167// SetInput sets the Input field's value.
5168func (s *LambdaFunctionScheduledEventDetails) SetInput(v string) *LambdaFunctionScheduledEventDetails {
5169	s.Input = &v
5170	return s
5171}
5172
5173// SetResource sets the Resource field's value.
5174func (s *LambdaFunctionScheduledEventDetails) SetResource(v string) *LambdaFunctionScheduledEventDetails {
5175	s.Resource = &v
5176	return s
5177}
5178
5179// SetTimeoutInSeconds sets the TimeoutInSeconds field's value.
5180func (s *LambdaFunctionScheduledEventDetails) SetTimeoutInSeconds(v int64) *LambdaFunctionScheduledEventDetails {
5181	s.TimeoutInSeconds = &v
5182	return s
5183}
5184
5185// Contains details about a lambda function that failed to start during an execution.
5186type LambdaFunctionStartFailedEventDetails struct {
5187	_ struct{} `type:"structure"`
5188
5189	// A more detailed explanation of the cause of the failure.
5190	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
5191
5192	// The error code of the failure.
5193	Error *string `locationName:"error" type:"string" sensitive:"true"`
5194}
5195
5196// String returns the string representation
5197func (s LambdaFunctionStartFailedEventDetails) String() string {
5198	return awsutil.Prettify(s)
5199}
5200
5201// GoString returns the string representation
5202func (s LambdaFunctionStartFailedEventDetails) GoString() string {
5203	return s.String()
5204}
5205
5206// SetCause sets the Cause field's value.
5207func (s *LambdaFunctionStartFailedEventDetails) SetCause(v string) *LambdaFunctionStartFailedEventDetails {
5208	s.Cause = &v
5209	return s
5210}
5211
5212// SetError sets the Error field's value.
5213func (s *LambdaFunctionStartFailedEventDetails) SetError(v string) *LambdaFunctionStartFailedEventDetails {
5214	s.Error = &v
5215	return s
5216}
5217
5218// Contains details about a lambda function that successfully terminated during
5219// an execution.
5220type LambdaFunctionSucceededEventDetails struct {
5221	_ struct{} `type:"structure"`
5222
5223	// The JSON data output by the lambda function.
5224	Output *string `locationName:"output" type:"string" sensitive:"true"`
5225}
5226
5227// String returns the string representation
5228func (s LambdaFunctionSucceededEventDetails) String() string {
5229	return awsutil.Prettify(s)
5230}
5231
5232// GoString returns the string representation
5233func (s LambdaFunctionSucceededEventDetails) GoString() string {
5234	return s.String()
5235}
5236
5237// SetOutput sets the Output field's value.
5238func (s *LambdaFunctionSucceededEventDetails) SetOutput(v string) *LambdaFunctionSucceededEventDetails {
5239	s.Output = &v
5240	return s
5241}
5242
5243// Contains details about a lambda function timeout that occurred during an
5244// execution.
5245type LambdaFunctionTimedOutEventDetails struct {
5246	_ struct{} `type:"structure"`
5247
5248	// A more detailed explanation of the cause of the timeout.
5249	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
5250
5251	// The error code of the failure.
5252	Error *string `locationName:"error" type:"string" sensitive:"true"`
5253}
5254
5255// String returns the string representation
5256func (s LambdaFunctionTimedOutEventDetails) String() string {
5257	return awsutil.Prettify(s)
5258}
5259
5260// GoString returns the string representation
5261func (s LambdaFunctionTimedOutEventDetails) GoString() string {
5262	return s.String()
5263}
5264
5265// SetCause sets the Cause field's value.
5266func (s *LambdaFunctionTimedOutEventDetails) SetCause(v string) *LambdaFunctionTimedOutEventDetails {
5267	s.Cause = &v
5268	return s
5269}
5270
5271// SetError sets the Error field's value.
5272func (s *LambdaFunctionTimedOutEventDetails) SetError(v string) *LambdaFunctionTimedOutEventDetails {
5273	s.Error = &v
5274	return s
5275}
5276
5277type ListActivitiesInput struct {
5278	_ struct{} `type:"structure"`
5279
5280	// The maximum number of results that are returned per call. You can use nextToken
5281	// to obtain further pages of results. The default is 100 and the maximum allowed
5282	// page size is 1000. A value of 0 uses the default.
5283	//
5284	// This is only an upper limit. The actual number of results returned per call
5285	// might be fewer than the specified maximum.
5286	MaxResults *int64 `locationName:"maxResults" type:"integer"`
5287
5288	// If nextToken is returned, there are more results available. The value of
5289	// nextToken is a unique pagination token for each page. Make the call again
5290	// using the returned token to retrieve the next page. Keep all other arguments
5291	// unchanged. Each pagination token expires after 24 hours. Using an expired
5292	// pagination token will return an HTTP 400 InvalidToken error.
5293	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
5294}
5295
5296// String returns the string representation
5297func (s ListActivitiesInput) String() string {
5298	return awsutil.Prettify(s)
5299}
5300
5301// GoString returns the string representation
5302func (s ListActivitiesInput) GoString() string {
5303	return s.String()
5304}
5305
5306// Validate inspects the fields of the type to determine if they are valid.
5307func (s *ListActivitiesInput) Validate() error {
5308	invalidParams := request.ErrInvalidParams{Context: "ListActivitiesInput"}
5309	if s.NextToken != nil && len(*s.NextToken) < 1 {
5310		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5311	}
5312
5313	if invalidParams.Len() > 0 {
5314		return invalidParams
5315	}
5316	return nil
5317}
5318
5319// SetMaxResults sets the MaxResults field's value.
5320func (s *ListActivitiesInput) SetMaxResults(v int64) *ListActivitiesInput {
5321	s.MaxResults = &v
5322	return s
5323}
5324
5325// SetNextToken sets the NextToken field's value.
5326func (s *ListActivitiesInput) SetNextToken(v string) *ListActivitiesInput {
5327	s.NextToken = &v
5328	return s
5329}
5330
5331type ListActivitiesOutput struct {
5332	_ struct{} `type:"structure"`
5333
5334	// The list of activities.
5335	//
5336	// Activities is a required field
5337	Activities []*ActivityListItem `locationName:"activities" type:"list" required:"true"`
5338
5339	// If nextToken is returned, there are more results available. The value of
5340	// nextToken is a unique pagination token for each page. Make the call again
5341	// using the returned token to retrieve the next page. Keep all other arguments
5342	// unchanged. Each pagination token expires after 24 hours. Using an expired
5343	// pagination token will return an HTTP 400 InvalidToken error.
5344	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
5345}
5346
5347// String returns the string representation
5348func (s ListActivitiesOutput) String() string {
5349	return awsutil.Prettify(s)
5350}
5351
5352// GoString returns the string representation
5353func (s ListActivitiesOutput) GoString() string {
5354	return s.String()
5355}
5356
5357// SetActivities sets the Activities field's value.
5358func (s *ListActivitiesOutput) SetActivities(v []*ActivityListItem) *ListActivitiesOutput {
5359	s.Activities = v
5360	return s
5361}
5362
5363// SetNextToken sets the NextToken field's value.
5364func (s *ListActivitiesOutput) SetNextToken(v string) *ListActivitiesOutput {
5365	s.NextToken = &v
5366	return s
5367}
5368
5369type ListExecutionsInput struct {
5370	_ struct{} `type:"structure"`
5371
5372	// The maximum number of results that are returned per call. You can use nextToken
5373	// to obtain further pages of results. The default is 100 and the maximum allowed
5374	// page size is 1000. A value of 0 uses the default.
5375	//
5376	// This is only an upper limit. The actual number of results returned per call
5377	// might be fewer than the specified maximum.
5378	MaxResults *int64 `locationName:"maxResults" type:"integer"`
5379
5380	// If nextToken is returned, there are more results available. The value of
5381	// nextToken is a unique pagination token for each page. Make the call again
5382	// using the returned token to retrieve the next page. Keep all other arguments
5383	// unchanged. Each pagination token expires after 24 hours. Using an expired
5384	// pagination token will return an HTTP 400 InvalidToken error.
5385	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
5386
5387	// The Amazon Resource Name (ARN) of the state machine whose executions is listed.
5388	//
5389	// StateMachineArn is a required field
5390	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
5391
5392	// If specified, only list the executions whose current execution status matches
5393	// the given filter.
5394	StatusFilter *string `locationName:"statusFilter" type:"string" enum:"ExecutionStatus"`
5395}
5396
5397// String returns the string representation
5398func (s ListExecutionsInput) String() string {
5399	return awsutil.Prettify(s)
5400}
5401
5402// GoString returns the string representation
5403func (s ListExecutionsInput) GoString() string {
5404	return s.String()
5405}
5406
5407// Validate inspects the fields of the type to determine if they are valid.
5408func (s *ListExecutionsInput) Validate() error {
5409	invalidParams := request.ErrInvalidParams{Context: "ListExecutionsInput"}
5410	if s.NextToken != nil && len(*s.NextToken) < 1 {
5411		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5412	}
5413	if s.StateMachineArn == nil {
5414		invalidParams.Add(request.NewErrParamRequired("StateMachineArn"))
5415	}
5416	if s.StateMachineArn != nil && len(*s.StateMachineArn) < 1 {
5417		invalidParams.Add(request.NewErrParamMinLen("StateMachineArn", 1))
5418	}
5419
5420	if invalidParams.Len() > 0 {
5421		return invalidParams
5422	}
5423	return nil
5424}
5425
5426// SetMaxResults sets the MaxResults field's value.
5427func (s *ListExecutionsInput) SetMaxResults(v int64) *ListExecutionsInput {
5428	s.MaxResults = &v
5429	return s
5430}
5431
5432// SetNextToken sets the NextToken field's value.
5433func (s *ListExecutionsInput) SetNextToken(v string) *ListExecutionsInput {
5434	s.NextToken = &v
5435	return s
5436}
5437
5438// SetStateMachineArn sets the StateMachineArn field's value.
5439func (s *ListExecutionsInput) SetStateMachineArn(v string) *ListExecutionsInput {
5440	s.StateMachineArn = &v
5441	return s
5442}
5443
5444// SetStatusFilter sets the StatusFilter field's value.
5445func (s *ListExecutionsInput) SetStatusFilter(v string) *ListExecutionsInput {
5446	s.StatusFilter = &v
5447	return s
5448}
5449
5450type ListExecutionsOutput struct {
5451	_ struct{} `type:"structure"`
5452
5453	// The list of matching executions.
5454	//
5455	// Executions is a required field
5456	Executions []*ExecutionListItem `locationName:"executions" type:"list" required:"true"`
5457
5458	// If nextToken is returned, there are more results available. The value of
5459	// nextToken is a unique pagination token for each page. Make the call again
5460	// using the returned token to retrieve the next page. Keep all other arguments
5461	// unchanged. Each pagination token expires after 24 hours. Using an expired
5462	// pagination token will return an HTTP 400 InvalidToken error.
5463	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
5464}
5465
5466// String returns the string representation
5467func (s ListExecutionsOutput) String() string {
5468	return awsutil.Prettify(s)
5469}
5470
5471// GoString returns the string representation
5472func (s ListExecutionsOutput) GoString() string {
5473	return s.String()
5474}
5475
5476// SetExecutions sets the Executions field's value.
5477func (s *ListExecutionsOutput) SetExecutions(v []*ExecutionListItem) *ListExecutionsOutput {
5478	s.Executions = v
5479	return s
5480}
5481
5482// SetNextToken sets the NextToken field's value.
5483func (s *ListExecutionsOutput) SetNextToken(v string) *ListExecutionsOutput {
5484	s.NextToken = &v
5485	return s
5486}
5487
5488type ListStateMachinesInput struct {
5489	_ struct{} `type:"structure"`
5490
5491	// The maximum number of results that are returned per call. You can use nextToken
5492	// to obtain further pages of results. The default is 100 and the maximum allowed
5493	// page size is 1000. A value of 0 uses the default.
5494	//
5495	// This is only an upper limit. The actual number of results returned per call
5496	// might be fewer than the specified maximum.
5497	MaxResults *int64 `locationName:"maxResults" type:"integer"`
5498
5499	// If nextToken is returned, there are more results available. The value of
5500	// nextToken is a unique pagination token for each page. Make the call again
5501	// using the returned token to retrieve the next page. Keep all other arguments
5502	// unchanged. Each pagination token expires after 24 hours. Using an expired
5503	// pagination token will return an HTTP 400 InvalidToken error.
5504	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
5505}
5506
5507// String returns the string representation
5508func (s ListStateMachinesInput) String() string {
5509	return awsutil.Prettify(s)
5510}
5511
5512// GoString returns the string representation
5513func (s ListStateMachinesInput) GoString() string {
5514	return s.String()
5515}
5516
5517// Validate inspects the fields of the type to determine if they are valid.
5518func (s *ListStateMachinesInput) Validate() error {
5519	invalidParams := request.ErrInvalidParams{Context: "ListStateMachinesInput"}
5520	if s.NextToken != nil && len(*s.NextToken) < 1 {
5521		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5522	}
5523
5524	if invalidParams.Len() > 0 {
5525		return invalidParams
5526	}
5527	return nil
5528}
5529
5530// SetMaxResults sets the MaxResults field's value.
5531func (s *ListStateMachinesInput) SetMaxResults(v int64) *ListStateMachinesInput {
5532	s.MaxResults = &v
5533	return s
5534}
5535
5536// SetNextToken sets the NextToken field's value.
5537func (s *ListStateMachinesInput) SetNextToken(v string) *ListStateMachinesInput {
5538	s.NextToken = &v
5539	return s
5540}
5541
5542type ListStateMachinesOutput struct {
5543	_ struct{} `type:"structure"`
5544
5545	// If nextToken is returned, there are more results available. The value of
5546	// nextToken is a unique pagination token for each page. Make the call again
5547	// using the returned token to retrieve the next page. Keep all other arguments
5548	// unchanged. Each pagination token expires after 24 hours. Using an expired
5549	// pagination token will return an HTTP 400 InvalidToken error.
5550	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
5551
5552	// StateMachines is a required field
5553	StateMachines []*StateMachineListItem `locationName:"stateMachines" type:"list" required:"true"`
5554}
5555
5556// String returns the string representation
5557func (s ListStateMachinesOutput) String() string {
5558	return awsutil.Prettify(s)
5559}
5560
5561// GoString returns the string representation
5562func (s ListStateMachinesOutput) GoString() string {
5563	return s.String()
5564}
5565
5566// SetNextToken sets the NextToken field's value.
5567func (s *ListStateMachinesOutput) SetNextToken(v string) *ListStateMachinesOutput {
5568	s.NextToken = &v
5569	return s
5570}
5571
5572// SetStateMachines sets the StateMachines field's value.
5573func (s *ListStateMachinesOutput) SetStateMachines(v []*StateMachineListItem) *ListStateMachinesOutput {
5574	s.StateMachines = v
5575	return s
5576}
5577
5578type ListTagsForResourceInput struct {
5579	_ struct{} `type:"structure"`
5580
5581	// The Amazon Resource Name (ARN) for the Step Functions state machine or activity.
5582	//
5583	// ResourceArn is a required field
5584	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
5585}
5586
5587// String returns the string representation
5588func (s ListTagsForResourceInput) String() string {
5589	return awsutil.Prettify(s)
5590}
5591
5592// GoString returns the string representation
5593func (s ListTagsForResourceInput) GoString() string {
5594	return s.String()
5595}
5596
5597// Validate inspects the fields of the type to determine if they are valid.
5598func (s *ListTagsForResourceInput) Validate() error {
5599	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
5600	if s.ResourceArn == nil {
5601		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
5602	}
5603	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
5604		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
5605	}
5606
5607	if invalidParams.Len() > 0 {
5608		return invalidParams
5609	}
5610	return nil
5611}
5612
5613// SetResourceArn sets the ResourceArn field's value.
5614func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
5615	s.ResourceArn = &v
5616	return s
5617}
5618
5619type ListTagsForResourceOutput struct {
5620	_ struct{} `type:"structure"`
5621
5622	// An array of tags associated with the resource.
5623	Tags []*Tag `locationName:"tags" type:"list"`
5624}
5625
5626// String returns the string representation
5627func (s ListTagsForResourceOutput) String() string {
5628	return awsutil.Prettify(s)
5629}
5630
5631// GoString returns the string representation
5632func (s ListTagsForResourceOutput) GoString() string {
5633	return s.String()
5634}
5635
5636// SetTags sets the Tags field's value.
5637func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
5638	s.Tags = v
5639	return s
5640}
5641
5642type LogDestination struct {
5643	_ struct{} `type:"structure"`
5644
5645	// An object describing a CloudWatch log group. For more information, see AWS::Logs::LogGroup
5646	// (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html)
5647	// in the AWS CloudFormation User Guide.
5648	CloudWatchLogsLogGroup *CloudWatchLogsLogGroup `locationName:"cloudWatchLogsLogGroup" type:"structure"`
5649}
5650
5651// String returns the string representation
5652func (s LogDestination) String() string {
5653	return awsutil.Prettify(s)
5654}
5655
5656// GoString returns the string representation
5657func (s LogDestination) GoString() string {
5658	return s.String()
5659}
5660
5661// Validate inspects the fields of the type to determine if they are valid.
5662func (s *LogDestination) Validate() error {
5663	invalidParams := request.ErrInvalidParams{Context: "LogDestination"}
5664	if s.CloudWatchLogsLogGroup != nil {
5665		if err := s.CloudWatchLogsLogGroup.Validate(); err != nil {
5666			invalidParams.AddNested("CloudWatchLogsLogGroup", err.(request.ErrInvalidParams))
5667		}
5668	}
5669
5670	if invalidParams.Len() > 0 {
5671		return invalidParams
5672	}
5673	return nil
5674}
5675
5676// SetCloudWatchLogsLogGroup sets the CloudWatchLogsLogGroup field's value.
5677func (s *LogDestination) SetCloudWatchLogsLogGroup(v *CloudWatchLogsLogGroup) *LogDestination {
5678	s.CloudWatchLogsLogGroup = v
5679	return s
5680}
5681
5682// The LoggingConfiguration data type is used to set CloudWatch Logs options.
5683type LoggingConfiguration struct {
5684	_ struct{} `type:"structure"`
5685
5686	// An array of objects that describes where your execution history events will
5687	// be logged. Limited to size 1. Required, if your log level is not set to OFF.
5688	Destinations []*LogDestination `locationName:"destinations" type:"list"`
5689
5690	// Determines whether execution data is included in your log. When set to FALSE,
5691	// data is excluded.
5692	IncludeExecutionData *bool `locationName:"includeExecutionData" type:"boolean"`
5693
5694	// Defines which category of execution history events are logged.
5695	Level *string `locationName:"level" type:"string" enum:"LogLevel"`
5696}
5697
5698// String returns the string representation
5699func (s LoggingConfiguration) String() string {
5700	return awsutil.Prettify(s)
5701}
5702
5703// GoString returns the string representation
5704func (s LoggingConfiguration) GoString() string {
5705	return s.String()
5706}
5707
5708// Validate inspects the fields of the type to determine if they are valid.
5709func (s *LoggingConfiguration) Validate() error {
5710	invalidParams := request.ErrInvalidParams{Context: "LoggingConfiguration"}
5711	if s.Destinations != nil {
5712		for i, v := range s.Destinations {
5713			if v == nil {
5714				continue
5715			}
5716			if err := v.Validate(); err != nil {
5717				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Destinations", i), err.(request.ErrInvalidParams))
5718			}
5719		}
5720	}
5721
5722	if invalidParams.Len() > 0 {
5723		return invalidParams
5724	}
5725	return nil
5726}
5727
5728// SetDestinations sets the Destinations field's value.
5729func (s *LoggingConfiguration) SetDestinations(v []*LogDestination) *LoggingConfiguration {
5730	s.Destinations = v
5731	return s
5732}
5733
5734// SetIncludeExecutionData sets the IncludeExecutionData field's value.
5735func (s *LoggingConfiguration) SetIncludeExecutionData(v bool) *LoggingConfiguration {
5736	s.IncludeExecutionData = &v
5737	return s
5738}
5739
5740// SetLevel sets the Level field's value.
5741func (s *LoggingConfiguration) SetLevel(v string) *LoggingConfiguration {
5742	s.Level = &v
5743	return s
5744}
5745
5746// Contains details about an iteration of a Map state.
5747type MapIterationEventDetails struct {
5748	_ struct{} `type:"structure"`
5749
5750	// The index of the array belonging to the Map state iteration.
5751	Index *int64 `locationName:"index" type:"integer"`
5752
5753	// The name of the iteration’s parent Map state.
5754	Name *string `locationName:"name" min:"1" type:"string"`
5755}
5756
5757// String returns the string representation
5758func (s MapIterationEventDetails) String() string {
5759	return awsutil.Prettify(s)
5760}
5761
5762// GoString returns the string representation
5763func (s MapIterationEventDetails) GoString() string {
5764	return s.String()
5765}
5766
5767// SetIndex sets the Index field's value.
5768func (s *MapIterationEventDetails) SetIndex(v int64) *MapIterationEventDetails {
5769	s.Index = &v
5770	return s
5771}
5772
5773// SetName sets the Name field's value.
5774func (s *MapIterationEventDetails) SetName(v string) *MapIterationEventDetails {
5775	s.Name = &v
5776	return s
5777}
5778
5779// Details about a Map state that was started.
5780type MapStateStartedEventDetails struct {
5781	_ struct{} `type:"structure"`
5782
5783	// The size of the array for Map state iterations.
5784	Length *int64 `locationName:"length" type:"integer"`
5785}
5786
5787// String returns the string representation
5788func (s MapStateStartedEventDetails) String() string {
5789	return awsutil.Prettify(s)
5790}
5791
5792// GoString returns the string representation
5793func (s MapStateStartedEventDetails) GoString() string {
5794	return s.String()
5795}
5796
5797// SetLength sets the Length field's value.
5798func (s *MapStateStartedEventDetails) SetLength(v int64) *MapStateStartedEventDetails {
5799	s.Length = &v
5800	return s
5801}
5802
5803// Request is missing a required parameter. This error occurs if both definition
5804// and roleArn are not specified.
5805type MissingRequiredParameter struct {
5806	_            struct{} `type:"structure"`
5807	respMetadata protocol.ResponseMetadata
5808
5809	Message_ *string `locationName:"message" type:"string"`
5810}
5811
5812// String returns the string representation
5813func (s MissingRequiredParameter) String() string {
5814	return awsutil.Prettify(s)
5815}
5816
5817// GoString returns the string representation
5818func (s MissingRequiredParameter) GoString() string {
5819	return s.String()
5820}
5821
5822func newErrorMissingRequiredParameter(v protocol.ResponseMetadata) error {
5823	return &MissingRequiredParameter{
5824		respMetadata: v,
5825	}
5826}
5827
5828// Code returns the exception type name.
5829func (s MissingRequiredParameter) Code() string {
5830	return "MissingRequiredParameter"
5831}
5832
5833// Message returns the exception's message.
5834func (s MissingRequiredParameter) Message() string {
5835	if s.Message_ != nil {
5836		return *s.Message_
5837	}
5838	return ""
5839}
5840
5841// OrigErr always returns nil, satisfies awserr.Error interface.
5842func (s MissingRequiredParameter) OrigErr() error {
5843	return nil
5844}
5845
5846func (s MissingRequiredParameter) Error() string {
5847	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5848}
5849
5850// Status code returns the HTTP status code for the request's response error.
5851func (s MissingRequiredParameter) StatusCode() int {
5852	return s.respMetadata.StatusCode
5853}
5854
5855// RequestID returns the service's response RequestID for request.
5856func (s MissingRequiredParameter) RequestID() string {
5857	return s.respMetadata.RequestID
5858}
5859
5860// Could not find the referenced resource. Only state machine and activity ARNs
5861// are supported.
5862type ResourceNotFound struct {
5863	_            struct{} `type:"structure"`
5864	respMetadata protocol.ResponseMetadata
5865
5866	Message_ *string `locationName:"message" type:"string"`
5867
5868	ResourceName *string `locationName:"resourceName" min:"1" type:"string"`
5869}
5870
5871// String returns the string representation
5872func (s ResourceNotFound) String() string {
5873	return awsutil.Prettify(s)
5874}
5875
5876// GoString returns the string representation
5877func (s ResourceNotFound) GoString() string {
5878	return s.String()
5879}
5880
5881func newErrorResourceNotFound(v protocol.ResponseMetadata) error {
5882	return &ResourceNotFound{
5883		respMetadata: v,
5884	}
5885}
5886
5887// Code returns the exception type name.
5888func (s ResourceNotFound) Code() string {
5889	return "ResourceNotFound"
5890}
5891
5892// Message returns the exception's message.
5893func (s ResourceNotFound) Message() string {
5894	if s.Message_ != nil {
5895		return *s.Message_
5896	}
5897	return ""
5898}
5899
5900// OrigErr always returns nil, satisfies awserr.Error interface.
5901func (s ResourceNotFound) OrigErr() error {
5902	return nil
5903}
5904
5905func (s ResourceNotFound) Error() string {
5906	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
5907}
5908
5909// Status code returns the HTTP status code for the request's response error.
5910func (s ResourceNotFound) StatusCode() int {
5911	return s.respMetadata.StatusCode
5912}
5913
5914// RequestID returns the service's response RequestID for request.
5915func (s ResourceNotFound) RequestID() string {
5916	return s.respMetadata.RequestID
5917}
5918
5919type SendTaskFailureInput struct {
5920	_ struct{} `type:"structure"`
5921
5922	// A more detailed explanation of the cause of the failure.
5923	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
5924
5925	// The error code of the failure.
5926	Error *string `locationName:"error" type:"string" sensitive:"true"`
5927
5928	// The token that represents this task. Task tokens are generated by Step Functions
5929	// when tasks are assigned to a worker, or in the context object (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-contextobject.html)
5930	// when a workflow enters a task state. See GetActivityTaskOutput$taskToken.
5931	//
5932	// TaskToken is a required field
5933	TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"`
5934}
5935
5936// String returns the string representation
5937func (s SendTaskFailureInput) String() string {
5938	return awsutil.Prettify(s)
5939}
5940
5941// GoString returns the string representation
5942func (s SendTaskFailureInput) GoString() string {
5943	return s.String()
5944}
5945
5946// Validate inspects the fields of the type to determine if they are valid.
5947func (s *SendTaskFailureInput) Validate() error {
5948	invalidParams := request.ErrInvalidParams{Context: "SendTaskFailureInput"}
5949	if s.TaskToken == nil {
5950		invalidParams.Add(request.NewErrParamRequired("TaskToken"))
5951	}
5952	if s.TaskToken != nil && len(*s.TaskToken) < 1 {
5953		invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1))
5954	}
5955
5956	if invalidParams.Len() > 0 {
5957		return invalidParams
5958	}
5959	return nil
5960}
5961
5962// SetCause sets the Cause field's value.
5963func (s *SendTaskFailureInput) SetCause(v string) *SendTaskFailureInput {
5964	s.Cause = &v
5965	return s
5966}
5967
5968// SetError sets the Error field's value.
5969func (s *SendTaskFailureInput) SetError(v string) *SendTaskFailureInput {
5970	s.Error = &v
5971	return s
5972}
5973
5974// SetTaskToken sets the TaskToken field's value.
5975func (s *SendTaskFailureInput) SetTaskToken(v string) *SendTaskFailureInput {
5976	s.TaskToken = &v
5977	return s
5978}
5979
5980type SendTaskFailureOutput struct {
5981	_ struct{} `type:"structure"`
5982}
5983
5984// String returns the string representation
5985func (s SendTaskFailureOutput) String() string {
5986	return awsutil.Prettify(s)
5987}
5988
5989// GoString returns the string representation
5990func (s SendTaskFailureOutput) GoString() string {
5991	return s.String()
5992}
5993
5994type SendTaskHeartbeatInput struct {
5995	_ struct{} `type:"structure"`
5996
5997	// The token that represents this task. Task tokens are generated by Step Functions
5998	// when tasks are assigned to a worker, or in the context object (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-contextobject.html)
5999	// when a workflow enters a task state. See GetActivityTaskOutput$taskToken.
6000	//
6001	// TaskToken is a required field
6002	TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"`
6003}
6004
6005// String returns the string representation
6006func (s SendTaskHeartbeatInput) String() string {
6007	return awsutil.Prettify(s)
6008}
6009
6010// GoString returns the string representation
6011func (s SendTaskHeartbeatInput) GoString() string {
6012	return s.String()
6013}
6014
6015// Validate inspects the fields of the type to determine if they are valid.
6016func (s *SendTaskHeartbeatInput) Validate() error {
6017	invalidParams := request.ErrInvalidParams{Context: "SendTaskHeartbeatInput"}
6018	if s.TaskToken == nil {
6019		invalidParams.Add(request.NewErrParamRequired("TaskToken"))
6020	}
6021	if s.TaskToken != nil && len(*s.TaskToken) < 1 {
6022		invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1))
6023	}
6024
6025	if invalidParams.Len() > 0 {
6026		return invalidParams
6027	}
6028	return nil
6029}
6030
6031// SetTaskToken sets the TaskToken field's value.
6032func (s *SendTaskHeartbeatInput) SetTaskToken(v string) *SendTaskHeartbeatInput {
6033	s.TaskToken = &v
6034	return s
6035}
6036
6037type SendTaskHeartbeatOutput struct {
6038	_ struct{} `type:"structure"`
6039}
6040
6041// String returns the string representation
6042func (s SendTaskHeartbeatOutput) String() string {
6043	return awsutil.Prettify(s)
6044}
6045
6046// GoString returns the string representation
6047func (s SendTaskHeartbeatOutput) GoString() string {
6048	return s.String()
6049}
6050
6051type SendTaskSuccessInput struct {
6052	_ struct{} `type:"structure"`
6053
6054	// The JSON output of the task.
6055	//
6056	// Output is a required field
6057	Output *string `locationName:"output" type:"string" required:"true" sensitive:"true"`
6058
6059	// The token that represents this task. Task tokens are generated by Step Functions
6060	// when tasks are assigned to a worker, or in the context object (https://docs.aws.amazon.com/step-functions/latest/dg/input-output-contextobject.html)
6061	// when a workflow enters a task state. See GetActivityTaskOutput$taskToken.
6062	//
6063	// TaskToken is a required field
6064	TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"`
6065}
6066
6067// String returns the string representation
6068func (s SendTaskSuccessInput) String() string {
6069	return awsutil.Prettify(s)
6070}
6071
6072// GoString returns the string representation
6073func (s SendTaskSuccessInput) GoString() string {
6074	return s.String()
6075}
6076
6077// Validate inspects the fields of the type to determine if they are valid.
6078func (s *SendTaskSuccessInput) Validate() error {
6079	invalidParams := request.ErrInvalidParams{Context: "SendTaskSuccessInput"}
6080	if s.Output == nil {
6081		invalidParams.Add(request.NewErrParamRequired("Output"))
6082	}
6083	if s.TaskToken == nil {
6084		invalidParams.Add(request.NewErrParamRequired("TaskToken"))
6085	}
6086	if s.TaskToken != nil && len(*s.TaskToken) < 1 {
6087		invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1))
6088	}
6089
6090	if invalidParams.Len() > 0 {
6091		return invalidParams
6092	}
6093	return nil
6094}
6095
6096// SetOutput sets the Output field's value.
6097func (s *SendTaskSuccessInput) SetOutput(v string) *SendTaskSuccessInput {
6098	s.Output = &v
6099	return s
6100}
6101
6102// SetTaskToken sets the TaskToken field's value.
6103func (s *SendTaskSuccessInput) SetTaskToken(v string) *SendTaskSuccessInput {
6104	s.TaskToken = &v
6105	return s
6106}
6107
6108type SendTaskSuccessOutput struct {
6109	_ struct{} `type:"structure"`
6110}
6111
6112// String returns the string representation
6113func (s SendTaskSuccessOutput) String() string {
6114	return awsutil.Prettify(s)
6115}
6116
6117// GoString returns the string representation
6118func (s SendTaskSuccessOutput) GoString() string {
6119	return s.String()
6120}
6121
6122type StartExecutionInput struct {
6123	_ struct{} `type:"structure"`
6124
6125	// The string that contains the JSON input data for the execution, for example:
6126	//
6127	// "input": "{\"first_name\" : \"test\"}"
6128	//
6129	// If you don't include any JSON input data, you still must include the two
6130	// braces, for example: "input": "{}"
6131	Input *string `locationName:"input" type:"string" sensitive:"true"`
6132
6133	// The name of the execution. This name must be unique for your AWS account,
6134	// region, and state machine for 90 days. For more information, see Limits Related
6135	// to State Machine Executions (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html#service-limits-state-machine-executions)
6136	// in the AWS Step Functions Developer Guide.
6137	//
6138	// A name must not contain:
6139	//
6140	//    * white space
6141	//
6142	//    * brackets < > { } [ ]
6143	//
6144	//    * wildcard characters ? *
6145	//
6146	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
6147	//
6148	//    * control characters (U+0000-001F, U+007F-009F)
6149	//
6150	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
6151	// A-Z, a-z, - and _.
6152	Name *string `locationName:"name" min:"1" type:"string"`
6153
6154	// The Amazon Resource Name (ARN) of the state machine to execute.
6155	//
6156	// StateMachineArn is a required field
6157	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
6158}
6159
6160// String returns the string representation
6161func (s StartExecutionInput) String() string {
6162	return awsutil.Prettify(s)
6163}
6164
6165// GoString returns the string representation
6166func (s StartExecutionInput) GoString() string {
6167	return s.String()
6168}
6169
6170// Validate inspects the fields of the type to determine if they are valid.
6171func (s *StartExecutionInput) Validate() error {
6172	invalidParams := request.ErrInvalidParams{Context: "StartExecutionInput"}
6173	if s.Name != nil && len(*s.Name) < 1 {
6174		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6175	}
6176	if s.StateMachineArn == nil {
6177		invalidParams.Add(request.NewErrParamRequired("StateMachineArn"))
6178	}
6179	if s.StateMachineArn != nil && len(*s.StateMachineArn) < 1 {
6180		invalidParams.Add(request.NewErrParamMinLen("StateMachineArn", 1))
6181	}
6182
6183	if invalidParams.Len() > 0 {
6184		return invalidParams
6185	}
6186	return nil
6187}
6188
6189// SetInput sets the Input field's value.
6190func (s *StartExecutionInput) SetInput(v string) *StartExecutionInput {
6191	s.Input = &v
6192	return s
6193}
6194
6195// SetName sets the Name field's value.
6196func (s *StartExecutionInput) SetName(v string) *StartExecutionInput {
6197	s.Name = &v
6198	return s
6199}
6200
6201// SetStateMachineArn sets the StateMachineArn field's value.
6202func (s *StartExecutionInput) SetStateMachineArn(v string) *StartExecutionInput {
6203	s.StateMachineArn = &v
6204	return s
6205}
6206
6207type StartExecutionOutput struct {
6208	_ struct{} `type:"structure"`
6209
6210	// The Amazon Resource Name (ARN) that id entifies the execution.
6211	//
6212	// ExecutionArn is a required field
6213	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
6214
6215	// The date the execution is started.
6216	//
6217	// StartDate is a required field
6218	StartDate *time.Time `locationName:"startDate" type:"timestamp" required:"true"`
6219}
6220
6221// String returns the string representation
6222func (s StartExecutionOutput) String() string {
6223	return awsutil.Prettify(s)
6224}
6225
6226// GoString returns the string representation
6227func (s StartExecutionOutput) GoString() string {
6228	return s.String()
6229}
6230
6231// SetExecutionArn sets the ExecutionArn field's value.
6232func (s *StartExecutionOutput) SetExecutionArn(v string) *StartExecutionOutput {
6233	s.ExecutionArn = &v
6234	return s
6235}
6236
6237// SetStartDate sets the StartDate field's value.
6238func (s *StartExecutionOutput) SetStartDate(v time.Time) *StartExecutionOutput {
6239	s.StartDate = &v
6240	return s
6241}
6242
6243// Contains details about a state entered during an execution.
6244type StateEnteredEventDetails struct {
6245	_ struct{} `type:"structure"`
6246
6247	// The string that contains the JSON input data for the state.
6248	Input *string `locationName:"input" type:"string" sensitive:"true"`
6249
6250	// The name of the state.
6251	//
6252	// Name is a required field
6253	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6254}
6255
6256// String returns the string representation
6257func (s StateEnteredEventDetails) String() string {
6258	return awsutil.Prettify(s)
6259}
6260
6261// GoString returns the string representation
6262func (s StateEnteredEventDetails) GoString() string {
6263	return s.String()
6264}
6265
6266// SetInput sets the Input field's value.
6267func (s *StateEnteredEventDetails) SetInput(v string) *StateEnteredEventDetails {
6268	s.Input = &v
6269	return s
6270}
6271
6272// SetName sets the Name field's value.
6273func (s *StateEnteredEventDetails) SetName(v string) *StateEnteredEventDetails {
6274	s.Name = &v
6275	return s
6276}
6277
6278// Contains details about an exit from a state during an execution.
6279type StateExitedEventDetails struct {
6280	_ struct{} `type:"structure"`
6281
6282	// The name of the state.
6283	//
6284	// A name must not contain:
6285	//
6286	//    * white space
6287	//
6288	//    * brackets < > { } [ ]
6289	//
6290	//    * wildcard characters ? *
6291	//
6292	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
6293	//
6294	//    * control characters (U+0000-001F, U+007F-009F)
6295	//
6296	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
6297	// A-Z, a-z, - and _.
6298	//
6299	// Name is a required field
6300	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6301
6302	// The JSON output data of the state.
6303	Output *string `locationName:"output" type:"string" sensitive:"true"`
6304}
6305
6306// String returns the string representation
6307func (s StateExitedEventDetails) String() string {
6308	return awsutil.Prettify(s)
6309}
6310
6311// GoString returns the string representation
6312func (s StateExitedEventDetails) GoString() string {
6313	return s.String()
6314}
6315
6316// SetName sets the Name field's value.
6317func (s *StateExitedEventDetails) SetName(v string) *StateExitedEventDetails {
6318	s.Name = &v
6319	return s
6320}
6321
6322// SetOutput sets the Output field's value.
6323func (s *StateExitedEventDetails) SetOutput(v string) *StateExitedEventDetails {
6324	s.Output = &v
6325	return s
6326}
6327
6328// A state machine with the same name but a different definition or role ARN
6329// already exists.
6330type StateMachineAlreadyExists struct {
6331	_            struct{} `type:"structure"`
6332	respMetadata protocol.ResponseMetadata
6333
6334	Message_ *string `locationName:"message" type:"string"`
6335}
6336
6337// String returns the string representation
6338func (s StateMachineAlreadyExists) String() string {
6339	return awsutil.Prettify(s)
6340}
6341
6342// GoString returns the string representation
6343func (s StateMachineAlreadyExists) GoString() string {
6344	return s.String()
6345}
6346
6347func newErrorStateMachineAlreadyExists(v protocol.ResponseMetadata) error {
6348	return &StateMachineAlreadyExists{
6349		respMetadata: v,
6350	}
6351}
6352
6353// Code returns the exception type name.
6354func (s StateMachineAlreadyExists) Code() string {
6355	return "StateMachineAlreadyExists"
6356}
6357
6358// Message returns the exception's message.
6359func (s StateMachineAlreadyExists) Message() string {
6360	if s.Message_ != nil {
6361		return *s.Message_
6362	}
6363	return ""
6364}
6365
6366// OrigErr always returns nil, satisfies awserr.Error interface.
6367func (s StateMachineAlreadyExists) OrigErr() error {
6368	return nil
6369}
6370
6371func (s StateMachineAlreadyExists) Error() string {
6372	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6373}
6374
6375// Status code returns the HTTP status code for the request's response error.
6376func (s StateMachineAlreadyExists) StatusCode() int {
6377	return s.respMetadata.StatusCode
6378}
6379
6380// RequestID returns the service's response RequestID for request.
6381func (s StateMachineAlreadyExists) RequestID() string {
6382	return s.respMetadata.RequestID
6383}
6384
6385// The specified state machine is being deleted.
6386type StateMachineDeleting struct {
6387	_            struct{} `type:"structure"`
6388	respMetadata protocol.ResponseMetadata
6389
6390	Message_ *string `locationName:"message" type:"string"`
6391}
6392
6393// String returns the string representation
6394func (s StateMachineDeleting) String() string {
6395	return awsutil.Prettify(s)
6396}
6397
6398// GoString returns the string representation
6399func (s StateMachineDeleting) GoString() string {
6400	return s.String()
6401}
6402
6403func newErrorStateMachineDeleting(v protocol.ResponseMetadata) error {
6404	return &StateMachineDeleting{
6405		respMetadata: v,
6406	}
6407}
6408
6409// Code returns the exception type name.
6410func (s StateMachineDeleting) Code() string {
6411	return "StateMachineDeleting"
6412}
6413
6414// Message returns the exception's message.
6415func (s StateMachineDeleting) Message() string {
6416	if s.Message_ != nil {
6417		return *s.Message_
6418	}
6419	return ""
6420}
6421
6422// OrigErr always returns nil, satisfies awserr.Error interface.
6423func (s StateMachineDeleting) OrigErr() error {
6424	return nil
6425}
6426
6427func (s StateMachineDeleting) Error() string {
6428	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6429}
6430
6431// Status code returns the HTTP status code for the request's response error.
6432func (s StateMachineDeleting) StatusCode() int {
6433	return s.respMetadata.StatusCode
6434}
6435
6436// RequestID returns the service's response RequestID for request.
6437func (s StateMachineDeleting) RequestID() string {
6438	return s.respMetadata.RequestID
6439}
6440
6441// The specified state machine does not exist.
6442type StateMachineDoesNotExist struct {
6443	_            struct{} `type:"structure"`
6444	respMetadata protocol.ResponseMetadata
6445
6446	Message_ *string `locationName:"message" type:"string"`
6447}
6448
6449// String returns the string representation
6450func (s StateMachineDoesNotExist) String() string {
6451	return awsutil.Prettify(s)
6452}
6453
6454// GoString returns the string representation
6455func (s StateMachineDoesNotExist) GoString() string {
6456	return s.String()
6457}
6458
6459func newErrorStateMachineDoesNotExist(v protocol.ResponseMetadata) error {
6460	return &StateMachineDoesNotExist{
6461		respMetadata: v,
6462	}
6463}
6464
6465// Code returns the exception type name.
6466func (s StateMachineDoesNotExist) Code() string {
6467	return "StateMachineDoesNotExist"
6468}
6469
6470// Message returns the exception's message.
6471func (s StateMachineDoesNotExist) Message() string {
6472	if s.Message_ != nil {
6473		return *s.Message_
6474	}
6475	return ""
6476}
6477
6478// OrigErr always returns nil, satisfies awserr.Error interface.
6479func (s StateMachineDoesNotExist) OrigErr() error {
6480	return nil
6481}
6482
6483func (s StateMachineDoesNotExist) Error() string {
6484	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6485}
6486
6487// Status code returns the HTTP status code for the request's response error.
6488func (s StateMachineDoesNotExist) StatusCode() int {
6489	return s.respMetadata.StatusCode
6490}
6491
6492// RequestID returns the service's response RequestID for request.
6493func (s StateMachineDoesNotExist) RequestID() string {
6494	return s.respMetadata.RequestID
6495}
6496
6497// The maximum number of state machines has been reached. Existing state machines
6498// must be deleted before a new state machine can be created.
6499type StateMachineLimitExceeded struct {
6500	_            struct{} `type:"structure"`
6501	respMetadata protocol.ResponseMetadata
6502
6503	Message_ *string `locationName:"message" type:"string"`
6504}
6505
6506// String returns the string representation
6507func (s StateMachineLimitExceeded) String() string {
6508	return awsutil.Prettify(s)
6509}
6510
6511// GoString returns the string representation
6512func (s StateMachineLimitExceeded) GoString() string {
6513	return s.String()
6514}
6515
6516func newErrorStateMachineLimitExceeded(v protocol.ResponseMetadata) error {
6517	return &StateMachineLimitExceeded{
6518		respMetadata: v,
6519	}
6520}
6521
6522// Code returns the exception type name.
6523func (s StateMachineLimitExceeded) Code() string {
6524	return "StateMachineLimitExceeded"
6525}
6526
6527// Message returns the exception's message.
6528func (s StateMachineLimitExceeded) Message() string {
6529	if s.Message_ != nil {
6530		return *s.Message_
6531	}
6532	return ""
6533}
6534
6535// OrigErr always returns nil, satisfies awserr.Error interface.
6536func (s StateMachineLimitExceeded) OrigErr() error {
6537	return nil
6538}
6539
6540func (s StateMachineLimitExceeded) Error() string {
6541	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6542}
6543
6544// Status code returns the HTTP status code for the request's response error.
6545func (s StateMachineLimitExceeded) StatusCode() int {
6546	return s.respMetadata.StatusCode
6547}
6548
6549// RequestID returns the service's response RequestID for request.
6550func (s StateMachineLimitExceeded) RequestID() string {
6551	return s.respMetadata.RequestID
6552}
6553
6554// Contains details about the state machine.
6555type StateMachineListItem struct {
6556	_ struct{} `type:"structure"`
6557
6558	// The date the state machine is created.
6559	//
6560	// CreationDate is a required field
6561	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" required:"true"`
6562
6563	// The name of the state machine.
6564	//
6565	// A name must not contain:
6566	//
6567	//    * white space
6568	//
6569	//    * brackets < > { } [ ]
6570	//
6571	//    * wildcard characters ? *
6572	//
6573	//    * special characters " # % \ ^ | ~ ` $ & , ; : /
6574	//
6575	//    * control characters (U+0000-001F, U+007F-009F)
6576	//
6577	// To enable logging with CloudWatch Logs, the name should only contain 0-9,
6578	// A-Z, a-z, - and _.
6579	//
6580	// Name is a required field
6581	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6582
6583	// The Amazon Resource Name (ARN) that identifies the state machine.
6584	//
6585	// StateMachineArn is a required field
6586	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
6587
6588	// Type is a required field
6589	Type *string `locationName:"type" type:"string" required:"true" enum:"StateMachineType"`
6590}
6591
6592// String returns the string representation
6593func (s StateMachineListItem) String() string {
6594	return awsutil.Prettify(s)
6595}
6596
6597// GoString returns the string representation
6598func (s StateMachineListItem) GoString() string {
6599	return s.String()
6600}
6601
6602// SetCreationDate sets the CreationDate field's value.
6603func (s *StateMachineListItem) SetCreationDate(v time.Time) *StateMachineListItem {
6604	s.CreationDate = &v
6605	return s
6606}
6607
6608// SetName sets the Name field's value.
6609func (s *StateMachineListItem) SetName(v string) *StateMachineListItem {
6610	s.Name = &v
6611	return s
6612}
6613
6614// SetStateMachineArn sets the StateMachineArn field's value.
6615func (s *StateMachineListItem) SetStateMachineArn(v string) *StateMachineListItem {
6616	s.StateMachineArn = &v
6617	return s
6618}
6619
6620// SetType sets the Type field's value.
6621func (s *StateMachineListItem) SetType(v string) *StateMachineListItem {
6622	s.Type = &v
6623	return s
6624}
6625
6626type StateMachineTypeNotSupported struct {
6627	_            struct{} `type:"structure"`
6628	respMetadata protocol.ResponseMetadata
6629
6630	Message_ *string `locationName:"message" type:"string"`
6631}
6632
6633// String returns the string representation
6634func (s StateMachineTypeNotSupported) String() string {
6635	return awsutil.Prettify(s)
6636}
6637
6638// GoString returns the string representation
6639func (s StateMachineTypeNotSupported) GoString() string {
6640	return s.String()
6641}
6642
6643func newErrorStateMachineTypeNotSupported(v protocol.ResponseMetadata) error {
6644	return &StateMachineTypeNotSupported{
6645		respMetadata: v,
6646	}
6647}
6648
6649// Code returns the exception type name.
6650func (s StateMachineTypeNotSupported) Code() string {
6651	return "StateMachineTypeNotSupported"
6652}
6653
6654// Message returns the exception's message.
6655func (s StateMachineTypeNotSupported) Message() string {
6656	if s.Message_ != nil {
6657		return *s.Message_
6658	}
6659	return ""
6660}
6661
6662// OrigErr always returns nil, satisfies awserr.Error interface.
6663func (s StateMachineTypeNotSupported) OrigErr() error {
6664	return nil
6665}
6666
6667func (s StateMachineTypeNotSupported) Error() string {
6668	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6669}
6670
6671// Status code returns the HTTP status code for the request's response error.
6672func (s StateMachineTypeNotSupported) StatusCode() int {
6673	return s.respMetadata.StatusCode
6674}
6675
6676// RequestID returns the service's response RequestID for request.
6677func (s StateMachineTypeNotSupported) RequestID() string {
6678	return s.respMetadata.RequestID
6679}
6680
6681type StopExecutionInput struct {
6682	_ struct{} `type:"structure"`
6683
6684	// A more detailed explanation of the cause of the failure.
6685	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
6686
6687	// The error code of the failure.
6688	Error *string `locationName:"error" type:"string" sensitive:"true"`
6689
6690	// The Amazon Resource Name (ARN) of the execution to stop.
6691	//
6692	// ExecutionArn is a required field
6693	ExecutionArn *string `locationName:"executionArn" min:"1" type:"string" required:"true"`
6694}
6695
6696// String returns the string representation
6697func (s StopExecutionInput) String() string {
6698	return awsutil.Prettify(s)
6699}
6700
6701// GoString returns the string representation
6702func (s StopExecutionInput) GoString() string {
6703	return s.String()
6704}
6705
6706// Validate inspects the fields of the type to determine if they are valid.
6707func (s *StopExecutionInput) Validate() error {
6708	invalidParams := request.ErrInvalidParams{Context: "StopExecutionInput"}
6709	if s.ExecutionArn == nil {
6710		invalidParams.Add(request.NewErrParamRequired("ExecutionArn"))
6711	}
6712	if s.ExecutionArn != nil && len(*s.ExecutionArn) < 1 {
6713		invalidParams.Add(request.NewErrParamMinLen("ExecutionArn", 1))
6714	}
6715
6716	if invalidParams.Len() > 0 {
6717		return invalidParams
6718	}
6719	return nil
6720}
6721
6722// SetCause sets the Cause field's value.
6723func (s *StopExecutionInput) SetCause(v string) *StopExecutionInput {
6724	s.Cause = &v
6725	return s
6726}
6727
6728// SetError sets the Error field's value.
6729func (s *StopExecutionInput) SetError(v string) *StopExecutionInput {
6730	s.Error = &v
6731	return s
6732}
6733
6734// SetExecutionArn sets the ExecutionArn field's value.
6735func (s *StopExecutionInput) SetExecutionArn(v string) *StopExecutionInput {
6736	s.ExecutionArn = &v
6737	return s
6738}
6739
6740type StopExecutionOutput struct {
6741	_ struct{} `type:"structure"`
6742
6743	// The date the execution is stopped.
6744	//
6745	// StopDate is a required field
6746	StopDate *time.Time `locationName:"stopDate" type:"timestamp" required:"true"`
6747}
6748
6749// String returns the string representation
6750func (s StopExecutionOutput) String() string {
6751	return awsutil.Prettify(s)
6752}
6753
6754// GoString returns the string representation
6755func (s StopExecutionOutput) GoString() string {
6756	return s.String()
6757}
6758
6759// SetStopDate sets the StopDate field's value.
6760func (s *StopExecutionOutput) SetStopDate(v time.Time) *StopExecutionOutput {
6761	s.StopDate = &v
6762	return s
6763}
6764
6765// Tags are key-value pairs that can be associated with Step Functions state
6766// machines and activities.
6767//
6768// An array of key-value pairs. For more information, see Using Cost Allocation
6769// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
6770// in the AWS Billing and Cost Management User Guide, and Controlling Access
6771// Using IAM Tags (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html).
6772//
6773// Tags may only contain Unicode letters, digits, white space, or these symbols:
6774// _ . : / = + - @.
6775type Tag struct {
6776	_ struct{} `type:"structure"`
6777
6778	// The key of a tag.
6779	Key *string `locationName:"key" min:"1" type:"string"`
6780
6781	// The value of a tag.
6782	Value *string `locationName:"value" type:"string"`
6783}
6784
6785// String returns the string representation
6786func (s Tag) String() string {
6787	return awsutil.Prettify(s)
6788}
6789
6790// GoString returns the string representation
6791func (s Tag) GoString() string {
6792	return s.String()
6793}
6794
6795// Validate inspects the fields of the type to determine if they are valid.
6796func (s *Tag) Validate() error {
6797	invalidParams := request.ErrInvalidParams{Context: "Tag"}
6798	if s.Key != nil && len(*s.Key) < 1 {
6799		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
6800	}
6801
6802	if invalidParams.Len() > 0 {
6803		return invalidParams
6804	}
6805	return nil
6806}
6807
6808// SetKey sets the Key field's value.
6809func (s *Tag) SetKey(v string) *Tag {
6810	s.Key = &v
6811	return s
6812}
6813
6814// SetValue sets the Value field's value.
6815func (s *Tag) SetValue(v string) *Tag {
6816	s.Value = &v
6817	return s
6818}
6819
6820type TagResourceInput struct {
6821	_ struct{} `type:"structure"`
6822
6823	// The Amazon Resource Name (ARN) for the Step Functions state machine or activity.
6824	//
6825	// ResourceArn is a required field
6826	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
6827
6828	// The list of tags to add to a resource.
6829	//
6830	// Tags may only contain Unicode letters, digits, white space, or these symbols:
6831	// _ . : / = + - @.
6832	//
6833	// Tags is a required field
6834	Tags []*Tag `locationName:"tags" type:"list" required:"true"`
6835}
6836
6837// String returns the string representation
6838func (s TagResourceInput) String() string {
6839	return awsutil.Prettify(s)
6840}
6841
6842// GoString returns the string representation
6843func (s TagResourceInput) GoString() string {
6844	return s.String()
6845}
6846
6847// Validate inspects the fields of the type to determine if they are valid.
6848func (s *TagResourceInput) Validate() error {
6849	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
6850	if s.ResourceArn == nil {
6851		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
6852	}
6853	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
6854		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
6855	}
6856	if s.Tags == nil {
6857		invalidParams.Add(request.NewErrParamRequired("Tags"))
6858	}
6859	if s.Tags != nil {
6860		for i, v := range s.Tags {
6861			if v == nil {
6862				continue
6863			}
6864			if err := v.Validate(); err != nil {
6865				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6866			}
6867		}
6868	}
6869
6870	if invalidParams.Len() > 0 {
6871		return invalidParams
6872	}
6873	return nil
6874}
6875
6876// SetResourceArn sets the ResourceArn field's value.
6877func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
6878	s.ResourceArn = &v
6879	return s
6880}
6881
6882// SetTags sets the Tags field's value.
6883func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
6884	s.Tags = v
6885	return s
6886}
6887
6888type TagResourceOutput struct {
6889	_ struct{} `type:"structure"`
6890}
6891
6892// String returns the string representation
6893func (s TagResourceOutput) String() string {
6894	return awsutil.Prettify(s)
6895}
6896
6897// GoString returns the string representation
6898func (s TagResourceOutput) GoString() string {
6899	return s.String()
6900}
6901
6902type TaskDoesNotExist struct {
6903	_            struct{} `type:"structure"`
6904	respMetadata protocol.ResponseMetadata
6905
6906	Message_ *string `locationName:"message" type:"string"`
6907}
6908
6909// String returns the string representation
6910func (s TaskDoesNotExist) String() string {
6911	return awsutil.Prettify(s)
6912}
6913
6914// GoString returns the string representation
6915func (s TaskDoesNotExist) GoString() string {
6916	return s.String()
6917}
6918
6919func newErrorTaskDoesNotExist(v protocol.ResponseMetadata) error {
6920	return &TaskDoesNotExist{
6921		respMetadata: v,
6922	}
6923}
6924
6925// Code returns the exception type name.
6926func (s TaskDoesNotExist) Code() string {
6927	return "TaskDoesNotExist"
6928}
6929
6930// Message returns the exception's message.
6931func (s TaskDoesNotExist) Message() string {
6932	if s.Message_ != nil {
6933		return *s.Message_
6934	}
6935	return ""
6936}
6937
6938// OrigErr always returns nil, satisfies awserr.Error interface.
6939func (s TaskDoesNotExist) OrigErr() error {
6940	return nil
6941}
6942
6943func (s TaskDoesNotExist) Error() string {
6944	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6945}
6946
6947// Status code returns the HTTP status code for the request's response error.
6948func (s TaskDoesNotExist) StatusCode() int {
6949	return s.respMetadata.StatusCode
6950}
6951
6952// RequestID returns the service's response RequestID for request.
6953func (s TaskDoesNotExist) RequestID() string {
6954	return s.respMetadata.RequestID
6955}
6956
6957// Contains details about a task failure event.
6958type TaskFailedEventDetails struct {
6959	_ struct{} `type:"structure"`
6960
6961	// A more detailed explanation of the cause of the failure.
6962	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
6963
6964	// The error code of the failure.
6965	Error *string `locationName:"error" type:"string" sensitive:"true"`
6966
6967	// The service name of the resource in a task state.
6968	//
6969	// Resource is a required field
6970	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
6971
6972	// The action of the resource called by a task state.
6973	//
6974	// ResourceType is a required field
6975	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
6976}
6977
6978// String returns the string representation
6979func (s TaskFailedEventDetails) String() string {
6980	return awsutil.Prettify(s)
6981}
6982
6983// GoString returns the string representation
6984func (s TaskFailedEventDetails) GoString() string {
6985	return s.String()
6986}
6987
6988// SetCause sets the Cause field's value.
6989func (s *TaskFailedEventDetails) SetCause(v string) *TaskFailedEventDetails {
6990	s.Cause = &v
6991	return s
6992}
6993
6994// SetError sets the Error field's value.
6995func (s *TaskFailedEventDetails) SetError(v string) *TaskFailedEventDetails {
6996	s.Error = &v
6997	return s
6998}
6999
7000// SetResource sets the Resource field's value.
7001func (s *TaskFailedEventDetails) SetResource(v string) *TaskFailedEventDetails {
7002	s.Resource = &v
7003	return s
7004}
7005
7006// SetResourceType sets the ResourceType field's value.
7007func (s *TaskFailedEventDetails) SetResourceType(v string) *TaskFailedEventDetails {
7008	s.ResourceType = &v
7009	return s
7010}
7011
7012// Contains details about a task scheduled during an execution.
7013type TaskScheduledEventDetails struct {
7014	_ struct{} `type:"structure"`
7015
7016	// The JSON data passed to the resource referenced in a task state.
7017	//
7018	// Parameters is a required field
7019	Parameters *string `locationName:"parameters" type:"string" required:"true" sensitive:"true"`
7020
7021	// The region of the scheduled task
7022	//
7023	// Region is a required field
7024	Region *string `locationName:"region" min:"1" type:"string" required:"true"`
7025
7026	// The service name of the resource in a task state.
7027	//
7028	// Resource is a required field
7029	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7030
7031	// The action of the resource called by a task state.
7032	//
7033	// ResourceType is a required field
7034	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7035
7036	// The maximum allowed duration of the task.
7037	TimeoutInSeconds *int64 `locationName:"timeoutInSeconds" type:"long"`
7038}
7039
7040// String returns the string representation
7041func (s TaskScheduledEventDetails) String() string {
7042	return awsutil.Prettify(s)
7043}
7044
7045// GoString returns the string representation
7046func (s TaskScheduledEventDetails) GoString() string {
7047	return s.String()
7048}
7049
7050// SetParameters sets the Parameters field's value.
7051func (s *TaskScheduledEventDetails) SetParameters(v string) *TaskScheduledEventDetails {
7052	s.Parameters = &v
7053	return s
7054}
7055
7056// SetRegion sets the Region field's value.
7057func (s *TaskScheduledEventDetails) SetRegion(v string) *TaskScheduledEventDetails {
7058	s.Region = &v
7059	return s
7060}
7061
7062// SetResource sets the Resource field's value.
7063func (s *TaskScheduledEventDetails) SetResource(v string) *TaskScheduledEventDetails {
7064	s.Resource = &v
7065	return s
7066}
7067
7068// SetResourceType sets the ResourceType field's value.
7069func (s *TaskScheduledEventDetails) SetResourceType(v string) *TaskScheduledEventDetails {
7070	s.ResourceType = &v
7071	return s
7072}
7073
7074// SetTimeoutInSeconds sets the TimeoutInSeconds field's value.
7075func (s *TaskScheduledEventDetails) SetTimeoutInSeconds(v int64) *TaskScheduledEventDetails {
7076	s.TimeoutInSeconds = &v
7077	return s
7078}
7079
7080// Contains details about a task that failed to start during an execution.
7081type TaskStartFailedEventDetails struct {
7082	_ struct{} `type:"structure"`
7083
7084	// A more detailed explanation of the cause of the failure.
7085	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
7086
7087	// The error code of the failure.
7088	Error *string `locationName:"error" type:"string" sensitive:"true"`
7089
7090	// The service name of the resource in a task state.
7091	//
7092	// Resource is a required field
7093	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7094
7095	// The action of the resource called by a task state.
7096	//
7097	// ResourceType is a required field
7098	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7099}
7100
7101// String returns the string representation
7102func (s TaskStartFailedEventDetails) String() string {
7103	return awsutil.Prettify(s)
7104}
7105
7106// GoString returns the string representation
7107func (s TaskStartFailedEventDetails) GoString() string {
7108	return s.String()
7109}
7110
7111// SetCause sets the Cause field's value.
7112func (s *TaskStartFailedEventDetails) SetCause(v string) *TaskStartFailedEventDetails {
7113	s.Cause = &v
7114	return s
7115}
7116
7117// SetError sets the Error field's value.
7118func (s *TaskStartFailedEventDetails) SetError(v string) *TaskStartFailedEventDetails {
7119	s.Error = &v
7120	return s
7121}
7122
7123// SetResource sets the Resource field's value.
7124func (s *TaskStartFailedEventDetails) SetResource(v string) *TaskStartFailedEventDetails {
7125	s.Resource = &v
7126	return s
7127}
7128
7129// SetResourceType sets the ResourceType field's value.
7130func (s *TaskStartFailedEventDetails) SetResourceType(v string) *TaskStartFailedEventDetails {
7131	s.ResourceType = &v
7132	return s
7133}
7134
7135// Contains details about the start of a task during an execution.
7136type TaskStartedEventDetails struct {
7137	_ struct{} `type:"structure"`
7138
7139	// The service name of the resource in a task state.
7140	//
7141	// Resource is a required field
7142	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7143
7144	// The action of the resource called by a task state.
7145	//
7146	// ResourceType is a required field
7147	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7148}
7149
7150// String returns the string representation
7151func (s TaskStartedEventDetails) String() string {
7152	return awsutil.Prettify(s)
7153}
7154
7155// GoString returns the string representation
7156func (s TaskStartedEventDetails) GoString() string {
7157	return s.String()
7158}
7159
7160// SetResource sets the Resource field's value.
7161func (s *TaskStartedEventDetails) SetResource(v string) *TaskStartedEventDetails {
7162	s.Resource = &v
7163	return s
7164}
7165
7166// SetResourceType sets the ResourceType field's value.
7167func (s *TaskStartedEventDetails) SetResourceType(v string) *TaskStartedEventDetails {
7168	s.ResourceType = &v
7169	return s
7170}
7171
7172// Contains details about a task that failed to submit during an execution.
7173type TaskSubmitFailedEventDetails struct {
7174	_ struct{} `type:"structure"`
7175
7176	// A more detailed explanation of the cause of the failure.
7177	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
7178
7179	// The error code of the failure.
7180	Error *string `locationName:"error" type:"string" sensitive:"true"`
7181
7182	// The service name of the resource in a task state.
7183	//
7184	// Resource is a required field
7185	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7186
7187	// The action of the resource called by a task state.
7188	//
7189	// ResourceType is a required field
7190	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7191}
7192
7193// String returns the string representation
7194func (s TaskSubmitFailedEventDetails) String() string {
7195	return awsutil.Prettify(s)
7196}
7197
7198// GoString returns the string representation
7199func (s TaskSubmitFailedEventDetails) GoString() string {
7200	return s.String()
7201}
7202
7203// SetCause sets the Cause field's value.
7204func (s *TaskSubmitFailedEventDetails) SetCause(v string) *TaskSubmitFailedEventDetails {
7205	s.Cause = &v
7206	return s
7207}
7208
7209// SetError sets the Error field's value.
7210func (s *TaskSubmitFailedEventDetails) SetError(v string) *TaskSubmitFailedEventDetails {
7211	s.Error = &v
7212	return s
7213}
7214
7215// SetResource sets the Resource field's value.
7216func (s *TaskSubmitFailedEventDetails) SetResource(v string) *TaskSubmitFailedEventDetails {
7217	s.Resource = &v
7218	return s
7219}
7220
7221// SetResourceType sets the ResourceType field's value.
7222func (s *TaskSubmitFailedEventDetails) SetResourceType(v string) *TaskSubmitFailedEventDetails {
7223	s.ResourceType = &v
7224	return s
7225}
7226
7227// Contains details about a task submitted to a resource .
7228type TaskSubmittedEventDetails struct {
7229	_ struct{} `type:"structure"`
7230
7231	// The response from a resource when a task has started.
7232	Output *string `locationName:"output" type:"string" sensitive:"true"`
7233
7234	// The service name of the resource in a task state.
7235	//
7236	// Resource is a required field
7237	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7238
7239	// The action of the resource called by a task state.
7240	//
7241	// ResourceType is a required field
7242	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7243}
7244
7245// String returns the string representation
7246func (s TaskSubmittedEventDetails) String() string {
7247	return awsutil.Prettify(s)
7248}
7249
7250// GoString returns the string representation
7251func (s TaskSubmittedEventDetails) GoString() string {
7252	return s.String()
7253}
7254
7255// SetOutput sets the Output field's value.
7256func (s *TaskSubmittedEventDetails) SetOutput(v string) *TaskSubmittedEventDetails {
7257	s.Output = &v
7258	return s
7259}
7260
7261// SetResource sets the Resource field's value.
7262func (s *TaskSubmittedEventDetails) SetResource(v string) *TaskSubmittedEventDetails {
7263	s.Resource = &v
7264	return s
7265}
7266
7267// SetResourceType sets the ResourceType field's value.
7268func (s *TaskSubmittedEventDetails) SetResourceType(v string) *TaskSubmittedEventDetails {
7269	s.ResourceType = &v
7270	return s
7271}
7272
7273// Contains details about the successful completion of a task state.
7274type TaskSucceededEventDetails struct {
7275	_ struct{} `type:"structure"`
7276
7277	// The full JSON response from a resource when a task has succeeded. This response
7278	// becomes the output of the related task.
7279	Output *string `locationName:"output" type:"string" sensitive:"true"`
7280
7281	// The service name of the resource in a task state.
7282	//
7283	// Resource is a required field
7284	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7285
7286	// The action of the resource called by a task state.
7287	//
7288	// ResourceType is a required field
7289	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7290}
7291
7292// String returns the string representation
7293func (s TaskSucceededEventDetails) String() string {
7294	return awsutil.Prettify(s)
7295}
7296
7297// GoString returns the string representation
7298func (s TaskSucceededEventDetails) GoString() string {
7299	return s.String()
7300}
7301
7302// SetOutput sets the Output field's value.
7303func (s *TaskSucceededEventDetails) SetOutput(v string) *TaskSucceededEventDetails {
7304	s.Output = &v
7305	return s
7306}
7307
7308// SetResource sets the Resource field's value.
7309func (s *TaskSucceededEventDetails) SetResource(v string) *TaskSucceededEventDetails {
7310	s.Resource = &v
7311	return s
7312}
7313
7314// SetResourceType sets the ResourceType field's value.
7315func (s *TaskSucceededEventDetails) SetResourceType(v string) *TaskSucceededEventDetails {
7316	s.ResourceType = &v
7317	return s
7318}
7319
7320type TaskTimedOut struct {
7321	_            struct{} `type:"structure"`
7322	respMetadata protocol.ResponseMetadata
7323
7324	Message_ *string `locationName:"message" type:"string"`
7325}
7326
7327// String returns the string representation
7328func (s TaskTimedOut) String() string {
7329	return awsutil.Prettify(s)
7330}
7331
7332// GoString returns the string representation
7333func (s TaskTimedOut) GoString() string {
7334	return s.String()
7335}
7336
7337func newErrorTaskTimedOut(v protocol.ResponseMetadata) error {
7338	return &TaskTimedOut{
7339		respMetadata: v,
7340	}
7341}
7342
7343// Code returns the exception type name.
7344func (s TaskTimedOut) Code() string {
7345	return "TaskTimedOut"
7346}
7347
7348// Message returns the exception's message.
7349func (s TaskTimedOut) Message() string {
7350	if s.Message_ != nil {
7351		return *s.Message_
7352	}
7353	return ""
7354}
7355
7356// OrigErr always returns nil, satisfies awserr.Error interface.
7357func (s TaskTimedOut) OrigErr() error {
7358	return nil
7359}
7360
7361func (s TaskTimedOut) Error() string {
7362	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7363}
7364
7365// Status code returns the HTTP status code for the request's response error.
7366func (s TaskTimedOut) StatusCode() int {
7367	return s.respMetadata.StatusCode
7368}
7369
7370// RequestID returns the service's response RequestID for request.
7371func (s TaskTimedOut) RequestID() string {
7372	return s.respMetadata.RequestID
7373}
7374
7375// Contains details about a resource timeout that occurred during an execution.
7376type TaskTimedOutEventDetails struct {
7377	_ struct{} `type:"structure"`
7378
7379	// A more detailed explanation of the cause of the failure.
7380	Cause *string `locationName:"cause" type:"string" sensitive:"true"`
7381
7382	// The error code of the failure.
7383	Error *string `locationName:"error" type:"string" sensitive:"true"`
7384
7385	// The service name of the resource in a task state.
7386	//
7387	// Resource is a required field
7388	Resource *string `locationName:"resource" min:"1" type:"string" required:"true"`
7389
7390	// The action of the resource called by a task state.
7391	//
7392	// ResourceType is a required field
7393	ResourceType *string `locationName:"resourceType" min:"1" type:"string" required:"true"`
7394}
7395
7396// String returns the string representation
7397func (s TaskTimedOutEventDetails) String() string {
7398	return awsutil.Prettify(s)
7399}
7400
7401// GoString returns the string representation
7402func (s TaskTimedOutEventDetails) GoString() string {
7403	return s.String()
7404}
7405
7406// SetCause sets the Cause field's value.
7407func (s *TaskTimedOutEventDetails) SetCause(v string) *TaskTimedOutEventDetails {
7408	s.Cause = &v
7409	return s
7410}
7411
7412// SetError sets the Error field's value.
7413func (s *TaskTimedOutEventDetails) SetError(v string) *TaskTimedOutEventDetails {
7414	s.Error = &v
7415	return s
7416}
7417
7418// SetResource sets the Resource field's value.
7419func (s *TaskTimedOutEventDetails) SetResource(v string) *TaskTimedOutEventDetails {
7420	s.Resource = &v
7421	return s
7422}
7423
7424// SetResourceType sets the ResourceType field's value.
7425func (s *TaskTimedOutEventDetails) SetResourceType(v string) *TaskTimedOutEventDetails {
7426	s.ResourceType = &v
7427	return s
7428}
7429
7430// You've exceeded the number of tags allowed for a resource. See the Limits
7431// Topic (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html)
7432// in the AWS Step Functions Developer Guide.
7433type TooManyTags struct {
7434	_            struct{} `type:"structure"`
7435	respMetadata protocol.ResponseMetadata
7436
7437	Message_ *string `locationName:"message" type:"string"`
7438
7439	ResourceName *string `locationName:"resourceName" min:"1" type:"string"`
7440}
7441
7442// String returns the string representation
7443func (s TooManyTags) String() string {
7444	return awsutil.Prettify(s)
7445}
7446
7447// GoString returns the string representation
7448func (s TooManyTags) GoString() string {
7449	return s.String()
7450}
7451
7452func newErrorTooManyTags(v protocol.ResponseMetadata) error {
7453	return &TooManyTags{
7454		respMetadata: v,
7455	}
7456}
7457
7458// Code returns the exception type name.
7459func (s TooManyTags) Code() string {
7460	return "TooManyTags"
7461}
7462
7463// Message returns the exception's message.
7464func (s TooManyTags) Message() string {
7465	if s.Message_ != nil {
7466		return *s.Message_
7467	}
7468	return ""
7469}
7470
7471// OrigErr always returns nil, satisfies awserr.Error interface.
7472func (s TooManyTags) OrigErr() error {
7473	return nil
7474}
7475
7476func (s TooManyTags) Error() string {
7477	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7478}
7479
7480// Status code returns the HTTP status code for the request's response error.
7481func (s TooManyTags) StatusCode() int {
7482	return s.respMetadata.StatusCode
7483}
7484
7485// RequestID returns the service's response RequestID for request.
7486func (s TooManyTags) RequestID() string {
7487	return s.respMetadata.RequestID
7488}
7489
7490type UntagResourceInput struct {
7491	_ struct{} `type:"structure"`
7492
7493	// The Amazon Resource Name (ARN) for the Step Functions state machine or activity.
7494	//
7495	// ResourceArn is a required field
7496	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
7497
7498	// The list of tags to remove from the resource.
7499	//
7500	// TagKeys is a required field
7501	TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"`
7502}
7503
7504// String returns the string representation
7505func (s UntagResourceInput) String() string {
7506	return awsutil.Prettify(s)
7507}
7508
7509// GoString returns the string representation
7510func (s UntagResourceInput) GoString() string {
7511	return s.String()
7512}
7513
7514// Validate inspects the fields of the type to determine if they are valid.
7515func (s *UntagResourceInput) Validate() error {
7516	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
7517	if s.ResourceArn == nil {
7518		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
7519	}
7520	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
7521		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
7522	}
7523	if s.TagKeys == nil {
7524		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
7525	}
7526
7527	if invalidParams.Len() > 0 {
7528		return invalidParams
7529	}
7530	return nil
7531}
7532
7533// SetResourceArn sets the ResourceArn field's value.
7534func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
7535	s.ResourceArn = &v
7536	return s
7537}
7538
7539// SetTagKeys sets the TagKeys field's value.
7540func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
7541	s.TagKeys = v
7542	return s
7543}
7544
7545type UntagResourceOutput struct {
7546	_ struct{} `type:"structure"`
7547}
7548
7549// String returns the string representation
7550func (s UntagResourceOutput) String() string {
7551	return awsutil.Prettify(s)
7552}
7553
7554// GoString returns the string representation
7555func (s UntagResourceOutput) GoString() string {
7556	return s.String()
7557}
7558
7559type UpdateStateMachineInput struct {
7560	_ struct{} `type:"structure"`
7561
7562	// The Amazon States Language definition of the state machine. See Amazon States
7563	// Language (https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html).
7564	Definition *string `locationName:"definition" min:"1" type:"string" sensitive:"true"`
7565
7566	// The LoggingConfiguration data type is used to set CloudWatch Logs options.
7567	LoggingConfiguration *LoggingConfiguration `locationName:"loggingConfiguration" type:"structure"`
7568
7569	// The Amazon Resource Name (ARN) of the IAM role of the state machine.
7570	RoleArn *string `locationName:"roleArn" min:"1" type:"string"`
7571
7572	// The Amazon Resource Name (ARN) of the state machine.
7573	//
7574	// StateMachineArn is a required field
7575	StateMachineArn *string `locationName:"stateMachineArn" min:"1" type:"string" required:"true"`
7576}
7577
7578// String returns the string representation
7579func (s UpdateStateMachineInput) String() string {
7580	return awsutil.Prettify(s)
7581}
7582
7583// GoString returns the string representation
7584func (s UpdateStateMachineInput) GoString() string {
7585	return s.String()
7586}
7587
7588// Validate inspects the fields of the type to determine if they are valid.
7589func (s *UpdateStateMachineInput) Validate() error {
7590	invalidParams := request.ErrInvalidParams{Context: "UpdateStateMachineInput"}
7591	if s.Definition != nil && len(*s.Definition) < 1 {
7592		invalidParams.Add(request.NewErrParamMinLen("Definition", 1))
7593	}
7594	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
7595		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
7596	}
7597	if s.StateMachineArn == nil {
7598		invalidParams.Add(request.NewErrParamRequired("StateMachineArn"))
7599	}
7600	if s.StateMachineArn != nil && len(*s.StateMachineArn) < 1 {
7601		invalidParams.Add(request.NewErrParamMinLen("StateMachineArn", 1))
7602	}
7603	if s.LoggingConfiguration != nil {
7604		if err := s.LoggingConfiguration.Validate(); err != nil {
7605			invalidParams.AddNested("LoggingConfiguration", err.(request.ErrInvalidParams))
7606		}
7607	}
7608
7609	if invalidParams.Len() > 0 {
7610		return invalidParams
7611	}
7612	return nil
7613}
7614
7615// SetDefinition sets the Definition field's value.
7616func (s *UpdateStateMachineInput) SetDefinition(v string) *UpdateStateMachineInput {
7617	s.Definition = &v
7618	return s
7619}
7620
7621// SetLoggingConfiguration sets the LoggingConfiguration field's value.
7622func (s *UpdateStateMachineInput) SetLoggingConfiguration(v *LoggingConfiguration) *UpdateStateMachineInput {
7623	s.LoggingConfiguration = v
7624	return s
7625}
7626
7627// SetRoleArn sets the RoleArn field's value.
7628func (s *UpdateStateMachineInput) SetRoleArn(v string) *UpdateStateMachineInput {
7629	s.RoleArn = &v
7630	return s
7631}
7632
7633// SetStateMachineArn sets the StateMachineArn field's value.
7634func (s *UpdateStateMachineInput) SetStateMachineArn(v string) *UpdateStateMachineInput {
7635	s.StateMachineArn = &v
7636	return s
7637}
7638
7639type UpdateStateMachineOutput struct {
7640	_ struct{} `type:"structure"`
7641
7642	// The date and time the state machine was updated.
7643	//
7644	// UpdateDate is a required field
7645	UpdateDate *time.Time `locationName:"updateDate" type:"timestamp" required:"true"`
7646}
7647
7648// String returns the string representation
7649func (s UpdateStateMachineOutput) String() string {
7650	return awsutil.Prettify(s)
7651}
7652
7653// GoString returns the string representation
7654func (s UpdateStateMachineOutput) GoString() string {
7655	return s.String()
7656}
7657
7658// SetUpdateDate sets the UpdateDate field's value.
7659func (s *UpdateStateMachineOutput) SetUpdateDate(v time.Time) *UpdateStateMachineOutput {
7660	s.UpdateDate = &v
7661	return s
7662}
7663
7664const (
7665	// ExecutionStatusRunning is a ExecutionStatus enum value
7666	ExecutionStatusRunning = "RUNNING"
7667
7668	// ExecutionStatusSucceeded is a ExecutionStatus enum value
7669	ExecutionStatusSucceeded = "SUCCEEDED"
7670
7671	// ExecutionStatusFailed is a ExecutionStatus enum value
7672	ExecutionStatusFailed = "FAILED"
7673
7674	// ExecutionStatusTimedOut is a ExecutionStatus enum value
7675	ExecutionStatusTimedOut = "TIMED_OUT"
7676
7677	// ExecutionStatusAborted is a ExecutionStatus enum value
7678	ExecutionStatusAborted = "ABORTED"
7679)
7680
7681const (
7682	// HistoryEventTypeActivityFailed is a HistoryEventType enum value
7683	HistoryEventTypeActivityFailed = "ActivityFailed"
7684
7685	// HistoryEventTypeActivityScheduled is a HistoryEventType enum value
7686	HistoryEventTypeActivityScheduled = "ActivityScheduled"
7687
7688	// HistoryEventTypeActivityScheduleFailed is a HistoryEventType enum value
7689	HistoryEventTypeActivityScheduleFailed = "ActivityScheduleFailed"
7690
7691	// HistoryEventTypeActivityStarted is a HistoryEventType enum value
7692	HistoryEventTypeActivityStarted = "ActivityStarted"
7693
7694	// HistoryEventTypeActivitySucceeded is a HistoryEventType enum value
7695	HistoryEventTypeActivitySucceeded = "ActivitySucceeded"
7696
7697	// HistoryEventTypeActivityTimedOut is a HistoryEventType enum value
7698	HistoryEventTypeActivityTimedOut = "ActivityTimedOut"
7699
7700	// HistoryEventTypeChoiceStateEntered is a HistoryEventType enum value
7701	HistoryEventTypeChoiceStateEntered = "ChoiceStateEntered"
7702
7703	// HistoryEventTypeChoiceStateExited is a HistoryEventType enum value
7704	HistoryEventTypeChoiceStateExited = "ChoiceStateExited"
7705
7706	// HistoryEventTypeExecutionAborted is a HistoryEventType enum value
7707	HistoryEventTypeExecutionAborted = "ExecutionAborted"
7708
7709	// HistoryEventTypeExecutionFailed is a HistoryEventType enum value
7710	HistoryEventTypeExecutionFailed = "ExecutionFailed"
7711
7712	// HistoryEventTypeExecutionStarted is a HistoryEventType enum value
7713	HistoryEventTypeExecutionStarted = "ExecutionStarted"
7714
7715	// HistoryEventTypeExecutionSucceeded is a HistoryEventType enum value
7716	HistoryEventTypeExecutionSucceeded = "ExecutionSucceeded"
7717
7718	// HistoryEventTypeExecutionTimedOut is a HistoryEventType enum value
7719	HistoryEventTypeExecutionTimedOut = "ExecutionTimedOut"
7720
7721	// HistoryEventTypeFailStateEntered is a HistoryEventType enum value
7722	HistoryEventTypeFailStateEntered = "FailStateEntered"
7723
7724	// HistoryEventTypeLambdaFunctionFailed is a HistoryEventType enum value
7725	HistoryEventTypeLambdaFunctionFailed = "LambdaFunctionFailed"
7726
7727	// HistoryEventTypeLambdaFunctionScheduled is a HistoryEventType enum value
7728	HistoryEventTypeLambdaFunctionScheduled = "LambdaFunctionScheduled"
7729
7730	// HistoryEventTypeLambdaFunctionScheduleFailed is a HistoryEventType enum value
7731	HistoryEventTypeLambdaFunctionScheduleFailed = "LambdaFunctionScheduleFailed"
7732
7733	// HistoryEventTypeLambdaFunctionStarted is a HistoryEventType enum value
7734	HistoryEventTypeLambdaFunctionStarted = "LambdaFunctionStarted"
7735
7736	// HistoryEventTypeLambdaFunctionStartFailed is a HistoryEventType enum value
7737	HistoryEventTypeLambdaFunctionStartFailed = "LambdaFunctionStartFailed"
7738
7739	// HistoryEventTypeLambdaFunctionSucceeded is a HistoryEventType enum value
7740	HistoryEventTypeLambdaFunctionSucceeded = "LambdaFunctionSucceeded"
7741
7742	// HistoryEventTypeLambdaFunctionTimedOut is a HistoryEventType enum value
7743	HistoryEventTypeLambdaFunctionTimedOut = "LambdaFunctionTimedOut"
7744
7745	// HistoryEventTypeMapIterationAborted is a HistoryEventType enum value
7746	HistoryEventTypeMapIterationAborted = "MapIterationAborted"
7747
7748	// HistoryEventTypeMapIterationFailed is a HistoryEventType enum value
7749	HistoryEventTypeMapIterationFailed = "MapIterationFailed"
7750
7751	// HistoryEventTypeMapIterationStarted is a HistoryEventType enum value
7752	HistoryEventTypeMapIterationStarted = "MapIterationStarted"
7753
7754	// HistoryEventTypeMapIterationSucceeded is a HistoryEventType enum value
7755	HistoryEventTypeMapIterationSucceeded = "MapIterationSucceeded"
7756
7757	// HistoryEventTypeMapStateAborted is a HistoryEventType enum value
7758	HistoryEventTypeMapStateAborted = "MapStateAborted"
7759
7760	// HistoryEventTypeMapStateEntered is a HistoryEventType enum value
7761	HistoryEventTypeMapStateEntered = "MapStateEntered"
7762
7763	// HistoryEventTypeMapStateExited is a HistoryEventType enum value
7764	HistoryEventTypeMapStateExited = "MapStateExited"
7765
7766	// HistoryEventTypeMapStateFailed is a HistoryEventType enum value
7767	HistoryEventTypeMapStateFailed = "MapStateFailed"
7768
7769	// HistoryEventTypeMapStateStarted is a HistoryEventType enum value
7770	HistoryEventTypeMapStateStarted = "MapStateStarted"
7771
7772	// HistoryEventTypeMapStateSucceeded is a HistoryEventType enum value
7773	HistoryEventTypeMapStateSucceeded = "MapStateSucceeded"
7774
7775	// HistoryEventTypeParallelStateAborted is a HistoryEventType enum value
7776	HistoryEventTypeParallelStateAborted = "ParallelStateAborted"
7777
7778	// HistoryEventTypeParallelStateEntered is a HistoryEventType enum value
7779	HistoryEventTypeParallelStateEntered = "ParallelStateEntered"
7780
7781	// HistoryEventTypeParallelStateExited is a HistoryEventType enum value
7782	HistoryEventTypeParallelStateExited = "ParallelStateExited"
7783
7784	// HistoryEventTypeParallelStateFailed is a HistoryEventType enum value
7785	HistoryEventTypeParallelStateFailed = "ParallelStateFailed"
7786
7787	// HistoryEventTypeParallelStateStarted is a HistoryEventType enum value
7788	HistoryEventTypeParallelStateStarted = "ParallelStateStarted"
7789
7790	// HistoryEventTypeParallelStateSucceeded is a HistoryEventType enum value
7791	HistoryEventTypeParallelStateSucceeded = "ParallelStateSucceeded"
7792
7793	// HistoryEventTypePassStateEntered is a HistoryEventType enum value
7794	HistoryEventTypePassStateEntered = "PassStateEntered"
7795
7796	// HistoryEventTypePassStateExited is a HistoryEventType enum value
7797	HistoryEventTypePassStateExited = "PassStateExited"
7798
7799	// HistoryEventTypeSucceedStateEntered is a HistoryEventType enum value
7800	HistoryEventTypeSucceedStateEntered = "SucceedStateEntered"
7801
7802	// HistoryEventTypeSucceedStateExited is a HistoryEventType enum value
7803	HistoryEventTypeSucceedStateExited = "SucceedStateExited"
7804
7805	// HistoryEventTypeTaskFailed is a HistoryEventType enum value
7806	HistoryEventTypeTaskFailed = "TaskFailed"
7807
7808	// HistoryEventTypeTaskScheduled is a HistoryEventType enum value
7809	HistoryEventTypeTaskScheduled = "TaskScheduled"
7810
7811	// HistoryEventTypeTaskStarted is a HistoryEventType enum value
7812	HistoryEventTypeTaskStarted = "TaskStarted"
7813
7814	// HistoryEventTypeTaskStartFailed is a HistoryEventType enum value
7815	HistoryEventTypeTaskStartFailed = "TaskStartFailed"
7816
7817	// HistoryEventTypeTaskStateAborted is a HistoryEventType enum value
7818	HistoryEventTypeTaskStateAborted = "TaskStateAborted"
7819
7820	// HistoryEventTypeTaskStateEntered is a HistoryEventType enum value
7821	HistoryEventTypeTaskStateEntered = "TaskStateEntered"
7822
7823	// HistoryEventTypeTaskStateExited is a HistoryEventType enum value
7824	HistoryEventTypeTaskStateExited = "TaskStateExited"
7825
7826	// HistoryEventTypeTaskSubmitFailed is a HistoryEventType enum value
7827	HistoryEventTypeTaskSubmitFailed = "TaskSubmitFailed"
7828
7829	// HistoryEventTypeTaskSubmitted is a HistoryEventType enum value
7830	HistoryEventTypeTaskSubmitted = "TaskSubmitted"
7831
7832	// HistoryEventTypeTaskSucceeded is a HistoryEventType enum value
7833	HistoryEventTypeTaskSucceeded = "TaskSucceeded"
7834
7835	// HistoryEventTypeTaskTimedOut is a HistoryEventType enum value
7836	HistoryEventTypeTaskTimedOut = "TaskTimedOut"
7837
7838	// HistoryEventTypeWaitStateAborted is a HistoryEventType enum value
7839	HistoryEventTypeWaitStateAborted = "WaitStateAborted"
7840
7841	// HistoryEventTypeWaitStateEntered is a HistoryEventType enum value
7842	HistoryEventTypeWaitStateEntered = "WaitStateEntered"
7843
7844	// HistoryEventTypeWaitStateExited is a HistoryEventType enum value
7845	HistoryEventTypeWaitStateExited = "WaitStateExited"
7846)
7847
7848const (
7849	// LogLevelAll is a LogLevel enum value
7850	LogLevelAll = "ALL"
7851
7852	// LogLevelError is a LogLevel enum value
7853	LogLevelError = "ERROR"
7854
7855	// LogLevelFatal is a LogLevel enum value
7856	LogLevelFatal = "FATAL"
7857
7858	// LogLevelOff is a LogLevel enum value
7859	LogLevelOff = "OFF"
7860)
7861
7862const (
7863	// StateMachineStatusActive is a StateMachineStatus enum value
7864	StateMachineStatusActive = "ACTIVE"
7865
7866	// StateMachineStatusDeleting is a StateMachineStatus enum value
7867	StateMachineStatusDeleting = "DELETING"
7868)
7869
7870const (
7871	// StateMachineTypeStandard is a StateMachineType enum value
7872	StateMachineTypeStandard = "STANDARD"
7873
7874	// StateMachineTypeExpress is a StateMachineType enum value
7875	StateMachineTypeExpress = "EXPRESS"
7876)
7877