1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package eventbridge
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 opActivateEventSource = "ActivateEventSource"
17
18// ActivateEventSourceRequest generates a "aws/request.Request" representing the
19// client's request for the ActivateEventSource 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 ActivateEventSource for more information on using the ActivateEventSource
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 ActivateEventSourceRequest method.
34//    req, resp := client.ActivateEventSourceRequest(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/eventbridge-2015-10-07/ActivateEventSource
42func (c *EventBridge) ActivateEventSourceRequest(input *ActivateEventSourceInput) (req *request.Request, output *ActivateEventSourceOutput) {
43	op := &request.Operation{
44		Name:       opActivateEventSource,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &ActivateEventSourceInput{}
51	}
52
53	output = &ActivateEventSourceOutput{}
54	req = c.newRequest(op, input, output)
55	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
56	return
57}
58
59// ActivateEventSource API operation for Amazon EventBridge.
60//
61// Activates a partner event source that has been deactivated. Once activated,
62// your matching event bus will start receiving events from the event source.
63//
64// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
65// with awserr.Error's Code and Message methods to get detailed information about
66// the error.
67//
68// See the AWS API reference guide for Amazon EventBridge's
69// API operation ActivateEventSource for usage and error information.
70//
71// Returned Error Types:
72//   * ResourceNotFoundException
73//   An entity that you specified does not exist.
74//
75//   * ConcurrentModificationException
76//   There is concurrent modification on a rule, target, archive, or replay.
77//
78//   * InvalidStateException
79//   The specified state is not a valid state for an event source.
80//
81//   * InternalException
82//   This exception occurs due to unexpected causes.
83//
84//   * OperationDisabledException
85//   The operation you are attempting is not available in this region.
86//
87// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ActivateEventSource
88func (c *EventBridge) ActivateEventSource(input *ActivateEventSourceInput) (*ActivateEventSourceOutput, error) {
89	req, out := c.ActivateEventSourceRequest(input)
90	return out, req.Send()
91}
92
93// ActivateEventSourceWithContext is the same as ActivateEventSource with the addition of
94// the ability to pass a context and additional request options.
95//
96// See ActivateEventSource for details on how to use this API operation.
97//
98// The context must be non-nil and will be used for request cancellation. If
99// the context is nil a panic will occur. In the future the SDK may create
100// sub-contexts for http.Requests. See https://golang.org/pkg/context/
101// for more information on using Contexts.
102func (c *EventBridge) ActivateEventSourceWithContext(ctx aws.Context, input *ActivateEventSourceInput, opts ...request.Option) (*ActivateEventSourceOutput, error) {
103	req, out := c.ActivateEventSourceRequest(input)
104	req.SetContext(ctx)
105	req.ApplyOptions(opts...)
106	return out, req.Send()
107}
108
109const opCancelReplay = "CancelReplay"
110
111// CancelReplayRequest generates a "aws/request.Request" representing the
112// client's request for the CancelReplay operation. The "output" return
113// value will be populated with the request's response once the request completes
114// successfully.
115//
116// Use "Send" method on the returned Request to send the API call to the service.
117// the "output" return value is not valid until after Send returns without error.
118//
119// See CancelReplay for more information on using the CancelReplay
120// API call, and error handling.
121//
122// This method is useful when you want to inject custom logic or configuration
123// into the SDK's request lifecycle. Such as custom headers, or retry logic.
124//
125//
126//    // Example sending a request using the CancelReplayRequest method.
127//    req, resp := client.CancelReplayRequest(params)
128//
129//    err := req.Send()
130//    if err == nil { // resp is now filled
131//        fmt.Println(resp)
132//    }
133//
134// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CancelReplay
135func (c *EventBridge) CancelReplayRequest(input *CancelReplayInput) (req *request.Request, output *CancelReplayOutput) {
136	op := &request.Operation{
137		Name:       opCancelReplay,
138		HTTPMethod: "POST",
139		HTTPPath:   "/",
140	}
141
142	if input == nil {
143		input = &CancelReplayInput{}
144	}
145
146	output = &CancelReplayOutput{}
147	req = c.newRequest(op, input, output)
148	return
149}
150
151// CancelReplay API operation for Amazon EventBridge.
152//
153// Cancels the specified replay.
154//
155// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
156// with awserr.Error's Code and Message methods to get detailed information about
157// the error.
158//
159// See the AWS API reference guide for Amazon EventBridge's
160// API operation CancelReplay for usage and error information.
161//
162// Returned Error Types:
163//   * ResourceNotFoundException
164//   An entity that you specified does not exist.
165//
166//   * ConcurrentModificationException
167//   There is concurrent modification on a rule, target, archive, or replay.
168//
169//   * IllegalStatusException
170//   An error occurred because a replay can be canceled only when the state is
171//   Running or Starting.
172//
173//   * InternalException
174//   This exception occurs due to unexpected causes.
175//
176// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CancelReplay
177func (c *EventBridge) CancelReplay(input *CancelReplayInput) (*CancelReplayOutput, error) {
178	req, out := c.CancelReplayRequest(input)
179	return out, req.Send()
180}
181
182// CancelReplayWithContext is the same as CancelReplay with the addition of
183// the ability to pass a context and additional request options.
184//
185// See CancelReplay for details on how to use this API operation.
186//
187// The context must be non-nil and will be used for request cancellation. If
188// the context is nil a panic will occur. In the future the SDK may create
189// sub-contexts for http.Requests. See https://golang.org/pkg/context/
190// for more information on using Contexts.
191func (c *EventBridge) CancelReplayWithContext(ctx aws.Context, input *CancelReplayInput, opts ...request.Option) (*CancelReplayOutput, error) {
192	req, out := c.CancelReplayRequest(input)
193	req.SetContext(ctx)
194	req.ApplyOptions(opts...)
195	return out, req.Send()
196}
197
198const opCreateApiDestination = "CreateApiDestination"
199
200// CreateApiDestinationRequest generates a "aws/request.Request" representing the
201// client's request for the CreateApiDestination operation. The "output" return
202// value will be populated with the request's response once the request completes
203// successfully.
204//
205// Use "Send" method on the returned Request to send the API call to the service.
206// the "output" return value is not valid until after Send returns without error.
207//
208// See CreateApiDestination for more information on using the CreateApiDestination
209// API call, and error handling.
210//
211// This method is useful when you want to inject custom logic or configuration
212// into the SDK's request lifecycle. Such as custom headers, or retry logic.
213//
214//
215//    // Example sending a request using the CreateApiDestinationRequest method.
216//    req, resp := client.CreateApiDestinationRequest(params)
217//
218//    err := req.Send()
219//    if err == nil { // resp is now filled
220//        fmt.Println(resp)
221//    }
222//
223// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateApiDestination
224func (c *EventBridge) CreateApiDestinationRequest(input *CreateApiDestinationInput) (req *request.Request, output *CreateApiDestinationOutput) {
225	op := &request.Operation{
226		Name:       opCreateApiDestination,
227		HTTPMethod: "POST",
228		HTTPPath:   "/",
229	}
230
231	if input == nil {
232		input = &CreateApiDestinationInput{}
233	}
234
235	output = &CreateApiDestinationOutput{}
236	req = c.newRequest(op, input, output)
237	return
238}
239
240// CreateApiDestination API operation for Amazon EventBridge.
241//
242// Creates an API destination, which is an HTTP invocation endpoint configured
243// as a target for events.
244//
245// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
246// with awserr.Error's Code and Message methods to get detailed information about
247// the error.
248//
249// See the AWS API reference guide for Amazon EventBridge's
250// API operation CreateApiDestination for usage and error information.
251//
252// Returned Error Types:
253//   * ResourceAlreadyExistsException
254//   The resource you are trying to create already exists.
255//
256//   * ResourceNotFoundException
257//   An entity that you specified does not exist.
258//
259//   * LimitExceededException
260//   The request failed because it attempted to create resource beyond the allowed
261//   service quota.
262//
263//   * InternalException
264//   This exception occurs due to unexpected causes.
265//
266// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateApiDestination
267func (c *EventBridge) CreateApiDestination(input *CreateApiDestinationInput) (*CreateApiDestinationOutput, error) {
268	req, out := c.CreateApiDestinationRequest(input)
269	return out, req.Send()
270}
271
272// CreateApiDestinationWithContext is the same as CreateApiDestination with the addition of
273// the ability to pass a context and additional request options.
274//
275// See CreateApiDestination for details on how to use this API operation.
276//
277// The context must be non-nil and will be used for request cancellation. If
278// the context is nil a panic will occur. In the future the SDK may create
279// sub-contexts for http.Requests. See https://golang.org/pkg/context/
280// for more information on using Contexts.
281func (c *EventBridge) CreateApiDestinationWithContext(ctx aws.Context, input *CreateApiDestinationInput, opts ...request.Option) (*CreateApiDestinationOutput, error) {
282	req, out := c.CreateApiDestinationRequest(input)
283	req.SetContext(ctx)
284	req.ApplyOptions(opts...)
285	return out, req.Send()
286}
287
288const opCreateArchive = "CreateArchive"
289
290// CreateArchiveRequest generates a "aws/request.Request" representing the
291// client's request for the CreateArchive operation. The "output" return
292// value will be populated with the request's response once the request completes
293// successfully.
294//
295// Use "Send" method on the returned Request to send the API call to the service.
296// the "output" return value is not valid until after Send returns without error.
297//
298// See CreateArchive for more information on using the CreateArchive
299// API call, and error handling.
300//
301// This method is useful when you want to inject custom logic or configuration
302// into the SDK's request lifecycle. Such as custom headers, or retry logic.
303//
304//
305//    // Example sending a request using the CreateArchiveRequest method.
306//    req, resp := client.CreateArchiveRequest(params)
307//
308//    err := req.Send()
309//    if err == nil { // resp is now filled
310//        fmt.Println(resp)
311//    }
312//
313// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateArchive
314func (c *EventBridge) CreateArchiveRequest(input *CreateArchiveInput) (req *request.Request, output *CreateArchiveOutput) {
315	op := &request.Operation{
316		Name:       opCreateArchive,
317		HTTPMethod: "POST",
318		HTTPPath:   "/",
319	}
320
321	if input == nil {
322		input = &CreateArchiveInput{}
323	}
324
325	output = &CreateArchiveOutput{}
326	req = c.newRequest(op, input, output)
327	return
328}
329
330// CreateArchive API operation for Amazon EventBridge.
331//
332// Creates an archive of events with the specified settings. When you create
333// an archive, incoming events might not immediately start being sent to the
334// archive. Allow a short period of time for changes to take effect. If you
335// do not specify a pattern to filter events sent to the archive, all events
336// are sent to the archive except replayed events. Replayed events are not sent
337// to an archive.
338//
339// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
340// with awserr.Error's Code and Message methods to get detailed information about
341// the error.
342//
343// See the AWS API reference guide for Amazon EventBridge's
344// API operation CreateArchive for usage and error information.
345//
346// Returned Error Types:
347//   * ConcurrentModificationException
348//   There is concurrent modification on a rule, target, archive, or replay.
349//
350//   * ResourceAlreadyExistsException
351//   The resource you are trying to create already exists.
352//
353//   * ResourceNotFoundException
354//   An entity that you specified does not exist.
355//
356//   * InternalException
357//   This exception occurs due to unexpected causes.
358//
359//   * LimitExceededException
360//   The request failed because it attempted to create resource beyond the allowed
361//   service quota.
362//
363//   * InvalidEventPatternException
364//   The event pattern is not valid.
365//
366// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateArchive
367func (c *EventBridge) CreateArchive(input *CreateArchiveInput) (*CreateArchiveOutput, error) {
368	req, out := c.CreateArchiveRequest(input)
369	return out, req.Send()
370}
371
372// CreateArchiveWithContext is the same as CreateArchive with the addition of
373// the ability to pass a context and additional request options.
374//
375// See CreateArchive for details on how to use this API operation.
376//
377// The context must be non-nil and will be used for request cancellation. If
378// the context is nil a panic will occur. In the future the SDK may create
379// sub-contexts for http.Requests. See https://golang.org/pkg/context/
380// for more information on using Contexts.
381func (c *EventBridge) CreateArchiveWithContext(ctx aws.Context, input *CreateArchiveInput, opts ...request.Option) (*CreateArchiveOutput, error) {
382	req, out := c.CreateArchiveRequest(input)
383	req.SetContext(ctx)
384	req.ApplyOptions(opts...)
385	return out, req.Send()
386}
387
388const opCreateConnection = "CreateConnection"
389
390// CreateConnectionRequest generates a "aws/request.Request" representing the
391// client's request for the CreateConnection operation. The "output" return
392// value will be populated with the request's response once the request completes
393// successfully.
394//
395// Use "Send" method on the returned Request to send the API call to the service.
396// the "output" return value is not valid until after Send returns without error.
397//
398// See CreateConnection for more information on using the CreateConnection
399// API call, and error handling.
400//
401// This method is useful when you want to inject custom logic or configuration
402// into the SDK's request lifecycle. Such as custom headers, or retry logic.
403//
404//
405//    // Example sending a request using the CreateConnectionRequest method.
406//    req, resp := client.CreateConnectionRequest(params)
407//
408//    err := req.Send()
409//    if err == nil { // resp is now filled
410//        fmt.Println(resp)
411//    }
412//
413// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateConnection
414func (c *EventBridge) CreateConnectionRequest(input *CreateConnectionInput) (req *request.Request, output *CreateConnectionOutput) {
415	op := &request.Operation{
416		Name:       opCreateConnection,
417		HTTPMethod: "POST",
418		HTTPPath:   "/",
419	}
420
421	if input == nil {
422		input = &CreateConnectionInput{}
423	}
424
425	output = &CreateConnectionOutput{}
426	req = c.newRequest(op, input, output)
427	return
428}
429
430// CreateConnection API operation for Amazon EventBridge.
431//
432// Creates a connection. A connection defines the authorization type and credentials
433// to use for authorization with an API destination HTTP endpoint.
434//
435// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
436// with awserr.Error's Code and Message methods to get detailed information about
437// the error.
438//
439// See the AWS API reference guide for Amazon EventBridge's
440// API operation CreateConnection for usage and error information.
441//
442// Returned Error Types:
443//   * ResourceAlreadyExistsException
444//   The resource you are trying to create already exists.
445//
446//   * LimitExceededException
447//   The request failed because it attempted to create resource beyond the allowed
448//   service quota.
449//
450//   * InternalException
451//   This exception occurs due to unexpected causes.
452//
453// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateConnection
454func (c *EventBridge) CreateConnection(input *CreateConnectionInput) (*CreateConnectionOutput, error) {
455	req, out := c.CreateConnectionRequest(input)
456	return out, req.Send()
457}
458
459// CreateConnectionWithContext is the same as CreateConnection with the addition of
460// the ability to pass a context and additional request options.
461//
462// See CreateConnection for details on how to use this API operation.
463//
464// The context must be non-nil and will be used for request cancellation. If
465// the context is nil a panic will occur. In the future the SDK may create
466// sub-contexts for http.Requests. See https://golang.org/pkg/context/
467// for more information on using Contexts.
468func (c *EventBridge) CreateConnectionWithContext(ctx aws.Context, input *CreateConnectionInput, opts ...request.Option) (*CreateConnectionOutput, error) {
469	req, out := c.CreateConnectionRequest(input)
470	req.SetContext(ctx)
471	req.ApplyOptions(opts...)
472	return out, req.Send()
473}
474
475const opCreateEventBus = "CreateEventBus"
476
477// CreateEventBusRequest generates a "aws/request.Request" representing the
478// client's request for the CreateEventBus operation. The "output" return
479// value will be populated with the request's response once the request completes
480// successfully.
481//
482// Use "Send" method on the returned Request to send the API call to the service.
483// the "output" return value is not valid until after Send returns without error.
484//
485// See CreateEventBus for more information on using the CreateEventBus
486// API call, and error handling.
487//
488// This method is useful when you want to inject custom logic or configuration
489// into the SDK's request lifecycle. Such as custom headers, or retry logic.
490//
491//
492//    // Example sending a request using the CreateEventBusRequest method.
493//    req, resp := client.CreateEventBusRequest(params)
494//
495//    err := req.Send()
496//    if err == nil { // resp is now filled
497//        fmt.Println(resp)
498//    }
499//
500// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateEventBus
501func (c *EventBridge) CreateEventBusRequest(input *CreateEventBusInput) (req *request.Request, output *CreateEventBusOutput) {
502	op := &request.Operation{
503		Name:       opCreateEventBus,
504		HTTPMethod: "POST",
505		HTTPPath:   "/",
506	}
507
508	if input == nil {
509		input = &CreateEventBusInput{}
510	}
511
512	output = &CreateEventBusOutput{}
513	req = c.newRequest(op, input, output)
514	return
515}
516
517// CreateEventBus API operation for Amazon EventBridge.
518//
519// Creates a new event bus within your account. This can be a custom event bus
520// which you can use to receive events from your custom applications and services,
521// or it can be a partner event bus which can be matched to a partner event
522// source.
523//
524// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
525// with awserr.Error's Code and Message methods to get detailed information about
526// the error.
527//
528// See the AWS API reference guide for Amazon EventBridge's
529// API operation CreateEventBus for usage and error information.
530//
531// Returned Error Types:
532//   * ResourceAlreadyExistsException
533//   The resource you are trying to create already exists.
534//
535//   * ResourceNotFoundException
536//   An entity that you specified does not exist.
537//
538//   * InvalidStateException
539//   The specified state is not a valid state for an event source.
540//
541//   * InternalException
542//   This exception occurs due to unexpected causes.
543//
544//   * ConcurrentModificationException
545//   There is concurrent modification on a rule, target, archive, or replay.
546//
547//   * LimitExceededException
548//   The request failed because it attempted to create resource beyond the allowed
549//   service quota.
550//
551//   * OperationDisabledException
552//   The operation you are attempting is not available in this region.
553//
554// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreateEventBus
555func (c *EventBridge) CreateEventBus(input *CreateEventBusInput) (*CreateEventBusOutput, error) {
556	req, out := c.CreateEventBusRequest(input)
557	return out, req.Send()
558}
559
560// CreateEventBusWithContext is the same as CreateEventBus with the addition of
561// the ability to pass a context and additional request options.
562//
563// See CreateEventBus 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 *EventBridge) CreateEventBusWithContext(ctx aws.Context, input *CreateEventBusInput, opts ...request.Option) (*CreateEventBusOutput, error) {
570	req, out := c.CreateEventBusRequest(input)
571	req.SetContext(ctx)
572	req.ApplyOptions(opts...)
573	return out, req.Send()
574}
575
576const opCreatePartnerEventSource = "CreatePartnerEventSource"
577
578// CreatePartnerEventSourceRequest generates a "aws/request.Request" representing the
579// client's request for the CreatePartnerEventSource 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 CreatePartnerEventSource for more information on using the CreatePartnerEventSource
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 CreatePartnerEventSourceRequest method.
594//    req, resp := client.CreatePartnerEventSourceRequest(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/eventbridge-2015-10-07/CreatePartnerEventSource
602func (c *EventBridge) CreatePartnerEventSourceRequest(input *CreatePartnerEventSourceInput) (req *request.Request, output *CreatePartnerEventSourceOutput) {
603	op := &request.Operation{
604		Name:       opCreatePartnerEventSource,
605		HTTPMethod: "POST",
606		HTTPPath:   "/",
607	}
608
609	if input == nil {
610		input = &CreatePartnerEventSourceInput{}
611	}
612
613	output = &CreatePartnerEventSourceOutput{}
614	req = c.newRequest(op, input, output)
615	return
616}
617
618// CreatePartnerEventSource API operation for Amazon EventBridge.
619//
620// Called by an SaaS partner to create a partner event source. This operation
621// is not used by Amazon Web Services customers.
622//
623// Each partner event source can be used by one Amazon Web Services account
624// to create a matching partner event bus in that Amazon Web Services account.
625// A SaaS partner must create one partner event source for each Amazon Web Services
626// account that wants to receive those event types.
627//
628// A partner event source creates events based on resources within the SaaS
629// partner's service or application.
630//
631// An Amazon Web Services account that creates a partner event bus that matches
632// the partner event source can use that event bus to receive events from the
633// partner, and then process them using Amazon Web Services Events rules and
634// targets.
635//
636// Partner event source names follow this format:
637//
638// partner_name/event_namespace/event_name
639//
640// partner_name is determined during partner registration and identifies the
641// partner to Amazon Web Services customers. event_namespace is determined by
642// the partner and is a way for the partner to categorize their events. event_name
643// is determined by the partner, and should uniquely identify an event-generating
644// resource within the partner system. The combination of event_namespace and
645// event_name should help Amazon Web Services customers decide whether to create
646// an event bus to receive these events.
647//
648// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
649// with awserr.Error's Code and Message methods to get detailed information about
650// the error.
651//
652// See the AWS API reference guide for Amazon EventBridge's
653// API operation CreatePartnerEventSource for usage and error information.
654//
655// Returned Error Types:
656//   * ResourceAlreadyExistsException
657//   The resource you are trying to create already exists.
658//
659//   * InternalException
660//   This exception occurs due to unexpected causes.
661//
662//   * ConcurrentModificationException
663//   There is concurrent modification on a rule, target, archive, or replay.
664//
665//   * LimitExceededException
666//   The request failed because it attempted to create resource beyond the allowed
667//   service quota.
668//
669//   * OperationDisabledException
670//   The operation you are attempting is not available in this region.
671//
672// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/CreatePartnerEventSource
673func (c *EventBridge) CreatePartnerEventSource(input *CreatePartnerEventSourceInput) (*CreatePartnerEventSourceOutput, error) {
674	req, out := c.CreatePartnerEventSourceRequest(input)
675	return out, req.Send()
676}
677
678// CreatePartnerEventSourceWithContext is the same as CreatePartnerEventSource with the addition of
679// the ability to pass a context and additional request options.
680//
681// See CreatePartnerEventSource for details on how to use this API operation.
682//
683// The context must be non-nil and will be used for request cancellation. If
684// the context is nil a panic will occur. In the future the SDK may create
685// sub-contexts for http.Requests. See https://golang.org/pkg/context/
686// for more information on using Contexts.
687func (c *EventBridge) CreatePartnerEventSourceWithContext(ctx aws.Context, input *CreatePartnerEventSourceInput, opts ...request.Option) (*CreatePartnerEventSourceOutput, error) {
688	req, out := c.CreatePartnerEventSourceRequest(input)
689	req.SetContext(ctx)
690	req.ApplyOptions(opts...)
691	return out, req.Send()
692}
693
694const opDeactivateEventSource = "DeactivateEventSource"
695
696// DeactivateEventSourceRequest generates a "aws/request.Request" representing the
697// client's request for the DeactivateEventSource operation. The "output" return
698// value will be populated with the request's response once the request completes
699// successfully.
700//
701// Use "Send" method on the returned Request to send the API call to the service.
702// the "output" return value is not valid until after Send returns without error.
703//
704// See DeactivateEventSource for more information on using the DeactivateEventSource
705// API call, and error handling.
706//
707// This method is useful when you want to inject custom logic or configuration
708// into the SDK's request lifecycle. Such as custom headers, or retry logic.
709//
710//
711//    // Example sending a request using the DeactivateEventSourceRequest method.
712//    req, resp := client.DeactivateEventSourceRequest(params)
713//
714//    err := req.Send()
715//    if err == nil { // resp is now filled
716//        fmt.Println(resp)
717//    }
718//
719// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeactivateEventSource
720func (c *EventBridge) DeactivateEventSourceRequest(input *DeactivateEventSourceInput) (req *request.Request, output *DeactivateEventSourceOutput) {
721	op := &request.Operation{
722		Name:       opDeactivateEventSource,
723		HTTPMethod: "POST",
724		HTTPPath:   "/",
725	}
726
727	if input == nil {
728		input = &DeactivateEventSourceInput{}
729	}
730
731	output = &DeactivateEventSourceOutput{}
732	req = c.newRequest(op, input, output)
733	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
734	return
735}
736
737// DeactivateEventSource API operation for Amazon EventBridge.
738//
739// You can use this operation to temporarily stop receiving events from the
740// specified partner event source. The matching event bus is not deleted.
741//
742// When you deactivate a partner event source, the source goes into PENDING
743// state. If it remains in PENDING state for more than two weeks, it is deleted.
744//
745// To activate a deactivated partner event source, use ActivateEventSource (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ActivateEventSource.html).
746//
747// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
748// with awserr.Error's Code and Message methods to get detailed information about
749// the error.
750//
751// See the AWS API reference guide for Amazon EventBridge's
752// API operation DeactivateEventSource for usage and error information.
753//
754// Returned Error Types:
755//   * ResourceNotFoundException
756//   An entity that you specified does not exist.
757//
758//   * ConcurrentModificationException
759//   There is concurrent modification on a rule, target, archive, or replay.
760//
761//   * InvalidStateException
762//   The specified state is not a valid state for an event source.
763//
764//   * InternalException
765//   This exception occurs due to unexpected causes.
766//
767//   * OperationDisabledException
768//   The operation you are attempting is not available in this region.
769//
770// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeactivateEventSource
771func (c *EventBridge) DeactivateEventSource(input *DeactivateEventSourceInput) (*DeactivateEventSourceOutput, error) {
772	req, out := c.DeactivateEventSourceRequest(input)
773	return out, req.Send()
774}
775
776// DeactivateEventSourceWithContext is the same as DeactivateEventSource with the addition of
777// the ability to pass a context and additional request options.
778//
779// See DeactivateEventSource for details on how to use this API operation.
780//
781// The context must be non-nil and will be used for request cancellation. If
782// the context is nil a panic will occur. In the future the SDK may create
783// sub-contexts for http.Requests. See https://golang.org/pkg/context/
784// for more information on using Contexts.
785func (c *EventBridge) DeactivateEventSourceWithContext(ctx aws.Context, input *DeactivateEventSourceInput, opts ...request.Option) (*DeactivateEventSourceOutput, error) {
786	req, out := c.DeactivateEventSourceRequest(input)
787	req.SetContext(ctx)
788	req.ApplyOptions(opts...)
789	return out, req.Send()
790}
791
792const opDeauthorizeConnection = "DeauthorizeConnection"
793
794// DeauthorizeConnectionRequest generates a "aws/request.Request" representing the
795// client's request for the DeauthorizeConnection operation. The "output" return
796// value will be populated with the request's response once the request completes
797// successfully.
798//
799// Use "Send" method on the returned Request to send the API call to the service.
800// the "output" return value is not valid until after Send returns without error.
801//
802// See DeauthorizeConnection for more information on using the DeauthorizeConnection
803// API call, and error handling.
804//
805// This method is useful when you want to inject custom logic or configuration
806// into the SDK's request lifecycle. Such as custom headers, or retry logic.
807//
808//
809//    // Example sending a request using the DeauthorizeConnectionRequest method.
810//    req, resp := client.DeauthorizeConnectionRequest(params)
811//
812//    err := req.Send()
813//    if err == nil { // resp is now filled
814//        fmt.Println(resp)
815//    }
816//
817// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeauthorizeConnection
818func (c *EventBridge) DeauthorizeConnectionRequest(input *DeauthorizeConnectionInput) (req *request.Request, output *DeauthorizeConnectionOutput) {
819	op := &request.Operation{
820		Name:       opDeauthorizeConnection,
821		HTTPMethod: "POST",
822		HTTPPath:   "/",
823	}
824
825	if input == nil {
826		input = &DeauthorizeConnectionInput{}
827	}
828
829	output = &DeauthorizeConnectionOutput{}
830	req = c.newRequest(op, input, output)
831	return
832}
833
834// DeauthorizeConnection API operation for Amazon EventBridge.
835//
836// Removes all authorization parameters from the connection. This lets you remove
837// the secret from the connection so you can reuse it without having to create
838// a new connection.
839//
840// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
841// with awserr.Error's Code and Message methods to get detailed information about
842// the error.
843//
844// See the AWS API reference guide for Amazon EventBridge's
845// API operation DeauthorizeConnection for usage and error information.
846//
847// Returned Error Types:
848//   * ConcurrentModificationException
849//   There is concurrent modification on a rule, target, archive, or replay.
850//
851//   * ResourceNotFoundException
852//   An entity that you specified does not exist.
853//
854//   * InternalException
855//   This exception occurs due to unexpected causes.
856//
857// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeauthorizeConnection
858func (c *EventBridge) DeauthorizeConnection(input *DeauthorizeConnectionInput) (*DeauthorizeConnectionOutput, error) {
859	req, out := c.DeauthorizeConnectionRequest(input)
860	return out, req.Send()
861}
862
863// DeauthorizeConnectionWithContext is the same as DeauthorizeConnection with the addition of
864// the ability to pass a context and additional request options.
865//
866// See DeauthorizeConnection for details on how to use this API operation.
867//
868// The context must be non-nil and will be used for request cancellation. If
869// the context is nil a panic will occur. In the future the SDK may create
870// sub-contexts for http.Requests. See https://golang.org/pkg/context/
871// for more information on using Contexts.
872func (c *EventBridge) DeauthorizeConnectionWithContext(ctx aws.Context, input *DeauthorizeConnectionInput, opts ...request.Option) (*DeauthorizeConnectionOutput, error) {
873	req, out := c.DeauthorizeConnectionRequest(input)
874	req.SetContext(ctx)
875	req.ApplyOptions(opts...)
876	return out, req.Send()
877}
878
879const opDeleteApiDestination = "DeleteApiDestination"
880
881// DeleteApiDestinationRequest generates a "aws/request.Request" representing the
882// client's request for the DeleteApiDestination operation. The "output" return
883// value will be populated with the request's response once the request completes
884// successfully.
885//
886// Use "Send" method on the returned Request to send the API call to the service.
887// the "output" return value is not valid until after Send returns without error.
888//
889// See DeleteApiDestination for more information on using the DeleteApiDestination
890// API call, and error handling.
891//
892// This method is useful when you want to inject custom logic or configuration
893// into the SDK's request lifecycle. Such as custom headers, or retry logic.
894//
895//
896//    // Example sending a request using the DeleteApiDestinationRequest method.
897//    req, resp := client.DeleteApiDestinationRequest(params)
898//
899//    err := req.Send()
900//    if err == nil { // resp is now filled
901//        fmt.Println(resp)
902//    }
903//
904// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteApiDestination
905func (c *EventBridge) DeleteApiDestinationRequest(input *DeleteApiDestinationInput) (req *request.Request, output *DeleteApiDestinationOutput) {
906	op := &request.Operation{
907		Name:       opDeleteApiDestination,
908		HTTPMethod: "POST",
909		HTTPPath:   "/",
910	}
911
912	if input == nil {
913		input = &DeleteApiDestinationInput{}
914	}
915
916	output = &DeleteApiDestinationOutput{}
917	req = c.newRequest(op, input, output)
918	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
919	return
920}
921
922// DeleteApiDestination API operation for Amazon EventBridge.
923//
924// Deletes the specified API destination.
925//
926// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
927// with awserr.Error's Code and Message methods to get detailed information about
928// the error.
929//
930// See the AWS API reference guide for Amazon EventBridge's
931// API operation DeleteApiDestination for usage and error information.
932//
933// Returned Error Types:
934//   * ConcurrentModificationException
935//   There is concurrent modification on a rule, target, archive, or replay.
936//
937//   * ResourceNotFoundException
938//   An entity that you specified does not exist.
939//
940//   * InternalException
941//   This exception occurs due to unexpected causes.
942//
943// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteApiDestination
944func (c *EventBridge) DeleteApiDestination(input *DeleteApiDestinationInput) (*DeleteApiDestinationOutput, error) {
945	req, out := c.DeleteApiDestinationRequest(input)
946	return out, req.Send()
947}
948
949// DeleteApiDestinationWithContext is the same as DeleteApiDestination with the addition of
950// the ability to pass a context and additional request options.
951//
952// See DeleteApiDestination for details on how to use this API operation.
953//
954// The context must be non-nil and will be used for request cancellation. If
955// the context is nil a panic will occur. In the future the SDK may create
956// sub-contexts for http.Requests. See https://golang.org/pkg/context/
957// for more information on using Contexts.
958func (c *EventBridge) DeleteApiDestinationWithContext(ctx aws.Context, input *DeleteApiDestinationInput, opts ...request.Option) (*DeleteApiDestinationOutput, error) {
959	req, out := c.DeleteApiDestinationRequest(input)
960	req.SetContext(ctx)
961	req.ApplyOptions(opts...)
962	return out, req.Send()
963}
964
965const opDeleteArchive = "DeleteArchive"
966
967// DeleteArchiveRequest generates a "aws/request.Request" representing the
968// client's request for the DeleteArchive operation. The "output" return
969// value will be populated with the request's response once the request completes
970// successfully.
971//
972// Use "Send" method on the returned Request to send the API call to the service.
973// the "output" return value is not valid until after Send returns without error.
974//
975// See DeleteArchive for more information on using the DeleteArchive
976// API call, and error handling.
977//
978// This method is useful when you want to inject custom logic or configuration
979// into the SDK's request lifecycle. Such as custom headers, or retry logic.
980//
981//
982//    // Example sending a request using the DeleteArchiveRequest method.
983//    req, resp := client.DeleteArchiveRequest(params)
984//
985//    err := req.Send()
986//    if err == nil { // resp is now filled
987//        fmt.Println(resp)
988//    }
989//
990// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteArchive
991func (c *EventBridge) DeleteArchiveRequest(input *DeleteArchiveInput) (req *request.Request, output *DeleteArchiveOutput) {
992	op := &request.Operation{
993		Name:       opDeleteArchive,
994		HTTPMethod: "POST",
995		HTTPPath:   "/",
996	}
997
998	if input == nil {
999		input = &DeleteArchiveInput{}
1000	}
1001
1002	output = &DeleteArchiveOutput{}
1003	req = c.newRequest(op, input, output)
1004	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1005	return
1006}
1007
1008// DeleteArchive API operation for Amazon EventBridge.
1009//
1010// Deletes the specified archive.
1011//
1012// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1013// with awserr.Error's Code and Message methods to get detailed information about
1014// the error.
1015//
1016// See the AWS API reference guide for Amazon EventBridge's
1017// API operation DeleteArchive for usage and error information.
1018//
1019// Returned Error Types:
1020//   * ConcurrentModificationException
1021//   There is concurrent modification on a rule, target, archive, or replay.
1022//
1023//   * ResourceNotFoundException
1024//   An entity that you specified does not exist.
1025//
1026//   * InternalException
1027//   This exception occurs due to unexpected causes.
1028//
1029// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteArchive
1030func (c *EventBridge) DeleteArchive(input *DeleteArchiveInput) (*DeleteArchiveOutput, error) {
1031	req, out := c.DeleteArchiveRequest(input)
1032	return out, req.Send()
1033}
1034
1035// DeleteArchiveWithContext is the same as DeleteArchive with the addition of
1036// the ability to pass a context and additional request options.
1037//
1038// See DeleteArchive for details on how to use this API operation.
1039//
1040// The context must be non-nil and will be used for request cancellation. If
1041// the context is nil a panic will occur. In the future the SDK may create
1042// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1043// for more information on using Contexts.
1044func (c *EventBridge) DeleteArchiveWithContext(ctx aws.Context, input *DeleteArchiveInput, opts ...request.Option) (*DeleteArchiveOutput, error) {
1045	req, out := c.DeleteArchiveRequest(input)
1046	req.SetContext(ctx)
1047	req.ApplyOptions(opts...)
1048	return out, req.Send()
1049}
1050
1051const opDeleteConnection = "DeleteConnection"
1052
1053// DeleteConnectionRequest generates a "aws/request.Request" representing the
1054// client's request for the DeleteConnection operation. The "output" return
1055// value will be populated with the request's response once the request completes
1056// successfully.
1057//
1058// Use "Send" method on the returned Request to send the API call to the service.
1059// the "output" return value is not valid until after Send returns without error.
1060//
1061// See DeleteConnection for more information on using the DeleteConnection
1062// API call, and error handling.
1063//
1064// This method is useful when you want to inject custom logic or configuration
1065// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1066//
1067//
1068//    // Example sending a request using the DeleteConnectionRequest method.
1069//    req, resp := client.DeleteConnectionRequest(params)
1070//
1071//    err := req.Send()
1072//    if err == nil { // resp is now filled
1073//        fmt.Println(resp)
1074//    }
1075//
1076// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteConnection
1077func (c *EventBridge) DeleteConnectionRequest(input *DeleteConnectionInput) (req *request.Request, output *DeleteConnectionOutput) {
1078	op := &request.Operation{
1079		Name:       opDeleteConnection,
1080		HTTPMethod: "POST",
1081		HTTPPath:   "/",
1082	}
1083
1084	if input == nil {
1085		input = &DeleteConnectionInput{}
1086	}
1087
1088	output = &DeleteConnectionOutput{}
1089	req = c.newRequest(op, input, output)
1090	return
1091}
1092
1093// DeleteConnection API operation for Amazon EventBridge.
1094//
1095// Deletes a connection.
1096//
1097// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1098// with awserr.Error's Code and Message methods to get detailed information about
1099// the error.
1100//
1101// See the AWS API reference guide for Amazon EventBridge's
1102// API operation DeleteConnection for usage and error information.
1103//
1104// Returned Error Types:
1105//   * ConcurrentModificationException
1106//   There is concurrent modification on a rule, target, archive, or replay.
1107//
1108//   * ResourceNotFoundException
1109//   An entity that you specified does not exist.
1110//
1111//   * InternalException
1112//   This exception occurs due to unexpected causes.
1113//
1114// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteConnection
1115func (c *EventBridge) DeleteConnection(input *DeleteConnectionInput) (*DeleteConnectionOutput, error) {
1116	req, out := c.DeleteConnectionRequest(input)
1117	return out, req.Send()
1118}
1119
1120// DeleteConnectionWithContext is the same as DeleteConnection with the addition of
1121// the ability to pass a context and additional request options.
1122//
1123// See DeleteConnection for details on how to use this API operation.
1124//
1125// The context must be non-nil and will be used for request cancellation. If
1126// the context is nil a panic will occur. In the future the SDK may create
1127// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1128// for more information on using Contexts.
1129func (c *EventBridge) DeleteConnectionWithContext(ctx aws.Context, input *DeleteConnectionInput, opts ...request.Option) (*DeleteConnectionOutput, error) {
1130	req, out := c.DeleteConnectionRequest(input)
1131	req.SetContext(ctx)
1132	req.ApplyOptions(opts...)
1133	return out, req.Send()
1134}
1135
1136const opDeleteEventBus = "DeleteEventBus"
1137
1138// DeleteEventBusRequest generates a "aws/request.Request" representing the
1139// client's request for the DeleteEventBus operation. The "output" return
1140// value will be populated with the request's response once the request completes
1141// successfully.
1142//
1143// Use "Send" method on the returned Request to send the API call to the service.
1144// the "output" return value is not valid until after Send returns without error.
1145//
1146// See DeleteEventBus for more information on using the DeleteEventBus
1147// API call, and error handling.
1148//
1149// This method is useful when you want to inject custom logic or configuration
1150// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1151//
1152//
1153//    // Example sending a request using the DeleteEventBusRequest method.
1154//    req, resp := client.DeleteEventBusRequest(params)
1155//
1156//    err := req.Send()
1157//    if err == nil { // resp is now filled
1158//        fmt.Println(resp)
1159//    }
1160//
1161// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteEventBus
1162func (c *EventBridge) DeleteEventBusRequest(input *DeleteEventBusInput) (req *request.Request, output *DeleteEventBusOutput) {
1163	op := &request.Operation{
1164		Name:       opDeleteEventBus,
1165		HTTPMethod: "POST",
1166		HTTPPath:   "/",
1167	}
1168
1169	if input == nil {
1170		input = &DeleteEventBusInput{}
1171	}
1172
1173	output = &DeleteEventBusOutput{}
1174	req = c.newRequest(op, input, output)
1175	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1176	return
1177}
1178
1179// DeleteEventBus API operation for Amazon EventBridge.
1180//
1181// Deletes the specified custom event bus or partner event bus. All rules associated
1182// with this event bus need to be deleted. You can't delete your account's default
1183// event bus.
1184//
1185// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1186// with awserr.Error's Code and Message methods to get detailed information about
1187// the error.
1188//
1189// See the AWS API reference guide for Amazon EventBridge's
1190// API operation DeleteEventBus for usage and error information.
1191//
1192// Returned Error Types:
1193//   * InternalException
1194//   This exception occurs due to unexpected causes.
1195//
1196//   * ConcurrentModificationException
1197//   There is concurrent modification on a rule, target, archive, or replay.
1198//
1199// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteEventBus
1200func (c *EventBridge) DeleteEventBus(input *DeleteEventBusInput) (*DeleteEventBusOutput, error) {
1201	req, out := c.DeleteEventBusRequest(input)
1202	return out, req.Send()
1203}
1204
1205// DeleteEventBusWithContext is the same as DeleteEventBus with the addition of
1206// the ability to pass a context and additional request options.
1207//
1208// See DeleteEventBus for details on how to use this API operation.
1209//
1210// The context must be non-nil and will be used for request cancellation. If
1211// the context is nil a panic will occur. In the future the SDK may create
1212// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1213// for more information on using Contexts.
1214func (c *EventBridge) DeleteEventBusWithContext(ctx aws.Context, input *DeleteEventBusInput, opts ...request.Option) (*DeleteEventBusOutput, error) {
1215	req, out := c.DeleteEventBusRequest(input)
1216	req.SetContext(ctx)
1217	req.ApplyOptions(opts...)
1218	return out, req.Send()
1219}
1220
1221const opDeletePartnerEventSource = "DeletePartnerEventSource"
1222
1223// DeletePartnerEventSourceRequest generates a "aws/request.Request" representing the
1224// client's request for the DeletePartnerEventSource operation. The "output" return
1225// value will be populated with the request's response once the request completes
1226// successfully.
1227//
1228// Use "Send" method on the returned Request to send the API call to the service.
1229// the "output" return value is not valid until after Send returns without error.
1230//
1231// See DeletePartnerEventSource for more information on using the DeletePartnerEventSource
1232// API call, and error handling.
1233//
1234// This method is useful when you want to inject custom logic or configuration
1235// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1236//
1237//
1238//    // Example sending a request using the DeletePartnerEventSourceRequest method.
1239//    req, resp := client.DeletePartnerEventSourceRequest(params)
1240//
1241//    err := req.Send()
1242//    if err == nil { // resp is now filled
1243//        fmt.Println(resp)
1244//    }
1245//
1246// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeletePartnerEventSource
1247func (c *EventBridge) DeletePartnerEventSourceRequest(input *DeletePartnerEventSourceInput) (req *request.Request, output *DeletePartnerEventSourceOutput) {
1248	op := &request.Operation{
1249		Name:       opDeletePartnerEventSource,
1250		HTTPMethod: "POST",
1251		HTTPPath:   "/",
1252	}
1253
1254	if input == nil {
1255		input = &DeletePartnerEventSourceInput{}
1256	}
1257
1258	output = &DeletePartnerEventSourceOutput{}
1259	req = c.newRequest(op, input, output)
1260	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1261	return
1262}
1263
1264// DeletePartnerEventSource API operation for Amazon EventBridge.
1265//
1266// This operation is used by SaaS partners to delete a partner event source.
1267// This operation is not used by Amazon Web Services customers.
1268//
1269// When you delete an event source, the status of the corresponding partner
1270// event bus in the Amazon Web Services customer account becomes DELETED.
1271//
1272// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1273// with awserr.Error's Code and Message methods to get detailed information about
1274// the error.
1275//
1276// See the AWS API reference guide for Amazon EventBridge's
1277// API operation DeletePartnerEventSource for usage and error information.
1278//
1279// Returned Error Types:
1280//   * InternalException
1281//   This exception occurs due to unexpected causes.
1282//
1283//   * ConcurrentModificationException
1284//   There is concurrent modification on a rule, target, archive, or replay.
1285//
1286//   * OperationDisabledException
1287//   The operation you are attempting is not available in this region.
1288//
1289// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeletePartnerEventSource
1290func (c *EventBridge) DeletePartnerEventSource(input *DeletePartnerEventSourceInput) (*DeletePartnerEventSourceOutput, error) {
1291	req, out := c.DeletePartnerEventSourceRequest(input)
1292	return out, req.Send()
1293}
1294
1295// DeletePartnerEventSourceWithContext is the same as DeletePartnerEventSource with the addition of
1296// the ability to pass a context and additional request options.
1297//
1298// See DeletePartnerEventSource for details on how to use this API operation.
1299//
1300// The context must be non-nil and will be used for request cancellation. If
1301// the context is nil a panic will occur. In the future the SDK may create
1302// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1303// for more information on using Contexts.
1304func (c *EventBridge) DeletePartnerEventSourceWithContext(ctx aws.Context, input *DeletePartnerEventSourceInput, opts ...request.Option) (*DeletePartnerEventSourceOutput, error) {
1305	req, out := c.DeletePartnerEventSourceRequest(input)
1306	req.SetContext(ctx)
1307	req.ApplyOptions(opts...)
1308	return out, req.Send()
1309}
1310
1311const opDeleteRule = "DeleteRule"
1312
1313// DeleteRuleRequest generates a "aws/request.Request" representing the
1314// client's request for the DeleteRule operation. The "output" return
1315// value will be populated with the request's response once the request completes
1316// successfully.
1317//
1318// Use "Send" method on the returned Request to send the API call to the service.
1319// the "output" return value is not valid until after Send returns without error.
1320//
1321// See DeleteRule for more information on using the DeleteRule
1322// API call, and error handling.
1323//
1324// This method is useful when you want to inject custom logic or configuration
1325// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1326//
1327//
1328//    // Example sending a request using the DeleteRuleRequest method.
1329//    req, resp := client.DeleteRuleRequest(params)
1330//
1331//    err := req.Send()
1332//    if err == nil { // resp is now filled
1333//        fmt.Println(resp)
1334//    }
1335//
1336// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteRule
1337func (c *EventBridge) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) {
1338	op := &request.Operation{
1339		Name:       opDeleteRule,
1340		HTTPMethod: "POST",
1341		HTTPPath:   "/",
1342	}
1343
1344	if input == nil {
1345		input = &DeleteRuleInput{}
1346	}
1347
1348	output = &DeleteRuleOutput{}
1349	req = c.newRequest(op, input, output)
1350	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1351	return
1352}
1353
1354// DeleteRule API operation for Amazon EventBridge.
1355//
1356// Deletes the specified rule.
1357//
1358// Before you can delete the rule, you must remove all targets, using RemoveTargets
1359// (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RemoveTargets.html).
1360//
1361// When you delete a rule, incoming events might continue to match to the deleted
1362// rule. Allow a short period of time for changes to take effect.
1363//
1364// If you call delete rule multiple times for the same rule, all calls will
1365// succeed. When you call delete rule for a non-existent custom eventbus, ResourceNotFoundException
1366// is returned.
1367//
1368// Managed rules are rules created and managed by another Amazon Web Services
1369// service on your behalf. These rules are created by those other Amazon Web
1370// Services services to support functionality in those services. You can delete
1371// these rules using the Force option, but you should do so only if you are
1372// sure the other service is not still using that rule.
1373//
1374// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1375// with awserr.Error's Code and Message methods to get detailed information about
1376// the error.
1377//
1378// See the AWS API reference guide for Amazon EventBridge's
1379// API operation DeleteRule for usage and error information.
1380//
1381// Returned Error Types:
1382//   * ConcurrentModificationException
1383//   There is concurrent modification on a rule, target, archive, or replay.
1384//
1385//   * ManagedRuleException
1386//   This rule was created by an Amazon Web Services service on behalf of your
1387//   account. It is managed by that service. If you see this error in response
1388//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
1389//   calls to delete the rule or remove targets from the rule. You cannot modify
1390//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
1391//   TagResource, or UntagResource.
1392//
1393//   * InternalException
1394//   This exception occurs due to unexpected causes.
1395//
1396//   * ResourceNotFoundException
1397//   An entity that you specified does not exist.
1398//
1399// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DeleteRule
1400func (c *EventBridge) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) {
1401	req, out := c.DeleteRuleRequest(input)
1402	return out, req.Send()
1403}
1404
1405// DeleteRuleWithContext is the same as DeleteRule with the addition of
1406// the ability to pass a context and additional request options.
1407//
1408// See DeleteRule for details on how to use this API operation.
1409//
1410// The context must be non-nil and will be used for request cancellation. If
1411// the context is nil a panic will occur. In the future the SDK may create
1412// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1413// for more information on using Contexts.
1414func (c *EventBridge) DeleteRuleWithContext(ctx aws.Context, input *DeleteRuleInput, opts ...request.Option) (*DeleteRuleOutput, error) {
1415	req, out := c.DeleteRuleRequest(input)
1416	req.SetContext(ctx)
1417	req.ApplyOptions(opts...)
1418	return out, req.Send()
1419}
1420
1421const opDescribeApiDestination = "DescribeApiDestination"
1422
1423// DescribeApiDestinationRequest generates a "aws/request.Request" representing the
1424// client's request for the DescribeApiDestination operation. The "output" return
1425// value will be populated with the request's response once the request completes
1426// successfully.
1427//
1428// Use "Send" method on the returned Request to send the API call to the service.
1429// the "output" return value is not valid until after Send returns without error.
1430//
1431// See DescribeApiDestination for more information on using the DescribeApiDestination
1432// API call, and error handling.
1433//
1434// This method is useful when you want to inject custom logic or configuration
1435// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1436//
1437//
1438//    // Example sending a request using the DescribeApiDestinationRequest method.
1439//    req, resp := client.DescribeApiDestinationRequest(params)
1440//
1441//    err := req.Send()
1442//    if err == nil { // resp is now filled
1443//        fmt.Println(resp)
1444//    }
1445//
1446// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeApiDestination
1447func (c *EventBridge) DescribeApiDestinationRequest(input *DescribeApiDestinationInput) (req *request.Request, output *DescribeApiDestinationOutput) {
1448	op := &request.Operation{
1449		Name:       opDescribeApiDestination,
1450		HTTPMethod: "POST",
1451		HTTPPath:   "/",
1452	}
1453
1454	if input == nil {
1455		input = &DescribeApiDestinationInput{}
1456	}
1457
1458	output = &DescribeApiDestinationOutput{}
1459	req = c.newRequest(op, input, output)
1460	return
1461}
1462
1463// DescribeApiDestination API operation for Amazon EventBridge.
1464//
1465// Retrieves details about an API destination.
1466//
1467// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1468// with awserr.Error's Code and Message methods to get detailed information about
1469// the error.
1470//
1471// See the AWS API reference guide for Amazon EventBridge's
1472// API operation DescribeApiDestination for usage and error information.
1473//
1474// Returned Error Types:
1475//   * ResourceNotFoundException
1476//   An entity that you specified does not exist.
1477//
1478//   * InternalException
1479//   This exception occurs due to unexpected causes.
1480//
1481// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeApiDestination
1482func (c *EventBridge) DescribeApiDestination(input *DescribeApiDestinationInput) (*DescribeApiDestinationOutput, error) {
1483	req, out := c.DescribeApiDestinationRequest(input)
1484	return out, req.Send()
1485}
1486
1487// DescribeApiDestinationWithContext is the same as DescribeApiDestination with the addition of
1488// the ability to pass a context and additional request options.
1489//
1490// See DescribeApiDestination for details on how to use this API operation.
1491//
1492// The context must be non-nil and will be used for request cancellation. If
1493// the context is nil a panic will occur. In the future the SDK may create
1494// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1495// for more information on using Contexts.
1496func (c *EventBridge) DescribeApiDestinationWithContext(ctx aws.Context, input *DescribeApiDestinationInput, opts ...request.Option) (*DescribeApiDestinationOutput, error) {
1497	req, out := c.DescribeApiDestinationRequest(input)
1498	req.SetContext(ctx)
1499	req.ApplyOptions(opts...)
1500	return out, req.Send()
1501}
1502
1503const opDescribeArchive = "DescribeArchive"
1504
1505// DescribeArchiveRequest generates a "aws/request.Request" representing the
1506// client's request for the DescribeArchive operation. The "output" return
1507// value will be populated with the request's response once the request completes
1508// successfully.
1509//
1510// Use "Send" method on the returned Request to send the API call to the service.
1511// the "output" return value is not valid until after Send returns without error.
1512//
1513// See DescribeArchive for more information on using the DescribeArchive
1514// API call, and error handling.
1515//
1516// This method is useful when you want to inject custom logic or configuration
1517// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1518//
1519//
1520//    // Example sending a request using the DescribeArchiveRequest method.
1521//    req, resp := client.DescribeArchiveRequest(params)
1522//
1523//    err := req.Send()
1524//    if err == nil { // resp is now filled
1525//        fmt.Println(resp)
1526//    }
1527//
1528// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeArchive
1529func (c *EventBridge) DescribeArchiveRequest(input *DescribeArchiveInput) (req *request.Request, output *DescribeArchiveOutput) {
1530	op := &request.Operation{
1531		Name:       opDescribeArchive,
1532		HTTPMethod: "POST",
1533		HTTPPath:   "/",
1534	}
1535
1536	if input == nil {
1537		input = &DescribeArchiveInput{}
1538	}
1539
1540	output = &DescribeArchiveOutput{}
1541	req = c.newRequest(op, input, output)
1542	return
1543}
1544
1545// DescribeArchive API operation for Amazon EventBridge.
1546//
1547// Retrieves details about an archive.
1548//
1549// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1550// with awserr.Error's Code and Message methods to get detailed information about
1551// the error.
1552//
1553// See the AWS API reference guide for Amazon EventBridge's
1554// API operation DescribeArchive for usage and error information.
1555//
1556// Returned Error Types:
1557//   * ResourceAlreadyExistsException
1558//   The resource you are trying to create already exists.
1559//
1560//   * ResourceNotFoundException
1561//   An entity that you specified does not exist.
1562//
1563//   * InternalException
1564//   This exception occurs due to unexpected causes.
1565//
1566// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeArchive
1567func (c *EventBridge) DescribeArchive(input *DescribeArchiveInput) (*DescribeArchiveOutput, error) {
1568	req, out := c.DescribeArchiveRequest(input)
1569	return out, req.Send()
1570}
1571
1572// DescribeArchiveWithContext is the same as DescribeArchive with the addition of
1573// the ability to pass a context and additional request options.
1574//
1575// See DescribeArchive for details on how to use this API operation.
1576//
1577// The context must be non-nil and will be used for request cancellation. If
1578// the context is nil a panic will occur. In the future the SDK may create
1579// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1580// for more information on using Contexts.
1581func (c *EventBridge) DescribeArchiveWithContext(ctx aws.Context, input *DescribeArchiveInput, opts ...request.Option) (*DescribeArchiveOutput, error) {
1582	req, out := c.DescribeArchiveRequest(input)
1583	req.SetContext(ctx)
1584	req.ApplyOptions(opts...)
1585	return out, req.Send()
1586}
1587
1588const opDescribeConnection = "DescribeConnection"
1589
1590// DescribeConnectionRequest generates a "aws/request.Request" representing the
1591// client's request for the DescribeConnection operation. The "output" return
1592// value will be populated with the request's response once the request completes
1593// successfully.
1594//
1595// Use "Send" method on the returned Request to send the API call to the service.
1596// the "output" return value is not valid until after Send returns without error.
1597//
1598// See DescribeConnection for more information on using the DescribeConnection
1599// API call, and error handling.
1600//
1601// This method is useful when you want to inject custom logic or configuration
1602// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1603//
1604//
1605//    // Example sending a request using the DescribeConnectionRequest method.
1606//    req, resp := client.DescribeConnectionRequest(params)
1607//
1608//    err := req.Send()
1609//    if err == nil { // resp is now filled
1610//        fmt.Println(resp)
1611//    }
1612//
1613// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeConnection
1614func (c *EventBridge) DescribeConnectionRequest(input *DescribeConnectionInput) (req *request.Request, output *DescribeConnectionOutput) {
1615	op := &request.Operation{
1616		Name:       opDescribeConnection,
1617		HTTPMethod: "POST",
1618		HTTPPath:   "/",
1619	}
1620
1621	if input == nil {
1622		input = &DescribeConnectionInput{}
1623	}
1624
1625	output = &DescribeConnectionOutput{}
1626	req = c.newRequest(op, input, output)
1627	return
1628}
1629
1630// DescribeConnection API operation for Amazon EventBridge.
1631//
1632// Retrieves details about a connection.
1633//
1634// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1635// with awserr.Error's Code and Message methods to get detailed information about
1636// the error.
1637//
1638// See the AWS API reference guide for Amazon EventBridge's
1639// API operation DescribeConnection for usage and error information.
1640//
1641// Returned Error Types:
1642//   * ResourceNotFoundException
1643//   An entity that you specified does not exist.
1644//
1645//   * InternalException
1646//   This exception occurs due to unexpected causes.
1647//
1648// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeConnection
1649func (c *EventBridge) DescribeConnection(input *DescribeConnectionInput) (*DescribeConnectionOutput, error) {
1650	req, out := c.DescribeConnectionRequest(input)
1651	return out, req.Send()
1652}
1653
1654// DescribeConnectionWithContext is the same as DescribeConnection with the addition of
1655// the ability to pass a context and additional request options.
1656//
1657// See DescribeConnection for details on how to use this API operation.
1658//
1659// The context must be non-nil and will be used for request cancellation. If
1660// the context is nil a panic will occur. In the future the SDK may create
1661// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1662// for more information on using Contexts.
1663func (c *EventBridge) DescribeConnectionWithContext(ctx aws.Context, input *DescribeConnectionInput, opts ...request.Option) (*DescribeConnectionOutput, error) {
1664	req, out := c.DescribeConnectionRequest(input)
1665	req.SetContext(ctx)
1666	req.ApplyOptions(opts...)
1667	return out, req.Send()
1668}
1669
1670const opDescribeEventBus = "DescribeEventBus"
1671
1672// DescribeEventBusRequest generates a "aws/request.Request" representing the
1673// client's request for the DescribeEventBus operation. The "output" return
1674// value will be populated with the request's response once the request completes
1675// successfully.
1676//
1677// Use "Send" method on the returned Request to send the API call to the service.
1678// the "output" return value is not valid until after Send returns without error.
1679//
1680// See DescribeEventBus for more information on using the DescribeEventBus
1681// API call, and error handling.
1682//
1683// This method is useful when you want to inject custom logic or configuration
1684// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1685//
1686//
1687//    // Example sending a request using the DescribeEventBusRequest method.
1688//    req, resp := client.DescribeEventBusRequest(params)
1689//
1690//    err := req.Send()
1691//    if err == nil { // resp is now filled
1692//        fmt.Println(resp)
1693//    }
1694//
1695// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeEventBus
1696func (c *EventBridge) DescribeEventBusRequest(input *DescribeEventBusInput) (req *request.Request, output *DescribeEventBusOutput) {
1697	op := &request.Operation{
1698		Name:       opDescribeEventBus,
1699		HTTPMethod: "POST",
1700		HTTPPath:   "/",
1701	}
1702
1703	if input == nil {
1704		input = &DescribeEventBusInput{}
1705	}
1706
1707	output = &DescribeEventBusOutput{}
1708	req = c.newRequest(op, input, output)
1709	return
1710}
1711
1712// DescribeEventBus API operation for Amazon EventBridge.
1713//
1714// Displays details about an event bus in your account. This can include the
1715// external Amazon Web Services accounts that are permitted to write events
1716// to your default event bus, and the associated policy. For custom event buses
1717// and partner event buses, it displays the name, ARN, policy, state, and creation
1718// time.
1719//
1720// To enable your account to receive events from other accounts on its default
1721// event bus, use PutPermission (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutPermission.html).
1722//
1723// For more information about partner event buses, see CreateEventBus (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEventBus.html).
1724//
1725// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1726// with awserr.Error's Code and Message methods to get detailed information about
1727// the error.
1728//
1729// See the AWS API reference guide for Amazon EventBridge's
1730// API operation DescribeEventBus for usage and error information.
1731//
1732// Returned Error Types:
1733//   * ResourceNotFoundException
1734//   An entity that you specified does not exist.
1735//
1736//   * InternalException
1737//   This exception occurs due to unexpected causes.
1738//
1739// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeEventBus
1740func (c *EventBridge) DescribeEventBus(input *DescribeEventBusInput) (*DescribeEventBusOutput, error) {
1741	req, out := c.DescribeEventBusRequest(input)
1742	return out, req.Send()
1743}
1744
1745// DescribeEventBusWithContext is the same as DescribeEventBus with the addition of
1746// the ability to pass a context and additional request options.
1747//
1748// See DescribeEventBus for details on how to use this API operation.
1749//
1750// The context must be non-nil and will be used for request cancellation. If
1751// the context is nil a panic will occur. In the future the SDK may create
1752// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1753// for more information on using Contexts.
1754func (c *EventBridge) DescribeEventBusWithContext(ctx aws.Context, input *DescribeEventBusInput, opts ...request.Option) (*DescribeEventBusOutput, error) {
1755	req, out := c.DescribeEventBusRequest(input)
1756	req.SetContext(ctx)
1757	req.ApplyOptions(opts...)
1758	return out, req.Send()
1759}
1760
1761const opDescribeEventSource = "DescribeEventSource"
1762
1763// DescribeEventSourceRequest generates a "aws/request.Request" representing the
1764// client's request for the DescribeEventSource operation. The "output" return
1765// value will be populated with the request's response once the request completes
1766// successfully.
1767//
1768// Use "Send" method on the returned Request to send the API call to the service.
1769// the "output" return value is not valid until after Send returns without error.
1770//
1771// See DescribeEventSource for more information on using the DescribeEventSource
1772// API call, and error handling.
1773//
1774// This method is useful when you want to inject custom logic or configuration
1775// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1776//
1777//
1778//    // Example sending a request using the DescribeEventSourceRequest method.
1779//    req, resp := client.DescribeEventSourceRequest(params)
1780//
1781//    err := req.Send()
1782//    if err == nil { // resp is now filled
1783//        fmt.Println(resp)
1784//    }
1785//
1786// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeEventSource
1787func (c *EventBridge) DescribeEventSourceRequest(input *DescribeEventSourceInput) (req *request.Request, output *DescribeEventSourceOutput) {
1788	op := &request.Operation{
1789		Name:       opDescribeEventSource,
1790		HTTPMethod: "POST",
1791		HTTPPath:   "/",
1792	}
1793
1794	if input == nil {
1795		input = &DescribeEventSourceInput{}
1796	}
1797
1798	output = &DescribeEventSourceOutput{}
1799	req = c.newRequest(op, input, output)
1800	return
1801}
1802
1803// DescribeEventSource API operation for Amazon EventBridge.
1804//
1805// This operation lists details about a partner event source that is shared
1806// with your account.
1807//
1808// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1809// with awserr.Error's Code and Message methods to get detailed information about
1810// the error.
1811//
1812// See the AWS API reference guide for Amazon EventBridge's
1813// API operation DescribeEventSource for usage and error information.
1814//
1815// Returned Error Types:
1816//   * ResourceNotFoundException
1817//   An entity that you specified does not exist.
1818//
1819//   * InternalException
1820//   This exception occurs due to unexpected causes.
1821//
1822//   * OperationDisabledException
1823//   The operation you are attempting is not available in this region.
1824//
1825// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeEventSource
1826func (c *EventBridge) DescribeEventSource(input *DescribeEventSourceInput) (*DescribeEventSourceOutput, error) {
1827	req, out := c.DescribeEventSourceRequest(input)
1828	return out, req.Send()
1829}
1830
1831// DescribeEventSourceWithContext is the same as DescribeEventSource with the addition of
1832// the ability to pass a context and additional request options.
1833//
1834// See DescribeEventSource for details on how to use this API operation.
1835//
1836// The context must be non-nil and will be used for request cancellation. If
1837// the context is nil a panic will occur. In the future the SDK may create
1838// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1839// for more information on using Contexts.
1840func (c *EventBridge) DescribeEventSourceWithContext(ctx aws.Context, input *DescribeEventSourceInput, opts ...request.Option) (*DescribeEventSourceOutput, error) {
1841	req, out := c.DescribeEventSourceRequest(input)
1842	req.SetContext(ctx)
1843	req.ApplyOptions(opts...)
1844	return out, req.Send()
1845}
1846
1847const opDescribePartnerEventSource = "DescribePartnerEventSource"
1848
1849// DescribePartnerEventSourceRequest generates a "aws/request.Request" representing the
1850// client's request for the DescribePartnerEventSource operation. The "output" return
1851// value will be populated with the request's response once the request completes
1852// successfully.
1853//
1854// Use "Send" method on the returned Request to send the API call to the service.
1855// the "output" return value is not valid until after Send returns without error.
1856//
1857// See DescribePartnerEventSource for more information on using the DescribePartnerEventSource
1858// API call, and error handling.
1859//
1860// This method is useful when you want to inject custom logic or configuration
1861// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1862//
1863//
1864//    // Example sending a request using the DescribePartnerEventSourceRequest method.
1865//    req, resp := client.DescribePartnerEventSourceRequest(params)
1866//
1867//    err := req.Send()
1868//    if err == nil { // resp is now filled
1869//        fmt.Println(resp)
1870//    }
1871//
1872// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribePartnerEventSource
1873func (c *EventBridge) DescribePartnerEventSourceRequest(input *DescribePartnerEventSourceInput) (req *request.Request, output *DescribePartnerEventSourceOutput) {
1874	op := &request.Operation{
1875		Name:       opDescribePartnerEventSource,
1876		HTTPMethod: "POST",
1877		HTTPPath:   "/",
1878	}
1879
1880	if input == nil {
1881		input = &DescribePartnerEventSourceInput{}
1882	}
1883
1884	output = &DescribePartnerEventSourceOutput{}
1885	req = c.newRequest(op, input, output)
1886	return
1887}
1888
1889// DescribePartnerEventSource API operation for Amazon EventBridge.
1890//
1891// An SaaS partner can use this operation to list details about a partner event
1892// source that they have created. Amazon Web Services customers do not use this
1893// operation. Instead, Amazon Web Services customers can use DescribeEventSource
1894// (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeEventSource.html)
1895// to see details about a partner event source that is shared with them.
1896//
1897// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1898// with awserr.Error's Code and Message methods to get detailed information about
1899// the error.
1900//
1901// See the AWS API reference guide for Amazon EventBridge's
1902// API operation DescribePartnerEventSource for usage and error information.
1903//
1904// Returned Error Types:
1905//   * ResourceNotFoundException
1906//   An entity that you specified does not exist.
1907//
1908//   * InternalException
1909//   This exception occurs due to unexpected causes.
1910//
1911//   * OperationDisabledException
1912//   The operation you are attempting is not available in this region.
1913//
1914// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribePartnerEventSource
1915func (c *EventBridge) DescribePartnerEventSource(input *DescribePartnerEventSourceInput) (*DescribePartnerEventSourceOutput, error) {
1916	req, out := c.DescribePartnerEventSourceRequest(input)
1917	return out, req.Send()
1918}
1919
1920// DescribePartnerEventSourceWithContext is the same as DescribePartnerEventSource with the addition of
1921// the ability to pass a context and additional request options.
1922//
1923// See DescribePartnerEventSource for details on how to use this API operation.
1924//
1925// The context must be non-nil and will be used for request cancellation. If
1926// the context is nil a panic will occur. In the future the SDK may create
1927// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1928// for more information on using Contexts.
1929func (c *EventBridge) DescribePartnerEventSourceWithContext(ctx aws.Context, input *DescribePartnerEventSourceInput, opts ...request.Option) (*DescribePartnerEventSourceOutput, error) {
1930	req, out := c.DescribePartnerEventSourceRequest(input)
1931	req.SetContext(ctx)
1932	req.ApplyOptions(opts...)
1933	return out, req.Send()
1934}
1935
1936const opDescribeReplay = "DescribeReplay"
1937
1938// DescribeReplayRequest generates a "aws/request.Request" representing the
1939// client's request for the DescribeReplay operation. The "output" return
1940// value will be populated with the request's response once the request completes
1941// successfully.
1942//
1943// Use "Send" method on the returned Request to send the API call to the service.
1944// the "output" return value is not valid until after Send returns without error.
1945//
1946// See DescribeReplay for more information on using the DescribeReplay
1947// API call, and error handling.
1948//
1949// This method is useful when you want to inject custom logic or configuration
1950// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1951//
1952//
1953//    // Example sending a request using the DescribeReplayRequest method.
1954//    req, resp := client.DescribeReplayRequest(params)
1955//
1956//    err := req.Send()
1957//    if err == nil { // resp is now filled
1958//        fmt.Println(resp)
1959//    }
1960//
1961// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeReplay
1962func (c *EventBridge) DescribeReplayRequest(input *DescribeReplayInput) (req *request.Request, output *DescribeReplayOutput) {
1963	op := &request.Operation{
1964		Name:       opDescribeReplay,
1965		HTTPMethod: "POST",
1966		HTTPPath:   "/",
1967	}
1968
1969	if input == nil {
1970		input = &DescribeReplayInput{}
1971	}
1972
1973	output = &DescribeReplayOutput{}
1974	req = c.newRequest(op, input, output)
1975	return
1976}
1977
1978// DescribeReplay API operation for Amazon EventBridge.
1979//
1980// Retrieves details about a replay. Use DescribeReplay to determine the progress
1981// of a running replay. A replay processes events to replay based on the time
1982// in the event, and replays them using 1 minute intervals. If you use StartReplay
1983// and specify an EventStartTime and an EventEndTime that covers a 20 minute
1984// time range, the events are replayed from the first minute of that 20 minute
1985// range first. Then the events from the second minute are replayed. You can
1986// use DescribeReplay to determine the progress of a replay. The value returned
1987// for EventLastReplayedTime indicates the time within the specified time range
1988// associated with the last event replayed.
1989//
1990// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1991// with awserr.Error's Code and Message methods to get detailed information about
1992// the error.
1993//
1994// See the AWS API reference guide for Amazon EventBridge's
1995// API operation DescribeReplay for usage and error information.
1996//
1997// Returned Error Types:
1998//   * ResourceNotFoundException
1999//   An entity that you specified does not exist.
2000//
2001//   * InternalException
2002//   This exception occurs due to unexpected causes.
2003//
2004// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeReplay
2005func (c *EventBridge) DescribeReplay(input *DescribeReplayInput) (*DescribeReplayOutput, error) {
2006	req, out := c.DescribeReplayRequest(input)
2007	return out, req.Send()
2008}
2009
2010// DescribeReplayWithContext is the same as DescribeReplay with the addition of
2011// the ability to pass a context and additional request options.
2012//
2013// See DescribeReplay for details on how to use this API operation.
2014//
2015// The context must be non-nil and will be used for request cancellation. If
2016// the context is nil a panic will occur. In the future the SDK may create
2017// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2018// for more information on using Contexts.
2019func (c *EventBridge) DescribeReplayWithContext(ctx aws.Context, input *DescribeReplayInput, opts ...request.Option) (*DescribeReplayOutput, error) {
2020	req, out := c.DescribeReplayRequest(input)
2021	req.SetContext(ctx)
2022	req.ApplyOptions(opts...)
2023	return out, req.Send()
2024}
2025
2026const opDescribeRule = "DescribeRule"
2027
2028// DescribeRuleRequest generates a "aws/request.Request" representing the
2029// client's request for the DescribeRule operation. The "output" return
2030// value will be populated with the request's response once the request completes
2031// successfully.
2032//
2033// Use "Send" method on the returned Request to send the API call to the service.
2034// the "output" return value is not valid until after Send returns without error.
2035//
2036// See DescribeRule for more information on using the DescribeRule
2037// API call, and error handling.
2038//
2039// This method is useful when you want to inject custom logic or configuration
2040// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2041//
2042//
2043//    // Example sending a request using the DescribeRuleRequest method.
2044//    req, resp := client.DescribeRuleRequest(params)
2045//
2046//    err := req.Send()
2047//    if err == nil { // resp is now filled
2048//        fmt.Println(resp)
2049//    }
2050//
2051// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeRule
2052func (c *EventBridge) DescribeRuleRequest(input *DescribeRuleInput) (req *request.Request, output *DescribeRuleOutput) {
2053	op := &request.Operation{
2054		Name:       opDescribeRule,
2055		HTTPMethod: "POST",
2056		HTTPPath:   "/",
2057	}
2058
2059	if input == nil {
2060		input = &DescribeRuleInput{}
2061	}
2062
2063	output = &DescribeRuleOutput{}
2064	req = c.newRequest(op, input, output)
2065	return
2066}
2067
2068// DescribeRule API operation for Amazon EventBridge.
2069//
2070// Describes the specified rule.
2071//
2072// DescribeRule does not list the targets of a rule. To see the targets associated
2073// with a rule, use ListTargetsByRule (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ListTargetsByRule.html).
2074//
2075// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2076// with awserr.Error's Code and Message methods to get detailed information about
2077// the error.
2078//
2079// See the AWS API reference guide for Amazon EventBridge's
2080// API operation DescribeRule for usage and error information.
2081//
2082// Returned Error Types:
2083//   * ResourceNotFoundException
2084//   An entity that you specified does not exist.
2085//
2086//   * InternalException
2087//   This exception occurs due to unexpected causes.
2088//
2089// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DescribeRule
2090func (c *EventBridge) DescribeRule(input *DescribeRuleInput) (*DescribeRuleOutput, error) {
2091	req, out := c.DescribeRuleRequest(input)
2092	return out, req.Send()
2093}
2094
2095// DescribeRuleWithContext is the same as DescribeRule with the addition of
2096// the ability to pass a context and additional request options.
2097//
2098// See DescribeRule for details on how to use this API operation.
2099//
2100// The context must be non-nil and will be used for request cancellation. If
2101// the context is nil a panic will occur. In the future the SDK may create
2102// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2103// for more information on using Contexts.
2104func (c *EventBridge) DescribeRuleWithContext(ctx aws.Context, input *DescribeRuleInput, opts ...request.Option) (*DescribeRuleOutput, error) {
2105	req, out := c.DescribeRuleRequest(input)
2106	req.SetContext(ctx)
2107	req.ApplyOptions(opts...)
2108	return out, req.Send()
2109}
2110
2111const opDisableRule = "DisableRule"
2112
2113// DisableRuleRequest generates a "aws/request.Request" representing the
2114// client's request for the DisableRule operation. The "output" return
2115// value will be populated with the request's response once the request completes
2116// successfully.
2117//
2118// Use "Send" method on the returned Request to send the API call to the service.
2119// the "output" return value is not valid until after Send returns without error.
2120//
2121// See DisableRule for more information on using the DisableRule
2122// API call, and error handling.
2123//
2124// This method is useful when you want to inject custom logic or configuration
2125// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2126//
2127//
2128//    // Example sending a request using the DisableRuleRequest method.
2129//    req, resp := client.DisableRuleRequest(params)
2130//
2131//    err := req.Send()
2132//    if err == nil { // resp is now filled
2133//        fmt.Println(resp)
2134//    }
2135//
2136// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DisableRule
2137func (c *EventBridge) DisableRuleRequest(input *DisableRuleInput) (req *request.Request, output *DisableRuleOutput) {
2138	op := &request.Operation{
2139		Name:       opDisableRule,
2140		HTTPMethod: "POST",
2141		HTTPPath:   "/",
2142	}
2143
2144	if input == nil {
2145		input = &DisableRuleInput{}
2146	}
2147
2148	output = &DisableRuleOutput{}
2149	req = c.newRequest(op, input, output)
2150	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2151	return
2152}
2153
2154// DisableRule API operation for Amazon EventBridge.
2155//
2156// Disables the specified rule. A disabled rule won't match any events, and
2157// won't self-trigger if it has a schedule expression.
2158//
2159// When you disable a rule, incoming events might continue to match to the disabled
2160// rule. Allow a short period of time for changes to take effect.
2161//
2162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2163// with awserr.Error's Code and Message methods to get detailed information about
2164// the error.
2165//
2166// See the AWS API reference guide for Amazon EventBridge's
2167// API operation DisableRule for usage and error information.
2168//
2169// Returned Error Types:
2170//   * ResourceNotFoundException
2171//   An entity that you specified does not exist.
2172//
2173//   * ConcurrentModificationException
2174//   There is concurrent modification on a rule, target, archive, or replay.
2175//
2176//   * ManagedRuleException
2177//   This rule was created by an Amazon Web Services service on behalf of your
2178//   account. It is managed by that service. If you see this error in response
2179//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
2180//   calls to delete the rule or remove targets from the rule. You cannot modify
2181//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
2182//   TagResource, or UntagResource.
2183//
2184//   * InternalException
2185//   This exception occurs due to unexpected causes.
2186//
2187// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/DisableRule
2188func (c *EventBridge) DisableRule(input *DisableRuleInput) (*DisableRuleOutput, error) {
2189	req, out := c.DisableRuleRequest(input)
2190	return out, req.Send()
2191}
2192
2193// DisableRuleWithContext is the same as DisableRule with the addition of
2194// the ability to pass a context and additional request options.
2195//
2196// See DisableRule for details on how to use this API operation.
2197//
2198// The context must be non-nil and will be used for request cancellation. If
2199// the context is nil a panic will occur. In the future the SDK may create
2200// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2201// for more information on using Contexts.
2202func (c *EventBridge) DisableRuleWithContext(ctx aws.Context, input *DisableRuleInput, opts ...request.Option) (*DisableRuleOutput, error) {
2203	req, out := c.DisableRuleRequest(input)
2204	req.SetContext(ctx)
2205	req.ApplyOptions(opts...)
2206	return out, req.Send()
2207}
2208
2209const opEnableRule = "EnableRule"
2210
2211// EnableRuleRequest generates a "aws/request.Request" representing the
2212// client's request for the EnableRule operation. The "output" return
2213// value will be populated with the request's response once the request completes
2214// successfully.
2215//
2216// Use "Send" method on the returned Request to send the API call to the service.
2217// the "output" return value is not valid until after Send returns without error.
2218//
2219// See EnableRule for more information on using the EnableRule
2220// API call, and error handling.
2221//
2222// This method is useful when you want to inject custom logic or configuration
2223// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2224//
2225//
2226//    // Example sending a request using the EnableRuleRequest method.
2227//    req, resp := client.EnableRuleRequest(params)
2228//
2229//    err := req.Send()
2230//    if err == nil { // resp is now filled
2231//        fmt.Println(resp)
2232//    }
2233//
2234// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/EnableRule
2235func (c *EventBridge) EnableRuleRequest(input *EnableRuleInput) (req *request.Request, output *EnableRuleOutput) {
2236	op := &request.Operation{
2237		Name:       opEnableRule,
2238		HTTPMethod: "POST",
2239		HTTPPath:   "/",
2240	}
2241
2242	if input == nil {
2243		input = &EnableRuleInput{}
2244	}
2245
2246	output = &EnableRuleOutput{}
2247	req = c.newRequest(op, input, output)
2248	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2249	return
2250}
2251
2252// EnableRule API operation for Amazon EventBridge.
2253//
2254// Enables the specified rule. If the rule does not exist, the operation fails.
2255//
2256// When you enable a rule, incoming events might not immediately start matching
2257// to a newly enabled rule. Allow a short period of time for changes to take
2258// effect.
2259//
2260// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2261// with awserr.Error's Code and Message methods to get detailed information about
2262// the error.
2263//
2264// See the AWS API reference guide for Amazon EventBridge's
2265// API operation EnableRule for usage and error information.
2266//
2267// Returned Error Types:
2268//   * ResourceNotFoundException
2269//   An entity that you specified does not exist.
2270//
2271//   * ConcurrentModificationException
2272//   There is concurrent modification on a rule, target, archive, or replay.
2273//
2274//   * ManagedRuleException
2275//   This rule was created by an Amazon Web Services service on behalf of your
2276//   account. It is managed by that service. If you see this error in response
2277//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
2278//   calls to delete the rule or remove targets from the rule. You cannot modify
2279//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
2280//   TagResource, or UntagResource.
2281//
2282//   * InternalException
2283//   This exception occurs due to unexpected causes.
2284//
2285// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/EnableRule
2286func (c *EventBridge) EnableRule(input *EnableRuleInput) (*EnableRuleOutput, error) {
2287	req, out := c.EnableRuleRequest(input)
2288	return out, req.Send()
2289}
2290
2291// EnableRuleWithContext is the same as EnableRule with the addition of
2292// the ability to pass a context and additional request options.
2293//
2294// See EnableRule for details on how to use this API operation.
2295//
2296// The context must be non-nil and will be used for request cancellation. If
2297// the context is nil a panic will occur. In the future the SDK may create
2298// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2299// for more information on using Contexts.
2300func (c *EventBridge) EnableRuleWithContext(ctx aws.Context, input *EnableRuleInput, opts ...request.Option) (*EnableRuleOutput, error) {
2301	req, out := c.EnableRuleRequest(input)
2302	req.SetContext(ctx)
2303	req.ApplyOptions(opts...)
2304	return out, req.Send()
2305}
2306
2307const opListApiDestinations = "ListApiDestinations"
2308
2309// ListApiDestinationsRequest generates a "aws/request.Request" representing the
2310// client's request for the ListApiDestinations operation. The "output" return
2311// value will be populated with the request's response once the request completes
2312// successfully.
2313//
2314// Use "Send" method on the returned Request to send the API call to the service.
2315// the "output" return value is not valid until after Send returns without error.
2316//
2317// See ListApiDestinations for more information on using the ListApiDestinations
2318// API call, and error handling.
2319//
2320// This method is useful when you want to inject custom logic or configuration
2321// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2322//
2323//
2324//    // Example sending a request using the ListApiDestinationsRequest method.
2325//    req, resp := client.ListApiDestinationsRequest(params)
2326//
2327//    err := req.Send()
2328//    if err == nil { // resp is now filled
2329//        fmt.Println(resp)
2330//    }
2331//
2332// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListApiDestinations
2333func (c *EventBridge) ListApiDestinationsRequest(input *ListApiDestinationsInput) (req *request.Request, output *ListApiDestinationsOutput) {
2334	op := &request.Operation{
2335		Name:       opListApiDestinations,
2336		HTTPMethod: "POST",
2337		HTTPPath:   "/",
2338	}
2339
2340	if input == nil {
2341		input = &ListApiDestinationsInput{}
2342	}
2343
2344	output = &ListApiDestinationsOutput{}
2345	req = c.newRequest(op, input, output)
2346	return
2347}
2348
2349// ListApiDestinations API operation for Amazon EventBridge.
2350//
2351// Retrieves a list of API destination in the account in the current Region.
2352//
2353// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2354// with awserr.Error's Code and Message methods to get detailed information about
2355// the error.
2356//
2357// See the AWS API reference guide for Amazon EventBridge's
2358// API operation ListApiDestinations for usage and error information.
2359//
2360// Returned Error Types:
2361//   * InternalException
2362//   This exception occurs due to unexpected causes.
2363//
2364// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListApiDestinations
2365func (c *EventBridge) ListApiDestinations(input *ListApiDestinationsInput) (*ListApiDestinationsOutput, error) {
2366	req, out := c.ListApiDestinationsRequest(input)
2367	return out, req.Send()
2368}
2369
2370// ListApiDestinationsWithContext is the same as ListApiDestinations with the addition of
2371// the ability to pass a context and additional request options.
2372//
2373// See ListApiDestinations for details on how to use this API operation.
2374//
2375// The context must be non-nil and will be used for request cancellation. If
2376// the context is nil a panic will occur. In the future the SDK may create
2377// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2378// for more information on using Contexts.
2379func (c *EventBridge) ListApiDestinationsWithContext(ctx aws.Context, input *ListApiDestinationsInput, opts ...request.Option) (*ListApiDestinationsOutput, error) {
2380	req, out := c.ListApiDestinationsRequest(input)
2381	req.SetContext(ctx)
2382	req.ApplyOptions(opts...)
2383	return out, req.Send()
2384}
2385
2386const opListArchives = "ListArchives"
2387
2388// ListArchivesRequest generates a "aws/request.Request" representing the
2389// client's request for the ListArchives operation. The "output" return
2390// value will be populated with the request's response once the request completes
2391// successfully.
2392//
2393// Use "Send" method on the returned Request to send the API call to the service.
2394// the "output" return value is not valid until after Send returns without error.
2395//
2396// See ListArchives for more information on using the ListArchives
2397// API call, and error handling.
2398//
2399// This method is useful when you want to inject custom logic or configuration
2400// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2401//
2402//
2403//    // Example sending a request using the ListArchivesRequest method.
2404//    req, resp := client.ListArchivesRequest(params)
2405//
2406//    err := req.Send()
2407//    if err == nil { // resp is now filled
2408//        fmt.Println(resp)
2409//    }
2410//
2411// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListArchives
2412func (c *EventBridge) ListArchivesRequest(input *ListArchivesInput) (req *request.Request, output *ListArchivesOutput) {
2413	op := &request.Operation{
2414		Name:       opListArchives,
2415		HTTPMethod: "POST",
2416		HTTPPath:   "/",
2417	}
2418
2419	if input == nil {
2420		input = &ListArchivesInput{}
2421	}
2422
2423	output = &ListArchivesOutput{}
2424	req = c.newRequest(op, input, output)
2425	return
2426}
2427
2428// ListArchives API operation for Amazon EventBridge.
2429//
2430// Lists your archives. You can either list all the archives or you can provide
2431// a prefix to match to the archive names. Filter parameters are exclusive.
2432//
2433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2434// with awserr.Error's Code and Message methods to get detailed information about
2435// the error.
2436//
2437// See the AWS API reference guide for Amazon EventBridge's
2438// API operation ListArchives for usage and error information.
2439//
2440// Returned Error Types:
2441//   * ResourceNotFoundException
2442//   An entity that you specified does not exist.
2443//
2444//   * InternalException
2445//   This exception occurs due to unexpected causes.
2446//
2447// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListArchives
2448func (c *EventBridge) ListArchives(input *ListArchivesInput) (*ListArchivesOutput, error) {
2449	req, out := c.ListArchivesRequest(input)
2450	return out, req.Send()
2451}
2452
2453// ListArchivesWithContext is the same as ListArchives with the addition of
2454// the ability to pass a context and additional request options.
2455//
2456// See ListArchives for details on how to use this API operation.
2457//
2458// The context must be non-nil and will be used for request cancellation. If
2459// the context is nil a panic will occur. In the future the SDK may create
2460// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2461// for more information on using Contexts.
2462func (c *EventBridge) ListArchivesWithContext(ctx aws.Context, input *ListArchivesInput, opts ...request.Option) (*ListArchivesOutput, error) {
2463	req, out := c.ListArchivesRequest(input)
2464	req.SetContext(ctx)
2465	req.ApplyOptions(opts...)
2466	return out, req.Send()
2467}
2468
2469const opListConnections = "ListConnections"
2470
2471// ListConnectionsRequest generates a "aws/request.Request" representing the
2472// client's request for the ListConnections operation. The "output" return
2473// value will be populated with the request's response once the request completes
2474// successfully.
2475//
2476// Use "Send" method on the returned Request to send the API call to the service.
2477// the "output" return value is not valid until after Send returns without error.
2478//
2479// See ListConnections for more information on using the ListConnections
2480// API call, and error handling.
2481//
2482// This method is useful when you want to inject custom logic or configuration
2483// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2484//
2485//
2486//    // Example sending a request using the ListConnectionsRequest method.
2487//    req, resp := client.ListConnectionsRequest(params)
2488//
2489//    err := req.Send()
2490//    if err == nil { // resp is now filled
2491//        fmt.Println(resp)
2492//    }
2493//
2494// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListConnections
2495func (c *EventBridge) ListConnectionsRequest(input *ListConnectionsInput) (req *request.Request, output *ListConnectionsOutput) {
2496	op := &request.Operation{
2497		Name:       opListConnections,
2498		HTTPMethod: "POST",
2499		HTTPPath:   "/",
2500	}
2501
2502	if input == nil {
2503		input = &ListConnectionsInput{}
2504	}
2505
2506	output = &ListConnectionsOutput{}
2507	req = c.newRequest(op, input, output)
2508	return
2509}
2510
2511// ListConnections API operation for Amazon EventBridge.
2512//
2513// Retrieves a list of connections from the account.
2514//
2515// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2516// with awserr.Error's Code and Message methods to get detailed information about
2517// the error.
2518//
2519// See the AWS API reference guide for Amazon EventBridge's
2520// API operation ListConnections for usage and error information.
2521//
2522// Returned Error Types:
2523//   * InternalException
2524//   This exception occurs due to unexpected causes.
2525//
2526// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListConnections
2527func (c *EventBridge) ListConnections(input *ListConnectionsInput) (*ListConnectionsOutput, error) {
2528	req, out := c.ListConnectionsRequest(input)
2529	return out, req.Send()
2530}
2531
2532// ListConnectionsWithContext is the same as ListConnections with the addition of
2533// the ability to pass a context and additional request options.
2534//
2535// See ListConnections for details on how to use this API operation.
2536//
2537// The context must be non-nil and will be used for request cancellation. If
2538// the context is nil a panic will occur. In the future the SDK may create
2539// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2540// for more information on using Contexts.
2541func (c *EventBridge) ListConnectionsWithContext(ctx aws.Context, input *ListConnectionsInput, opts ...request.Option) (*ListConnectionsOutput, error) {
2542	req, out := c.ListConnectionsRequest(input)
2543	req.SetContext(ctx)
2544	req.ApplyOptions(opts...)
2545	return out, req.Send()
2546}
2547
2548const opListEventBuses = "ListEventBuses"
2549
2550// ListEventBusesRequest generates a "aws/request.Request" representing the
2551// client's request for the ListEventBuses operation. The "output" return
2552// value will be populated with the request's response once the request completes
2553// successfully.
2554//
2555// Use "Send" method on the returned Request to send the API call to the service.
2556// the "output" return value is not valid until after Send returns without error.
2557//
2558// See ListEventBuses for more information on using the ListEventBuses
2559// API call, and error handling.
2560//
2561// This method is useful when you want to inject custom logic or configuration
2562// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2563//
2564//
2565//    // Example sending a request using the ListEventBusesRequest method.
2566//    req, resp := client.ListEventBusesRequest(params)
2567//
2568//    err := req.Send()
2569//    if err == nil { // resp is now filled
2570//        fmt.Println(resp)
2571//    }
2572//
2573// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListEventBuses
2574func (c *EventBridge) ListEventBusesRequest(input *ListEventBusesInput) (req *request.Request, output *ListEventBusesOutput) {
2575	op := &request.Operation{
2576		Name:       opListEventBuses,
2577		HTTPMethod: "POST",
2578		HTTPPath:   "/",
2579	}
2580
2581	if input == nil {
2582		input = &ListEventBusesInput{}
2583	}
2584
2585	output = &ListEventBusesOutput{}
2586	req = c.newRequest(op, input, output)
2587	return
2588}
2589
2590// ListEventBuses API operation for Amazon EventBridge.
2591//
2592// Lists all the event buses in your account, including the default event bus,
2593// custom event buses, and partner event buses.
2594//
2595// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2596// with awserr.Error's Code and Message methods to get detailed information about
2597// the error.
2598//
2599// See the AWS API reference guide for Amazon EventBridge's
2600// API operation ListEventBuses for usage and error information.
2601//
2602// Returned Error Types:
2603//   * InternalException
2604//   This exception occurs due to unexpected causes.
2605//
2606// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListEventBuses
2607func (c *EventBridge) ListEventBuses(input *ListEventBusesInput) (*ListEventBusesOutput, error) {
2608	req, out := c.ListEventBusesRequest(input)
2609	return out, req.Send()
2610}
2611
2612// ListEventBusesWithContext is the same as ListEventBuses with the addition of
2613// the ability to pass a context and additional request options.
2614//
2615// See ListEventBuses for details on how to use this API operation.
2616//
2617// The context must be non-nil and will be used for request cancellation. If
2618// the context is nil a panic will occur. In the future the SDK may create
2619// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2620// for more information on using Contexts.
2621func (c *EventBridge) ListEventBusesWithContext(ctx aws.Context, input *ListEventBusesInput, opts ...request.Option) (*ListEventBusesOutput, error) {
2622	req, out := c.ListEventBusesRequest(input)
2623	req.SetContext(ctx)
2624	req.ApplyOptions(opts...)
2625	return out, req.Send()
2626}
2627
2628const opListEventSources = "ListEventSources"
2629
2630// ListEventSourcesRequest generates a "aws/request.Request" representing the
2631// client's request for the ListEventSources operation. The "output" return
2632// value will be populated with the request's response once the request completes
2633// successfully.
2634//
2635// Use "Send" method on the returned Request to send the API call to the service.
2636// the "output" return value is not valid until after Send returns without error.
2637//
2638// See ListEventSources for more information on using the ListEventSources
2639// API call, and error handling.
2640//
2641// This method is useful when you want to inject custom logic or configuration
2642// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2643//
2644//
2645//    // Example sending a request using the ListEventSourcesRequest method.
2646//    req, resp := client.ListEventSourcesRequest(params)
2647//
2648//    err := req.Send()
2649//    if err == nil { // resp is now filled
2650//        fmt.Println(resp)
2651//    }
2652//
2653// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListEventSources
2654func (c *EventBridge) ListEventSourcesRequest(input *ListEventSourcesInput) (req *request.Request, output *ListEventSourcesOutput) {
2655	op := &request.Operation{
2656		Name:       opListEventSources,
2657		HTTPMethod: "POST",
2658		HTTPPath:   "/",
2659	}
2660
2661	if input == nil {
2662		input = &ListEventSourcesInput{}
2663	}
2664
2665	output = &ListEventSourcesOutput{}
2666	req = c.newRequest(op, input, output)
2667	return
2668}
2669
2670// ListEventSources API operation for Amazon EventBridge.
2671//
2672// You can use this to see all the partner event sources that have been shared
2673// with your Amazon Web Services account. For more information about partner
2674// event sources, see CreateEventBus (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEventBus.html).
2675//
2676// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2677// with awserr.Error's Code and Message methods to get detailed information about
2678// the error.
2679//
2680// See the AWS API reference guide for Amazon EventBridge's
2681// API operation ListEventSources for usage and error information.
2682//
2683// Returned Error Types:
2684//   * InternalException
2685//   This exception occurs due to unexpected causes.
2686//
2687//   * OperationDisabledException
2688//   The operation you are attempting is not available in this region.
2689//
2690// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListEventSources
2691func (c *EventBridge) ListEventSources(input *ListEventSourcesInput) (*ListEventSourcesOutput, error) {
2692	req, out := c.ListEventSourcesRequest(input)
2693	return out, req.Send()
2694}
2695
2696// ListEventSourcesWithContext is the same as ListEventSources with the addition of
2697// the ability to pass a context and additional request options.
2698//
2699// See ListEventSources for details on how to use this API operation.
2700//
2701// The context must be non-nil and will be used for request cancellation. If
2702// the context is nil a panic will occur. In the future the SDK may create
2703// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2704// for more information on using Contexts.
2705func (c *EventBridge) ListEventSourcesWithContext(ctx aws.Context, input *ListEventSourcesInput, opts ...request.Option) (*ListEventSourcesOutput, error) {
2706	req, out := c.ListEventSourcesRequest(input)
2707	req.SetContext(ctx)
2708	req.ApplyOptions(opts...)
2709	return out, req.Send()
2710}
2711
2712const opListPartnerEventSourceAccounts = "ListPartnerEventSourceAccounts"
2713
2714// ListPartnerEventSourceAccountsRequest generates a "aws/request.Request" representing the
2715// client's request for the ListPartnerEventSourceAccounts operation. The "output" return
2716// value will be populated with the request's response once the request completes
2717// successfully.
2718//
2719// Use "Send" method on the returned Request to send the API call to the service.
2720// the "output" return value is not valid until after Send returns without error.
2721//
2722// See ListPartnerEventSourceAccounts for more information on using the ListPartnerEventSourceAccounts
2723// API call, and error handling.
2724//
2725// This method is useful when you want to inject custom logic or configuration
2726// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2727//
2728//
2729//    // Example sending a request using the ListPartnerEventSourceAccountsRequest method.
2730//    req, resp := client.ListPartnerEventSourceAccountsRequest(params)
2731//
2732//    err := req.Send()
2733//    if err == nil { // resp is now filled
2734//        fmt.Println(resp)
2735//    }
2736//
2737// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListPartnerEventSourceAccounts
2738func (c *EventBridge) ListPartnerEventSourceAccountsRequest(input *ListPartnerEventSourceAccountsInput) (req *request.Request, output *ListPartnerEventSourceAccountsOutput) {
2739	op := &request.Operation{
2740		Name:       opListPartnerEventSourceAccounts,
2741		HTTPMethod: "POST",
2742		HTTPPath:   "/",
2743	}
2744
2745	if input == nil {
2746		input = &ListPartnerEventSourceAccountsInput{}
2747	}
2748
2749	output = &ListPartnerEventSourceAccountsOutput{}
2750	req = c.newRequest(op, input, output)
2751	return
2752}
2753
2754// ListPartnerEventSourceAccounts API operation for Amazon EventBridge.
2755//
2756// An SaaS partner can use this operation to display the Amazon Web Services
2757// account ID that a particular partner event source name is associated with.
2758// This operation is not used by Amazon Web Services customers.
2759//
2760// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2761// with awserr.Error's Code and Message methods to get detailed information about
2762// the error.
2763//
2764// See the AWS API reference guide for Amazon EventBridge's
2765// API operation ListPartnerEventSourceAccounts for usage and error information.
2766//
2767// Returned Error Types:
2768//   * ResourceNotFoundException
2769//   An entity that you specified does not exist.
2770//
2771//   * InternalException
2772//   This exception occurs due to unexpected causes.
2773//
2774//   * OperationDisabledException
2775//   The operation you are attempting is not available in this region.
2776//
2777// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListPartnerEventSourceAccounts
2778func (c *EventBridge) ListPartnerEventSourceAccounts(input *ListPartnerEventSourceAccountsInput) (*ListPartnerEventSourceAccountsOutput, error) {
2779	req, out := c.ListPartnerEventSourceAccountsRequest(input)
2780	return out, req.Send()
2781}
2782
2783// ListPartnerEventSourceAccountsWithContext is the same as ListPartnerEventSourceAccounts with the addition of
2784// the ability to pass a context and additional request options.
2785//
2786// See ListPartnerEventSourceAccounts for details on how to use this API operation.
2787//
2788// The context must be non-nil and will be used for request cancellation. If
2789// the context is nil a panic will occur. In the future the SDK may create
2790// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2791// for more information on using Contexts.
2792func (c *EventBridge) ListPartnerEventSourceAccountsWithContext(ctx aws.Context, input *ListPartnerEventSourceAccountsInput, opts ...request.Option) (*ListPartnerEventSourceAccountsOutput, error) {
2793	req, out := c.ListPartnerEventSourceAccountsRequest(input)
2794	req.SetContext(ctx)
2795	req.ApplyOptions(opts...)
2796	return out, req.Send()
2797}
2798
2799const opListPartnerEventSources = "ListPartnerEventSources"
2800
2801// ListPartnerEventSourcesRequest generates a "aws/request.Request" representing the
2802// client's request for the ListPartnerEventSources operation. The "output" return
2803// value will be populated with the request's response once the request completes
2804// successfully.
2805//
2806// Use "Send" method on the returned Request to send the API call to the service.
2807// the "output" return value is not valid until after Send returns without error.
2808//
2809// See ListPartnerEventSources for more information on using the ListPartnerEventSources
2810// API call, and error handling.
2811//
2812// This method is useful when you want to inject custom logic or configuration
2813// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2814//
2815//
2816//    // Example sending a request using the ListPartnerEventSourcesRequest method.
2817//    req, resp := client.ListPartnerEventSourcesRequest(params)
2818//
2819//    err := req.Send()
2820//    if err == nil { // resp is now filled
2821//        fmt.Println(resp)
2822//    }
2823//
2824// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListPartnerEventSources
2825func (c *EventBridge) ListPartnerEventSourcesRequest(input *ListPartnerEventSourcesInput) (req *request.Request, output *ListPartnerEventSourcesOutput) {
2826	op := &request.Operation{
2827		Name:       opListPartnerEventSources,
2828		HTTPMethod: "POST",
2829		HTTPPath:   "/",
2830	}
2831
2832	if input == nil {
2833		input = &ListPartnerEventSourcesInput{}
2834	}
2835
2836	output = &ListPartnerEventSourcesOutput{}
2837	req = c.newRequest(op, input, output)
2838	return
2839}
2840
2841// ListPartnerEventSources API operation for Amazon EventBridge.
2842//
2843// An SaaS partner can use this operation to list all the partner event source
2844// names that they have created. This operation is not used by Amazon Web Services
2845// customers.
2846//
2847// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2848// with awserr.Error's Code and Message methods to get detailed information about
2849// the error.
2850//
2851// See the AWS API reference guide for Amazon EventBridge's
2852// API operation ListPartnerEventSources for usage and error information.
2853//
2854// Returned Error Types:
2855//   * InternalException
2856//   This exception occurs due to unexpected causes.
2857//
2858//   * OperationDisabledException
2859//   The operation you are attempting is not available in this region.
2860//
2861// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListPartnerEventSources
2862func (c *EventBridge) ListPartnerEventSources(input *ListPartnerEventSourcesInput) (*ListPartnerEventSourcesOutput, error) {
2863	req, out := c.ListPartnerEventSourcesRequest(input)
2864	return out, req.Send()
2865}
2866
2867// ListPartnerEventSourcesWithContext is the same as ListPartnerEventSources with the addition of
2868// the ability to pass a context and additional request options.
2869//
2870// See ListPartnerEventSources for details on how to use this API operation.
2871//
2872// The context must be non-nil and will be used for request cancellation. If
2873// the context is nil a panic will occur. In the future the SDK may create
2874// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2875// for more information on using Contexts.
2876func (c *EventBridge) ListPartnerEventSourcesWithContext(ctx aws.Context, input *ListPartnerEventSourcesInput, opts ...request.Option) (*ListPartnerEventSourcesOutput, error) {
2877	req, out := c.ListPartnerEventSourcesRequest(input)
2878	req.SetContext(ctx)
2879	req.ApplyOptions(opts...)
2880	return out, req.Send()
2881}
2882
2883const opListReplays = "ListReplays"
2884
2885// ListReplaysRequest generates a "aws/request.Request" representing the
2886// client's request for the ListReplays operation. The "output" return
2887// value will be populated with the request's response once the request completes
2888// successfully.
2889//
2890// Use "Send" method on the returned Request to send the API call to the service.
2891// the "output" return value is not valid until after Send returns without error.
2892//
2893// See ListReplays for more information on using the ListReplays
2894// API call, and error handling.
2895//
2896// This method is useful when you want to inject custom logic or configuration
2897// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2898//
2899//
2900//    // Example sending a request using the ListReplaysRequest method.
2901//    req, resp := client.ListReplaysRequest(params)
2902//
2903//    err := req.Send()
2904//    if err == nil { // resp is now filled
2905//        fmt.Println(resp)
2906//    }
2907//
2908// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListReplays
2909func (c *EventBridge) ListReplaysRequest(input *ListReplaysInput) (req *request.Request, output *ListReplaysOutput) {
2910	op := &request.Operation{
2911		Name:       opListReplays,
2912		HTTPMethod: "POST",
2913		HTTPPath:   "/",
2914	}
2915
2916	if input == nil {
2917		input = &ListReplaysInput{}
2918	}
2919
2920	output = &ListReplaysOutput{}
2921	req = c.newRequest(op, input, output)
2922	return
2923}
2924
2925// ListReplays API operation for Amazon EventBridge.
2926//
2927// Lists your replays. You can either list all the replays or you can provide
2928// a prefix to match to the replay names. Filter parameters are exclusive.
2929//
2930// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2931// with awserr.Error's Code and Message methods to get detailed information about
2932// the error.
2933//
2934// See the AWS API reference guide for Amazon EventBridge's
2935// API operation ListReplays for usage and error information.
2936//
2937// Returned Error Types:
2938//   * InternalException
2939//   This exception occurs due to unexpected causes.
2940//
2941// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListReplays
2942func (c *EventBridge) ListReplays(input *ListReplaysInput) (*ListReplaysOutput, error) {
2943	req, out := c.ListReplaysRequest(input)
2944	return out, req.Send()
2945}
2946
2947// ListReplaysWithContext is the same as ListReplays with the addition of
2948// the ability to pass a context and additional request options.
2949//
2950// See ListReplays for details on how to use this API operation.
2951//
2952// The context must be non-nil and will be used for request cancellation. If
2953// the context is nil a panic will occur. In the future the SDK may create
2954// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2955// for more information on using Contexts.
2956func (c *EventBridge) ListReplaysWithContext(ctx aws.Context, input *ListReplaysInput, opts ...request.Option) (*ListReplaysOutput, error) {
2957	req, out := c.ListReplaysRequest(input)
2958	req.SetContext(ctx)
2959	req.ApplyOptions(opts...)
2960	return out, req.Send()
2961}
2962
2963const opListRuleNamesByTarget = "ListRuleNamesByTarget"
2964
2965// ListRuleNamesByTargetRequest generates a "aws/request.Request" representing the
2966// client's request for the ListRuleNamesByTarget operation. The "output" return
2967// value will be populated with the request's response once the request completes
2968// successfully.
2969//
2970// Use "Send" method on the returned Request to send the API call to the service.
2971// the "output" return value is not valid until after Send returns without error.
2972//
2973// See ListRuleNamesByTarget for more information on using the ListRuleNamesByTarget
2974// API call, and error handling.
2975//
2976// This method is useful when you want to inject custom logic or configuration
2977// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2978//
2979//
2980//    // Example sending a request using the ListRuleNamesByTargetRequest method.
2981//    req, resp := client.ListRuleNamesByTargetRequest(params)
2982//
2983//    err := req.Send()
2984//    if err == nil { // resp is now filled
2985//        fmt.Println(resp)
2986//    }
2987//
2988// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListRuleNamesByTarget
2989func (c *EventBridge) ListRuleNamesByTargetRequest(input *ListRuleNamesByTargetInput) (req *request.Request, output *ListRuleNamesByTargetOutput) {
2990	op := &request.Operation{
2991		Name:       opListRuleNamesByTarget,
2992		HTTPMethod: "POST",
2993		HTTPPath:   "/",
2994	}
2995
2996	if input == nil {
2997		input = &ListRuleNamesByTargetInput{}
2998	}
2999
3000	output = &ListRuleNamesByTargetOutput{}
3001	req = c.newRequest(op, input, output)
3002	return
3003}
3004
3005// ListRuleNamesByTarget API operation for Amazon EventBridge.
3006//
3007// Lists the rules for the specified target. You can see which of the rules
3008// in Amazon EventBridge can invoke a specific target in your account.
3009//
3010// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3011// with awserr.Error's Code and Message methods to get detailed information about
3012// the error.
3013//
3014// See the AWS API reference guide for Amazon EventBridge's
3015// API operation ListRuleNamesByTarget for usage and error information.
3016//
3017// Returned Error Types:
3018//   * InternalException
3019//   This exception occurs due to unexpected causes.
3020//
3021//   * ResourceNotFoundException
3022//   An entity that you specified does not exist.
3023//
3024// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListRuleNamesByTarget
3025func (c *EventBridge) ListRuleNamesByTarget(input *ListRuleNamesByTargetInput) (*ListRuleNamesByTargetOutput, error) {
3026	req, out := c.ListRuleNamesByTargetRequest(input)
3027	return out, req.Send()
3028}
3029
3030// ListRuleNamesByTargetWithContext is the same as ListRuleNamesByTarget with the addition of
3031// the ability to pass a context and additional request options.
3032//
3033// See ListRuleNamesByTarget for details on how to use this API operation.
3034//
3035// The context must be non-nil and will be used for request cancellation. If
3036// the context is nil a panic will occur. In the future the SDK may create
3037// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3038// for more information on using Contexts.
3039func (c *EventBridge) ListRuleNamesByTargetWithContext(ctx aws.Context, input *ListRuleNamesByTargetInput, opts ...request.Option) (*ListRuleNamesByTargetOutput, error) {
3040	req, out := c.ListRuleNamesByTargetRequest(input)
3041	req.SetContext(ctx)
3042	req.ApplyOptions(opts...)
3043	return out, req.Send()
3044}
3045
3046const opListRules = "ListRules"
3047
3048// ListRulesRequest generates a "aws/request.Request" representing the
3049// client's request for the ListRules operation. The "output" return
3050// value will be populated with the request's response once the request completes
3051// successfully.
3052//
3053// Use "Send" method on the returned Request to send the API call to the service.
3054// the "output" return value is not valid until after Send returns without error.
3055//
3056// See ListRules for more information on using the ListRules
3057// API call, and error handling.
3058//
3059// This method is useful when you want to inject custom logic or configuration
3060// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3061//
3062//
3063//    // Example sending a request using the ListRulesRequest method.
3064//    req, resp := client.ListRulesRequest(params)
3065//
3066//    err := req.Send()
3067//    if err == nil { // resp is now filled
3068//        fmt.Println(resp)
3069//    }
3070//
3071// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListRules
3072func (c *EventBridge) ListRulesRequest(input *ListRulesInput) (req *request.Request, output *ListRulesOutput) {
3073	op := &request.Operation{
3074		Name:       opListRules,
3075		HTTPMethod: "POST",
3076		HTTPPath:   "/",
3077	}
3078
3079	if input == nil {
3080		input = &ListRulesInput{}
3081	}
3082
3083	output = &ListRulesOutput{}
3084	req = c.newRequest(op, input, output)
3085	return
3086}
3087
3088// ListRules API operation for Amazon EventBridge.
3089//
3090// Lists your Amazon EventBridge rules. You can either list all the rules or
3091// you can provide a prefix to match to the rule names.
3092//
3093// ListRules does not list the targets of a rule. To see the targets associated
3094// with a rule, use ListTargetsByRule (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_ListTargetsByRule.html).
3095//
3096// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3097// with awserr.Error's Code and Message methods to get detailed information about
3098// the error.
3099//
3100// See the AWS API reference guide for Amazon EventBridge's
3101// API operation ListRules for usage and error information.
3102//
3103// Returned Error Types:
3104//   * InternalException
3105//   This exception occurs due to unexpected causes.
3106//
3107//   * ResourceNotFoundException
3108//   An entity that you specified does not exist.
3109//
3110// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListRules
3111func (c *EventBridge) ListRules(input *ListRulesInput) (*ListRulesOutput, error) {
3112	req, out := c.ListRulesRequest(input)
3113	return out, req.Send()
3114}
3115
3116// ListRulesWithContext is the same as ListRules with the addition of
3117// the ability to pass a context and additional request options.
3118//
3119// See ListRules for details on how to use this API operation.
3120//
3121// The context must be non-nil and will be used for request cancellation. If
3122// the context is nil a panic will occur. In the future the SDK may create
3123// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3124// for more information on using Contexts.
3125func (c *EventBridge) ListRulesWithContext(ctx aws.Context, input *ListRulesInput, opts ...request.Option) (*ListRulesOutput, error) {
3126	req, out := c.ListRulesRequest(input)
3127	req.SetContext(ctx)
3128	req.ApplyOptions(opts...)
3129	return out, req.Send()
3130}
3131
3132const opListTagsForResource = "ListTagsForResource"
3133
3134// ListTagsForResourceRequest generates a "aws/request.Request" representing the
3135// client's request for the ListTagsForResource operation. The "output" return
3136// value will be populated with the request's response once the request completes
3137// successfully.
3138//
3139// Use "Send" method on the returned Request to send the API call to the service.
3140// the "output" return value is not valid until after Send returns without error.
3141//
3142// See ListTagsForResource for more information on using the ListTagsForResource
3143// API call, and error handling.
3144//
3145// This method is useful when you want to inject custom logic or configuration
3146// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3147//
3148//
3149//    // Example sending a request using the ListTagsForResourceRequest method.
3150//    req, resp := client.ListTagsForResourceRequest(params)
3151//
3152//    err := req.Send()
3153//    if err == nil { // resp is now filled
3154//        fmt.Println(resp)
3155//    }
3156//
3157// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListTagsForResource
3158func (c *EventBridge) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
3159	op := &request.Operation{
3160		Name:       opListTagsForResource,
3161		HTTPMethod: "POST",
3162		HTTPPath:   "/",
3163	}
3164
3165	if input == nil {
3166		input = &ListTagsForResourceInput{}
3167	}
3168
3169	output = &ListTagsForResourceOutput{}
3170	req = c.newRequest(op, input, output)
3171	return
3172}
3173
3174// ListTagsForResource API operation for Amazon EventBridge.
3175//
3176// Displays the tags associated with an EventBridge resource. In EventBridge,
3177// rules and event buses can be tagged.
3178//
3179// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3180// with awserr.Error's Code and Message methods to get detailed information about
3181// the error.
3182//
3183// See the AWS API reference guide for Amazon EventBridge's
3184// API operation ListTagsForResource for usage and error information.
3185//
3186// Returned Error Types:
3187//   * ResourceNotFoundException
3188//   An entity that you specified does not exist.
3189//
3190//   * InternalException
3191//   This exception occurs due to unexpected causes.
3192//
3193// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListTagsForResource
3194func (c *EventBridge) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
3195	req, out := c.ListTagsForResourceRequest(input)
3196	return out, req.Send()
3197}
3198
3199// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
3200// the ability to pass a context and additional request options.
3201//
3202// See ListTagsForResource for details on how to use this API operation.
3203//
3204// The context must be non-nil and will be used for request cancellation. If
3205// the context is nil a panic will occur. In the future the SDK may create
3206// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3207// for more information on using Contexts.
3208func (c *EventBridge) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
3209	req, out := c.ListTagsForResourceRequest(input)
3210	req.SetContext(ctx)
3211	req.ApplyOptions(opts...)
3212	return out, req.Send()
3213}
3214
3215const opListTargetsByRule = "ListTargetsByRule"
3216
3217// ListTargetsByRuleRequest generates a "aws/request.Request" representing the
3218// client's request for the ListTargetsByRule operation. The "output" return
3219// value will be populated with the request's response once the request completes
3220// successfully.
3221//
3222// Use "Send" method on the returned Request to send the API call to the service.
3223// the "output" return value is not valid until after Send returns without error.
3224//
3225// See ListTargetsByRule for more information on using the ListTargetsByRule
3226// API call, and error handling.
3227//
3228// This method is useful when you want to inject custom logic or configuration
3229// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3230//
3231//
3232//    // Example sending a request using the ListTargetsByRuleRequest method.
3233//    req, resp := client.ListTargetsByRuleRequest(params)
3234//
3235//    err := req.Send()
3236//    if err == nil { // resp is now filled
3237//        fmt.Println(resp)
3238//    }
3239//
3240// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListTargetsByRule
3241func (c *EventBridge) ListTargetsByRuleRequest(input *ListTargetsByRuleInput) (req *request.Request, output *ListTargetsByRuleOutput) {
3242	op := &request.Operation{
3243		Name:       opListTargetsByRule,
3244		HTTPMethod: "POST",
3245		HTTPPath:   "/",
3246	}
3247
3248	if input == nil {
3249		input = &ListTargetsByRuleInput{}
3250	}
3251
3252	output = &ListTargetsByRuleOutput{}
3253	req = c.newRequest(op, input, output)
3254	return
3255}
3256
3257// ListTargetsByRule API operation for Amazon EventBridge.
3258//
3259// Lists the targets assigned to the specified rule.
3260//
3261// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3262// with awserr.Error's Code and Message methods to get detailed information about
3263// the error.
3264//
3265// See the AWS API reference guide for Amazon EventBridge's
3266// API operation ListTargetsByRule for usage and error information.
3267//
3268// Returned Error Types:
3269//   * ResourceNotFoundException
3270//   An entity that you specified does not exist.
3271//
3272//   * InternalException
3273//   This exception occurs due to unexpected causes.
3274//
3275// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/ListTargetsByRule
3276func (c *EventBridge) ListTargetsByRule(input *ListTargetsByRuleInput) (*ListTargetsByRuleOutput, error) {
3277	req, out := c.ListTargetsByRuleRequest(input)
3278	return out, req.Send()
3279}
3280
3281// ListTargetsByRuleWithContext is the same as ListTargetsByRule with the addition of
3282// the ability to pass a context and additional request options.
3283//
3284// See ListTargetsByRule for details on how to use this API operation.
3285//
3286// The context must be non-nil and will be used for request cancellation. If
3287// the context is nil a panic will occur. In the future the SDK may create
3288// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3289// for more information on using Contexts.
3290func (c *EventBridge) ListTargetsByRuleWithContext(ctx aws.Context, input *ListTargetsByRuleInput, opts ...request.Option) (*ListTargetsByRuleOutput, error) {
3291	req, out := c.ListTargetsByRuleRequest(input)
3292	req.SetContext(ctx)
3293	req.ApplyOptions(opts...)
3294	return out, req.Send()
3295}
3296
3297const opPutEvents = "PutEvents"
3298
3299// PutEventsRequest generates a "aws/request.Request" representing the
3300// client's request for the PutEvents operation. The "output" return
3301// value will be populated with the request's response once the request completes
3302// successfully.
3303//
3304// Use "Send" method on the returned Request to send the API call to the service.
3305// the "output" return value is not valid until after Send returns without error.
3306//
3307// See PutEvents for more information on using the PutEvents
3308// API call, and error handling.
3309//
3310// This method is useful when you want to inject custom logic or configuration
3311// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3312//
3313//
3314//    // Example sending a request using the PutEventsRequest method.
3315//    req, resp := client.PutEventsRequest(params)
3316//
3317//    err := req.Send()
3318//    if err == nil { // resp is now filled
3319//        fmt.Println(resp)
3320//    }
3321//
3322// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutEvents
3323func (c *EventBridge) PutEventsRequest(input *PutEventsInput) (req *request.Request, output *PutEventsOutput) {
3324	op := &request.Operation{
3325		Name:       opPutEvents,
3326		HTTPMethod: "POST",
3327		HTTPPath:   "/",
3328	}
3329
3330	if input == nil {
3331		input = &PutEventsInput{}
3332	}
3333
3334	output = &PutEventsOutput{}
3335	req = c.newRequest(op, input, output)
3336	return
3337}
3338
3339// PutEvents API operation for Amazon EventBridge.
3340//
3341// Sends custom events to Amazon EventBridge so that they can be matched to
3342// rules.
3343//
3344// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3345// with awserr.Error's Code and Message methods to get detailed information about
3346// the error.
3347//
3348// See the AWS API reference guide for Amazon EventBridge's
3349// API operation PutEvents for usage and error information.
3350//
3351// Returned Error Types:
3352//   * InternalException
3353//   This exception occurs due to unexpected causes.
3354//
3355// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutEvents
3356func (c *EventBridge) PutEvents(input *PutEventsInput) (*PutEventsOutput, error) {
3357	req, out := c.PutEventsRequest(input)
3358	return out, req.Send()
3359}
3360
3361// PutEventsWithContext is the same as PutEvents with the addition of
3362// the ability to pass a context and additional request options.
3363//
3364// See PutEvents for details on how to use this API operation.
3365//
3366// The context must be non-nil and will be used for request cancellation. If
3367// the context is nil a panic will occur. In the future the SDK may create
3368// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3369// for more information on using Contexts.
3370func (c *EventBridge) PutEventsWithContext(ctx aws.Context, input *PutEventsInput, opts ...request.Option) (*PutEventsOutput, error) {
3371	req, out := c.PutEventsRequest(input)
3372	req.SetContext(ctx)
3373	req.ApplyOptions(opts...)
3374	return out, req.Send()
3375}
3376
3377const opPutPartnerEvents = "PutPartnerEvents"
3378
3379// PutPartnerEventsRequest generates a "aws/request.Request" representing the
3380// client's request for the PutPartnerEvents operation. The "output" return
3381// value will be populated with the request's response once the request completes
3382// successfully.
3383//
3384// Use "Send" method on the returned Request to send the API call to the service.
3385// the "output" return value is not valid until after Send returns without error.
3386//
3387// See PutPartnerEvents for more information on using the PutPartnerEvents
3388// API call, and error handling.
3389//
3390// This method is useful when you want to inject custom logic or configuration
3391// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3392//
3393//
3394//    // Example sending a request using the PutPartnerEventsRequest method.
3395//    req, resp := client.PutPartnerEventsRequest(params)
3396//
3397//    err := req.Send()
3398//    if err == nil { // resp is now filled
3399//        fmt.Println(resp)
3400//    }
3401//
3402// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutPartnerEvents
3403func (c *EventBridge) PutPartnerEventsRequest(input *PutPartnerEventsInput) (req *request.Request, output *PutPartnerEventsOutput) {
3404	op := &request.Operation{
3405		Name:       opPutPartnerEvents,
3406		HTTPMethod: "POST",
3407		HTTPPath:   "/",
3408	}
3409
3410	if input == nil {
3411		input = &PutPartnerEventsInput{}
3412	}
3413
3414	output = &PutPartnerEventsOutput{}
3415	req = c.newRequest(op, input, output)
3416	return
3417}
3418
3419// PutPartnerEvents API operation for Amazon EventBridge.
3420//
3421// This is used by SaaS partners to write events to a customer's partner event
3422// bus. Amazon Web Services customers do not use this operation.
3423//
3424// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3425// with awserr.Error's Code and Message methods to get detailed information about
3426// the error.
3427//
3428// See the AWS API reference guide for Amazon EventBridge's
3429// API operation PutPartnerEvents for usage and error information.
3430//
3431// Returned Error Types:
3432//   * InternalException
3433//   This exception occurs due to unexpected causes.
3434//
3435//   * OperationDisabledException
3436//   The operation you are attempting is not available in this region.
3437//
3438// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutPartnerEvents
3439func (c *EventBridge) PutPartnerEvents(input *PutPartnerEventsInput) (*PutPartnerEventsOutput, error) {
3440	req, out := c.PutPartnerEventsRequest(input)
3441	return out, req.Send()
3442}
3443
3444// PutPartnerEventsWithContext is the same as PutPartnerEvents with the addition of
3445// the ability to pass a context and additional request options.
3446//
3447// See PutPartnerEvents for details on how to use this API operation.
3448//
3449// The context must be non-nil and will be used for request cancellation. If
3450// the context is nil a panic will occur. In the future the SDK may create
3451// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3452// for more information on using Contexts.
3453func (c *EventBridge) PutPartnerEventsWithContext(ctx aws.Context, input *PutPartnerEventsInput, opts ...request.Option) (*PutPartnerEventsOutput, error) {
3454	req, out := c.PutPartnerEventsRequest(input)
3455	req.SetContext(ctx)
3456	req.ApplyOptions(opts...)
3457	return out, req.Send()
3458}
3459
3460const opPutPermission = "PutPermission"
3461
3462// PutPermissionRequest generates a "aws/request.Request" representing the
3463// client's request for the PutPermission operation. The "output" return
3464// value will be populated with the request's response once the request completes
3465// successfully.
3466//
3467// Use "Send" method on the returned Request to send the API call to the service.
3468// the "output" return value is not valid until after Send returns without error.
3469//
3470// See PutPermission for more information on using the PutPermission
3471// API call, and error handling.
3472//
3473// This method is useful when you want to inject custom logic or configuration
3474// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3475//
3476//
3477//    // Example sending a request using the PutPermissionRequest method.
3478//    req, resp := client.PutPermissionRequest(params)
3479//
3480//    err := req.Send()
3481//    if err == nil { // resp is now filled
3482//        fmt.Println(resp)
3483//    }
3484//
3485// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutPermission
3486func (c *EventBridge) PutPermissionRequest(input *PutPermissionInput) (req *request.Request, output *PutPermissionOutput) {
3487	op := &request.Operation{
3488		Name:       opPutPermission,
3489		HTTPMethod: "POST",
3490		HTTPPath:   "/",
3491	}
3492
3493	if input == nil {
3494		input = &PutPermissionInput{}
3495	}
3496
3497	output = &PutPermissionOutput{}
3498	req = c.newRequest(op, input, output)
3499	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3500	return
3501}
3502
3503// PutPermission API operation for Amazon EventBridge.
3504//
3505// Running PutPermission permits the specified Amazon Web Services account or
3506// Amazon Web Services organization to put events to the specified event bus.
3507// Amazon EventBridge (CloudWatch Events) rules in your account are triggered
3508// by these events arriving to an event bus in your account.
3509//
3510// For another account to send events to your account, that external account
3511// must have an EventBridge rule with your account's event bus as a target.
3512//
3513// To enable multiple Amazon Web Services accounts to put events to your event
3514// bus, run PutPermission once for each of these accounts. Or, if all the accounts
3515// are members of the same Amazon Web Services organization, you can run PutPermission
3516// once specifying Principal as "*" and specifying the Amazon Web Services organization
3517// ID in Condition, to grant permissions to all accounts in that organization.
3518//
3519// If you grant permissions using an organization, then accounts in that organization
3520// must specify a RoleArn with proper permissions when they use PutTarget to
3521// add your account's event bus as a target. For more information, see Sending
3522// and Receiving Events Between Amazon Web Services Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html)
3523// in the Amazon EventBridge User Guide.
3524//
3525// The permission policy on the event bus cannot exceed 10 KB in size.
3526//
3527// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3528// with awserr.Error's Code and Message methods to get detailed information about
3529// the error.
3530//
3531// See the AWS API reference guide for Amazon EventBridge's
3532// API operation PutPermission for usage and error information.
3533//
3534// Returned Error Types:
3535//   * ResourceNotFoundException
3536//   An entity that you specified does not exist.
3537//
3538//   * PolicyLengthExceededException
3539//   The event bus policy is too long. For more information, see the limits.
3540//
3541//   * InternalException
3542//   This exception occurs due to unexpected causes.
3543//
3544//   * ConcurrentModificationException
3545//   There is concurrent modification on a rule, target, archive, or replay.
3546//
3547//   * OperationDisabledException
3548//   The operation you are attempting is not available in this region.
3549//
3550// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutPermission
3551func (c *EventBridge) PutPermission(input *PutPermissionInput) (*PutPermissionOutput, error) {
3552	req, out := c.PutPermissionRequest(input)
3553	return out, req.Send()
3554}
3555
3556// PutPermissionWithContext is the same as PutPermission with the addition of
3557// the ability to pass a context and additional request options.
3558//
3559// See PutPermission for details on how to use this API operation.
3560//
3561// The context must be non-nil and will be used for request cancellation. If
3562// the context is nil a panic will occur. In the future the SDK may create
3563// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3564// for more information on using Contexts.
3565func (c *EventBridge) PutPermissionWithContext(ctx aws.Context, input *PutPermissionInput, opts ...request.Option) (*PutPermissionOutput, error) {
3566	req, out := c.PutPermissionRequest(input)
3567	req.SetContext(ctx)
3568	req.ApplyOptions(opts...)
3569	return out, req.Send()
3570}
3571
3572const opPutRule = "PutRule"
3573
3574// PutRuleRequest generates a "aws/request.Request" representing the
3575// client's request for the PutRule operation. The "output" return
3576// value will be populated with the request's response once the request completes
3577// successfully.
3578//
3579// Use "Send" method on the returned Request to send the API call to the service.
3580// the "output" return value is not valid until after Send returns without error.
3581//
3582// See PutRule for more information on using the PutRule
3583// API call, and error handling.
3584//
3585// This method is useful when you want to inject custom logic or configuration
3586// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3587//
3588//
3589//    // Example sending a request using the PutRuleRequest method.
3590//    req, resp := client.PutRuleRequest(params)
3591//
3592//    err := req.Send()
3593//    if err == nil { // resp is now filled
3594//        fmt.Println(resp)
3595//    }
3596//
3597// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutRule
3598func (c *EventBridge) PutRuleRequest(input *PutRuleInput) (req *request.Request, output *PutRuleOutput) {
3599	op := &request.Operation{
3600		Name:       opPutRule,
3601		HTTPMethod: "POST",
3602		HTTPPath:   "/",
3603	}
3604
3605	if input == nil {
3606		input = &PutRuleInput{}
3607	}
3608
3609	output = &PutRuleOutput{}
3610	req = c.newRequest(op, input, output)
3611	return
3612}
3613
3614// PutRule API operation for Amazon EventBridge.
3615//
3616// Creates or updates the specified rule. Rules are enabled by default, or based
3617// on value of the state. You can disable a rule using DisableRule (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DisableRule.html).
3618//
3619// A single rule watches for events from a single event bus. Events generated
3620// by Amazon Web Services services go to your account's default event bus. Events
3621// generated by SaaS partner services or applications go to the matching partner
3622// event bus. If you have custom applications or services, you can specify whether
3623// their events go to your default event bus or a custom event bus that you
3624// have created. For more information, see CreateEventBus (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_CreateEventBus.html).
3625//
3626// If you are updating an existing rule, the rule is replaced with what you
3627// specify in this PutRule command. If you omit arguments in PutRule, the old
3628// values for those arguments are not kept. Instead, they are replaced with
3629// null values.
3630//
3631// When you create or update a rule, incoming events might not immediately start
3632// matching to new or updated rules. Allow a short period of time for changes
3633// to take effect.
3634//
3635// A rule must contain at least an EventPattern or ScheduleExpression. Rules
3636// with EventPatterns are triggered when a matching event is observed. Rules
3637// with ScheduleExpressions self-trigger based on the given schedule. A rule
3638// can have both an EventPattern and a ScheduleExpression, in which case the
3639// rule triggers on matching events as well as on a schedule.
3640//
3641// When you initially create a rule, you can optionally assign one or more tags
3642// to the rule. Tags can help you organize and categorize your resources. You
3643// can also use them to scope user permissions, by granting a user permission
3644// to access or change only rules with certain tag values. To use the PutRule
3645// operation and assign tags, you must have both the events:PutRule and events:TagResource
3646// permissions.
3647//
3648// If you are updating an existing rule, any tags you specify in the PutRule
3649// operation are ignored. To update the tags of an existing rule, use TagResource
3650// (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_TagResource.html)
3651// and UntagResource (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_UntagResource.html).
3652//
3653// Most services in Amazon Web Services treat : or / as the same character in
3654// Amazon Resource Names (ARNs). However, EventBridge uses an exact match in
3655// event patterns and rules. Be sure to use the correct ARN characters when
3656// creating event patterns so that they match the ARN syntax in the event you
3657// want to match.
3658//
3659// In EventBridge, it is possible to create rules that lead to infinite loops,
3660// where a rule is fired repeatedly. For example, a rule might detect that ACLs
3661// have changed on an S3 bucket, and trigger software to change them to the
3662// desired state. If the rule is not written carefully, the subsequent change
3663// to the ACLs fires the rule again, creating an infinite loop.
3664//
3665// To prevent this, write the rules so that the triggered actions do not re-fire
3666// the same rule. For example, your rule could fire only if ACLs are found to
3667// be in a bad state, instead of after any change.
3668//
3669// An infinite loop can quickly cause higher than expected charges. We recommend
3670// that you use budgeting, which alerts you when charges exceed your specified
3671// limit. For more information, see Managing Your Costs with Budgets (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html).
3672//
3673// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3674// with awserr.Error's Code and Message methods to get detailed information about
3675// the error.
3676//
3677// See the AWS API reference guide for Amazon EventBridge's
3678// API operation PutRule for usage and error information.
3679//
3680// Returned Error Types:
3681//   * InvalidEventPatternException
3682//   The event pattern is not valid.
3683//
3684//   * LimitExceededException
3685//   The request failed because it attempted to create resource beyond the allowed
3686//   service quota.
3687//
3688//   * ConcurrentModificationException
3689//   There is concurrent modification on a rule, target, archive, or replay.
3690//
3691//   * ManagedRuleException
3692//   This rule was created by an Amazon Web Services service on behalf of your
3693//   account. It is managed by that service. If you see this error in response
3694//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
3695//   calls to delete the rule or remove targets from the rule. You cannot modify
3696//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
3697//   TagResource, or UntagResource.
3698//
3699//   * InternalException
3700//   This exception occurs due to unexpected causes.
3701//
3702//   * ResourceNotFoundException
3703//   An entity that you specified does not exist.
3704//
3705// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutRule
3706func (c *EventBridge) PutRule(input *PutRuleInput) (*PutRuleOutput, error) {
3707	req, out := c.PutRuleRequest(input)
3708	return out, req.Send()
3709}
3710
3711// PutRuleWithContext is the same as PutRule with the addition of
3712// the ability to pass a context and additional request options.
3713//
3714// See PutRule for details on how to use this API operation.
3715//
3716// The context must be non-nil and will be used for request cancellation. If
3717// the context is nil a panic will occur. In the future the SDK may create
3718// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3719// for more information on using Contexts.
3720func (c *EventBridge) PutRuleWithContext(ctx aws.Context, input *PutRuleInput, opts ...request.Option) (*PutRuleOutput, error) {
3721	req, out := c.PutRuleRequest(input)
3722	req.SetContext(ctx)
3723	req.ApplyOptions(opts...)
3724	return out, req.Send()
3725}
3726
3727const opPutTargets = "PutTargets"
3728
3729// PutTargetsRequest generates a "aws/request.Request" representing the
3730// client's request for the PutTargets operation. The "output" return
3731// value will be populated with the request's response once the request completes
3732// successfully.
3733//
3734// Use "Send" method on the returned Request to send the API call to the service.
3735// the "output" return value is not valid until after Send returns without error.
3736//
3737// See PutTargets for more information on using the PutTargets
3738// API call, and error handling.
3739//
3740// This method is useful when you want to inject custom logic or configuration
3741// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3742//
3743//
3744//    // Example sending a request using the PutTargetsRequest method.
3745//    req, resp := client.PutTargetsRequest(params)
3746//
3747//    err := req.Send()
3748//    if err == nil { // resp is now filled
3749//        fmt.Println(resp)
3750//    }
3751//
3752// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutTargets
3753func (c *EventBridge) PutTargetsRequest(input *PutTargetsInput) (req *request.Request, output *PutTargetsOutput) {
3754	op := &request.Operation{
3755		Name:       opPutTargets,
3756		HTTPMethod: "POST",
3757		HTTPPath:   "/",
3758	}
3759
3760	if input == nil {
3761		input = &PutTargetsInput{}
3762	}
3763
3764	output = &PutTargetsOutput{}
3765	req = c.newRequest(op, input, output)
3766	return
3767}
3768
3769// PutTargets API operation for Amazon EventBridge.
3770//
3771// Adds the specified targets to the specified rule, or updates the targets
3772// if they are already associated with the rule.
3773//
3774// Targets are the resources that are invoked when a rule is triggered.
3775//
3776// You can configure the following as targets for Events:
3777//
3778//    * API destination (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-api-destinations.html)
3779//
3780//    * Amazon API Gateway REST API endpoints
3781//
3782//    * API Gateway
3783//
3784//    * Batch job queue
3785//
3786//    * CloudWatch Logs group
3787//
3788//    * CodeBuild project
3789//
3790//    * CodePipeline
3791//
3792//    * Amazon EC2 CreateSnapshot API call
3793//
3794//    * EC2 Image Builder
3795//
3796//    * Amazon EC2 RebootInstances API call
3797//
3798//    * Amazon EC2 StopInstances API call
3799//
3800//    * Amazon EC2 TerminateInstances API call
3801//
3802//    * Amazon ECS tasks
3803//
3804//    * Event bus in a different Amazon Web Services account or Region. You
3805//    can use an event bus in the US East (N. Virginia) us-east-1, US West (Oregon)
3806//    us-west-2, or Europe (Ireland) eu-west-1 Regions as a target for a rule.
3807//
3808//    * Firehose delivery stream (Kinesis Data Firehose)
3809//
3810//    * Inspector assessment template (Amazon Inspector)
3811//
3812//    * Kinesis stream (Kinesis Data Stream)
3813//
3814//    * Lambda function
3815//
3816//    * Redshift clusters (Data API statement execution)
3817//
3818//    * Amazon SNS topic
3819//
3820//    * Amazon SQS queues (includes FIFO queues
3821//
3822//    * SSM Automation
3823//
3824//    * SSM OpsItem
3825//
3826//    * SSM Run Command
3827//
3828//    * Step Functions state machines
3829//
3830// Creating rules with built-in targets is supported only in the Amazon Web
3831// Services Management Console. The built-in targets are EC2 CreateSnapshot
3832// API call, EC2 RebootInstances API call, EC2 StopInstances API call, and EC2
3833// TerminateInstances API call.
3834//
3835// For some target types, PutTargets provides target-specific parameters. If
3836// the target is a Kinesis data stream, you can optionally specify which shard
3837// the event goes to by using the KinesisParameters argument. To invoke a command
3838// on multiple EC2 instances with one rule, you can use the RunCommandParameters
3839// field.
3840//
3841// To be able to make API calls against the resources that you own, Amazon EventBridge
3842// needs the appropriate permissions. For Lambda and Amazon SNS resources, EventBridge
3843// relies on resource-based policies. For EC2 instances, Kinesis Data Streams,
3844// Step Functions state machines and API Gateway REST APIs, EventBridge relies
3845// on IAM roles that you specify in the RoleARN argument in PutTargets. For
3846// more information, see Authentication and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html)
3847// in the Amazon EventBridge User Guide.
3848//
3849// If another Amazon Web Services account is in the same region and has granted
3850// you permission (using PutPermission), you can send events to that account.
3851// Set that account's event bus as a target of the rules in your account. To
3852// send the matched events to the other account, specify that account's event
3853// bus as the Arn value when you run PutTargets. If your account sends events
3854// to another account, your account is charged for each sent event. Each event
3855// sent to another account is charged as a custom event. The account receiving
3856// the event is not charged. For more information, see Amazon EventBridge Pricing
3857// (http://aws.amazon.com/eventbridge/pricing/).
3858//
3859// Input, InputPath, and InputTransformer are not available with PutTarget if
3860// the target is an event bus of a different Amazon Web Services account.
3861//
3862// If you are setting the event bus of another account as the target, and that
3863// account granted permission to your account through an organization instead
3864// of directly by the account ID, then you must specify a RoleArn with proper
3865// permissions in the Target structure. For more information, see Sending and
3866// Receiving Events Between Amazon Web Services Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html)
3867// in the Amazon EventBridge User Guide.
3868//
3869// For more information about enabling cross-account events, see PutPermission
3870// (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutPermission.html).
3871//
3872// Input, InputPath, and InputTransformer are mutually exclusive and optional
3873// parameters of a target. When a rule is triggered due to a matched event:
3874//
3875//    * If none of the following arguments are specified for a target, then
3876//    the entire event is passed to the target in JSON format (unless the target
3877//    is Amazon EC2 Run Command or Amazon ECS task, in which case nothing from
3878//    the event is passed to the target).
3879//
3880//    * If Input is specified in the form of valid JSON, then the matched event
3881//    is overridden with this constant.
3882//
3883//    * If InputPath is specified in the form of JSONPath (for example, $.detail),
3884//    then only the part of the event specified in the path is passed to the
3885//    target (for example, only the detail part of the event is passed).
3886//
3887//    * If InputTransformer is specified, then one or more specified JSONPaths
3888//    are extracted from the event and used as values in a template that you
3889//    specify as the input to the target.
3890//
3891// When you specify InputPath or InputTransformer, you must use JSON dot notation,
3892// not bracket notation.
3893//
3894// When you add targets to a rule and the associated rule triggers soon after,
3895// new or updated targets might not be immediately invoked. Allow a short period
3896// of time for changes to take effect.
3897//
3898// This action can partially fail if too many requests are made at the same
3899// time. If that happens, FailedEntryCount is non-zero in the response and each
3900// entry in FailedEntries provides the ID of the failed target and the error
3901// code.
3902//
3903// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3904// with awserr.Error's Code and Message methods to get detailed information about
3905// the error.
3906//
3907// See the AWS API reference guide for Amazon EventBridge's
3908// API operation PutTargets for usage and error information.
3909//
3910// Returned Error Types:
3911//   * ResourceNotFoundException
3912//   An entity that you specified does not exist.
3913//
3914//   * ConcurrentModificationException
3915//   There is concurrent modification on a rule, target, archive, or replay.
3916//
3917//   * LimitExceededException
3918//   The request failed because it attempted to create resource beyond the allowed
3919//   service quota.
3920//
3921//   * ManagedRuleException
3922//   This rule was created by an Amazon Web Services service on behalf of your
3923//   account. It is managed by that service. If you see this error in response
3924//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
3925//   calls to delete the rule or remove targets from the rule. You cannot modify
3926//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
3927//   TagResource, or UntagResource.
3928//
3929//   * InternalException
3930//   This exception occurs due to unexpected causes.
3931//
3932// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutTargets
3933func (c *EventBridge) PutTargets(input *PutTargetsInput) (*PutTargetsOutput, error) {
3934	req, out := c.PutTargetsRequest(input)
3935	return out, req.Send()
3936}
3937
3938// PutTargetsWithContext is the same as PutTargets with the addition of
3939// the ability to pass a context and additional request options.
3940//
3941// See PutTargets for details on how to use this API operation.
3942//
3943// The context must be non-nil and will be used for request cancellation. If
3944// the context is nil a panic will occur. In the future the SDK may create
3945// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3946// for more information on using Contexts.
3947func (c *EventBridge) PutTargetsWithContext(ctx aws.Context, input *PutTargetsInput, opts ...request.Option) (*PutTargetsOutput, error) {
3948	req, out := c.PutTargetsRequest(input)
3949	req.SetContext(ctx)
3950	req.ApplyOptions(opts...)
3951	return out, req.Send()
3952}
3953
3954const opRemovePermission = "RemovePermission"
3955
3956// RemovePermissionRequest generates a "aws/request.Request" representing the
3957// client's request for the RemovePermission operation. The "output" return
3958// value will be populated with the request's response once the request completes
3959// successfully.
3960//
3961// Use "Send" method on the returned Request to send the API call to the service.
3962// the "output" return value is not valid until after Send returns without error.
3963//
3964// See RemovePermission for more information on using the RemovePermission
3965// API call, and error handling.
3966//
3967// This method is useful when you want to inject custom logic or configuration
3968// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3969//
3970//
3971//    // Example sending a request using the RemovePermissionRequest method.
3972//    req, resp := client.RemovePermissionRequest(params)
3973//
3974//    err := req.Send()
3975//    if err == nil { // resp is now filled
3976//        fmt.Println(resp)
3977//    }
3978//
3979// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/RemovePermission
3980func (c *EventBridge) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) {
3981	op := &request.Operation{
3982		Name:       opRemovePermission,
3983		HTTPMethod: "POST",
3984		HTTPPath:   "/",
3985	}
3986
3987	if input == nil {
3988		input = &RemovePermissionInput{}
3989	}
3990
3991	output = &RemovePermissionOutput{}
3992	req = c.newRequest(op, input, output)
3993	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3994	return
3995}
3996
3997// RemovePermission API operation for Amazon EventBridge.
3998//
3999// Revokes the permission of another Amazon Web Services account to be able
4000// to put events to the specified event bus. Specify the account to revoke by
4001// the StatementId value that you associated with the account when you granted
4002// it permission with PutPermission. You can find the StatementId by using DescribeEventBus
4003// (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_DescribeEventBus.html).
4004//
4005// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4006// with awserr.Error's Code and Message methods to get detailed information about
4007// the error.
4008//
4009// See the AWS API reference guide for Amazon EventBridge's
4010// API operation RemovePermission for usage and error information.
4011//
4012// Returned Error Types:
4013//   * ResourceNotFoundException
4014//   An entity that you specified does not exist.
4015//
4016//   * InternalException
4017//   This exception occurs due to unexpected causes.
4018//
4019//   * ConcurrentModificationException
4020//   There is concurrent modification on a rule, target, archive, or replay.
4021//
4022//   * OperationDisabledException
4023//   The operation you are attempting is not available in this region.
4024//
4025// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/RemovePermission
4026func (c *EventBridge) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) {
4027	req, out := c.RemovePermissionRequest(input)
4028	return out, req.Send()
4029}
4030
4031// RemovePermissionWithContext is the same as RemovePermission with the addition of
4032// the ability to pass a context and additional request options.
4033//
4034// See RemovePermission for details on how to use this API operation.
4035//
4036// The context must be non-nil and will be used for request cancellation. If
4037// the context is nil a panic will occur. In the future the SDK may create
4038// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4039// for more information on using Contexts.
4040func (c *EventBridge) RemovePermissionWithContext(ctx aws.Context, input *RemovePermissionInput, opts ...request.Option) (*RemovePermissionOutput, error) {
4041	req, out := c.RemovePermissionRequest(input)
4042	req.SetContext(ctx)
4043	req.ApplyOptions(opts...)
4044	return out, req.Send()
4045}
4046
4047const opRemoveTargets = "RemoveTargets"
4048
4049// RemoveTargetsRequest generates a "aws/request.Request" representing the
4050// client's request for the RemoveTargets operation. The "output" return
4051// value will be populated with the request's response once the request completes
4052// successfully.
4053//
4054// Use "Send" method on the returned Request to send the API call to the service.
4055// the "output" return value is not valid until after Send returns without error.
4056//
4057// See RemoveTargets for more information on using the RemoveTargets
4058// API call, and error handling.
4059//
4060// This method is useful when you want to inject custom logic or configuration
4061// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4062//
4063//
4064//    // Example sending a request using the RemoveTargetsRequest method.
4065//    req, resp := client.RemoveTargetsRequest(params)
4066//
4067//    err := req.Send()
4068//    if err == nil { // resp is now filled
4069//        fmt.Println(resp)
4070//    }
4071//
4072// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/RemoveTargets
4073func (c *EventBridge) RemoveTargetsRequest(input *RemoveTargetsInput) (req *request.Request, output *RemoveTargetsOutput) {
4074	op := &request.Operation{
4075		Name:       opRemoveTargets,
4076		HTTPMethod: "POST",
4077		HTTPPath:   "/",
4078	}
4079
4080	if input == nil {
4081		input = &RemoveTargetsInput{}
4082	}
4083
4084	output = &RemoveTargetsOutput{}
4085	req = c.newRequest(op, input, output)
4086	return
4087}
4088
4089// RemoveTargets API operation for Amazon EventBridge.
4090//
4091// Removes the specified targets from the specified rule. When the rule is triggered,
4092// those targets are no longer be invoked.
4093//
4094// When you remove a target, when the associated rule triggers, removed targets
4095// might continue to be invoked. Allow a short period of time for changes to
4096// take effect.
4097//
4098// This action can partially fail if too many requests are made at the same
4099// time. If that happens, FailedEntryCount is non-zero in the response and each
4100// entry in FailedEntries provides the ID of the failed target and the error
4101// code.
4102//
4103// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4104// with awserr.Error's Code and Message methods to get detailed information about
4105// the error.
4106//
4107// See the AWS API reference guide for Amazon EventBridge's
4108// API operation RemoveTargets for usage and error information.
4109//
4110// Returned Error Types:
4111//   * ResourceNotFoundException
4112//   An entity that you specified does not exist.
4113//
4114//   * ConcurrentModificationException
4115//   There is concurrent modification on a rule, target, archive, or replay.
4116//
4117//   * ManagedRuleException
4118//   This rule was created by an Amazon Web Services service on behalf of your
4119//   account. It is managed by that service. If you see this error in response
4120//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
4121//   calls to delete the rule or remove targets from the rule. You cannot modify
4122//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
4123//   TagResource, or UntagResource.
4124//
4125//   * InternalException
4126//   This exception occurs due to unexpected causes.
4127//
4128// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/RemoveTargets
4129func (c *EventBridge) RemoveTargets(input *RemoveTargetsInput) (*RemoveTargetsOutput, error) {
4130	req, out := c.RemoveTargetsRequest(input)
4131	return out, req.Send()
4132}
4133
4134// RemoveTargetsWithContext is the same as RemoveTargets with the addition of
4135// the ability to pass a context and additional request options.
4136//
4137// See RemoveTargets for details on how to use this API operation.
4138//
4139// The context must be non-nil and will be used for request cancellation. If
4140// the context is nil a panic will occur. In the future the SDK may create
4141// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4142// for more information on using Contexts.
4143func (c *EventBridge) RemoveTargetsWithContext(ctx aws.Context, input *RemoveTargetsInput, opts ...request.Option) (*RemoveTargetsOutput, error) {
4144	req, out := c.RemoveTargetsRequest(input)
4145	req.SetContext(ctx)
4146	req.ApplyOptions(opts...)
4147	return out, req.Send()
4148}
4149
4150const opStartReplay = "StartReplay"
4151
4152// StartReplayRequest generates a "aws/request.Request" representing the
4153// client's request for the StartReplay operation. The "output" return
4154// value will be populated with the request's response once the request completes
4155// successfully.
4156//
4157// Use "Send" method on the returned Request to send the API call to the service.
4158// the "output" return value is not valid until after Send returns without error.
4159//
4160// See StartReplay for more information on using the StartReplay
4161// API call, and error handling.
4162//
4163// This method is useful when you want to inject custom logic or configuration
4164// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4165//
4166//
4167//    // Example sending a request using the StartReplayRequest method.
4168//    req, resp := client.StartReplayRequest(params)
4169//
4170//    err := req.Send()
4171//    if err == nil { // resp is now filled
4172//        fmt.Println(resp)
4173//    }
4174//
4175// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/StartReplay
4176func (c *EventBridge) StartReplayRequest(input *StartReplayInput) (req *request.Request, output *StartReplayOutput) {
4177	op := &request.Operation{
4178		Name:       opStartReplay,
4179		HTTPMethod: "POST",
4180		HTTPPath:   "/",
4181	}
4182
4183	if input == nil {
4184		input = &StartReplayInput{}
4185	}
4186
4187	output = &StartReplayOutput{}
4188	req = c.newRequest(op, input, output)
4189	return
4190}
4191
4192// StartReplay API operation for Amazon EventBridge.
4193//
4194// Starts the specified replay. Events are not necessarily replayed in the exact
4195// same order that they were added to the archive. A replay processes events
4196// to replay based on the time in the event, and replays them using 1 minute
4197// intervals. If you specify an EventStartTime and an EventEndTime that covers
4198// a 20 minute time range, the events are replayed from the first minute of
4199// that 20 minute range first. Then the events from the second minute are replayed.
4200// You can use DescribeReplay to determine the progress of a replay. The value
4201// returned for EventLastReplayedTime indicates the time within the specified
4202// time range associated with the last event replayed.
4203//
4204// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4205// with awserr.Error's Code and Message methods to get detailed information about
4206// the error.
4207//
4208// See the AWS API reference guide for Amazon EventBridge's
4209// API operation StartReplay for usage and error information.
4210//
4211// Returned Error Types:
4212//   * ResourceNotFoundException
4213//   An entity that you specified does not exist.
4214//
4215//   * ResourceAlreadyExistsException
4216//   The resource you are trying to create already exists.
4217//
4218//   * InvalidEventPatternException
4219//   The event pattern is not valid.
4220//
4221//   * LimitExceededException
4222//   The request failed because it attempted to create resource beyond the allowed
4223//   service quota.
4224//
4225//   * InternalException
4226//   This exception occurs due to unexpected causes.
4227//
4228// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/StartReplay
4229func (c *EventBridge) StartReplay(input *StartReplayInput) (*StartReplayOutput, error) {
4230	req, out := c.StartReplayRequest(input)
4231	return out, req.Send()
4232}
4233
4234// StartReplayWithContext is the same as StartReplay with the addition of
4235// the ability to pass a context and additional request options.
4236//
4237// See StartReplay for details on how to use this API operation.
4238//
4239// The context must be non-nil and will be used for request cancellation. If
4240// the context is nil a panic will occur. In the future the SDK may create
4241// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4242// for more information on using Contexts.
4243func (c *EventBridge) StartReplayWithContext(ctx aws.Context, input *StartReplayInput, opts ...request.Option) (*StartReplayOutput, error) {
4244	req, out := c.StartReplayRequest(input)
4245	req.SetContext(ctx)
4246	req.ApplyOptions(opts...)
4247	return out, req.Send()
4248}
4249
4250const opTagResource = "TagResource"
4251
4252// TagResourceRequest generates a "aws/request.Request" representing the
4253// client's request for the TagResource operation. The "output" return
4254// value will be populated with the request's response once the request completes
4255// successfully.
4256//
4257// Use "Send" method on the returned Request to send the API call to the service.
4258// the "output" return value is not valid until after Send returns without error.
4259//
4260// See TagResource for more information on using the TagResource
4261// API call, and error handling.
4262//
4263// This method is useful when you want to inject custom logic or configuration
4264// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4265//
4266//
4267//    // Example sending a request using the TagResourceRequest method.
4268//    req, resp := client.TagResourceRequest(params)
4269//
4270//    err := req.Send()
4271//    if err == nil { // resp is now filled
4272//        fmt.Println(resp)
4273//    }
4274//
4275// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/TagResource
4276func (c *EventBridge) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
4277	op := &request.Operation{
4278		Name:       opTagResource,
4279		HTTPMethod: "POST",
4280		HTTPPath:   "/",
4281	}
4282
4283	if input == nil {
4284		input = &TagResourceInput{}
4285	}
4286
4287	output = &TagResourceOutput{}
4288	req = c.newRequest(op, input, output)
4289	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4290	return
4291}
4292
4293// TagResource API operation for Amazon EventBridge.
4294//
4295// Assigns one or more tags (key-value pairs) to the specified EventBridge resource.
4296// Tags can help you organize and categorize your resources. You can also use
4297// them to scope user permissions by granting a user permission to access or
4298// change only resources with certain tag values. In EventBridge, rules and
4299// event buses can be tagged.
4300//
4301// Tags don't have any semantic meaning to Amazon Web Services and are interpreted
4302// strictly as strings of characters.
4303//
4304// You can use the TagResource action with a resource that already has tags.
4305// If you specify a new tag key, this tag is appended to the list of tags associated
4306// with the resource. If you specify a tag key that is already associated with
4307// the resource, the new tag value that you specify replaces the previous value
4308// for that tag.
4309//
4310// You can associate as many as 50 tags with a resource.
4311//
4312// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4313// with awserr.Error's Code and Message methods to get detailed information about
4314// the error.
4315//
4316// See the AWS API reference guide for Amazon EventBridge's
4317// API operation TagResource for usage and error information.
4318//
4319// Returned Error Types:
4320//   * ResourceNotFoundException
4321//   An entity that you specified does not exist.
4322//
4323//   * ConcurrentModificationException
4324//   There is concurrent modification on a rule, target, archive, or replay.
4325//
4326//   * InternalException
4327//   This exception occurs due to unexpected causes.
4328//
4329//   * ManagedRuleException
4330//   This rule was created by an Amazon Web Services service on behalf of your
4331//   account. It is managed by that service. If you see this error in response
4332//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
4333//   calls to delete the rule or remove targets from the rule. You cannot modify
4334//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
4335//   TagResource, or UntagResource.
4336//
4337// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/TagResource
4338func (c *EventBridge) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
4339	req, out := c.TagResourceRequest(input)
4340	return out, req.Send()
4341}
4342
4343// TagResourceWithContext is the same as TagResource with the addition of
4344// the ability to pass a context and additional request options.
4345//
4346// See TagResource for details on how to use this API operation.
4347//
4348// The context must be non-nil and will be used for request cancellation. If
4349// the context is nil a panic will occur. In the future the SDK may create
4350// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4351// for more information on using Contexts.
4352func (c *EventBridge) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
4353	req, out := c.TagResourceRequest(input)
4354	req.SetContext(ctx)
4355	req.ApplyOptions(opts...)
4356	return out, req.Send()
4357}
4358
4359const opTestEventPattern = "TestEventPattern"
4360
4361// TestEventPatternRequest generates a "aws/request.Request" representing the
4362// client's request for the TestEventPattern operation. The "output" return
4363// value will be populated with the request's response once the request completes
4364// successfully.
4365//
4366// Use "Send" method on the returned Request to send the API call to the service.
4367// the "output" return value is not valid until after Send returns without error.
4368//
4369// See TestEventPattern for more information on using the TestEventPattern
4370// API call, and error handling.
4371//
4372// This method is useful when you want to inject custom logic or configuration
4373// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4374//
4375//
4376//    // Example sending a request using the TestEventPatternRequest method.
4377//    req, resp := client.TestEventPatternRequest(params)
4378//
4379//    err := req.Send()
4380//    if err == nil { // resp is now filled
4381//        fmt.Println(resp)
4382//    }
4383//
4384// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/TestEventPattern
4385func (c *EventBridge) TestEventPatternRequest(input *TestEventPatternInput) (req *request.Request, output *TestEventPatternOutput) {
4386	op := &request.Operation{
4387		Name:       opTestEventPattern,
4388		HTTPMethod: "POST",
4389		HTTPPath:   "/",
4390	}
4391
4392	if input == nil {
4393		input = &TestEventPatternInput{}
4394	}
4395
4396	output = &TestEventPatternOutput{}
4397	req = c.newRequest(op, input, output)
4398	return
4399}
4400
4401// TestEventPattern API operation for Amazon EventBridge.
4402//
4403// Tests whether the specified event pattern matches the provided event.
4404//
4405// Most services in Amazon Web Services treat : or / as the same character in
4406// Amazon Resource Names (ARNs). However, EventBridge uses an exact match in
4407// event patterns and rules. Be sure to use the correct ARN characters when
4408// creating event patterns so that they match the ARN syntax in the event you
4409// want to match.
4410//
4411// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4412// with awserr.Error's Code and Message methods to get detailed information about
4413// the error.
4414//
4415// See the AWS API reference guide for Amazon EventBridge's
4416// API operation TestEventPattern for usage and error information.
4417//
4418// Returned Error Types:
4419//   * InvalidEventPatternException
4420//   The event pattern is not valid.
4421//
4422//   * InternalException
4423//   This exception occurs due to unexpected causes.
4424//
4425// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/TestEventPattern
4426func (c *EventBridge) TestEventPattern(input *TestEventPatternInput) (*TestEventPatternOutput, error) {
4427	req, out := c.TestEventPatternRequest(input)
4428	return out, req.Send()
4429}
4430
4431// TestEventPatternWithContext is the same as TestEventPattern with the addition of
4432// the ability to pass a context and additional request options.
4433//
4434// See TestEventPattern for details on how to use this API operation.
4435//
4436// The context must be non-nil and will be used for request cancellation. If
4437// the context is nil a panic will occur. In the future the SDK may create
4438// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4439// for more information on using Contexts.
4440func (c *EventBridge) TestEventPatternWithContext(ctx aws.Context, input *TestEventPatternInput, opts ...request.Option) (*TestEventPatternOutput, error) {
4441	req, out := c.TestEventPatternRequest(input)
4442	req.SetContext(ctx)
4443	req.ApplyOptions(opts...)
4444	return out, req.Send()
4445}
4446
4447const opUntagResource = "UntagResource"
4448
4449// UntagResourceRequest generates a "aws/request.Request" representing the
4450// client's request for the UntagResource operation. The "output" return
4451// value will be populated with the request's response once the request completes
4452// successfully.
4453//
4454// Use "Send" method on the returned Request to send the API call to the service.
4455// the "output" return value is not valid until after Send returns without error.
4456//
4457// See UntagResource for more information on using the UntagResource
4458// API call, and error handling.
4459//
4460// This method is useful when you want to inject custom logic or configuration
4461// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4462//
4463//
4464//    // Example sending a request using the UntagResourceRequest method.
4465//    req, resp := client.UntagResourceRequest(params)
4466//
4467//    err := req.Send()
4468//    if err == nil { // resp is now filled
4469//        fmt.Println(resp)
4470//    }
4471//
4472// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UntagResource
4473func (c *EventBridge) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
4474	op := &request.Operation{
4475		Name:       opUntagResource,
4476		HTTPMethod: "POST",
4477		HTTPPath:   "/",
4478	}
4479
4480	if input == nil {
4481		input = &UntagResourceInput{}
4482	}
4483
4484	output = &UntagResourceOutput{}
4485	req = c.newRequest(op, input, output)
4486	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4487	return
4488}
4489
4490// UntagResource API operation for Amazon EventBridge.
4491//
4492// Removes one or more tags from the specified EventBridge resource. In Amazon
4493// EventBridge (CloudWatch Events), rules and event buses can be tagged.
4494//
4495// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4496// with awserr.Error's Code and Message methods to get detailed information about
4497// the error.
4498//
4499// See the AWS API reference guide for Amazon EventBridge's
4500// API operation UntagResource for usage and error information.
4501//
4502// Returned Error Types:
4503//   * ResourceNotFoundException
4504//   An entity that you specified does not exist.
4505//
4506//   * InternalException
4507//   This exception occurs due to unexpected causes.
4508//
4509//   * ConcurrentModificationException
4510//   There is concurrent modification on a rule, target, archive, or replay.
4511//
4512//   * ManagedRuleException
4513//   This rule was created by an Amazon Web Services service on behalf of your
4514//   account. It is managed by that service. If you see this error in response
4515//   to DeleteRule or RemoveTargets, you can use the Force parameter in those
4516//   calls to delete the rule or remove targets from the rule. You cannot modify
4517//   these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
4518//   TagResource, or UntagResource.
4519//
4520// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UntagResource
4521func (c *EventBridge) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
4522	req, out := c.UntagResourceRequest(input)
4523	return out, req.Send()
4524}
4525
4526// UntagResourceWithContext is the same as UntagResource with the addition of
4527// the ability to pass a context and additional request options.
4528//
4529// See UntagResource for details on how to use this API operation.
4530//
4531// The context must be non-nil and will be used for request cancellation. If
4532// the context is nil a panic will occur. In the future the SDK may create
4533// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4534// for more information on using Contexts.
4535func (c *EventBridge) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
4536	req, out := c.UntagResourceRequest(input)
4537	req.SetContext(ctx)
4538	req.ApplyOptions(opts...)
4539	return out, req.Send()
4540}
4541
4542const opUpdateApiDestination = "UpdateApiDestination"
4543
4544// UpdateApiDestinationRequest generates a "aws/request.Request" representing the
4545// client's request for the UpdateApiDestination operation. The "output" return
4546// value will be populated with the request's response once the request completes
4547// successfully.
4548//
4549// Use "Send" method on the returned Request to send the API call to the service.
4550// the "output" return value is not valid until after Send returns without error.
4551//
4552// See UpdateApiDestination for more information on using the UpdateApiDestination
4553// API call, and error handling.
4554//
4555// This method is useful when you want to inject custom logic or configuration
4556// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4557//
4558//
4559//    // Example sending a request using the UpdateApiDestinationRequest method.
4560//    req, resp := client.UpdateApiDestinationRequest(params)
4561//
4562//    err := req.Send()
4563//    if err == nil { // resp is now filled
4564//        fmt.Println(resp)
4565//    }
4566//
4567// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UpdateApiDestination
4568func (c *EventBridge) UpdateApiDestinationRequest(input *UpdateApiDestinationInput) (req *request.Request, output *UpdateApiDestinationOutput) {
4569	op := &request.Operation{
4570		Name:       opUpdateApiDestination,
4571		HTTPMethod: "POST",
4572		HTTPPath:   "/",
4573	}
4574
4575	if input == nil {
4576		input = &UpdateApiDestinationInput{}
4577	}
4578
4579	output = &UpdateApiDestinationOutput{}
4580	req = c.newRequest(op, input, output)
4581	return
4582}
4583
4584// UpdateApiDestination API operation for Amazon EventBridge.
4585//
4586// Updates an API destination.
4587//
4588// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4589// with awserr.Error's Code and Message methods to get detailed information about
4590// the error.
4591//
4592// See the AWS API reference guide for Amazon EventBridge's
4593// API operation UpdateApiDestination for usage and error information.
4594//
4595// Returned Error Types:
4596//   * ConcurrentModificationException
4597//   There is concurrent modification on a rule, target, archive, or replay.
4598//
4599//   * ResourceNotFoundException
4600//   An entity that you specified does not exist.
4601//
4602//   * InternalException
4603//   This exception occurs due to unexpected causes.
4604//
4605//   * LimitExceededException
4606//   The request failed because it attempted to create resource beyond the allowed
4607//   service quota.
4608//
4609// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UpdateApiDestination
4610func (c *EventBridge) UpdateApiDestination(input *UpdateApiDestinationInput) (*UpdateApiDestinationOutput, error) {
4611	req, out := c.UpdateApiDestinationRequest(input)
4612	return out, req.Send()
4613}
4614
4615// UpdateApiDestinationWithContext is the same as UpdateApiDestination with the addition of
4616// the ability to pass a context and additional request options.
4617//
4618// See UpdateApiDestination for details on how to use this API operation.
4619//
4620// The context must be non-nil and will be used for request cancellation. If
4621// the context is nil a panic will occur. In the future the SDK may create
4622// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4623// for more information on using Contexts.
4624func (c *EventBridge) UpdateApiDestinationWithContext(ctx aws.Context, input *UpdateApiDestinationInput, opts ...request.Option) (*UpdateApiDestinationOutput, error) {
4625	req, out := c.UpdateApiDestinationRequest(input)
4626	req.SetContext(ctx)
4627	req.ApplyOptions(opts...)
4628	return out, req.Send()
4629}
4630
4631const opUpdateArchive = "UpdateArchive"
4632
4633// UpdateArchiveRequest generates a "aws/request.Request" representing the
4634// client's request for the UpdateArchive operation. The "output" return
4635// value will be populated with the request's response once the request completes
4636// successfully.
4637//
4638// Use "Send" method on the returned Request to send the API call to the service.
4639// the "output" return value is not valid until after Send returns without error.
4640//
4641// See UpdateArchive for more information on using the UpdateArchive
4642// API call, and error handling.
4643//
4644// This method is useful when you want to inject custom logic or configuration
4645// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4646//
4647//
4648//    // Example sending a request using the UpdateArchiveRequest method.
4649//    req, resp := client.UpdateArchiveRequest(params)
4650//
4651//    err := req.Send()
4652//    if err == nil { // resp is now filled
4653//        fmt.Println(resp)
4654//    }
4655//
4656// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UpdateArchive
4657func (c *EventBridge) UpdateArchiveRequest(input *UpdateArchiveInput) (req *request.Request, output *UpdateArchiveOutput) {
4658	op := &request.Operation{
4659		Name:       opUpdateArchive,
4660		HTTPMethod: "POST",
4661		HTTPPath:   "/",
4662	}
4663
4664	if input == nil {
4665		input = &UpdateArchiveInput{}
4666	}
4667
4668	output = &UpdateArchiveOutput{}
4669	req = c.newRequest(op, input, output)
4670	return
4671}
4672
4673// UpdateArchive API operation for Amazon EventBridge.
4674//
4675// Updates the specified archive.
4676//
4677// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4678// with awserr.Error's Code and Message methods to get detailed information about
4679// the error.
4680//
4681// See the AWS API reference guide for Amazon EventBridge's
4682// API operation UpdateArchive for usage and error information.
4683//
4684// Returned Error Types:
4685//   * ConcurrentModificationException
4686//   There is concurrent modification on a rule, target, archive, or replay.
4687//
4688//   * ResourceNotFoundException
4689//   An entity that you specified does not exist.
4690//
4691//   * InternalException
4692//   This exception occurs due to unexpected causes.
4693//
4694//   * LimitExceededException
4695//   The request failed because it attempted to create resource beyond the allowed
4696//   service quota.
4697//
4698//   * InvalidEventPatternException
4699//   The event pattern is not valid.
4700//
4701// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UpdateArchive
4702func (c *EventBridge) UpdateArchive(input *UpdateArchiveInput) (*UpdateArchiveOutput, error) {
4703	req, out := c.UpdateArchiveRequest(input)
4704	return out, req.Send()
4705}
4706
4707// UpdateArchiveWithContext is the same as UpdateArchive with the addition of
4708// the ability to pass a context and additional request options.
4709//
4710// See UpdateArchive for details on how to use this API operation.
4711//
4712// The context must be non-nil and will be used for request cancellation. If
4713// the context is nil a panic will occur. In the future the SDK may create
4714// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4715// for more information on using Contexts.
4716func (c *EventBridge) UpdateArchiveWithContext(ctx aws.Context, input *UpdateArchiveInput, opts ...request.Option) (*UpdateArchiveOutput, error) {
4717	req, out := c.UpdateArchiveRequest(input)
4718	req.SetContext(ctx)
4719	req.ApplyOptions(opts...)
4720	return out, req.Send()
4721}
4722
4723const opUpdateConnection = "UpdateConnection"
4724
4725// UpdateConnectionRequest generates a "aws/request.Request" representing the
4726// client's request for the UpdateConnection operation. The "output" return
4727// value will be populated with the request's response once the request completes
4728// successfully.
4729//
4730// Use "Send" method on the returned Request to send the API call to the service.
4731// the "output" return value is not valid until after Send returns without error.
4732//
4733// See UpdateConnection for more information on using the UpdateConnection
4734// API call, and error handling.
4735//
4736// This method is useful when you want to inject custom logic or configuration
4737// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4738//
4739//
4740//    // Example sending a request using the UpdateConnectionRequest method.
4741//    req, resp := client.UpdateConnectionRequest(params)
4742//
4743//    err := req.Send()
4744//    if err == nil { // resp is now filled
4745//        fmt.Println(resp)
4746//    }
4747//
4748// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UpdateConnection
4749func (c *EventBridge) UpdateConnectionRequest(input *UpdateConnectionInput) (req *request.Request, output *UpdateConnectionOutput) {
4750	op := &request.Operation{
4751		Name:       opUpdateConnection,
4752		HTTPMethod: "POST",
4753		HTTPPath:   "/",
4754	}
4755
4756	if input == nil {
4757		input = &UpdateConnectionInput{}
4758	}
4759
4760	output = &UpdateConnectionOutput{}
4761	req = c.newRequest(op, input, output)
4762	return
4763}
4764
4765// UpdateConnection API operation for Amazon EventBridge.
4766//
4767// Updates settings for a connection.
4768//
4769// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4770// with awserr.Error's Code and Message methods to get detailed information about
4771// the error.
4772//
4773// See the AWS API reference guide for Amazon EventBridge's
4774// API operation UpdateConnection for usage and error information.
4775//
4776// Returned Error Types:
4777//   * ConcurrentModificationException
4778//   There is concurrent modification on a rule, target, archive, or replay.
4779//
4780//   * ResourceNotFoundException
4781//   An entity that you specified does not exist.
4782//
4783//   * InternalException
4784//   This exception occurs due to unexpected causes.
4785//
4786//   * LimitExceededException
4787//   The request failed because it attempted to create resource beyond the allowed
4788//   service quota.
4789//
4790// See also, https://docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/UpdateConnection
4791func (c *EventBridge) UpdateConnection(input *UpdateConnectionInput) (*UpdateConnectionOutput, error) {
4792	req, out := c.UpdateConnectionRequest(input)
4793	return out, req.Send()
4794}
4795
4796// UpdateConnectionWithContext is the same as UpdateConnection with the addition of
4797// the ability to pass a context and additional request options.
4798//
4799// See UpdateConnection for details on how to use this API operation.
4800//
4801// The context must be non-nil and will be used for request cancellation. If
4802// the context is nil a panic will occur. In the future the SDK may create
4803// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4804// for more information on using Contexts.
4805func (c *EventBridge) UpdateConnectionWithContext(ctx aws.Context, input *UpdateConnectionInput, opts ...request.Option) (*UpdateConnectionOutput, error) {
4806	req, out := c.UpdateConnectionRequest(input)
4807	req.SetContext(ctx)
4808	req.ApplyOptions(opts...)
4809	return out, req.Send()
4810}
4811
4812type ActivateEventSourceInput struct {
4813	_ struct{} `type:"structure"`
4814
4815	// The name of the partner event source to activate.
4816	//
4817	// Name is a required field
4818	Name *string `min:"1" type:"string" required:"true"`
4819}
4820
4821// String returns the string representation
4822func (s ActivateEventSourceInput) String() string {
4823	return awsutil.Prettify(s)
4824}
4825
4826// GoString returns the string representation
4827func (s ActivateEventSourceInput) GoString() string {
4828	return s.String()
4829}
4830
4831// Validate inspects the fields of the type to determine if they are valid.
4832func (s *ActivateEventSourceInput) Validate() error {
4833	invalidParams := request.ErrInvalidParams{Context: "ActivateEventSourceInput"}
4834	if s.Name == nil {
4835		invalidParams.Add(request.NewErrParamRequired("Name"))
4836	}
4837	if s.Name != nil && len(*s.Name) < 1 {
4838		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
4839	}
4840
4841	if invalidParams.Len() > 0 {
4842		return invalidParams
4843	}
4844	return nil
4845}
4846
4847// SetName sets the Name field's value.
4848func (s *ActivateEventSourceInput) SetName(v string) *ActivateEventSourceInput {
4849	s.Name = &v
4850	return s
4851}
4852
4853type ActivateEventSourceOutput struct {
4854	_ struct{} `type:"structure"`
4855}
4856
4857// String returns the string representation
4858func (s ActivateEventSourceOutput) String() string {
4859	return awsutil.Prettify(s)
4860}
4861
4862// GoString returns the string representation
4863func (s ActivateEventSourceOutput) GoString() string {
4864	return s.String()
4865}
4866
4867// Contains details about an API destination.
4868type ApiDestination struct {
4869	_ struct{} `type:"structure"`
4870
4871	// The ARN of the API destination.
4872	ApiDestinationArn *string `min:"1" type:"string"`
4873
4874	// The state of the API destination.
4875	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
4876
4877	// The ARN of the connection specified for the API destination.
4878	ConnectionArn *string `min:"1" type:"string"`
4879
4880	// A time stamp for the time that the API destination was created.
4881	CreationTime *time.Time `type:"timestamp"`
4882
4883	// The method to use to connect to the HTTP endpoint.
4884	HttpMethod *string `type:"string" enum:"ApiDestinationHttpMethod"`
4885
4886	// The URL to the endpoint for the API destination.
4887	InvocationEndpoint *string `min:"1" type:"string"`
4888
4889	// The maximum number of invocations per second to send to the HTTP endpoint.
4890	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
4891
4892	// A time stamp for the time that the API destination was last modified.
4893	LastModifiedTime *time.Time `type:"timestamp"`
4894
4895	// The name of the API destination.
4896	Name *string `min:"1" type:"string"`
4897}
4898
4899// String returns the string representation
4900func (s ApiDestination) String() string {
4901	return awsutil.Prettify(s)
4902}
4903
4904// GoString returns the string representation
4905func (s ApiDestination) GoString() string {
4906	return s.String()
4907}
4908
4909// SetApiDestinationArn sets the ApiDestinationArn field's value.
4910func (s *ApiDestination) SetApiDestinationArn(v string) *ApiDestination {
4911	s.ApiDestinationArn = &v
4912	return s
4913}
4914
4915// SetApiDestinationState sets the ApiDestinationState field's value.
4916func (s *ApiDestination) SetApiDestinationState(v string) *ApiDestination {
4917	s.ApiDestinationState = &v
4918	return s
4919}
4920
4921// SetConnectionArn sets the ConnectionArn field's value.
4922func (s *ApiDestination) SetConnectionArn(v string) *ApiDestination {
4923	s.ConnectionArn = &v
4924	return s
4925}
4926
4927// SetCreationTime sets the CreationTime field's value.
4928func (s *ApiDestination) SetCreationTime(v time.Time) *ApiDestination {
4929	s.CreationTime = &v
4930	return s
4931}
4932
4933// SetHttpMethod sets the HttpMethod field's value.
4934func (s *ApiDestination) SetHttpMethod(v string) *ApiDestination {
4935	s.HttpMethod = &v
4936	return s
4937}
4938
4939// SetInvocationEndpoint sets the InvocationEndpoint field's value.
4940func (s *ApiDestination) SetInvocationEndpoint(v string) *ApiDestination {
4941	s.InvocationEndpoint = &v
4942	return s
4943}
4944
4945// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
4946func (s *ApiDestination) SetInvocationRateLimitPerSecond(v int64) *ApiDestination {
4947	s.InvocationRateLimitPerSecond = &v
4948	return s
4949}
4950
4951// SetLastModifiedTime sets the LastModifiedTime field's value.
4952func (s *ApiDestination) SetLastModifiedTime(v time.Time) *ApiDestination {
4953	s.LastModifiedTime = &v
4954	return s
4955}
4956
4957// SetName sets the Name field's value.
4958func (s *ApiDestination) SetName(v string) *ApiDestination {
4959	s.Name = &v
4960	return s
4961}
4962
4963// An Archive object that contains details about an archive.
4964type Archive struct {
4965	_ struct{} `type:"structure"`
4966
4967	// The name of the archive.
4968	ArchiveName *string `min:"1" type:"string"`
4969
4970	// The time stamp for the time that the archive was created.
4971	CreationTime *time.Time `type:"timestamp"`
4972
4973	// The number of events in the archive.
4974	EventCount *int64 `type:"long"`
4975
4976	// The ARN of the event bus associated with the archive. Only events from this
4977	// event bus are sent to the archive.
4978	EventSourceArn *string `min:"1" type:"string"`
4979
4980	// The number of days to retain events in the archive before they are deleted.
4981	RetentionDays *int64 `type:"integer"`
4982
4983	// The size of the archive, in bytes.
4984	SizeBytes *int64 `type:"long"`
4985
4986	// The current state of the archive.
4987	State *string `type:"string" enum:"ArchiveState"`
4988
4989	// A description for the reason that the archive is in the current state.
4990	StateReason *string `type:"string"`
4991}
4992
4993// String returns the string representation
4994func (s Archive) String() string {
4995	return awsutil.Prettify(s)
4996}
4997
4998// GoString returns the string representation
4999func (s Archive) GoString() string {
5000	return s.String()
5001}
5002
5003// SetArchiveName sets the ArchiveName field's value.
5004func (s *Archive) SetArchiveName(v string) *Archive {
5005	s.ArchiveName = &v
5006	return s
5007}
5008
5009// SetCreationTime sets the CreationTime field's value.
5010func (s *Archive) SetCreationTime(v time.Time) *Archive {
5011	s.CreationTime = &v
5012	return s
5013}
5014
5015// SetEventCount sets the EventCount field's value.
5016func (s *Archive) SetEventCount(v int64) *Archive {
5017	s.EventCount = &v
5018	return s
5019}
5020
5021// SetEventSourceArn sets the EventSourceArn field's value.
5022func (s *Archive) SetEventSourceArn(v string) *Archive {
5023	s.EventSourceArn = &v
5024	return s
5025}
5026
5027// SetRetentionDays sets the RetentionDays field's value.
5028func (s *Archive) SetRetentionDays(v int64) *Archive {
5029	s.RetentionDays = &v
5030	return s
5031}
5032
5033// SetSizeBytes sets the SizeBytes field's value.
5034func (s *Archive) SetSizeBytes(v int64) *Archive {
5035	s.SizeBytes = &v
5036	return s
5037}
5038
5039// SetState sets the State field's value.
5040func (s *Archive) SetState(v string) *Archive {
5041	s.State = &v
5042	return s
5043}
5044
5045// SetStateReason sets the StateReason field's value.
5046func (s *Archive) SetStateReason(v string) *Archive {
5047	s.StateReason = &v
5048	return s
5049}
5050
5051// This structure specifies the VPC subnets and security groups for the task,
5052// and whether a public IP address is to be used. This structure is relevant
5053// only for ECS tasks that use the awsvpc network mode.
5054type AwsVpcConfiguration struct {
5055	_ struct{} `type:"structure"`
5056
5057	// Specifies whether the task's elastic network interface receives a public
5058	// IP address. You can specify ENABLED only when LaunchType in EcsParameters
5059	// is set to FARGATE.
5060	AssignPublicIp *string `type:"string" enum:"AssignPublicIp"`
5061
5062	// Specifies the security groups associated with the task. These security groups
5063	// must all be in the same VPC. You can specify as many as five security groups.
5064	// If you do not specify a security group, the default security group for the
5065	// VPC is used.
5066	SecurityGroups []*string `type:"list"`
5067
5068	// Specifies the subnets associated with the task. These subnets must all be
5069	// in the same VPC. You can specify as many as 16 subnets.
5070	//
5071	// Subnets is a required field
5072	Subnets []*string `type:"list" required:"true"`
5073}
5074
5075// String returns the string representation
5076func (s AwsVpcConfiguration) String() string {
5077	return awsutil.Prettify(s)
5078}
5079
5080// GoString returns the string representation
5081func (s AwsVpcConfiguration) GoString() string {
5082	return s.String()
5083}
5084
5085// Validate inspects the fields of the type to determine if they are valid.
5086func (s *AwsVpcConfiguration) Validate() error {
5087	invalidParams := request.ErrInvalidParams{Context: "AwsVpcConfiguration"}
5088	if s.Subnets == nil {
5089		invalidParams.Add(request.NewErrParamRequired("Subnets"))
5090	}
5091
5092	if invalidParams.Len() > 0 {
5093		return invalidParams
5094	}
5095	return nil
5096}
5097
5098// SetAssignPublicIp sets the AssignPublicIp field's value.
5099func (s *AwsVpcConfiguration) SetAssignPublicIp(v string) *AwsVpcConfiguration {
5100	s.AssignPublicIp = &v
5101	return s
5102}
5103
5104// SetSecurityGroups sets the SecurityGroups field's value.
5105func (s *AwsVpcConfiguration) SetSecurityGroups(v []*string) *AwsVpcConfiguration {
5106	s.SecurityGroups = v
5107	return s
5108}
5109
5110// SetSubnets sets the Subnets field's value.
5111func (s *AwsVpcConfiguration) SetSubnets(v []*string) *AwsVpcConfiguration {
5112	s.Subnets = v
5113	return s
5114}
5115
5116// The array properties for the submitted job, such as the size of the array.
5117// The array size can be between 2 and 10,000. If you specify array properties
5118// for a job, it becomes an array job. This parameter is used only if the target
5119// is an Batch job.
5120type BatchArrayProperties struct {
5121	_ struct{} `type:"structure"`
5122
5123	// The size of the array, if this is an array batch job. Valid values are integers
5124	// between 2 and 10,000.
5125	Size *int64 `type:"integer"`
5126}
5127
5128// String returns the string representation
5129func (s BatchArrayProperties) String() string {
5130	return awsutil.Prettify(s)
5131}
5132
5133// GoString returns the string representation
5134func (s BatchArrayProperties) GoString() string {
5135	return s.String()
5136}
5137
5138// SetSize sets the Size field's value.
5139func (s *BatchArrayProperties) SetSize(v int64) *BatchArrayProperties {
5140	s.Size = &v
5141	return s
5142}
5143
5144// The custom parameters to be used when the target is an Batch job.
5145type BatchParameters struct {
5146	_ struct{} `type:"structure"`
5147
5148	// The array properties for the submitted job, such as the size of the array.
5149	// The array size can be between 2 and 10,000. If you specify array properties
5150	// for a job, it becomes an array job. This parameter is used only if the target
5151	// is an Batch job.
5152	ArrayProperties *BatchArrayProperties `type:"structure"`
5153
5154	// The ARN or name of the job definition to use if the event target is an Batch
5155	// job. This job definition must already exist.
5156	//
5157	// JobDefinition is a required field
5158	JobDefinition *string `type:"string" required:"true"`
5159
5160	// The name to use for this execution of the job, if the target is an Batch
5161	// job.
5162	//
5163	// JobName is a required field
5164	JobName *string `type:"string" required:"true"`
5165
5166	// The retry strategy to use for failed jobs, if the target is an Batch job.
5167	// The retry strategy is the number of times to retry the failed job execution.
5168	// Valid values are 1–10. When you specify a retry strategy here, it overrides
5169	// the retry strategy defined in the job definition.
5170	RetryStrategy *BatchRetryStrategy `type:"structure"`
5171}
5172
5173// String returns the string representation
5174func (s BatchParameters) String() string {
5175	return awsutil.Prettify(s)
5176}
5177
5178// GoString returns the string representation
5179func (s BatchParameters) GoString() string {
5180	return s.String()
5181}
5182
5183// Validate inspects the fields of the type to determine if they are valid.
5184func (s *BatchParameters) Validate() error {
5185	invalidParams := request.ErrInvalidParams{Context: "BatchParameters"}
5186	if s.JobDefinition == nil {
5187		invalidParams.Add(request.NewErrParamRequired("JobDefinition"))
5188	}
5189	if s.JobName == nil {
5190		invalidParams.Add(request.NewErrParamRequired("JobName"))
5191	}
5192
5193	if invalidParams.Len() > 0 {
5194		return invalidParams
5195	}
5196	return nil
5197}
5198
5199// SetArrayProperties sets the ArrayProperties field's value.
5200func (s *BatchParameters) SetArrayProperties(v *BatchArrayProperties) *BatchParameters {
5201	s.ArrayProperties = v
5202	return s
5203}
5204
5205// SetJobDefinition sets the JobDefinition field's value.
5206func (s *BatchParameters) SetJobDefinition(v string) *BatchParameters {
5207	s.JobDefinition = &v
5208	return s
5209}
5210
5211// SetJobName sets the JobName field's value.
5212func (s *BatchParameters) SetJobName(v string) *BatchParameters {
5213	s.JobName = &v
5214	return s
5215}
5216
5217// SetRetryStrategy sets the RetryStrategy field's value.
5218func (s *BatchParameters) SetRetryStrategy(v *BatchRetryStrategy) *BatchParameters {
5219	s.RetryStrategy = v
5220	return s
5221}
5222
5223// The retry strategy to use for failed jobs, if the target is an Batch job.
5224// If you specify a retry strategy here, it overrides the retry strategy defined
5225// in the job definition.
5226type BatchRetryStrategy struct {
5227	_ struct{} `type:"structure"`
5228
5229	// The number of times to attempt to retry, if the job fails. Valid values are
5230	// 1–10.
5231	Attempts *int64 `type:"integer"`
5232}
5233
5234// String returns the string representation
5235func (s BatchRetryStrategy) String() string {
5236	return awsutil.Prettify(s)
5237}
5238
5239// GoString returns the string representation
5240func (s BatchRetryStrategy) GoString() string {
5241	return s.String()
5242}
5243
5244// SetAttempts sets the Attempts field's value.
5245func (s *BatchRetryStrategy) SetAttempts(v int64) *BatchRetryStrategy {
5246	s.Attempts = &v
5247	return s
5248}
5249
5250type CancelReplayInput struct {
5251	_ struct{} `type:"structure"`
5252
5253	// The name of the replay to cancel.
5254	//
5255	// ReplayName is a required field
5256	ReplayName *string `min:"1" type:"string" required:"true"`
5257}
5258
5259// String returns the string representation
5260func (s CancelReplayInput) String() string {
5261	return awsutil.Prettify(s)
5262}
5263
5264// GoString returns the string representation
5265func (s CancelReplayInput) GoString() string {
5266	return s.String()
5267}
5268
5269// Validate inspects the fields of the type to determine if they are valid.
5270func (s *CancelReplayInput) Validate() error {
5271	invalidParams := request.ErrInvalidParams{Context: "CancelReplayInput"}
5272	if s.ReplayName == nil {
5273		invalidParams.Add(request.NewErrParamRequired("ReplayName"))
5274	}
5275	if s.ReplayName != nil && len(*s.ReplayName) < 1 {
5276		invalidParams.Add(request.NewErrParamMinLen("ReplayName", 1))
5277	}
5278
5279	if invalidParams.Len() > 0 {
5280		return invalidParams
5281	}
5282	return nil
5283}
5284
5285// SetReplayName sets the ReplayName field's value.
5286func (s *CancelReplayInput) SetReplayName(v string) *CancelReplayInput {
5287	s.ReplayName = &v
5288	return s
5289}
5290
5291type CancelReplayOutput struct {
5292	_ struct{} `type:"structure"`
5293
5294	// The ARN of the replay to cancel.
5295	ReplayArn *string `min:"1" type:"string"`
5296
5297	// The current state of the replay.
5298	State *string `type:"string" enum:"ReplayState"`
5299
5300	// The reason that the replay is in the current state.
5301	StateReason *string `type:"string"`
5302}
5303
5304// String returns the string representation
5305func (s CancelReplayOutput) String() string {
5306	return awsutil.Prettify(s)
5307}
5308
5309// GoString returns the string representation
5310func (s CancelReplayOutput) GoString() string {
5311	return s.String()
5312}
5313
5314// SetReplayArn sets the ReplayArn field's value.
5315func (s *CancelReplayOutput) SetReplayArn(v string) *CancelReplayOutput {
5316	s.ReplayArn = &v
5317	return s
5318}
5319
5320// SetState sets the State field's value.
5321func (s *CancelReplayOutput) SetState(v string) *CancelReplayOutput {
5322	s.State = &v
5323	return s
5324}
5325
5326// SetStateReason sets the StateReason field's value.
5327func (s *CancelReplayOutput) SetStateReason(v string) *CancelReplayOutput {
5328	s.StateReason = &v
5329	return s
5330}
5331
5332// The details of a capacity provider strategy. To learn more, see CapacityProviderStrategyItem
5333// (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CapacityProviderStrategyItem.html)
5334// in the Amazon ECS API Reference.
5335type CapacityProviderStrategyItem struct {
5336	_ struct{} `type:"structure"`
5337
5338	// The base value designates how many tasks, at a minimum, to run on the specified
5339	// capacity provider. Only one capacity provider in a capacity provider strategy
5340	// can have a base defined. If no value is specified, the default value of 0
5341	// is used.
5342	Base *int64 `locationName:"base" type:"integer"`
5343
5344	// The short name of the capacity provider.
5345	//
5346	// CapacityProvider is a required field
5347	CapacityProvider *string `locationName:"capacityProvider" min:"1" type:"string" required:"true"`
5348
5349	// The weight value designates the relative percentage of the total number of
5350	// tasks launched that should use the specified capacity provider. The weight
5351	// value is taken into consideration after the base value, if defined, is satisfied.
5352	Weight *int64 `locationName:"weight" type:"integer"`
5353}
5354
5355// String returns the string representation
5356func (s CapacityProviderStrategyItem) String() string {
5357	return awsutil.Prettify(s)
5358}
5359
5360// GoString returns the string representation
5361func (s CapacityProviderStrategyItem) GoString() string {
5362	return s.String()
5363}
5364
5365// Validate inspects the fields of the type to determine if they are valid.
5366func (s *CapacityProviderStrategyItem) Validate() error {
5367	invalidParams := request.ErrInvalidParams{Context: "CapacityProviderStrategyItem"}
5368	if s.CapacityProvider == nil {
5369		invalidParams.Add(request.NewErrParamRequired("CapacityProvider"))
5370	}
5371	if s.CapacityProvider != nil && len(*s.CapacityProvider) < 1 {
5372		invalidParams.Add(request.NewErrParamMinLen("CapacityProvider", 1))
5373	}
5374
5375	if invalidParams.Len() > 0 {
5376		return invalidParams
5377	}
5378	return nil
5379}
5380
5381// SetBase sets the Base field's value.
5382func (s *CapacityProviderStrategyItem) SetBase(v int64) *CapacityProviderStrategyItem {
5383	s.Base = &v
5384	return s
5385}
5386
5387// SetCapacityProvider sets the CapacityProvider field's value.
5388func (s *CapacityProviderStrategyItem) SetCapacityProvider(v string) *CapacityProviderStrategyItem {
5389	s.CapacityProvider = &v
5390	return s
5391}
5392
5393// SetWeight sets the Weight field's value.
5394func (s *CapacityProviderStrategyItem) SetWeight(v int64) *CapacityProviderStrategyItem {
5395	s.Weight = &v
5396	return s
5397}
5398
5399// There is concurrent modification on a rule, target, archive, or replay.
5400type ConcurrentModificationException struct {
5401	_            struct{}                  `type:"structure"`
5402	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5403
5404	Message_ *string `locationName:"message" type:"string"`
5405}
5406
5407// String returns the string representation
5408func (s ConcurrentModificationException) String() string {
5409	return awsutil.Prettify(s)
5410}
5411
5412// GoString returns the string representation
5413func (s ConcurrentModificationException) GoString() string {
5414	return s.String()
5415}
5416
5417func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
5418	return &ConcurrentModificationException{
5419		RespMetadata: v,
5420	}
5421}
5422
5423// Code returns the exception type name.
5424func (s *ConcurrentModificationException) Code() string {
5425	return "ConcurrentModificationException"
5426}
5427
5428// Message returns the exception's message.
5429func (s *ConcurrentModificationException) Message() string {
5430	if s.Message_ != nil {
5431		return *s.Message_
5432	}
5433	return ""
5434}
5435
5436// OrigErr always returns nil, satisfies awserr.Error interface.
5437func (s *ConcurrentModificationException) OrigErr() error {
5438	return nil
5439}
5440
5441func (s *ConcurrentModificationException) Error() string {
5442	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5443}
5444
5445// Status code returns the HTTP status code for the request's response error.
5446func (s *ConcurrentModificationException) StatusCode() int {
5447	return s.RespMetadata.StatusCode
5448}
5449
5450// RequestID returns the service's response RequestID for request.
5451func (s *ConcurrentModificationException) RequestID() string {
5452	return s.RespMetadata.RequestID
5453}
5454
5455// A JSON string which you can use to limit the event bus permissions you are
5456// granting to only accounts that fulfill the condition. Currently, the only
5457// supported condition is membership in a certain Amazon Web Services organization.
5458// The string must contain Type, Key, and Value fields. The Value field specifies
5459// the ID of the Amazon Web Services organization. Following is an example value
5460// for Condition:
5461//
5462// '{"Type" : "StringEquals", "Key": "aws:PrincipalOrgID", "Value": "o-1234567890"}'
5463type Condition struct {
5464	_ struct{} `type:"structure"`
5465
5466	// Specifies the key for the condition. Currently the only supported key is
5467	// aws:PrincipalOrgID.
5468	//
5469	// Key is a required field
5470	Key *string `type:"string" required:"true"`
5471
5472	// Specifies the type of condition. Currently the only supported value is StringEquals.
5473	//
5474	// Type is a required field
5475	Type *string `type:"string" required:"true"`
5476
5477	// Specifies the value for the key. Currently, this must be the ID of the organization.
5478	//
5479	// Value is a required field
5480	Value *string `type:"string" required:"true"`
5481}
5482
5483// String returns the string representation
5484func (s Condition) String() string {
5485	return awsutil.Prettify(s)
5486}
5487
5488// GoString returns the string representation
5489func (s Condition) GoString() string {
5490	return s.String()
5491}
5492
5493// Validate inspects the fields of the type to determine if they are valid.
5494func (s *Condition) Validate() error {
5495	invalidParams := request.ErrInvalidParams{Context: "Condition"}
5496	if s.Key == nil {
5497		invalidParams.Add(request.NewErrParamRequired("Key"))
5498	}
5499	if s.Type == nil {
5500		invalidParams.Add(request.NewErrParamRequired("Type"))
5501	}
5502	if s.Value == nil {
5503		invalidParams.Add(request.NewErrParamRequired("Value"))
5504	}
5505
5506	if invalidParams.Len() > 0 {
5507		return invalidParams
5508	}
5509	return nil
5510}
5511
5512// SetKey sets the Key field's value.
5513func (s *Condition) SetKey(v string) *Condition {
5514	s.Key = &v
5515	return s
5516}
5517
5518// SetType sets the Type field's value.
5519func (s *Condition) SetType(v string) *Condition {
5520	s.Type = &v
5521	return s
5522}
5523
5524// SetValue sets the Value field's value.
5525func (s *Condition) SetValue(v string) *Condition {
5526	s.Value = &v
5527	return s
5528}
5529
5530// Contains information about a connection.
5531type Connection struct {
5532	_ struct{} `type:"structure"`
5533
5534	// The authorization type specified for the connection.
5535	AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"`
5536
5537	// The ARN of the connection.
5538	ConnectionArn *string `min:"1" type:"string"`
5539
5540	// The state of the connection.
5541	ConnectionState *string `type:"string" enum:"ConnectionState"`
5542
5543	// A time stamp for the time that the connection was created.
5544	CreationTime *time.Time `type:"timestamp"`
5545
5546	// A time stamp for the time that the connection was last authorized.
5547	LastAuthorizedTime *time.Time `type:"timestamp"`
5548
5549	// A time stamp for the time that the connection was last modified.
5550	LastModifiedTime *time.Time `type:"timestamp"`
5551
5552	// The name of the connection.
5553	Name *string `min:"1" type:"string"`
5554
5555	// The reason that the connection is in the connection state.
5556	StateReason *string `type:"string"`
5557}
5558
5559// String returns the string representation
5560func (s Connection) String() string {
5561	return awsutil.Prettify(s)
5562}
5563
5564// GoString returns the string representation
5565func (s Connection) GoString() string {
5566	return s.String()
5567}
5568
5569// SetAuthorizationType sets the AuthorizationType field's value.
5570func (s *Connection) SetAuthorizationType(v string) *Connection {
5571	s.AuthorizationType = &v
5572	return s
5573}
5574
5575// SetConnectionArn sets the ConnectionArn field's value.
5576func (s *Connection) SetConnectionArn(v string) *Connection {
5577	s.ConnectionArn = &v
5578	return s
5579}
5580
5581// SetConnectionState sets the ConnectionState field's value.
5582func (s *Connection) SetConnectionState(v string) *Connection {
5583	s.ConnectionState = &v
5584	return s
5585}
5586
5587// SetCreationTime sets the CreationTime field's value.
5588func (s *Connection) SetCreationTime(v time.Time) *Connection {
5589	s.CreationTime = &v
5590	return s
5591}
5592
5593// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
5594func (s *Connection) SetLastAuthorizedTime(v time.Time) *Connection {
5595	s.LastAuthorizedTime = &v
5596	return s
5597}
5598
5599// SetLastModifiedTime sets the LastModifiedTime field's value.
5600func (s *Connection) SetLastModifiedTime(v time.Time) *Connection {
5601	s.LastModifiedTime = &v
5602	return s
5603}
5604
5605// SetName sets the Name field's value.
5606func (s *Connection) SetName(v string) *Connection {
5607	s.Name = &v
5608	return s
5609}
5610
5611// SetStateReason sets the StateReason field's value.
5612func (s *Connection) SetStateReason(v string) *Connection {
5613	s.StateReason = &v
5614	return s
5615}
5616
5617// Contains the authorization parameters for the connection if API Key is specified
5618// as the authorization type.
5619type ConnectionApiKeyAuthResponseParameters struct {
5620	_ struct{} `type:"structure"`
5621
5622	// The name of the header to use for the APIKeyValue used for authorization.
5623	ApiKeyName *string `min:"1" type:"string"`
5624}
5625
5626// String returns the string representation
5627func (s ConnectionApiKeyAuthResponseParameters) String() string {
5628	return awsutil.Prettify(s)
5629}
5630
5631// GoString returns the string representation
5632func (s ConnectionApiKeyAuthResponseParameters) GoString() string {
5633	return s.String()
5634}
5635
5636// SetApiKeyName sets the ApiKeyName field's value.
5637func (s *ConnectionApiKeyAuthResponseParameters) SetApiKeyName(v string) *ConnectionApiKeyAuthResponseParameters {
5638	s.ApiKeyName = &v
5639	return s
5640}
5641
5642// Contains the authorization parameters to use for the connection.
5643type ConnectionAuthResponseParameters struct {
5644	_ struct{} `type:"structure"`
5645
5646	// The API Key parameters to use for authorization.
5647	ApiKeyAuthParameters *ConnectionApiKeyAuthResponseParameters `type:"structure"`
5648
5649	// The authorization parameters for Basic authorization.
5650	BasicAuthParameters *ConnectionBasicAuthResponseParameters `type:"structure"`
5651
5652	// Additional parameters for the connection that are passed through with every
5653	// invocation to the HTTP endpoint.
5654	InvocationHttpParameters *ConnectionHttpParameters `type:"structure"`
5655
5656	// The OAuth parameters to use for authorization.
5657	OAuthParameters *ConnectionOAuthResponseParameters `type:"structure"`
5658}
5659
5660// String returns the string representation
5661func (s ConnectionAuthResponseParameters) String() string {
5662	return awsutil.Prettify(s)
5663}
5664
5665// GoString returns the string representation
5666func (s ConnectionAuthResponseParameters) GoString() string {
5667	return s.String()
5668}
5669
5670// SetApiKeyAuthParameters sets the ApiKeyAuthParameters field's value.
5671func (s *ConnectionAuthResponseParameters) SetApiKeyAuthParameters(v *ConnectionApiKeyAuthResponseParameters) *ConnectionAuthResponseParameters {
5672	s.ApiKeyAuthParameters = v
5673	return s
5674}
5675
5676// SetBasicAuthParameters sets the BasicAuthParameters field's value.
5677func (s *ConnectionAuthResponseParameters) SetBasicAuthParameters(v *ConnectionBasicAuthResponseParameters) *ConnectionAuthResponseParameters {
5678	s.BasicAuthParameters = v
5679	return s
5680}
5681
5682// SetInvocationHttpParameters sets the InvocationHttpParameters field's value.
5683func (s *ConnectionAuthResponseParameters) SetInvocationHttpParameters(v *ConnectionHttpParameters) *ConnectionAuthResponseParameters {
5684	s.InvocationHttpParameters = v
5685	return s
5686}
5687
5688// SetOAuthParameters sets the OAuthParameters field's value.
5689func (s *ConnectionAuthResponseParameters) SetOAuthParameters(v *ConnectionOAuthResponseParameters) *ConnectionAuthResponseParameters {
5690	s.OAuthParameters = v
5691	return s
5692}
5693
5694// Contains the authorization parameters for the connection if Basic is specified
5695// as the authorization type.
5696type ConnectionBasicAuthResponseParameters struct {
5697	_ struct{} `type:"structure"`
5698
5699	// The user name to use for Basic authorization.
5700	Username *string `min:"1" type:"string"`
5701}
5702
5703// String returns the string representation
5704func (s ConnectionBasicAuthResponseParameters) String() string {
5705	return awsutil.Prettify(s)
5706}
5707
5708// GoString returns the string representation
5709func (s ConnectionBasicAuthResponseParameters) GoString() string {
5710	return s.String()
5711}
5712
5713// SetUsername sets the Username field's value.
5714func (s *ConnectionBasicAuthResponseParameters) SetUsername(v string) *ConnectionBasicAuthResponseParameters {
5715	s.Username = &v
5716	return s
5717}
5718
5719// Additional parameter included in the body. You can include up to 100 additional
5720// body parameters per request. An event payload cannot exceed 64 KB.
5721type ConnectionBodyParameter struct {
5722	_ struct{} `type:"structure"`
5723
5724	// Specified whether the value is secret.
5725	IsValueSecret *bool `type:"boolean"`
5726
5727	// The key for the parameter.
5728	Key *string `type:"string"`
5729
5730	// The value associated with the key.
5731	Value *string `type:"string"`
5732}
5733
5734// String returns the string representation
5735func (s ConnectionBodyParameter) String() string {
5736	return awsutil.Prettify(s)
5737}
5738
5739// GoString returns the string representation
5740func (s ConnectionBodyParameter) GoString() string {
5741	return s.String()
5742}
5743
5744// SetIsValueSecret sets the IsValueSecret field's value.
5745func (s *ConnectionBodyParameter) SetIsValueSecret(v bool) *ConnectionBodyParameter {
5746	s.IsValueSecret = &v
5747	return s
5748}
5749
5750// SetKey sets the Key field's value.
5751func (s *ConnectionBodyParameter) SetKey(v string) *ConnectionBodyParameter {
5752	s.Key = &v
5753	return s
5754}
5755
5756// SetValue sets the Value field's value.
5757func (s *ConnectionBodyParameter) SetValue(v string) *ConnectionBodyParameter {
5758	s.Value = &v
5759	return s
5760}
5761
5762// Additional parameter included in the header. You can include up to 100 additional
5763// header parameters per request. An event payload cannot exceed 64 KB.
5764type ConnectionHeaderParameter struct {
5765	_ struct{} `type:"structure"`
5766
5767	// Specified whether the value is a secret.
5768	IsValueSecret *bool `type:"boolean"`
5769
5770	// The key for the parameter.
5771	Key *string `type:"string"`
5772
5773	// The value associated with the key.
5774	Value *string `type:"string"`
5775}
5776
5777// String returns the string representation
5778func (s ConnectionHeaderParameter) String() string {
5779	return awsutil.Prettify(s)
5780}
5781
5782// GoString returns the string representation
5783func (s ConnectionHeaderParameter) GoString() string {
5784	return s.String()
5785}
5786
5787// SetIsValueSecret sets the IsValueSecret field's value.
5788func (s *ConnectionHeaderParameter) SetIsValueSecret(v bool) *ConnectionHeaderParameter {
5789	s.IsValueSecret = &v
5790	return s
5791}
5792
5793// SetKey sets the Key field's value.
5794func (s *ConnectionHeaderParameter) SetKey(v string) *ConnectionHeaderParameter {
5795	s.Key = &v
5796	return s
5797}
5798
5799// SetValue sets the Value field's value.
5800func (s *ConnectionHeaderParameter) SetValue(v string) *ConnectionHeaderParameter {
5801	s.Value = &v
5802	return s
5803}
5804
5805// Contains additional parameters for the connection.
5806type ConnectionHttpParameters struct {
5807	_ struct{} `type:"structure"`
5808
5809	// Contains additional body string parameters for the connection.
5810	BodyParameters []*ConnectionBodyParameter `type:"list"`
5811
5812	// Contains additional header parameters for the connection.
5813	HeaderParameters []*ConnectionHeaderParameter `type:"list"`
5814
5815	// Contains additional query string parameters for the connection.
5816	QueryStringParameters []*ConnectionQueryStringParameter `type:"list"`
5817}
5818
5819// String returns the string representation
5820func (s ConnectionHttpParameters) String() string {
5821	return awsutil.Prettify(s)
5822}
5823
5824// GoString returns the string representation
5825func (s ConnectionHttpParameters) GoString() string {
5826	return s.String()
5827}
5828
5829// SetBodyParameters sets the BodyParameters field's value.
5830func (s *ConnectionHttpParameters) SetBodyParameters(v []*ConnectionBodyParameter) *ConnectionHttpParameters {
5831	s.BodyParameters = v
5832	return s
5833}
5834
5835// SetHeaderParameters sets the HeaderParameters field's value.
5836func (s *ConnectionHttpParameters) SetHeaderParameters(v []*ConnectionHeaderParameter) *ConnectionHttpParameters {
5837	s.HeaderParameters = v
5838	return s
5839}
5840
5841// SetQueryStringParameters sets the QueryStringParameters field's value.
5842func (s *ConnectionHttpParameters) SetQueryStringParameters(v []*ConnectionQueryStringParameter) *ConnectionHttpParameters {
5843	s.QueryStringParameters = v
5844	return s
5845}
5846
5847// Contains the client response parameters for the connection when OAuth is
5848// specified as the authorization type.
5849type ConnectionOAuthClientResponseParameters struct {
5850	_ struct{} `type:"structure"`
5851
5852	// The client ID associated with the response to the connection request.
5853	ClientID *string `min:"1" type:"string"`
5854}
5855
5856// String returns the string representation
5857func (s ConnectionOAuthClientResponseParameters) String() string {
5858	return awsutil.Prettify(s)
5859}
5860
5861// GoString returns the string representation
5862func (s ConnectionOAuthClientResponseParameters) GoString() string {
5863	return s.String()
5864}
5865
5866// SetClientID sets the ClientID field's value.
5867func (s *ConnectionOAuthClientResponseParameters) SetClientID(v string) *ConnectionOAuthClientResponseParameters {
5868	s.ClientID = &v
5869	return s
5870}
5871
5872// Contains the response parameters when OAuth is specified as the authorization
5873// type.
5874type ConnectionOAuthResponseParameters struct {
5875	_ struct{} `type:"structure"`
5876
5877	// The URL to the HTTP endpoint that authorized the request.
5878	AuthorizationEndpoint *string `min:"1" type:"string"`
5879
5880	// A ConnectionOAuthClientResponseParameters object that contains details about
5881	// the client parameters returned when OAuth is specified as the authorization
5882	// type.
5883	ClientParameters *ConnectionOAuthClientResponseParameters `type:"structure"`
5884
5885	// The method used to connect to the HTTP endpoint.
5886	HttpMethod *string `type:"string" enum:"ConnectionOAuthHttpMethod"`
5887
5888	// The additional HTTP parameters used for the OAuth authorization request.
5889	OAuthHttpParameters *ConnectionHttpParameters `type:"structure"`
5890}
5891
5892// String returns the string representation
5893func (s ConnectionOAuthResponseParameters) String() string {
5894	return awsutil.Prettify(s)
5895}
5896
5897// GoString returns the string representation
5898func (s ConnectionOAuthResponseParameters) GoString() string {
5899	return s.String()
5900}
5901
5902// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
5903func (s *ConnectionOAuthResponseParameters) SetAuthorizationEndpoint(v string) *ConnectionOAuthResponseParameters {
5904	s.AuthorizationEndpoint = &v
5905	return s
5906}
5907
5908// SetClientParameters sets the ClientParameters field's value.
5909func (s *ConnectionOAuthResponseParameters) SetClientParameters(v *ConnectionOAuthClientResponseParameters) *ConnectionOAuthResponseParameters {
5910	s.ClientParameters = v
5911	return s
5912}
5913
5914// SetHttpMethod sets the HttpMethod field's value.
5915func (s *ConnectionOAuthResponseParameters) SetHttpMethod(v string) *ConnectionOAuthResponseParameters {
5916	s.HttpMethod = &v
5917	return s
5918}
5919
5920// SetOAuthHttpParameters sets the OAuthHttpParameters field's value.
5921func (s *ConnectionOAuthResponseParameters) SetOAuthHttpParameters(v *ConnectionHttpParameters) *ConnectionOAuthResponseParameters {
5922	s.OAuthHttpParameters = v
5923	return s
5924}
5925
5926// Additional query string parameter for the connection. You can include up
5927// to 100 additional query string parameters per request. Each additional parameter
5928// counts towards the event payload size, which cannot exceed 64 KB.
5929type ConnectionQueryStringParameter struct {
5930	_ struct{} `type:"structure"`
5931
5932	// Specifies whether the value is secret.
5933	IsValueSecret *bool `type:"boolean"`
5934
5935	// The key for a query string parameter.
5936	Key *string `type:"string"`
5937
5938	// The value associated with the key for the query string parameter.
5939	Value *string `type:"string"`
5940}
5941
5942// String returns the string representation
5943func (s ConnectionQueryStringParameter) String() string {
5944	return awsutil.Prettify(s)
5945}
5946
5947// GoString returns the string representation
5948func (s ConnectionQueryStringParameter) GoString() string {
5949	return s.String()
5950}
5951
5952// SetIsValueSecret sets the IsValueSecret field's value.
5953func (s *ConnectionQueryStringParameter) SetIsValueSecret(v bool) *ConnectionQueryStringParameter {
5954	s.IsValueSecret = &v
5955	return s
5956}
5957
5958// SetKey sets the Key field's value.
5959func (s *ConnectionQueryStringParameter) SetKey(v string) *ConnectionQueryStringParameter {
5960	s.Key = &v
5961	return s
5962}
5963
5964// SetValue sets the Value field's value.
5965func (s *ConnectionQueryStringParameter) SetValue(v string) *ConnectionQueryStringParameter {
5966	s.Value = &v
5967	return s
5968}
5969
5970type CreateApiDestinationInput struct {
5971	_ struct{} `type:"structure"`
5972
5973	// The ARN of the connection to use for the API destination. The destination
5974	// endpoint must support the authorization type specified for the connection.
5975	//
5976	// ConnectionArn is a required field
5977	ConnectionArn *string `min:"1" type:"string" required:"true"`
5978
5979	// A description for the API destination to create.
5980	Description *string `type:"string"`
5981
5982	// The method to use for the request to the HTTP invocation endpoint.
5983	//
5984	// HttpMethod is a required field
5985	HttpMethod *string `type:"string" required:"true" enum:"ApiDestinationHttpMethod"`
5986
5987	// The URL to the HTTP invocation endpoint for the API destination.
5988	//
5989	// InvocationEndpoint is a required field
5990	InvocationEndpoint *string `min:"1" type:"string" required:"true"`
5991
5992	// The maximum number of requests per second to send to the HTTP invocation
5993	// endpoint.
5994	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
5995
5996	// The name for the API destination to create.
5997	//
5998	// Name is a required field
5999	Name *string `min:"1" type:"string" required:"true"`
6000}
6001
6002// String returns the string representation
6003func (s CreateApiDestinationInput) String() string {
6004	return awsutil.Prettify(s)
6005}
6006
6007// GoString returns the string representation
6008func (s CreateApiDestinationInput) GoString() string {
6009	return s.String()
6010}
6011
6012// Validate inspects the fields of the type to determine if they are valid.
6013func (s *CreateApiDestinationInput) Validate() error {
6014	invalidParams := request.ErrInvalidParams{Context: "CreateApiDestinationInput"}
6015	if s.ConnectionArn == nil {
6016		invalidParams.Add(request.NewErrParamRequired("ConnectionArn"))
6017	}
6018	if s.ConnectionArn != nil && len(*s.ConnectionArn) < 1 {
6019		invalidParams.Add(request.NewErrParamMinLen("ConnectionArn", 1))
6020	}
6021	if s.HttpMethod == nil {
6022		invalidParams.Add(request.NewErrParamRequired("HttpMethod"))
6023	}
6024	if s.InvocationEndpoint == nil {
6025		invalidParams.Add(request.NewErrParamRequired("InvocationEndpoint"))
6026	}
6027	if s.InvocationEndpoint != nil && len(*s.InvocationEndpoint) < 1 {
6028		invalidParams.Add(request.NewErrParamMinLen("InvocationEndpoint", 1))
6029	}
6030	if s.InvocationRateLimitPerSecond != nil && *s.InvocationRateLimitPerSecond < 1 {
6031		invalidParams.Add(request.NewErrParamMinValue("InvocationRateLimitPerSecond", 1))
6032	}
6033	if s.Name == nil {
6034		invalidParams.Add(request.NewErrParamRequired("Name"))
6035	}
6036	if s.Name != nil && len(*s.Name) < 1 {
6037		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6038	}
6039
6040	if invalidParams.Len() > 0 {
6041		return invalidParams
6042	}
6043	return nil
6044}
6045
6046// SetConnectionArn sets the ConnectionArn field's value.
6047func (s *CreateApiDestinationInput) SetConnectionArn(v string) *CreateApiDestinationInput {
6048	s.ConnectionArn = &v
6049	return s
6050}
6051
6052// SetDescription sets the Description field's value.
6053func (s *CreateApiDestinationInput) SetDescription(v string) *CreateApiDestinationInput {
6054	s.Description = &v
6055	return s
6056}
6057
6058// SetHttpMethod sets the HttpMethod field's value.
6059func (s *CreateApiDestinationInput) SetHttpMethod(v string) *CreateApiDestinationInput {
6060	s.HttpMethod = &v
6061	return s
6062}
6063
6064// SetInvocationEndpoint sets the InvocationEndpoint field's value.
6065func (s *CreateApiDestinationInput) SetInvocationEndpoint(v string) *CreateApiDestinationInput {
6066	s.InvocationEndpoint = &v
6067	return s
6068}
6069
6070// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
6071func (s *CreateApiDestinationInput) SetInvocationRateLimitPerSecond(v int64) *CreateApiDestinationInput {
6072	s.InvocationRateLimitPerSecond = &v
6073	return s
6074}
6075
6076// SetName sets the Name field's value.
6077func (s *CreateApiDestinationInput) SetName(v string) *CreateApiDestinationInput {
6078	s.Name = &v
6079	return s
6080}
6081
6082type CreateApiDestinationOutput struct {
6083	_ struct{} `type:"structure"`
6084
6085	// The ARN of the API destination that was created by the request.
6086	ApiDestinationArn *string `min:"1" type:"string"`
6087
6088	// The state of the API destination that was created by the request.
6089	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
6090
6091	// A time stamp indicating the time that the API destination was created.
6092	CreationTime *time.Time `type:"timestamp"`
6093
6094	// A time stamp indicating the time that the API destination was last modified.
6095	LastModifiedTime *time.Time `type:"timestamp"`
6096}
6097
6098// String returns the string representation
6099func (s CreateApiDestinationOutput) String() string {
6100	return awsutil.Prettify(s)
6101}
6102
6103// GoString returns the string representation
6104func (s CreateApiDestinationOutput) GoString() string {
6105	return s.String()
6106}
6107
6108// SetApiDestinationArn sets the ApiDestinationArn field's value.
6109func (s *CreateApiDestinationOutput) SetApiDestinationArn(v string) *CreateApiDestinationOutput {
6110	s.ApiDestinationArn = &v
6111	return s
6112}
6113
6114// SetApiDestinationState sets the ApiDestinationState field's value.
6115func (s *CreateApiDestinationOutput) SetApiDestinationState(v string) *CreateApiDestinationOutput {
6116	s.ApiDestinationState = &v
6117	return s
6118}
6119
6120// SetCreationTime sets the CreationTime field's value.
6121func (s *CreateApiDestinationOutput) SetCreationTime(v time.Time) *CreateApiDestinationOutput {
6122	s.CreationTime = &v
6123	return s
6124}
6125
6126// SetLastModifiedTime sets the LastModifiedTime field's value.
6127func (s *CreateApiDestinationOutput) SetLastModifiedTime(v time.Time) *CreateApiDestinationOutput {
6128	s.LastModifiedTime = &v
6129	return s
6130}
6131
6132type CreateArchiveInput struct {
6133	_ struct{} `type:"structure"`
6134
6135	// The name for the archive to create.
6136	//
6137	// ArchiveName is a required field
6138	ArchiveName *string `min:"1" type:"string" required:"true"`
6139
6140	// A description for the archive.
6141	Description *string `type:"string"`
6142
6143	// An event pattern to use to filter events sent to the archive.
6144	EventPattern *string `type:"string"`
6145
6146	// The ARN of the event bus that sends events to the archive.
6147	//
6148	// EventSourceArn is a required field
6149	EventSourceArn *string `min:"1" type:"string" required:"true"`
6150
6151	// The number of days to retain events for. Default value is 0. If set to 0,
6152	// events are retained indefinitely
6153	RetentionDays *int64 `type:"integer"`
6154}
6155
6156// String returns the string representation
6157func (s CreateArchiveInput) String() string {
6158	return awsutil.Prettify(s)
6159}
6160
6161// GoString returns the string representation
6162func (s CreateArchiveInput) GoString() string {
6163	return s.String()
6164}
6165
6166// Validate inspects the fields of the type to determine if they are valid.
6167func (s *CreateArchiveInput) Validate() error {
6168	invalidParams := request.ErrInvalidParams{Context: "CreateArchiveInput"}
6169	if s.ArchiveName == nil {
6170		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
6171	}
6172	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
6173		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
6174	}
6175	if s.EventSourceArn == nil {
6176		invalidParams.Add(request.NewErrParamRequired("EventSourceArn"))
6177	}
6178	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
6179		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
6180	}
6181
6182	if invalidParams.Len() > 0 {
6183		return invalidParams
6184	}
6185	return nil
6186}
6187
6188// SetArchiveName sets the ArchiveName field's value.
6189func (s *CreateArchiveInput) SetArchiveName(v string) *CreateArchiveInput {
6190	s.ArchiveName = &v
6191	return s
6192}
6193
6194// SetDescription sets the Description field's value.
6195func (s *CreateArchiveInput) SetDescription(v string) *CreateArchiveInput {
6196	s.Description = &v
6197	return s
6198}
6199
6200// SetEventPattern sets the EventPattern field's value.
6201func (s *CreateArchiveInput) SetEventPattern(v string) *CreateArchiveInput {
6202	s.EventPattern = &v
6203	return s
6204}
6205
6206// SetEventSourceArn sets the EventSourceArn field's value.
6207func (s *CreateArchiveInput) SetEventSourceArn(v string) *CreateArchiveInput {
6208	s.EventSourceArn = &v
6209	return s
6210}
6211
6212// SetRetentionDays sets the RetentionDays field's value.
6213func (s *CreateArchiveInput) SetRetentionDays(v int64) *CreateArchiveInput {
6214	s.RetentionDays = &v
6215	return s
6216}
6217
6218type CreateArchiveOutput struct {
6219	_ struct{} `type:"structure"`
6220
6221	// The ARN of the archive that was created.
6222	ArchiveArn *string `min:"1" type:"string"`
6223
6224	// The time at which the archive was created.
6225	CreationTime *time.Time `type:"timestamp"`
6226
6227	// The state of the archive that was created.
6228	State *string `type:"string" enum:"ArchiveState"`
6229
6230	// The reason that the archive is in the state.
6231	StateReason *string `type:"string"`
6232}
6233
6234// String returns the string representation
6235func (s CreateArchiveOutput) String() string {
6236	return awsutil.Prettify(s)
6237}
6238
6239// GoString returns the string representation
6240func (s CreateArchiveOutput) GoString() string {
6241	return s.String()
6242}
6243
6244// SetArchiveArn sets the ArchiveArn field's value.
6245func (s *CreateArchiveOutput) SetArchiveArn(v string) *CreateArchiveOutput {
6246	s.ArchiveArn = &v
6247	return s
6248}
6249
6250// SetCreationTime sets the CreationTime field's value.
6251func (s *CreateArchiveOutput) SetCreationTime(v time.Time) *CreateArchiveOutput {
6252	s.CreationTime = &v
6253	return s
6254}
6255
6256// SetState sets the State field's value.
6257func (s *CreateArchiveOutput) SetState(v string) *CreateArchiveOutput {
6258	s.State = &v
6259	return s
6260}
6261
6262// SetStateReason sets the StateReason field's value.
6263func (s *CreateArchiveOutput) SetStateReason(v string) *CreateArchiveOutput {
6264	s.StateReason = &v
6265	return s
6266}
6267
6268// Contains the API key authorization parameters for the connection.
6269type CreateConnectionApiKeyAuthRequestParameters struct {
6270	_ struct{} `type:"structure"`
6271
6272	// The name of the API key to use for authorization.
6273	//
6274	// ApiKeyName is a required field
6275	ApiKeyName *string `min:"1" type:"string" required:"true"`
6276
6277	// The value for the API key to use for authorization.
6278	//
6279	// ApiKeyValue is a required field
6280	ApiKeyValue *string `min:"1" type:"string" required:"true"`
6281}
6282
6283// String returns the string representation
6284func (s CreateConnectionApiKeyAuthRequestParameters) String() string {
6285	return awsutil.Prettify(s)
6286}
6287
6288// GoString returns the string representation
6289func (s CreateConnectionApiKeyAuthRequestParameters) GoString() string {
6290	return s.String()
6291}
6292
6293// Validate inspects the fields of the type to determine if they are valid.
6294func (s *CreateConnectionApiKeyAuthRequestParameters) Validate() error {
6295	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionApiKeyAuthRequestParameters"}
6296	if s.ApiKeyName == nil {
6297		invalidParams.Add(request.NewErrParamRequired("ApiKeyName"))
6298	}
6299	if s.ApiKeyName != nil && len(*s.ApiKeyName) < 1 {
6300		invalidParams.Add(request.NewErrParamMinLen("ApiKeyName", 1))
6301	}
6302	if s.ApiKeyValue == nil {
6303		invalidParams.Add(request.NewErrParamRequired("ApiKeyValue"))
6304	}
6305	if s.ApiKeyValue != nil && len(*s.ApiKeyValue) < 1 {
6306		invalidParams.Add(request.NewErrParamMinLen("ApiKeyValue", 1))
6307	}
6308
6309	if invalidParams.Len() > 0 {
6310		return invalidParams
6311	}
6312	return nil
6313}
6314
6315// SetApiKeyName sets the ApiKeyName field's value.
6316func (s *CreateConnectionApiKeyAuthRequestParameters) SetApiKeyName(v string) *CreateConnectionApiKeyAuthRequestParameters {
6317	s.ApiKeyName = &v
6318	return s
6319}
6320
6321// SetApiKeyValue sets the ApiKeyValue field's value.
6322func (s *CreateConnectionApiKeyAuthRequestParameters) SetApiKeyValue(v string) *CreateConnectionApiKeyAuthRequestParameters {
6323	s.ApiKeyValue = &v
6324	return s
6325}
6326
6327// Contains the authorization parameters for the connection.
6328type CreateConnectionAuthRequestParameters struct {
6329	_ struct{} `type:"structure"`
6330
6331	// A CreateConnectionApiKeyAuthRequestParameters object that contains the API
6332	// key authorization parameters to use for the connection.
6333	ApiKeyAuthParameters *CreateConnectionApiKeyAuthRequestParameters `type:"structure"`
6334
6335	// A CreateConnectionBasicAuthRequestParameters object that contains the Basic
6336	// authorization parameters to use for the connection.
6337	BasicAuthParameters *CreateConnectionBasicAuthRequestParameters `type:"structure"`
6338
6339	// A ConnectionHttpParameters object that contains the API key authorization
6340	// parameters to use for the connection. Note that if you include additional
6341	// parameters for the target of a rule via HttpParameters, including query strings,
6342	// the parameters added for the connection take precedence.
6343	InvocationHttpParameters *ConnectionHttpParameters `type:"structure"`
6344
6345	// A CreateConnectionOAuthRequestParameters object that contains the OAuth authorization
6346	// parameters to use for the connection.
6347	OAuthParameters *CreateConnectionOAuthRequestParameters `type:"structure"`
6348}
6349
6350// String returns the string representation
6351func (s CreateConnectionAuthRequestParameters) String() string {
6352	return awsutil.Prettify(s)
6353}
6354
6355// GoString returns the string representation
6356func (s CreateConnectionAuthRequestParameters) GoString() string {
6357	return s.String()
6358}
6359
6360// Validate inspects the fields of the type to determine if they are valid.
6361func (s *CreateConnectionAuthRequestParameters) Validate() error {
6362	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionAuthRequestParameters"}
6363	if s.ApiKeyAuthParameters != nil {
6364		if err := s.ApiKeyAuthParameters.Validate(); err != nil {
6365			invalidParams.AddNested("ApiKeyAuthParameters", err.(request.ErrInvalidParams))
6366		}
6367	}
6368	if s.BasicAuthParameters != nil {
6369		if err := s.BasicAuthParameters.Validate(); err != nil {
6370			invalidParams.AddNested("BasicAuthParameters", err.(request.ErrInvalidParams))
6371		}
6372	}
6373	if s.OAuthParameters != nil {
6374		if err := s.OAuthParameters.Validate(); err != nil {
6375			invalidParams.AddNested("OAuthParameters", err.(request.ErrInvalidParams))
6376		}
6377	}
6378
6379	if invalidParams.Len() > 0 {
6380		return invalidParams
6381	}
6382	return nil
6383}
6384
6385// SetApiKeyAuthParameters sets the ApiKeyAuthParameters field's value.
6386func (s *CreateConnectionAuthRequestParameters) SetApiKeyAuthParameters(v *CreateConnectionApiKeyAuthRequestParameters) *CreateConnectionAuthRequestParameters {
6387	s.ApiKeyAuthParameters = v
6388	return s
6389}
6390
6391// SetBasicAuthParameters sets the BasicAuthParameters field's value.
6392func (s *CreateConnectionAuthRequestParameters) SetBasicAuthParameters(v *CreateConnectionBasicAuthRequestParameters) *CreateConnectionAuthRequestParameters {
6393	s.BasicAuthParameters = v
6394	return s
6395}
6396
6397// SetInvocationHttpParameters sets the InvocationHttpParameters field's value.
6398func (s *CreateConnectionAuthRequestParameters) SetInvocationHttpParameters(v *ConnectionHttpParameters) *CreateConnectionAuthRequestParameters {
6399	s.InvocationHttpParameters = v
6400	return s
6401}
6402
6403// SetOAuthParameters sets the OAuthParameters field's value.
6404func (s *CreateConnectionAuthRequestParameters) SetOAuthParameters(v *CreateConnectionOAuthRequestParameters) *CreateConnectionAuthRequestParameters {
6405	s.OAuthParameters = v
6406	return s
6407}
6408
6409// Contains the Basic authorization parameters to use for the connection.
6410type CreateConnectionBasicAuthRequestParameters struct {
6411	_ struct{} `type:"structure"`
6412
6413	// The password associated with the user name to use for Basic authorization.
6414	//
6415	// Password is a required field
6416	Password *string `min:"1" type:"string" required:"true"`
6417
6418	// The user name to use for Basic authorization.
6419	//
6420	// Username is a required field
6421	Username *string `min:"1" type:"string" required:"true"`
6422}
6423
6424// String returns the string representation
6425func (s CreateConnectionBasicAuthRequestParameters) String() string {
6426	return awsutil.Prettify(s)
6427}
6428
6429// GoString returns the string representation
6430func (s CreateConnectionBasicAuthRequestParameters) GoString() string {
6431	return s.String()
6432}
6433
6434// Validate inspects the fields of the type to determine if they are valid.
6435func (s *CreateConnectionBasicAuthRequestParameters) Validate() error {
6436	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionBasicAuthRequestParameters"}
6437	if s.Password == nil {
6438		invalidParams.Add(request.NewErrParamRequired("Password"))
6439	}
6440	if s.Password != nil && len(*s.Password) < 1 {
6441		invalidParams.Add(request.NewErrParamMinLen("Password", 1))
6442	}
6443	if s.Username == nil {
6444		invalidParams.Add(request.NewErrParamRequired("Username"))
6445	}
6446	if s.Username != nil && len(*s.Username) < 1 {
6447		invalidParams.Add(request.NewErrParamMinLen("Username", 1))
6448	}
6449
6450	if invalidParams.Len() > 0 {
6451		return invalidParams
6452	}
6453	return nil
6454}
6455
6456// SetPassword sets the Password field's value.
6457func (s *CreateConnectionBasicAuthRequestParameters) SetPassword(v string) *CreateConnectionBasicAuthRequestParameters {
6458	s.Password = &v
6459	return s
6460}
6461
6462// SetUsername sets the Username field's value.
6463func (s *CreateConnectionBasicAuthRequestParameters) SetUsername(v string) *CreateConnectionBasicAuthRequestParameters {
6464	s.Username = &v
6465	return s
6466}
6467
6468type CreateConnectionInput struct {
6469	_ struct{} `type:"structure"`
6470
6471	// A CreateConnectionAuthRequestParameters object that contains the authorization
6472	// parameters to use to authorize with the endpoint.
6473	//
6474	// AuthParameters is a required field
6475	AuthParameters *CreateConnectionAuthRequestParameters `type:"structure" required:"true"`
6476
6477	// The type of authorization to use for the connection.
6478	//
6479	// AuthorizationType is a required field
6480	AuthorizationType *string `type:"string" required:"true" enum:"ConnectionAuthorizationType"`
6481
6482	// A description for the connection to create.
6483	Description *string `type:"string"`
6484
6485	// The name for the connection to create.
6486	//
6487	// Name is a required field
6488	Name *string `min:"1" type:"string" required:"true"`
6489}
6490
6491// String returns the string representation
6492func (s CreateConnectionInput) String() string {
6493	return awsutil.Prettify(s)
6494}
6495
6496// GoString returns the string representation
6497func (s CreateConnectionInput) GoString() string {
6498	return s.String()
6499}
6500
6501// Validate inspects the fields of the type to determine if they are valid.
6502func (s *CreateConnectionInput) Validate() error {
6503	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionInput"}
6504	if s.AuthParameters == nil {
6505		invalidParams.Add(request.NewErrParamRequired("AuthParameters"))
6506	}
6507	if s.AuthorizationType == nil {
6508		invalidParams.Add(request.NewErrParamRequired("AuthorizationType"))
6509	}
6510	if s.Name == nil {
6511		invalidParams.Add(request.NewErrParamRequired("Name"))
6512	}
6513	if s.Name != nil && len(*s.Name) < 1 {
6514		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6515	}
6516	if s.AuthParameters != nil {
6517		if err := s.AuthParameters.Validate(); err != nil {
6518			invalidParams.AddNested("AuthParameters", err.(request.ErrInvalidParams))
6519		}
6520	}
6521
6522	if invalidParams.Len() > 0 {
6523		return invalidParams
6524	}
6525	return nil
6526}
6527
6528// SetAuthParameters sets the AuthParameters field's value.
6529func (s *CreateConnectionInput) SetAuthParameters(v *CreateConnectionAuthRequestParameters) *CreateConnectionInput {
6530	s.AuthParameters = v
6531	return s
6532}
6533
6534// SetAuthorizationType sets the AuthorizationType field's value.
6535func (s *CreateConnectionInput) SetAuthorizationType(v string) *CreateConnectionInput {
6536	s.AuthorizationType = &v
6537	return s
6538}
6539
6540// SetDescription sets the Description field's value.
6541func (s *CreateConnectionInput) SetDescription(v string) *CreateConnectionInput {
6542	s.Description = &v
6543	return s
6544}
6545
6546// SetName sets the Name field's value.
6547func (s *CreateConnectionInput) SetName(v string) *CreateConnectionInput {
6548	s.Name = &v
6549	return s
6550}
6551
6552// Contains the Basic authorization parameters to use for the connection.
6553type CreateConnectionOAuthClientRequestParameters struct {
6554	_ struct{} `type:"structure"`
6555
6556	// The client ID to use for OAuth authorization for the connection.
6557	//
6558	// ClientID is a required field
6559	ClientID *string `min:"1" type:"string" required:"true"`
6560
6561	// The client secret associated with the client ID to use for OAuth authorization
6562	// for the connection.
6563	//
6564	// ClientSecret is a required field
6565	ClientSecret *string `min:"1" type:"string" required:"true"`
6566}
6567
6568// String returns the string representation
6569func (s CreateConnectionOAuthClientRequestParameters) String() string {
6570	return awsutil.Prettify(s)
6571}
6572
6573// GoString returns the string representation
6574func (s CreateConnectionOAuthClientRequestParameters) GoString() string {
6575	return s.String()
6576}
6577
6578// Validate inspects the fields of the type to determine if they are valid.
6579func (s *CreateConnectionOAuthClientRequestParameters) Validate() error {
6580	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionOAuthClientRequestParameters"}
6581	if s.ClientID == nil {
6582		invalidParams.Add(request.NewErrParamRequired("ClientID"))
6583	}
6584	if s.ClientID != nil && len(*s.ClientID) < 1 {
6585		invalidParams.Add(request.NewErrParamMinLen("ClientID", 1))
6586	}
6587	if s.ClientSecret == nil {
6588		invalidParams.Add(request.NewErrParamRequired("ClientSecret"))
6589	}
6590	if s.ClientSecret != nil && len(*s.ClientSecret) < 1 {
6591		invalidParams.Add(request.NewErrParamMinLen("ClientSecret", 1))
6592	}
6593
6594	if invalidParams.Len() > 0 {
6595		return invalidParams
6596	}
6597	return nil
6598}
6599
6600// SetClientID sets the ClientID field's value.
6601func (s *CreateConnectionOAuthClientRequestParameters) SetClientID(v string) *CreateConnectionOAuthClientRequestParameters {
6602	s.ClientID = &v
6603	return s
6604}
6605
6606// SetClientSecret sets the ClientSecret field's value.
6607func (s *CreateConnectionOAuthClientRequestParameters) SetClientSecret(v string) *CreateConnectionOAuthClientRequestParameters {
6608	s.ClientSecret = &v
6609	return s
6610}
6611
6612// Contains the OAuth authorization parameters to use for the connection.
6613type CreateConnectionOAuthRequestParameters struct {
6614	_ struct{} `type:"structure"`
6615
6616	// The URL to the authorization endpoint when OAuth is specified as the authorization
6617	// type.
6618	//
6619	// AuthorizationEndpoint is a required field
6620	AuthorizationEndpoint *string `min:"1" type:"string" required:"true"`
6621
6622	// A CreateConnectionOAuthClientRequestParameters object that contains the client
6623	// parameters for OAuth authorization.
6624	//
6625	// ClientParameters is a required field
6626	ClientParameters *CreateConnectionOAuthClientRequestParameters `type:"structure" required:"true"`
6627
6628	// The method to use for the authorization request.
6629	//
6630	// HttpMethod is a required field
6631	HttpMethod *string `type:"string" required:"true" enum:"ConnectionOAuthHttpMethod"`
6632
6633	// A ConnectionHttpParameters object that contains details about the additional
6634	// parameters to use for the connection.
6635	OAuthHttpParameters *ConnectionHttpParameters `type:"structure"`
6636}
6637
6638// String returns the string representation
6639func (s CreateConnectionOAuthRequestParameters) String() string {
6640	return awsutil.Prettify(s)
6641}
6642
6643// GoString returns the string representation
6644func (s CreateConnectionOAuthRequestParameters) GoString() string {
6645	return s.String()
6646}
6647
6648// Validate inspects the fields of the type to determine if they are valid.
6649func (s *CreateConnectionOAuthRequestParameters) Validate() error {
6650	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionOAuthRequestParameters"}
6651	if s.AuthorizationEndpoint == nil {
6652		invalidParams.Add(request.NewErrParamRequired("AuthorizationEndpoint"))
6653	}
6654	if s.AuthorizationEndpoint != nil && len(*s.AuthorizationEndpoint) < 1 {
6655		invalidParams.Add(request.NewErrParamMinLen("AuthorizationEndpoint", 1))
6656	}
6657	if s.ClientParameters == nil {
6658		invalidParams.Add(request.NewErrParamRequired("ClientParameters"))
6659	}
6660	if s.HttpMethod == nil {
6661		invalidParams.Add(request.NewErrParamRequired("HttpMethod"))
6662	}
6663	if s.ClientParameters != nil {
6664		if err := s.ClientParameters.Validate(); err != nil {
6665			invalidParams.AddNested("ClientParameters", err.(request.ErrInvalidParams))
6666		}
6667	}
6668
6669	if invalidParams.Len() > 0 {
6670		return invalidParams
6671	}
6672	return nil
6673}
6674
6675// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
6676func (s *CreateConnectionOAuthRequestParameters) SetAuthorizationEndpoint(v string) *CreateConnectionOAuthRequestParameters {
6677	s.AuthorizationEndpoint = &v
6678	return s
6679}
6680
6681// SetClientParameters sets the ClientParameters field's value.
6682func (s *CreateConnectionOAuthRequestParameters) SetClientParameters(v *CreateConnectionOAuthClientRequestParameters) *CreateConnectionOAuthRequestParameters {
6683	s.ClientParameters = v
6684	return s
6685}
6686
6687// SetHttpMethod sets the HttpMethod field's value.
6688func (s *CreateConnectionOAuthRequestParameters) SetHttpMethod(v string) *CreateConnectionOAuthRequestParameters {
6689	s.HttpMethod = &v
6690	return s
6691}
6692
6693// SetOAuthHttpParameters sets the OAuthHttpParameters field's value.
6694func (s *CreateConnectionOAuthRequestParameters) SetOAuthHttpParameters(v *ConnectionHttpParameters) *CreateConnectionOAuthRequestParameters {
6695	s.OAuthHttpParameters = v
6696	return s
6697}
6698
6699type CreateConnectionOutput struct {
6700	_ struct{} `type:"structure"`
6701
6702	// The ARN of the connection that was created by the request.
6703	ConnectionArn *string `min:"1" type:"string"`
6704
6705	// The state of the connection that was created by the request.
6706	ConnectionState *string `type:"string" enum:"ConnectionState"`
6707
6708	// A time stamp for the time that the connection was created.
6709	CreationTime *time.Time `type:"timestamp"`
6710
6711	// A time stamp for the time that the connection was last updated.
6712	LastModifiedTime *time.Time `type:"timestamp"`
6713}
6714
6715// String returns the string representation
6716func (s CreateConnectionOutput) String() string {
6717	return awsutil.Prettify(s)
6718}
6719
6720// GoString returns the string representation
6721func (s CreateConnectionOutput) GoString() string {
6722	return s.String()
6723}
6724
6725// SetConnectionArn sets the ConnectionArn field's value.
6726func (s *CreateConnectionOutput) SetConnectionArn(v string) *CreateConnectionOutput {
6727	s.ConnectionArn = &v
6728	return s
6729}
6730
6731// SetConnectionState sets the ConnectionState field's value.
6732func (s *CreateConnectionOutput) SetConnectionState(v string) *CreateConnectionOutput {
6733	s.ConnectionState = &v
6734	return s
6735}
6736
6737// SetCreationTime sets the CreationTime field's value.
6738func (s *CreateConnectionOutput) SetCreationTime(v time.Time) *CreateConnectionOutput {
6739	s.CreationTime = &v
6740	return s
6741}
6742
6743// SetLastModifiedTime sets the LastModifiedTime field's value.
6744func (s *CreateConnectionOutput) SetLastModifiedTime(v time.Time) *CreateConnectionOutput {
6745	s.LastModifiedTime = &v
6746	return s
6747}
6748
6749type CreateEventBusInput struct {
6750	_ struct{} `type:"structure"`
6751
6752	// If you are creating a partner event bus, this specifies the partner event
6753	// source that the new event bus will be matched with.
6754	EventSourceName *string `min:"1" type:"string"`
6755
6756	// The name of the new event bus.
6757	//
6758	// Event bus names cannot contain the / character. You can't use the name default
6759	// for a custom event bus, as this name is already used for your account's default
6760	// event bus.
6761	//
6762	// If this is a partner event bus, the name must exactly match the name of the
6763	// partner event source that this event bus is matched to.
6764	//
6765	// Name is a required field
6766	Name *string `min:"1" type:"string" required:"true"`
6767
6768	// Tags to associate with the event bus.
6769	Tags []*Tag `type:"list"`
6770}
6771
6772// String returns the string representation
6773func (s CreateEventBusInput) String() string {
6774	return awsutil.Prettify(s)
6775}
6776
6777// GoString returns the string representation
6778func (s CreateEventBusInput) GoString() string {
6779	return s.String()
6780}
6781
6782// Validate inspects the fields of the type to determine if they are valid.
6783func (s *CreateEventBusInput) Validate() error {
6784	invalidParams := request.ErrInvalidParams{Context: "CreateEventBusInput"}
6785	if s.EventSourceName != nil && len(*s.EventSourceName) < 1 {
6786		invalidParams.Add(request.NewErrParamMinLen("EventSourceName", 1))
6787	}
6788	if s.Name == nil {
6789		invalidParams.Add(request.NewErrParamRequired("Name"))
6790	}
6791	if s.Name != nil && len(*s.Name) < 1 {
6792		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6793	}
6794	if s.Tags != nil {
6795		for i, v := range s.Tags {
6796			if v == nil {
6797				continue
6798			}
6799			if err := v.Validate(); err != nil {
6800				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6801			}
6802		}
6803	}
6804
6805	if invalidParams.Len() > 0 {
6806		return invalidParams
6807	}
6808	return nil
6809}
6810
6811// SetEventSourceName sets the EventSourceName field's value.
6812func (s *CreateEventBusInput) SetEventSourceName(v string) *CreateEventBusInput {
6813	s.EventSourceName = &v
6814	return s
6815}
6816
6817// SetName sets the Name field's value.
6818func (s *CreateEventBusInput) SetName(v string) *CreateEventBusInput {
6819	s.Name = &v
6820	return s
6821}
6822
6823// SetTags sets the Tags field's value.
6824func (s *CreateEventBusInput) SetTags(v []*Tag) *CreateEventBusInput {
6825	s.Tags = v
6826	return s
6827}
6828
6829type CreateEventBusOutput struct {
6830	_ struct{} `type:"structure"`
6831
6832	// The ARN of the new event bus.
6833	EventBusArn *string `type:"string"`
6834}
6835
6836// String returns the string representation
6837func (s CreateEventBusOutput) String() string {
6838	return awsutil.Prettify(s)
6839}
6840
6841// GoString returns the string representation
6842func (s CreateEventBusOutput) GoString() string {
6843	return s.String()
6844}
6845
6846// SetEventBusArn sets the EventBusArn field's value.
6847func (s *CreateEventBusOutput) SetEventBusArn(v string) *CreateEventBusOutput {
6848	s.EventBusArn = &v
6849	return s
6850}
6851
6852type CreatePartnerEventSourceInput struct {
6853	_ struct{} `type:"structure"`
6854
6855	// The Amazon Web Services account ID that is permitted to create a matching
6856	// partner event bus for this partner event source.
6857	//
6858	// Account is a required field
6859	Account *string `min:"12" type:"string" required:"true"`
6860
6861	// The name of the partner event source. This name must be unique and must be
6862	// in the format partner_name/event_namespace/event_name . The Amazon Web Services
6863	// account that wants to use this partner event source must create a partner
6864	// event bus with a name that matches the name of the partner event source.
6865	//
6866	// Name is a required field
6867	Name *string `min:"1" type:"string" required:"true"`
6868}
6869
6870// String returns the string representation
6871func (s CreatePartnerEventSourceInput) String() string {
6872	return awsutil.Prettify(s)
6873}
6874
6875// GoString returns the string representation
6876func (s CreatePartnerEventSourceInput) GoString() string {
6877	return s.String()
6878}
6879
6880// Validate inspects the fields of the type to determine if they are valid.
6881func (s *CreatePartnerEventSourceInput) Validate() error {
6882	invalidParams := request.ErrInvalidParams{Context: "CreatePartnerEventSourceInput"}
6883	if s.Account == nil {
6884		invalidParams.Add(request.NewErrParamRequired("Account"))
6885	}
6886	if s.Account != nil && len(*s.Account) < 12 {
6887		invalidParams.Add(request.NewErrParamMinLen("Account", 12))
6888	}
6889	if s.Name == nil {
6890		invalidParams.Add(request.NewErrParamRequired("Name"))
6891	}
6892	if s.Name != nil && len(*s.Name) < 1 {
6893		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6894	}
6895
6896	if invalidParams.Len() > 0 {
6897		return invalidParams
6898	}
6899	return nil
6900}
6901
6902// SetAccount sets the Account field's value.
6903func (s *CreatePartnerEventSourceInput) SetAccount(v string) *CreatePartnerEventSourceInput {
6904	s.Account = &v
6905	return s
6906}
6907
6908// SetName sets the Name field's value.
6909func (s *CreatePartnerEventSourceInput) SetName(v string) *CreatePartnerEventSourceInput {
6910	s.Name = &v
6911	return s
6912}
6913
6914type CreatePartnerEventSourceOutput struct {
6915	_ struct{} `type:"structure"`
6916
6917	// The ARN of the partner event source.
6918	EventSourceArn *string `type:"string"`
6919}
6920
6921// String returns the string representation
6922func (s CreatePartnerEventSourceOutput) String() string {
6923	return awsutil.Prettify(s)
6924}
6925
6926// GoString returns the string representation
6927func (s CreatePartnerEventSourceOutput) GoString() string {
6928	return s.String()
6929}
6930
6931// SetEventSourceArn sets the EventSourceArn field's value.
6932func (s *CreatePartnerEventSourceOutput) SetEventSourceArn(v string) *CreatePartnerEventSourceOutput {
6933	s.EventSourceArn = &v
6934	return s
6935}
6936
6937type DeactivateEventSourceInput struct {
6938	_ struct{} `type:"structure"`
6939
6940	// The name of the partner event source to deactivate.
6941	//
6942	// Name is a required field
6943	Name *string `min:"1" type:"string" required:"true"`
6944}
6945
6946// String returns the string representation
6947func (s DeactivateEventSourceInput) String() string {
6948	return awsutil.Prettify(s)
6949}
6950
6951// GoString returns the string representation
6952func (s DeactivateEventSourceInput) GoString() string {
6953	return s.String()
6954}
6955
6956// Validate inspects the fields of the type to determine if they are valid.
6957func (s *DeactivateEventSourceInput) Validate() error {
6958	invalidParams := request.ErrInvalidParams{Context: "DeactivateEventSourceInput"}
6959	if s.Name == nil {
6960		invalidParams.Add(request.NewErrParamRequired("Name"))
6961	}
6962	if s.Name != nil && len(*s.Name) < 1 {
6963		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6964	}
6965
6966	if invalidParams.Len() > 0 {
6967		return invalidParams
6968	}
6969	return nil
6970}
6971
6972// SetName sets the Name field's value.
6973func (s *DeactivateEventSourceInput) SetName(v string) *DeactivateEventSourceInput {
6974	s.Name = &v
6975	return s
6976}
6977
6978type DeactivateEventSourceOutput struct {
6979	_ struct{} `type:"structure"`
6980}
6981
6982// String returns the string representation
6983func (s DeactivateEventSourceOutput) String() string {
6984	return awsutil.Prettify(s)
6985}
6986
6987// GoString returns the string representation
6988func (s DeactivateEventSourceOutput) GoString() string {
6989	return s.String()
6990}
6991
6992// A DeadLetterConfig object that contains information about a dead-letter queue
6993// configuration.
6994type DeadLetterConfig struct {
6995	_ struct{} `type:"structure"`
6996
6997	// The ARN of the SQS queue specified as the target for the dead-letter queue.
6998	Arn *string `min:"1" type:"string"`
6999}
7000
7001// String returns the string representation
7002func (s DeadLetterConfig) String() string {
7003	return awsutil.Prettify(s)
7004}
7005
7006// GoString returns the string representation
7007func (s DeadLetterConfig) GoString() string {
7008	return s.String()
7009}
7010
7011// Validate inspects the fields of the type to determine if they are valid.
7012func (s *DeadLetterConfig) Validate() error {
7013	invalidParams := request.ErrInvalidParams{Context: "DeadLetterConfig"}
7014	if s.Arn != nil && len(*s.Arn) < 1 {
7015		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
7016	}
7017
7018	if invalidParams.Len() > 0 {
7019		return invalidParams
7020	}
7021	return nil
7022}
7023
7024// SetArn sets the Arn field's value.
7025func (s *DeadLetterConfig) SetArn(v string) *DeadLetterConfig {
7026	s.Arn = &v
7027	return s
7028}
7029
7030type DeauthorizeConnectionInput struct {
7031	_ struct{} `type:"structure"`
7032
7033	// The name of the connection to remove authorization from.
7034	//
7035	// Name is a required field
7036	Name *string `min:"1" type:"string" required:"true"`
7037}
7038
7039// String returns the string representation
7040func (s DeauthorizeConnectionInput) String() string {
7041	return awsutil.Prettify(s)
7042}
7043
7044// GoString returns the string representation
7045func (s DeauthorizeConnectionInput) GoString() string {
7046	return s.String()
7047}
7048
7049// Validate inspects the fields of the type to determine if they are valid.
7050func (s *DeauthorizeConnectionInput) Validate() error {
7051	invalidParams := request.ErrInvalidParams{Context: "DeauthorizeConnectionInput"}
7052	if s.Name == nil {
7053		invalidParams.Add(request.NewErrParamRequired("Name"))
7054	}
7055	if s.Name != nil && len(*s.Name) < 1 {
7056		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7057	}
7058
7059	if invalidParams.Len() > 0 {
7060		return invalidParams
7061	}
7062	return nil
7063}
7064
7065// SetName sets the Name field's value.
7066func (s *DeauthorizeConnectionInput) SetName(v string) *DeauthorizeConnectionInput {
7067	s.Name = &v
7068	return s
7069}
7070
7071type DeauthorizeConnectionOutput struct {
7072	_ struct{} `type:"structure"`
7073
7074	// The ARN of the connection that authorization was removed from.
7075	ConnectionArn *string `min:"1" type:"string"`
7076
7077	// The state of the connection.
7078	ConnectionState *string `type:"string" enum:"ConnectionState"`
7079
7080	// A time stamp for the time that the connection was created.
7081	CreationTime *time.Time `type:"timestamp"`
7082
7083	// A time stamp for the time that the connection was last authorized.
7084	LastAuthorizedTime *time.Time `type:"timestamp"`
7085
7086	// A time stamp for the time that the connection was last updated.
7087	LastModifiedTime *time.Time `type:"timestamp"`
7088}
7089
7090// String returns the string representation
7091func (s DeauthorizeConnectionOutput) String() string {
7092	return awsutil.Prettify(s)
7093}
7094
7095// GoString returns the string representation
7096func (s DeauthorizeConnectionOutput) GoString() string {
7097	return s.String()
7098}
7099
7100// SetConnectionArn sets the ConnectionArn field's value.
7101func (s *DeauthorizeConnectionOutput) SetConnectionArn(v string) *DeauthorizeConnectionOutput {
7102	s.ConnectionArn = &v
7103	return s
7104}
7105
7106// SetConnectionState sets the ConnectionState field's value.
7107func (s *DeauthorizeConnectionOutput) SetConnectionState(v string) *DeauthorizeConnectionOutput {
7108	s.ConnectionState = &v
7109	return s
7110}
7111
7112// SetCreationTime sets the CreationTime field's value.
7113func (s *DeauthorizeConnectionOutput) SetCreationTime(v time.Time) *DeauthorizeConnectionOutput {
7114	s.CreationTime = &v
7115	return s
7116}
7117
7118// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
7119func (s *DeauthorizeConnectionOutput) SetLastAuthorizedTime(v time.Time) *DeauthorizeConnectionOutput {
7120	s.LastAuthorizedTime = &v
7121	return s
7122}
7123
7124// SetLastModifiedTime sets the LastModifiedTime field's value.
7125func (s *DeauthorizeConnectionOutput) SetLastModifiedTime(v time.Time) *DeauthorizeConnectionOutput {
7126	s.LastModifiedTime = &v
7127	return s
7128}
7129
7130type DeleteApiDestinationInput struct {
7131	_ struct{} `type:"structure"`
7132
7133	// The name of the destination to delete.
7134	//
7135	// Name is a required field
7136	Name *string `min:"1" type:"string" required:"true"`
7137}
7138
7139// String returns the string representation
7140func (s DeleteApiDestinationInput) String() string {
7141	return awsutil.Prettify(s)
7142}
7143
7144// GoString returns the string representation
7145func (s DeleteApiDestinationInput) GoString() string {
7146	return s.String()
7147}
7148
7149// Validate inspects the fields of the type to determine if they are valid.
7150func (s *DeleteApiDestinationInput) Validate() error {
7151	invalidParams := request.ErrInvalidParams{Context: "DeleteApiDestinationInput"}
7152	if s.Name == nil {
7153		invalidParams.Add(request.NewErrParamRequired("Name"))
7154	}
7155	if s.Name != nil && len(*s.Name) < 1 {
7156		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7157	}
7158
7159	if invalidParams.Len() > 0 {
7160		return invalidParams
7161	}
7162	return nil
7163}
7164
7165// SetName sets the Name field's value.
7166func (s *DeleteApiDestinationInput) SetName(v string) *DeleteApiDestinationInput {
7167	s.Name = &v
7168	return s
7169}
7170
7171type DeleteApiDestinationOutput struct {
7172	_ struct{} `type:"structure"`
7173}
7174
7175// String returns the string representation
7176func (s DeleteApiDestinationOutput) String() string {
7177	return awsutil.Prettify(s)
7178}
7179
7180// GoString returns the string representation
7181func (s DeleteApiDestinationOutput) GoString() string {
7182	return s.String()
7183}
7184
7185type DeleteArchiveInput struct {
7186	_ struct{} `type:"structure"`
7187
7188	// The name of the archive to delete.
7189	//
7190	// ArchiveName is a required field
7191	ArchiveName *string `min:"1" type:"string" required:"true"`
7192}
7193
7194// String returns the string representation
7195func (s DeleteArchiveInput) String() string {
7196	return awsutil.Prettify(s)
7197}
7198
7199// GoString returns the string representation
7200func (s DeleteArchiveInput) GoString() string {
7201	return s.String()
7202}
7203
7204// Validate inspects the fields of the type to determine if they are valid.
7205func (s *DeleteArchiveInput) Validate() error {
7206	invalidParams := request.ErrInvalidParams{Context: "DeleteArchiveInput"}
7207	if s.ArchiveName == nil {
7208		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
7209	}
7210	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
7211		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
7212	}
7213
7214	if invalidParams.Len() > 0 {
7215		return invalidParams
7216	}
7217	return nil
7218}
7219
7220// SetArchiveName sets the ArchiveName field's value.
7221func (s *DeleteArchiveInput) SetArchiveName(v string) *DeleteArchiveInput {
7222	s.ArchiveName = &v
7223	return s
7224}
7225
7226type DeleteArchiveOutput struct {
7227	_ struct{} `type:"structure"`
7228}
7229
7230// String returns the string representation
7231func (s DeleteArchiveOutput) String() string {
7232	return awsutil.Prettify(s)
7233}
7234
7235// GoString returns the string representation
7236func (s DeleteArchiveOutput) GoString() string {
7237	return s.String()
7238}
7239
7240type DeleteConnectionInput struct {
7241	_ struct{} `type:"structure"`
7242
7243	// The name of the connection to delete.
7244	//
7245	// Name is a required field
7246	Name *string `min:"1" type:"string" required:"true"`
7247}
7248
7249// String returns the string representation
7250func (s DeleteConnectionInput) String() string {
7251	return awsutil.Prettify(s)
7252}
7253
7254// GoString returns the string representation
7255func (s DeleteConnectionInput) GoString() string {
7256	return s.String()
7257}
7258
7259// Validate inspects the fields of the type to determine if they are valid.
7260func (s *DeleteConnectionInput) Validate() error {
7261	invalidParams := request.ErrInvalidParams{Context: "DeleteConnectionInput"}
7262	if s.Name == nil {
7263		invalidParams.Add(request.NewErrParamRequired("Name"))
7264	}
7265	if s.Name != nil && len(*s.Name) < 1 {
7266		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7267	}
7268
7269	if invalidParams.Len() > 0 {
7270		return invalidParams
7271	}
7272	return nil
7273}
7274
7275// SetName sets the Name field's value.
7276func (s *DeleteConnectionInput) SetName(v string) *DeleteConnectionInput {
7277	s.Name = &v
7278	return s
7279}
7280
7281type DeleteConnectionOutput struct {
7282	_ struct{} `type:"structure"`
7283
7284	// The ARN of the connection that was deleted.
7285	ConnectionArn *string `min:"1" type:"string"`
7286
7287	// The state of the connection before it was deleted.
7288	ConnectionState *string `type:"string" enum:"ConnectionState"`
7289
7290	// A time stamp for the time that the connection was created.
7291	CreationTime *time.Time `type:"timestamp"`
7292
7293	// A time stamp for the time that the connection was last authorized before
7294	// it wa deleted.
7295	LastAuthorizedTime *time.Time `type:"timestamp"`
7296
7297	// A time stamp for the time that the connection was last modified before it
7298	// was deleted.
7299	LastModifiedTime *time.Time `type:"timestamp"`
7300}
7301
7302// String returns the string representation
7303func (s DeleteConnectionOutput) String() string {
7304	return awsutil.Prettify(s)
7305}
7306
7307// GoString returns the string representation
7308func (s DeleteConnectionOutput) GoString() string {
7309	return s.String()
7310}
7311
7312// SetConnectionArn sets the ConnectionArn field's value.
7313func (s *DeleteConnectionOutput) SetConnectionArn(v string) *DeleteConnectionOutput {
7314	s.ConnectionArn = &v
7315	return s
7316}
7317
7318// SetConnectionState sets the ConnectionState field's value.
7319func (s *DeleteConnectionOutput) SetConnectionState(v string) *DeleteConnectionOutput {
7320	s.ConnectionState = &v
7321	return s
7322}
7323
7324// SetCreationTime sets the CreationTime field's value.
7325func (s *DeleteConnectionOutput) SetCreationTime(v time.Time) *DeleteConnectionOutput {
7326	s.CreationTime = &v
7327	return s
7328}
7329
7330// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
7331func (s *DeleteConnectionOutput) SetLastAuthorizedTime(v time.Time) *DeleteConnectionOutput {
7332	s.LastAuthorizedTime = &v
7333	return s
7334}
7335
7336// SetLastModifiedTime sets the LastModifiedTime field's value.
7337func (s *DeleteConnectionOutput) SetLastModifiedTime(v time.Time) *DeleteConnectionOutput {
7338	s.LastModifiedTime = &v
7339	return s
7340}
7341
7342type DeleteEventBusInput struct {
7343	_ struct{} `type:"structure"`
7344
7345	// The name of the event bus to delete.
7346	//
7347	// Name is a required field
7348	Name *string `min:"1" type:"string" required:"true"`
7349}
7350
7351// String returns the string representation
7352func (s DeleteEventBusInput) String() string {
7353	return awsutil.Prettify(s)
7354}
7355
7356// GoString returns the string representation
7357func (s DeleteEventBusInput) GoString() string {
7358	return s.String()
7359}
7360
7361// Validate inspects the fields of the type to determine if they are valid.
7362func (s *DeleteEventBusInput) Validate() error {
7363	invalidParams := request.ErrInvalidParams{Context: "DeleteEventBusInput"}
7364	if s.Name == nil {
7365		invalidParams.Add(request.NewErrParamRequired("Name"))
7366	}
7367	if s.Name != nil && len(*s.Name) < 1 {
7368		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7369	}
7370
7371	if invalidParams.Len() > 0 {
7372		return invalidParams
7373	}
7374	return nil
7375}
7376
7377// SetName sets the Name field's value.
7378func (s *DeleteEventBusInput) SetName(v string) *DeleteEventBusInput {
7379	s.Name = &v
7380	return s
7381}
7382
7383type DeleteEventBusOutput struct {
7384	_ struct{} `type:"structure"`
7385}
7386
7387// String returns the string representation
7388func (s DeleteEventBusOutput) String() string {
7389	return awsutil.Prettify(s)
7390}
7391
7392// GoString returns the string representation
7393func (s DeleteEventBusOutput) GoString() string {
7394	return s.String()
7395}
7396
7397type DeletePartnerEventSourceInput struct {
7398	_ struct{} `type:"structure"`
7399
7400	// The Amazon Web Services account ID of the Amazon Web Services customer that
7401	// the event source was created for.
7402	//
7403	// Account is a required field
7404	Account *string `min:"12" type:"string" required:"true"`
7405
7406	// The name of the event source to delete.
7407	//
7408	// Name is a required field
7409	Name *string `min:"1" type:"string" required:"true"`
7410}
7411
7412// String returns the string representation
7413func (s DeletePartnerEventSourceInput) String() string {
7414	return awsutil.Prettify(s)
7415}
7416
7417// GoString returns the string representation
7418func (s DeletePartnerEventSourceInput) GoString() string {
7419	return s.String()
7420}
7421
7422// Validate inspects the fields of the type to determine if they are valid.
7423func (s *DeletePartnerEventSourceInput) Validate() error {
7424	invalidParams := request.ErrInvalidParams{Context: "DeletePartnerEventSourceInput"}
7425	if s.Account == nil {
7426		invalidParams.Add(request.NewErrParamRequired("Account"))
7427	}
7428	if s.Account != nil && len(*s.Account) < 12 {
7429		invalidParams.Add(request.NewErrParamMinLen("Account", 12))
7430	}
7431	if s.Name == nil {
7432		invalidParams.Add(request.NewErrParamRequired("Name"))
7433	}
7434	if s.Name != nil && len(*s.Name) < 1 {
7435		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7436	}
7437
7438	if invalidParams.Len() > 0 {
7439		return invalidParams
7440	}
7441	return nil
7442}
7443
7444// SetAccount sets the Account field's value.
7445func (s *DeletePartnerEventSourceInput) SetAccount(v string) *DeletePartnerEventSourceInput {
7446	s.Account = &v
7447	return s
7448}
7449
7450// SetName sets the Name field's value.
7451func (s *DeletePartnerEventSourceInput) SetName(v string) *DeletePartnerEventSourceInput {
7452	s.Name = &v
7453	return s
7454}
7455
7456type DeletePartnerEventSourceOutput struct {
7457	_ struct{} `type:"structure"`
7458}
7459
7460// String returns the string representation
7461func (s DeletePartnerEventSourceOutput) String() string {
7462	return awsutil.Prettify(s)
7463}
7464
7465// GoString returns the string representation
7466func (s DeletePartnerEventSourceOutput) GoString() string {
7467	return s.String()
7468}
7469
7470type DeleteRuleInput struct {
7471	_ struct{} `type:"structure"`
7472
7473	// The name or ARN of the event bus associated with the rule. If you omit this,
7474	// the default event bus is used.
7475	EventBusName *string `min:"1" type:"string"`
7476
7477	// If this is a managed rule, created by an Amazon Web Services service on your
7478	// behalf, you must specify Force as True to delete the rule. This parameter
7479	// is ignored for rules that are not managed rules. You can check whether a
7480	// rule is a managed rule by using DescribeRule or ListRules and checking the
7481	// ManagedBy field of the response.
7482	Force *bool `type:"boolean"`
7483
7484	// The name of the rule.
7485	//
7486	// Name is a required field
7487	Name *string `min:"1" type:"string" required:"true"`
7488}
7489
7490// String returns the string representation
7491func (s DeleteRuleInput) String() string {
7492	return awsutil.Prettify(s)
7493}
7494
7495// GoString returns the string representation
7496func (s DeleteRuleInput) GoString() string {
7497	return s.String()
7498}
7499
7500// Validate inspects the fields of the type to determine if they are valid.
7501func (s *DeleteRuleInput) Validate() error {
7502	invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"}
7503	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
7504		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
7505	}
7506	if s.Name == nil {
7507		invalidParams.Add(request.NewErrParamRequired("Name"))
7508	}
7509	if s.Name != nil && len(*s.Name) < 1 {
7510		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7511	}
7512
7513	if invalidParams.Len() > 0 {
7514		return invalidParams
7515	}
7516	return nil
7517}
7518
7519// SetEventBusName sets the EventBusName field's value.
7520func (s *DeleteRuleInput) SetEventBusName(v string) *DeleteRuleInput {
7521	s.EventBusName = &v
7522	return s
7523}
7524
7525// SetForce sets the Force field's value.
7526func (s *DeleteRuleInput) SetForce(v bool) *DeleteRuleInput {
7527	s.Force = &v
7528	return s
7529}
7530
7531// SetName sets the Name field's value.
7532func (s *DeleteRuleInput) SetName(v string) *DeleteRuleInput {
7533	s.Name = &v
7534	return s
7535}
7536
7537type DeleteRuleOutput struct {
7538	_ struct{} `type:"structure"`
7539}
7540
7541// String returns the string representation
7542func (s DeleteRuleOutput) String() string {
7543	return awsutil.Prettify(s)
7544}
7545
7546// GoString returns the string representation
7547func (s DeleteRuleOutput) GoString() string {
7548	return s.String()
7549}
7550
7551type DescribeApiDestinationInput struct {
7552	_ struct{} `type:"structure"`
7553
7554	// The name of the API destination to retrieve.
7555	//
7556	// Name is a required field
7557	Name *string `min:"1" type:"string" required:"true"`
7558}
7559
7560// String returns the string representation
7561func (s DescribeApiDestinationInput) String() string {
7562	return awsutil.Prettify(s)
7563}
7564
7565// GoString returns the string representation
7566func (s DescribeApiDestinationInput) GoString() string {
7567	return s.String()
7568}
7569
7570// Validate inspects the fields of the type to determine if they are valid.
7571func (s *DescribeApiDestinationInput) Validate() error {
7572	invalidParams := request.ErrInvalidParams{Context: "DescribeApiDestinationInput"}
7573	if s.Name == nil {
7574		invalidParams.Add(request.NewErrParamRequired("Name"))
7575	}
7576	if s.Name != nil && len(*s.Name) < 1 {
7577		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7578	}
7579
7580	if invalidParams.Len() > 0 {
7581		return invalidParams
7582	}
7583	return nil
7584}
7585
7586// SetName sets the Name field's value.
7587func (s *DescribeApiDestinationInput) SetName(v string) *DescribeApiDestinationInput {
7588	s.Name = &v
7589	return s
7590}
7591
7592type DescribeApiDestinationOutput struct {
7593	_ struct{} `type:"structure"`
7594
7595	// The ARN of the API destination retrieved.
7596	ApiDestinationArn *string `min:"1" type:"string"`
7597
7598	// The state of the API destination retrieved.
7599	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
7600
7601	// The ARN of the connection specified for the API destination retrieved.
7602	ConnectionArn *string `min:"1" type:"string"`
7603
7604	// A time stamp for the time that the API destination was created.
7605	CreationTime *time.Time `type:"timestamp"`
7606
7607	// The description for the API destination retrieved.
7608	Description *string `type:"string"`
7609
7610	// The method to use to connect to the HTTP endpoint.
7611	HttpMethod *string `type:"string" enum:"ApiDestinationHttpMethod"`
7612
7613	// The URL to use to connect to the HTTP endpoint.
7614	InvocationEndpoint *string `min:"1" type:"string"`
7615
7616	// The maximum number of invocations per second to specified for the API destination.
7617	// Note that if you set the invocation rate maximum to a value lower the rate
7618	// necessary to send all events received on to the destination HTTP endpoint,
7619	// some events may not be delivered within the 24-hour retry window. If you
7620	// plan to set the rate lower than the rate necessary to deliver all events,
7621	// consider using a dead-letter queue to catch events that are not delivered
7622	// within 24 hours.
7623	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
7624
7625	// A time stamp for the time that the API destination was last modified.
7626	LastModifiedTime *time.Time `type:"timestamp"`
7627
7628	// The name of the API destination retrieved.
7629	Name *string `min:"1" type:"string"`
7630}
7631
7632// String returns the string representation
7633func (s DescribeApiDestinationOutput) String() string {
7634	return awsutil.Prettify(s)
7635}
7636
7637// GoString returns the string representation
7638func (s DescribeApiDestinationOutput) GoString() string {
7639	return s.String()
7640}
7641
7642// SetApiDestinationArn sets the ApiDestinationArn field's value.
7643func (s *DescribeApiDestinationOutput) SetApiDestinationArn(v string) *DescribeApiDestinationOutput {
7644	s.ApiDestinationArn = &v
7645	return s
7646}
7647
7648// SetApiDestinationState sets the ApiDestinationState field's value.
7649func (s *DescribeApiDestinationOutput) SetApiDestinationState(v string) *DescribeApiDestinationOutput {
7650	s.ApiDestinationState = &v
7651	return s
7652}
7653
7654// SetConnectionArn sets the ConnectionArn field's value.
7655func (s *DescribeApiDestinationOutput) SetConnectionArn(v string) *DescribeApiDestinationOutput {
7656	s.ConnectionArn = &v
7657	return s
7658}
7659
7660// SetCreationTime sets the CreationTime field's value.
7661func (s *DescribeApiDestinationOutput) SetCreationTime(v time.Time) *DescribeApiDestinationOutput {
7662	s.CreationTime = &v
7663	return s
7664}
7665
7666// SetDescription sets the Description field's value.
7667func (s *DescribeApiDestinationOutput) SetDescription(v string) *DescribeApiDestinationOutput {
7668	s.Description = &v
7669	return s
7670}
7671
7672// SetHttpMethod sets the HttpMethod field's value.
7673func (s *DescribeApiDestinationOutput) SetHttpMethod(v string) *DescribeApiDestinationOutput {
7674	s.HttpMethod = &v
7675	return s
7676}
7677
7678// SetInvocationEndpoint sets the InvocationEndpoint field's value.
7679func (s *DescribeApiDestinationOutput) SetInvocationEndpoint(v string) *DescribeApiDestinationOutput {
7680	s.InvocationEndpoint = &v
7681	return s
7682}
7683
7684// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
7685func (s *DescribeApiDestinationOutput) SetInvocationRateLimitPerSecond(v int64) *DescribeApiDestinationOutput {
7686	s.InvocationRateLimitPerSecond = &v
7687	return s
7688}
7689
7690// SetLastModifiedTime sets the LastModifiedTime field's value.
7691func (s *DescribeApiDestinationOutput) SetLastModifiedTime(v time.Time) *DescribeApiDestinationOutput {
7692	s.LastModifiedTime = &v
7693	return s
7694}
7695
7696// SetName sets the Name field's value.
7697func (s *DescribeApiDestinationOutput) SetName(v string) *DescribeApiDestinationOutput {
7698	s.Name = &v
7699	return s
7700}
7701
7702type DescribeArchiveInput struct {
7703	_ struct{} `type:"structure"`
7704
7705	// The name of the archive to retrieve.
7706	//
7707	// ArchiveName is a required field
7708	ArchiveName *string `min:"1" type:"string" required:"true"`
7709}
7710
7711// String returns the string representation
7712func (s DescribeArchiveInput) String() string {
7713	return awsutil.Prettify(s)
7714}
7715
7716// GoString returns the string representation
7717func (s DescribeArchiveInput) GoString() string {
7718	return s.String()
7719}
7720
7721// Validate inspects the fields of the type to determine if they are valid.
7722func (s *DescribeArchiveInput) Validate() error {
7723	invalidParams := request.ErrInvalidParams{Context: "DescribeArchiveInput"}
7724	if s.ArchiveName == nil {
7725		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
7726	}
7727	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
7728		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
7729	}
7730
7731	if invalidParams.Len() > 0 {
7732		return invalidParams
7733	}
7734	return nil
7735}
7736
7737// SetArchiveName sets the ArchiveName field's value.
7738func (s *DescribeArchiveInput) SetArchiveName(v string) *DescribeArchiveInput {
7739	s.ArchiveName = &v
7740	return s
7741}
7742
7743type DescribeArchiveOutput struct {
7744	_ struct{} `type:"structure"`
7745
7746	// The ARN of the archive.
7747	ArchiveArn *string `min:"1" type:"string"`
7748
7749	// The name of the archive.
7750	ArchiveName *string `min:"1" type:"string"`
7751
7752	// The time at which the archive was created.
7753	CreationTime *time.Time `type:"timestamp"`
7754
7755	// The description of the archive.
7756	Description *string `type:"string"`
7757
7758	// The number of events in the archive.
7759	EventCount *int64 `type:"long"`
7760
7761	// The event pattern used to filter events sent to the archive.
7762	EventPattern *string `type:"string"`
7763
7764	// The ARN of the event source associated with the archive.
7765	EventSourceArn *string `min:"1" type:"string"`
7766
7767	// The number of days to retain events for in the archive.
7768	RetentionDays *int64 `type:"integer"`
7769
7770	// The size of the archive in bytes.
7771	SizeBytes *int64 `type:"long"`
7772
7773	// The state of the archive.
7774	State *string `type:"string" enum:"ArchiveState"`
7775
7776	// The reason that the archive is in the state.
7777	StateReason *string `type:"string"`
7778}
7779
7780// String returns the string representation
7781func (s DescribeArchiveOutput) String() string {
7782	return awsutil.Prettify(s)
7783}
7784
7785// GoString returns the string representation
7786func (s DescribeArchiveOutput) GoString() string {
7787	return s.String()
7788}
7789
7790// SetArchiveArn sets the ArchiveArn field's value.
7791func (s *DescribeArchiveOutput) SetArchiveArn(v string) *DescribeArchiveOutput {
7792	s.ArchiveArn = &v
7793	return s
7794}
7795
7796// SetArchiveName sets the ArchiveName field's value.
7797func (s *DescribeArchiveOutput) SetArchiveName(v string) *DescribeArchiveOutput {
7798	s.ArchiveName = &v
7799	return s
7800}
7801
7802// SetCreationTime sets the CreationTime field's value.
7803func (s *DescribeArchiveOutput) SetCreationTime(v time.Time) *DescribeArchiveOutput {
7804	s.CreationTime = &v
7805	return s
7806}
7807
7808// SetDescription sets the Description field's value.
7809func (s *DescribeArchiveOutput) SetDescription(v string) *DescribeArchiveOutput {
7810	s.Description = &v
7811	return s
7812}
7813
7814// SetEventCount sets the EventCount field's value.
7815func (s *DescribeArchiveOutput) SetEventCount(v int64) *DescribeArchiveOutput {
7816	s.EventCount = &v
7817	return s
7818}
7819
7820// SetEventPattern sets the EventPattern field's value.
7821func (s *DescribeArchiveOutput) SetEventPattern(v string) *DescribeArchiveOutput {
7822	s.EventPattern = &v
7823	return s
7824}
7825
7826// SetEventSourceArn sets the EventSourceArn field's value.
7827func (s *DescribeArchiveOutput) SetEventSourceArn(v string) *DescribeArchiveOutput {
7828	s.EventSourceArn = &v
7829	return s
7830}
7831
7832// SetRetentionDays sets the RetentionDays field's value.
7833func (s *DescribeArchiveOutput) SetRetentionDays(v int64) *DescribeArchiveOutput {
7834	s.RetentionDays = &v
7835	return s
7836}
7837
7838// SetSizeBytes sets the SizeBytes field's value.
7839func (s *DescribeArchiveOutput) SetSizeBytes(v int64) *DescribeArchiveOutput {
7840	s.SizeBytes = &v
7841	return s
7842}
7843
7844// SetState sets the State field's value.
7845func (s *DescribeArchiveOutput) SetState(v string) *DescribeArchiveOutput {
7846	s.State = &v
7847	return s
7848}
7849
7850// SetStateReason sets the StateReason field's value.
7851func (s *DescribeArchiveOutput) SetStateReason(v string) *DescribeArchiveOutput {
7852	s.StateReason = &v
7853	return s
7854}
7855
7856type DescribeConnectionInput struct {
7857	_ struct{} `type:"structure"`
7858
7859	// The name of the connection to retrieve.
7860	//
7861	// Name is a required field
7862	Name *string `min:"1" type:"string" required:"true"`
7863}
7864
7865// String returns the string representation
7866func (s DescribeConnectionInput) String() string {
7867	return awsutil.Prettify(s)
7868}
7869
7870// GoString returns the string representation
7871func (s DescribeConnectionInput) GoString() string {
7872	return s.String()
7873}
7874
7875// Validate inspects the fields of the type to determine if they are valid.
7876func (s *DescribeConnectionInput) Validate() error {
7877	invalidParams := request.ErrInvalidParams{Context: "DescribeConnectionInput"}
7878	if s.Name == nil {
7879		invalidParams.Add(request.NewErrParamRequired("Name"))
7880	}
7881	if s.Name != nil && len(*s.Name) < 1 {
7882		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7883	}
7884
7885	if invalidParams.Len() > 0 {
7886		return invalidParams
7887	}
7888	return nil
7889}
7890
7891// SetName sets the Name field's value.
7892func (s *DescribeConnectionInput) SetName(v string) *DescribeConnectionInput {
7893	s.Name = &v
7894	return s
7895}
7896
7897type DescribeConnectionOutput struct {
7898	_ struct{} `type:"structure"`
7899
7900	// The parameters to use for authorization for the connection.
7901	AuthParameters *ConnectionAuthResponseParameters `type:"structure"`
7902
7903	// The type of authorization specified for the connection.
7904	AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"`
7905
7906	// The ARN of the connection retrieved.
7907	ConnectionArn *string `min:"1" type:"string"`
7908
7909	// The state of the connection retrieved.
7910	ConnectionState *string `type:"string" enum:"ConnectionState"`
7911
7912	// A time stamp for the time that the connection was created.
7913	CreationTime *time.Time `type:"timestamp"`
7914
7915	// The description for the connection retrieved.
7916	Description *string `type:"string"`
7917
7918	// A time stamp for the time that the connection was last authorized.
7919	LastAuthorizedTime *time.Time `type:"timestamp"`
7920
7921	// A time stamp for the time that the connection was last modified.
7922	LastModifiedTime *time.Time `type:"timestamp"`
7923
7924	// The name of the connection retrieved.
7925	Name *string `min:"1" type:"string"`
7926
7927	// The ARN of the secret created from the authorization parameters specified
7928	// for the connection.
7929	SecretArn *string `min:"20" type:"string"`
7930
7931	// The reason that the connection is in the current connection state.
7932	StateReason *string `type:"string"`
7933}
7934
7935// String returns the string representation
7936func (s DescribeConnectionOutput) String() string {
7937	return awsutil.Prettify(s)
7938}
7939
7940// GoString returns the string representation
7941func (s DescribeConnectionOutput) GoString() string {
7942	return s.String()
7943}
7944
7945// SetAuthParameters sets the AuthParameters field's value.
7946func (s *DescribeConnectionOutput) SetAuthParameters(v *ConnectionAuthResponseParameters) *DescribeConnectionOutput {
7947	s.AuthParameters = v
7948	return s
7949}
7950
7951// SetAuthorizationType sets the AuthorizationType field's value.
7952func (s *DescribeConnectionOutput) SetAuthorizationType(v string) *DescribeConnectionOutput {
7953	s.AuthorizationType = &v
7954	return s
7955}
7956
7957// SetConnectionArn sets the ConnectionArn field's value.
7958func (s *DescribeConnectionOutput) SetConnectionArn(v string) *DescribeConnectionOutput {
7959	s.ConnectionArn = &v
7960	return s
7961}
7962
7963// SetConnectionState sets the ConnectionState field's value.
7964func (s *DescribeConnectionOutput) SetConnectionState(v string) *DescribeConnectionOutput {
7965	s.ConnectionState = &v
7966	return s
7967}
7968
7969// SetCreationTime sets the CreationTime field's value.
7970func (s *DescribeConnectionOutput) SetCreationTime(v time.Time) *DescribeConnectionOutput {
7971	s.CreationTime = &v
7972	return s
7973}
7974
7975// SetDescription sets the Description field's value.
7976func (s *DescribeConnectionOutput) SetDescription(v string) *DescribeConnectionOutput {
7977	s.Description = &v
7978	return s
7979}
7980
7981// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
7982func (s *DescribeConnectionOutput) SetLastAuthorizedTime(v time.Time) *DescribeConnectionOutput {
7983	s.LastAuthorizedTime = &v
7984	return s
7985}
7986
7987// SetLastModifiedTime sets the LastModifiedTime field's value.
7988func (s *DescribeConnectionOutput) SetLastModifiedTime(v time.Time) *DescribeConnectionOutput {
7989	s.LastModifiedTime = &v
7990	return s
7991}
7992
7993// SetName sets the Name field's value.
7994func (s *DescribeConnectionOutput) SetName(v string) *DescribeConnectionOutput {
7995	s.Name = &v
7996	return s
7997}
7998
7999// SetSecretArn sets the SecretArn field's value.
8000func (s *DescribeConnectionOutput) SetSecretArn(v string) *DescribeConnectionOutput {
8001	s.SecretArn = &v
8002	return s
8003}
8004
8005// SetStateReason sets the StateReason field's value.
8006func (s *DescribeConnectionOutput) SetStateReason(v string) *DescribeConnectionOutput {
8007	s.StateReason = &v
8008	return s
8009}
8010
8011type DescribeEventBusInput struct {
8012	_ struct{} `type:"structure"`
8013
8014	// The name or ARN of the event bus to show details for. If you omit this, the
8015	// default event bus is displayed.
8016	Name *string `min:"1" type:"string"`
8017}
8018
8019// String returns the string representation
8020func (s DescribeEventBusInput) String() string {
8021	return awsutil.Prettify(s)
8022}
8023
8024// GoString returns the string representation
8025func (s DescribeEventBusInput) GoString() string {
8026	return s.String()
8027}
8028
8029// Validate inspects the fields of the type to determine if they are valid.
8030func (s *DescribeEventBusInput) Validate() error {
8031	invalidParams := request.ErrInvalidParams{Context: "DescribeEventBusInput"}
8032	if s.Name != nil && len(*s.Name) < 1 {
8033		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8034	}
8035
8036	if invalidParams.Len() > 0 {
8037		return invalidParams
8038	}
8039	return nil
8040}
8041
8042// SetName sets the Name field's value.
8043func (s *DescribeEventBusInput) SetName(v string) *DescribeEventBusInput {
8044	s.Name = &v
8045	return s
8046}
8047
8048type DescribeEventBusOutput struct {
8049	_ struct{} `type:"structure"`
8050
8051	// The Amazon Resource Name (ARN) of the account permitted to write events to
8052	// the current account.
8053	Arn *string `type:"string"`
8054
8055	// The name of the event bus. Currently, this is always default.
8056	Name *string `type:"string"`
8057
8058	// The policy that enables the external account to send events to your account.
8059	Policy *string `type:"string"`
8060}
8061
8062// String returns the string representation
8063func (s DescribeEventBusOutput) String() string {
8064	return awsutil.Prettify(s)
8065}
8066
8067// GoString returns the string representation
8068func (s DescribeEventBusOutput) GoString() string {
8069	return s.String()
8070}
8071
8072// SetArn sets the Arn field's value.
8073func (s *DescribeEventBusOutput) SetArn(v string) *DescribeEventBusOutput {
8074	s.Arn = &v
8075	return s
8076}
8077
8078// SetName sets the Name field's value.
8079func (s *DescribeEventBusOutput) SetName(v string) *DescribeEventBusOutput {
8080	s.Name = &v
8081	return s
8082}
8083
8084// SetPolicy sets the Policy field's value.
8085func (s *DescribeEventBusOutput) SetPolicy(v string) *DescribeEventBusOutput {
8086	s.Policy = &v
8087	return s
8088}
8089
8090type DescribeEventSourceInput struct {
8091	_ struct{} `type:"structure"`
8092
8093	// The name of the partner event source to display the details of.
8094	//
8095	// Name is a required field
8096	Name *string `min:"1" type:"string" required:"true"`
8097}
8098
8099// String returns the string representation
8100func (s DescribeEventSourceInput) String() string {
8101	return awsutil.Prettify(s)
8102}
8103
8104// GoString returns the string representation
8105func (s DescribeEventSourceInput) GoString() string {
8106	return s.String()
8107}
8108
8109// Validate inspects the fields of the type to determine if they are valid.
8110func (s *DescribeEventSourceInput) Validate() error {
8111	invalidParams := request.ErrInvalidParams{Context: "DescribeEventSourceInput"}
8112	if s.Name == nil {
8113		invalidParams.Add(request.NewErrParamRequired("Name"))
8114	}
8115	if s.Name != nil && len(*s.Name) < 1 {
8116		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8117	}
8118
8119	if invalidParams.Len() > 0 {
8120		return invalidParams
8121	}
8122	return nil
8123}
8124
8125// SetName sets the Name field's value.
8126func (s *DescribeEventSourceInput) SetName(v string) *DescribeEventSourceInput {
8127	s.Name = &v
8128	return s
8129}
8130
8131type DescribeEventSourceOutput struct {
8132	_ struct{} `type:"structure"`
8133
8134	// The ARN of the partner event source.
8135	Arn *string `type:"string"`
8136
8137	// The name of the SaaS partner that created the event source.
8138	CreatedBy *string `type:"string"`
8139
8140	// The date and time that the event source was created.
8141	CreationTime *time.Time `type:"timestamp"`
8142
8143	// The date and time that the event source will expire if you do not create
8144	// a matching event bus.
8145	ExpirationTime *time.Time `type:"timestamp"`
8146
8147	// The name of the partner event source.
8148	Name *string `type:"string"`
8149
8150	// The state of the event source. If it is ACTIVE, you have already created
8151	// a matching event bus for this event source, and that event bus is active.
8152	// If it is PENDING, either you haven't yet created a matching event bus, or
8153	// that event bus is deactivated. If it is DELETED, you have created a matching
8154	// event bus, but the event source has since been deleted.
8155	State *string `type:"string" enum:"EventSourceState"`
8156}
8157
8158// String returns the string representation
8159func (s DescribeEventSourceOutput) String() string {
8160	return awsutil.Prettify(s)
8161}
8162
8163// GoString returns the string representation
8164func (s DescribeEventSourceOutput) GoString() string {
8165	return s.String()
8166}
8167
8168// SetArn sets the Arn field's value.
8169func (s *DescribeEventSourceOutput) SetArn(v string) *DescribeEventSourceOutput {
8170	s.Arn = &v
8171	return s
8172}
8173
8174// SetCreatedBy sets the CreatedBy field's value.
8175func (s *DescribeEventSourceOutput) SetCreatedBy(v string) *DescribeEventSourceOutput {
8176	s.CreatedBy = &v
8177	return s
8178}
8179
8180// SetCreationTime sets the CreationTime field's value.
8181func (s *DescribeEventSourceOutput) SetCreationTime(v time.Time) *DescribeEventSourceOutput {
8182	s.CreationTime = &v
8183	return s
8184}
8185
8186// SetExpirationTime sets the ExpirationTime field's value.
8187func (s *DescribeEventSourceOutput) SetExpirationTime(v time.Time) *DescribeEventSourceOutput {
8188	s.ExpirationTime = &v
8189	return s
8190}
8191
8192// SetName sets the Name field's value.
8193func (s *DescribeEventSourceOutput) SetName(v string) *DescribeEventSourceOutput {
8194	s.Name = &v
8195	return s
8196}
8197
8198// SetState sets the State field's value.
8199func (s *DescribeEventSourceOutput) SetState(v string) *DescribeEventSourceOutput {
8200	s.State = &v
8201	return s
8202}
8203
8204type DescribePartnerEventSourceInput struct {
8205	_ struct{} `type:"structure"`
8206
8207	// The name of the event source to display.
8208	//
8209	// Name is a required field
8210	Name *string `min:"1" type:"string" required:"true"`
8211}
8212
8213// String returns the string representation
8214func (s DescribePartnerEventSourceInput) String() string {
8215	return awsutil.Prettify(s)
8216}
8217
8218// GoString returns the string representation
8219func (s DescribePartnerEventSourceInput) GoString() string {
8220	return s.String()
8221}
8222
8223// Validate inspects the fields of the type to determine if they are valid.
8224func (s *DescribePartnerEventSourceInput) Validate() error {
8225	invalidParams := request.ErrInvalidParams{Context: "DescribePartnerEventSourceInput"}
8226	if s.Name == nil {
8227		invalidParams.Add(request.NewErrParamRequired("Name"))
8228	}
8229	if s.Name != nil && len(*s.Name) < 1 {
8230		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8231	}
8232
8233	if invalidParams.Len() > 0 {
8234		return invalidParams
8235	}
8236	return nil
8237}
8238
8239// SetName sets the Name field's value.
8240func (s *DescribePartnerEventSourceInput) SetName(v string) *DescribePartnerEventSourceInput {
8241	s.Name = &v
8242	return s
8243}
8244
8245type DescribePartnerEventSourceOutput struct {
8246	_ struct{} `type:"structure"`
8247
8248	// The ARN of the event source.
8249	Arn *string `type:"string"`
8250
8251	// The name of the event source.
8252	Name *string `type:"string"`
8253}
8254
8255// String returns the string representation
8256func (s DescribePartnerEventSourceOutput) String() string {
8257	return awsutil.Prettify(s)
8258}
8259
8260// GoString returns the string representation
8261func (s DescribePartnerEventSourceOutput) GoString() string {
8262	return s.String()
8263}
8264
8265// SetArn sets the Arn field's value.
8266func (s *DescribePartnerEventSourceOutput) SetArn(v string) *DescribePartnerEventSourceOutput {
8267	s.Arn = &v
8268	return s
8269}
8270
8271// SetName sets the Name field's value.
8272func (s *DescribePartnerEventSourceOutput) SetName(v string) *DescribePartnerEventSourceOutput {
8273	s.Name = &v
8274	return s
8275}
8276
8277type DescribeReplayInput struct {
8278	_ struct{} `type:"structure"`
8279
8280	// The name of the replay to retrieve.
8281	//
8282	// ReplayName is a required field
8283	ReplayName *string `min:"1" type:"string" required:"true"`
8284}
8285
8286// String returns the string representation
8287func (s DescribeReplayInput) String() string {
8288	return awsutil.Prettify(s)
8289}
8290
8291// GoString returns the string representation
8292func (s DescribeReplayInput) GoString() string {
8293	return s.String()
8294}
8295
8296// Validate inspects the fields of the type to determine if they are valid.
8297func (s *DescribeReplayInput) Validate() error {
8298	invalidParams := request.ErrInvalidParams{Context: "DescribeReplayInput"}
8299	if s.ReplayName == nil {
8300		invalidParams.Add(request.NewErrParamRequired("ReplayName"))
8301	}
8302	if s.ReplayName != nil && len(*s.ReplayName) < 1 {
8303		invalidParams.Add(request.NewErrParamMinLen("ReplayName", 1))
8304	}
8305
8306	if invalidParams.Len() > 0 {
8307		return invalidParams
8308	}
8309	return nil
8310}
8311
8312// SetReplayName sets the ReplayName field's value.
8313func (s *DescribeReplayInput) SetReplayName(v string) *DescribeReplayInput {
8314	s.ReplayName = &v
8315	return s
8316}
8317
8318type DescribeReplayOutput struct {
8319	_ struct{} `type:"structure"`
8320
8321	// The description of the replay.
8322	Description *string `type:"string"`
8323
8324	// A ReplayDestination object that contains details about the replay.
8325	Destination *ReplayDestination `type:"structure"`
8326
8327	// The time stamp for the last event that was replayed from the archive.
8328	EventEndTime *time.Time `type:"timestamp"`
8329
8330	// The time that the event was last replayed.
8331	EventLastReplayedTime *time.Time `type:"timestamp"`
8332
8333	// The ARN of the archive events were replayed from.
8334	EventSourceArn *string `min:"1" type:"string"`
8335
8336	// The time stamp of the first event that was last replayed from the archive.
8337	EventStartTime *time.Time `type:"timestamp"`
8338
8339	// The ARN of the replay.
8340	ReplayArn *string `min:"1" type:"string"`
8341
8342	// A time stamp for the time that the replay stopped.
8343	ReplayEndTime *time.Time `type:"timestamp"`
8344
8345	// The name of the replay.
8346	ReplayName *string `min:"1" type:"string"`
8347
8348	// A time stamp for the time that the replay started.
8349	ReplayStartTime *time.Time `type:"timestamp"`
8350
8351	// The current state of the replay.
8352	State *string `type:"string" enum:"ReplayState"`
8353
8354	// The reason that the replay is in the current state.
8355	StateReason *string `type:"string"`
8356}
8357
8358// String returns the string representation
8359func (s DescribeReplayOutput) String() string {
8360	return awsutil.Prettify(s)
8361}
8362
8363// GoString returns the string representation
8364func (s DescribeReplayOutput) GoString() string {
8365	return s.String()
8366}
8367
8368// SetDescription sets the Description field's value.
8369func (s *DescribeReplayOutput) SetDescription(v string) *DescribeReplayOutput {
8370	s.Description = &v
8371	return s
8372}
8373
8374// SetDestination sets the Destination field's value.
8375func (s *DescribeReplayOutput) SetDestination(v *ReplayDestination) *DescribeReplayOutput {
8376	s.Destination = v
8377	return s
8378}
8379
8380// SetEventEndTime sets the EventEndTime field's value.
8381func (s *DescribeReplayOutput) SetEventEndTime(v time.Time) *DescribeReplayOutput {
8382	s.EventEndTime = &v
8383	return s
8384}
8385
8386// SetEventLastReplayedTime sets the EventLastReplayedTime field's value.
8387func (s *DescribeReplayOutput) SetEventLastReplayedTime(v time.Time) *DescribeReplayOutput {
8388	s.EventLastReplayedTime = &v
8389	return s
8390}
8391
8392// SetEventSourceArn sets the EventSourceArn field's value.
8393func (s *DescribeReplayOutput) SetEventSourceArn(v string) *DescribeReplayOutput {
8394	s.EventSourceArn = &v
8395	return s
8396}
8397
8398// SetEventStartTime sets the EventStartTime field's value.
8399func (s *DescribeReplayOutput) SetEventStartTime(v time.Time) *DescribeReplayOutput {
8400	s.EventStartTime = &v
8401	return s
8402}
8403
8404// SetReplayArn sets the ReplayArn field's value.
8405func (s *DescribeReplayOutput) SetReplayArn(v string) *DescribeReplayOutput {
8406	s.ReplayArn = &v
8407	return s
8408}
8409
8410// SetReplayEndTime sets the ReplayEndTime field's value.
8411func (s *DescribeReplayOutput) SetReplayEndTime(v time.Time) *DescribeReplayOutput {
8412	s.ReplayEndTime = &v
8413	return s
8414}
8415
8416// SetReplayName sets the ReplayName field's value.
8417func (s *DescribeReplayOutput) SetReplayName(v string) *DescribeReplayOutput {
8418	s.ReplayName = &v
8419	return s
8420}
8421
8422// SetReplayStartTime sets the ReplayStartTime field's value.
8423func (s *DescribeReplayOutput) SetReplayStartTime(v time.Time) *DescribeReplayOutput {
8424	s.ReplayStartTime = &v
8425	return s
8426}
8427
8428// SetState sets the State field's value.
8429func (s *DescribeReplayOutput) SetState(v string) *DescribeReplayOutput {
8430	s.State = &v
8431	return s
8432}
8433
8434// SetStateReason sets the StateReason field's value.
8435func (s *DescribeReplayOutput) SetStateReason(v string) *DescribeReplayOutput {
8436	s.StateReason = &v
8437	return s
8438}
8439
8440type DescribeRuleInput struct {
8441	_ struct{} `type:"structure"`
8442
8443	// The name or ARN of the event bus associated with the rule. If you omit this,
8444	// the default event bus is used.
8445	EventBusName *string `min:"1" type:"string"`
8446
8447	// The name of the rule.
8448	//
8449	// Name is a required field
8450	Name *string `min:"1" type:"string" required:"true"`
8451}
8452
8453// String returns the string representation
8454func (s DescribeRuleInput) String() string {
8455	return awsutil.Prettify(s)
8456}
8457
8458// GoString returns the string representation
8459func (s DescribeRuleInput) GoString() string {
8460	return s.String()
8461}
8462
8463// Validate inspects the fields of the type to determine if they are valid.
8464func (s *DescribeRuleInput) Validate() error {
8465	invalidParams := request.ErrInvalidParams{Context: "DescribeRuleInput"}
8466	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
8467		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
8468	}
8469	if s.Name == nil {
8470		invalidParams.Add(request.NewErrParamRequired("Name"))
8471	}
8472	if s.Name != nil && len(*s.Name) < 1 {
8473		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8474	}
8475
8476	if invalidParams.Len() > 0 {
8477		return invalidParams
8478	}
8479	return nil
8480}
8481
8482// SetEventBusName sets the EventBusName field's value.
8483func (s *DescribeRuleInput) SetEventBusName(v string) *DescribeRuleInput {
8484	s.EventBusName = &v
8485	return s
8486}
8487
8488// SetName sets the Name field's value.
8489func (s *DescribeRuleInput) SetName(v string) *DescribeRuleInput {
8490	s.Name = &v
8491	return s
8492}
8493
8494type DescribeRuleOutput struct {
8495	_ struct{} `type:"structure"`
8496
8497	// The Amazon Resource Name (ARN) of the rule.
8498	Arn *string `min:"1" type:"string"`
8499
8500	// The account ID of the user that created the rule. If you use PutRule to put
8501	// a rule on an event bus in another account, the other account is the owner
8502	// of the rule, and the rule ARN includes the account ID for that account. However,
8503	// the value for CreatedBy is the account ID as the account that created the
8504	// rule in the other account.
8505	CreatedBy *string `min:"1" type:"string"`
8506
8507	// The description of the rule.
8508	Description *string `type:"string"`
8509
8510	// The name of the event bus associated with the rule.
8511	EventBusName *string `min:"1" type:"string"`
8512
8513	// The event pattern. For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
8514	// in the Amazon EventBridge User Guide.
8515	EventPattern *string `type:"string"`
8516
8517	// If this is a managed rule, created by an Amazon Web Services service on your
8518	// behalf, this field displays the principal name of the Amazon Web Services
8519	// service that created the rule.
8520	ManagedBy *string `min:"1" type:"string"`
8521
8522	// The name of the rule.
8523	Name *string `min:"1" type:"string"`
8524
8525	// The Amazon Resource Name (ARN) of the IAM role associated with the rule.
8526	RoleArn *string `min:"1" type:"string"`
8527
8528	// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)".
8529	ScheduleExpression *string `type:"string"`
8530
8531	// Specifies whether the rule is enabled or disabled.
8532	State *string `type:"string" enum:"RuleState"`
8533}
8534
8535// String returns the string representation
8536func (s DescribeRuleOutput) String() string {
8537	return awsutil.Prettify(s)
8538}
8539
8540// GoString returns the string representation
8541func (s DescribeRuleOutput) GoString() string {
8542	return s.String()
8543}
8544
8545// SetArn sets the Arn field's value.
8546func (s *DescribeRuleOutput) SetArn(v string) *DescribeRuleOutput {
8547	s.Arn = &v
8548	return s
8549}
8550
8551// SetCreatedBy sets the CreatedBy field's value.
8552func (s *DescribeRuleOutput) SetCreatedBy(v string) *DescribeRuleOutput {
8553	s.CreatedBy = &v
8554	return s
8555}
8556
8557// SetDescription sets the Description field's value.
8558func (s *DescribeRuleOutput) SetDescription(v string) *DescribeRuleOutput {
8559	s.Description = &v
8560	return s
8561}
8562
8563// SetEventBusName sets the EventBusName field's value.
8564func (s *DescribeRuleOutput) SetEventBusName(v string) *DescribeRuleOutput {
8565	s.EventBusName = &v
8566	return s
8567}
8568
8569// SetEventPattern sets the EventPattern field's value.
8570func (s *DescribeRuleOutput) SetEventPattern(v string) *DescribeRuleOutput {
8571	s.EventPattern = &v
8572	return s
8573}
8574
8575// SetManagedBy sets the ManagedBy field's value.
8576func (s *DescribeRuleOutput) SetManagedBy(v string) *DescribeRuleOutput {
8577	s.ManagedBy = &v
8578	return s
8579}
8580
8581// SetName sets the Name field's value.
8582func (s *DescribeRuleOutput) SetName(v string) *DescribeRuleOutput {
8583	s.Name = &v
8584	return s
8585}
8586
8587// SetRoleArn sets the RoleArn field's value.
8588func (s *DescribeRuleOutput) SetRoleArn(v string) *DescribeRuleOutput {
8589	s.RoleArn = &v
8590	return s
8591}
8592
8593// SetScheduleExpression sets the ScheduleExpression field's value.
8594func (s *DescribeRuleOutput) SetScheduleExpression(v string) *DescribeRuleOutput {
8595	s.ScheduleExpression = &v
8596	return s
8597}
8598
8599// SetState sets the State field's value.
8600func (s *DescribeRuleOutput) SetState(v string) *DescribeRuleOutput {
8601	s.State = &v
8602	return s
8603}
8604
8605type DisableRuleInput struct {
8606	_ struct{} `type:"structure"`
8607
8608	// The name or ARN of the event bus associated with the rule. If you omit this,
8609	// the default event bus is used.
8610	EventBusName *string `min:"1" type:"string"`
8611
8612	// The name of the rule.
8613	//
8614	// Name is a required field
8615	Name *string `min:"1" type:"string" required:"true"`
8616}
8617
8618// String returns the string representation
8619func (s DisableRuleInput) String() string {
8620	return awsutil.Prettify(s)
8621}
8622
8623// GoString returns the string representation
8624func (s DisableRuleInput) GoString() string {
8625	return s.String()
8626}
8627
8628// Validate inspects the fields of the type to determine if they are valid.
8629func (s *DisableRuleInput) Validate() error {
8630	invalidParams := request.ErrInvalidParams{Context: "DisableRuleInput"}
8631	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
8632		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
8633	}
8634	if s.Name == nil {
8635		invalidParams.Add(request.NewErrParamRequired("Name"))
8636	}
8637	if s.Name != nil && len(*s.Name) < 1 {
8638		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8639	}
8640
8641	if invalidParams.Len() > 0 {
8642		return invalidParams
8643	}
8644	return nil
8645}
8646
8647// SetEventBusName sets the EventBusName field's value.
8648func (s *DisableRuleInput) SetEventBusName(v string) *DisableRuleInput {
8649	s.EventBusName = &v
8650	return s
8651}
8652
8653// SetName sets the Name field's value.
8654func (s *DisableRuleInput) SetName(v string) *DisableRuleInput {
8655	s.Name = &v
8656	return s
8657}
8658
8659type DisableRuleOutput struct {
8660	_ struct{} `type:"structure"`
8661}
8662
8663// String returns the string representation
8664func (s DisableRuleOutput) String() string {
8665	return awsutil.Prettify(s)
8666}
8667
8668// GoString returns the string representation
8669func (s DisableRuleOutput) GoString() string {
8670	return s.String()
8671}
8672
8673// The custom parameters to be used when the target is an Amazon ECS task.
8674type EcsParameters struct {
8675	_ struct{} `type:"structure"`
8676
8677	// The capacity provider strategy to use for the task.
8678	//
8679	// If a capacityProviderStrategy is specified, the launchType parameter must
8680	// be omitted. If no capacityProviderStrategy or launchType is specified, the
8681	// defaultCapacityProviderStrategy for the cluster is used.
8682	CapacityProviderStrategy []*CapacityProviderStrategyItem `type:"list"`
8683
8684	// Specifies whether to enable Amazon ECS managed tags for the task. For more
8685	// information, see Tagging Your Amazon ECS Resources (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html)
8686	// in the Amazon Elastic Container Service Developer Guide.
8687	EnableECSManagedTags *bool `type:"boolean"`
8688
8689	// Whether or not to enable the execute command functionality for the containers
8690	// in this task. If true, this enables execute command functionality on all
8691	// containers in the task.
8692	EnableExecuteCommand *bool `type:"boolean"`
8693
8694	// Specifies an ECS task group for the task. The maximum length is 255 characters.
8695	Group *string `type:"string"`
8696
8697	// Specifies the launch type on which your task is running. The launch type
8698	// that you specify here must match one of the launch type (compatibilities)
8699	// of the target task. The FARGATE value is supported only in the Regions where
8700	// Fargate witt Amazon ECS is supported. For more information, see Fargate on
8701	// Amazon ECS (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS-Fargate.html)
8702	// in the Amazon Elastic Container Service Developer Guide.
8703	LaunchType *string `type:"string" enum:"LaunchType"`
8704
8705	// Use this structure if the Amazon ECS task uses the awsvpc network mode. This
8706	// structure specifies the VPC subnets and security groups associated with the
8707	// task, and whether a public IP address is to be used. This structure is required
8708	// if LaunchType is FARGATE because the awsvpc mode is required for Fargate
8709	// tasks.
8710	//
8711	// If you specify NetworkConfiguration when the target ECS task does not use
8712	// the awsvpc network mode, the task fails.
8713	NetworkConfiguration *NetworkConfiguration `type:"structure"`
8714
8715	// An array of placement constraint objects to use for the task. You can specify
8716	// up to 10 constraints per task (including constraints in the task definition
8717	// and those specified at runtime).
8718	PlacementConstraints []*PlacementConstraint `type:"list"`
8719
8720	// The placement strategy objects to use for the task. You can specify a maximum
8721	// of five strategy rules per task.
8722	PlacementStrategy []*PlacementStrategy `type:"list"`
8723
8724	// Specifies the platform version for the task. Specify only the numeric portion
8725	// of the platform version, such as 1.1.0.
8726	//
8727	// This structure is used only if LaunchType is FARGATE. For more information
8728	// about valid platform versions, see Fargate Platform Versions (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html)
8729	// in the Amazon Elastic Container Service Developer Guide.
8730	PlatformVersion *string `type:"string"`
8731
8732	// Specifies whether to propagate the tags from the task definition to the task.
8733	// If no value is specified, the tags are not propagated. Tags can only be propagated
8734	// to the task during task creation. To add tags to a task after task creation,
8735	// use the TagResource API action.
8736	PropagateTags *string `type:"string" enum:"PropagateTags"`
8737
8738	// The reference ID to use for the task.
8739	ReferenceId *string `type:"string"`
8740
8741	// The metadata that you apply to the task to help you categorize and organize
8742	// them. Each tag consists of a key and an optional value, both of which you
8743	// define. To learn more, see RunTask (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html#ECS-RunTask-request-tags)
8744	// in the Amazon ECS API Reference.
8745	Tags []*Tag `type:"list"`
8746
8747	// The number of tasks to create based on TaskDefinition. The default is 1.
8748	TaskCount *int64 `min:"1" type:"integer"`
8749
8750	// The ARN of the task definition to use if the event target is an Amazon ECS
8751	// task.
8752	//
8753	// TaskDefinitionArn is a required field
8754	TaskDefinitionArn *string `min:"1" type:"string" required:"true"`
8755}
8756
8757// String returns the string representation
8758func (s EcsParameters) String() string {
8759	return awsutil.Prettify(s)
8760}
8761
8762// GoString returns the string representation
8763func (s EcsParameters) GoString() string {
8764	return s.String()
8765}
8766
8767// Validate inspects the fields of the type to determine if they are valid.
8768func (s *EcsParameters) Validate() error {
8769	invalidParams := request.ErrInvalidParams{Context: "EcsParameters"}
8770	if s.TaskCount != nil && *s.TaskCount < 1 {
8771		invalidParams.Add(request.NewErrParamMinValue("TaskCount", 1))
8772	}
8773	if s.TaskDefinitionArn == nil {
8774		invalidParams.Add(request.NewErrParamRequired("TaskDefinitionArn"))
8775	}
8776	if s.TaskDefinitionArn != nil && len(*s.TaskDefinitionArn) < 1 {
8777		invalidParams.Add(request.NewErrParamMinLen("TaskDefinitionArn", 1))
8778	}
8779	if s.CapacityProviderStrategy != nil {
8780		for i, v := range s.CapacityProviderStrategy {
8781			if v == nil {
8782				continue
8783			}
8784			if err := v.Validate(); err != nil {
8785				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CapacityProviderStrategy", i), err.(request.ErrInvalidParams))
8786			}
8787		}
8788	}
8789	if s.NetworkConfiguration != nil {
8790		if err := s.NetworkConfiguration.Validate(); err != nil {
8791			invalidParams.AddNested("NetworkConfiguration", err.(request.ErrInvalidParams))
8792		}
8793	}
8794	if s.Tags != nil {
8795		for i, v := range s.Tags {
8796			if v == nil {
8797				continue
8798			}
8799			if err := v.Validate(); err != nil {
8800				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
8801			}
8802		}
8803	}
8804
8805	if invalidParams.Len() > 0 {
8806		return invalidParams
8807	}
8808	return nil
8809}
8810
8811// SetCapacityProviderStrategy sets the CapacityProviderStrategy field's value.
8812func (s *EcsParameters) SetCapacityProviderStrategy(v []*CapacityProviderStrategyItem) *EcsParameters {
8813	s.CapacityProviderStrategy = v
8814	return s
8815}
8816
8817// SetEnableECSManagedTags sets the EnableECSManagedTags field's value.
8818func (s *EcsParameters) SetEnableECSManagedTags(v bool) *EcsParameters {
8819	s.EnableECSManagedTags = &v
8820	return s
8821}
8822
8823// SetEnableExecuteCommand sets the EnableExecuteCommand field's value.
8824func (s *EcsParameters) SetEnableExecuteCommand(v bool) *EcsParameters {
8825	s.EnableExecuteCommand = &v
8826	return s
8827}
8828
8829// SetGroup sets the Group field's value.
8830func (s *EcsParameters) SetGroup(v string) *EcsParameters {
8831	s.Group = &v
8832	return s
8833}
8834
8835// SetLaunchType sets the LaunchType field's value.
8836func (s *EcsParameters) SetLaunchType(v string) *EcsParameters {
8837	s.LaunchType = &v
8838	return s
8839}
8840
8841// SetNetworkConfiguration sets the NetworkConfiguration field's value.
8842func (s *EcsParameters) SetNetworkConfiguration(v *NetworkConfiguration) *EcsParameters {
8843	s.NetworkConfiguration = v
8844	return s
8845}
8846
8847// SetPlacementConstraints sets the PlacementConstraints field's value.
8848func (s *EcsParameters) SetPlacementConstraints(v []*PlacementConstraint) *EcsParameters {
8849	s.PlacementConstraints = v
8850	return s
8851}
8852
8853// SetPlacementStrategy sets the PlacementStrategy field's value.
8854func (s *EcsParameters) SetPlacementStrategy(v []*PlacementStrategy) *EcsParameters {
8855	s.PlacementStrategy = v
8856	return s
8857}
8858
8859// SetPlatformVersion sets the PlatformVersion field's value.
8860func (s *EcsParameters) SetPlatformVersion(v string) *EcsParameters {
8861	s.PlatformVersion = &v
8862	return s
8863}
8864
8865// SetPropagateTags sets the PropagateTags field's value.
8866func (s *EcsParameters) SetPropagateTags(v string) *EcsParameters {
8867	s.PropagateTags = &v
8868	return s
8869}
8870
8871// SetReferenceId sets the ReferenceId field's value.
8872func (s *EcsParameters) SetReferenceId(v string) *EcsParameters {
8873	s.ReferenceId = &v
8874	return s
8875}
8876
8877// SetTags sets the Tags field's value.
8878func (s *EcsParameters) SetTags(v []*Tag) *EcsParameters {
8879	s.Tags = v
8880	return s
8881}
8882
8883// SetTaskCount sets the TaskCount field's value.
8884func (s *EcsParameters) SetTaskCount(v int64) *EcsParameters {
8885	s.TaskCount = &v
8886	return s
8887}
8888
8889// SetTaskDefinitionArn sets the TaskDefinitionArn field's value.
8890func (s *EcsParameters) SetTaskDefinitionArn(v string) *EcsParameters {
8891	s.TaskDefinitionArn = &v
8892	return s
8893}
8894
8895type EnableRuleInput struct {
8896	_ struct{} `type:"structure"`
8897
8898	// The name or ARN of the event bus associated with the rule. If you omit this,
8899	// the default event bus is used.
8900	EventBusName *string `min:"1" type:"string"`
8901
8902	// The name of the rule.
8903	//
8904	// Name is a required field
8905	Name *string `min:"1" type:"string" required:"true"`
8906}
8907
8908// String returns the string representation
8909func (s EnableRuleInput) String() string {
8910	return awsutil.Prettify(s)
8911}
8912
8913// GoString returns the string representation
8914func (s EnableRuleInput) GoString() string {
8915	return s.String()
8916}
8917
8918// Validate inspects the fields of the type to determine if they are valid.
8919func (s *EnableRuleInput) Validate() error {
8920	invalidParams := request.ErrInvalidParams{Context: "EnableRuleInput"}
8921	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
8922		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
8923	}
8924	if s.Name == nil {
8925		invalidParams.Add(request.NewErrParamRequired("Name"))
8926	}
8927	if s.Name != nil && len(*s.Name) < 1 {
8928		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8929	}
8930
8931	if invalidParams.Len() > 0 {
8932		return invalidParams
8933	}
8934	return nil
8935}
8936
8937// SetEventBusName sets the EventBusName field's value.
8938func (s *EnableRuleInput) SetEventBusName(v string) *EnableRuleInput {
8939	s.EventBusName = &v
8940	return s
8941}
8942
8943// SetName sets the Name field's value.
8944func (s *EnableRuleInput) SetName(v string) *EnableRuleInput {
8945	s.Name = &v
8946	return s
8947}
8948
8949type EnableRuleOutput struct {
8950	_ struct{} `type:"structure"`
8951}
8952
8953// String returns the string representation
8954func (s EnableRuleOutput) String() string {
8955	return awsutil.Prettify(s)
8956}
8957
8958// GoString returns the string representation
8959func (s EnableRuleOutput) GoString() string {
8960	return s.String()
8961}
8962
8963// An event bus receives events from a source and routes them to rules associated
8964// with that event bus. Your account's default event bus receives events from
8965// Amazon Web Services services. A custom event bus can receive events from
8966// your custom applications and services. A partner event bus receives events
8967// from an event source created by an SaaS partner. These events come from the
8968// partners services or applications.
8969type EventBus struct {
8970	_ struct{} `type:"structure"`
8971
8972	// The ARN of the event bus.
8973	Arn *string `type:"string"`
8974
8975	// The name of the event bus.
8976	Name *string `type:"string"`
8977
8978	// The permissions policy of the event bus, describing which other Amazon Web
8979	// Services accounts can write events to this event bus.
8980	Policy *string `type:"string"`
8981}
8982
8983// String returns the string representation
8984func (s EventBus) String() string {
8985	return awsutil.Prettify(s)
8986}
8987
8988// GoString returns the string representation
8989func (s EventBus) GoString() string {
8990	return s.String()
8991}
8992
8993// SetArn sets the Arn field's value.
8994func (s *EventBus) SetArn(v string) *EventBus {
8995	s.Arn = &v
8996	return s
8997}
8998
8999// SetName sets the Name field's value.
9000func (s *EventBus) SetName(v string) *EventBus {
9001	s.Name = &v
9002	return s
9003}
9004
9005// SetPolicy sets the Policy field's value.
9006func (s *EventBus) SetPolicy(v string) *EventBus {
9007	s.Policy = &v
9008	return s
9009}
9010
9011// A partner event source is created by an SaaS partner. If a customer creates
9012// a partner event bus that matches this event source, that Amazon Web Services
9013// account can receive events from the partner's applications or services.
9014type EventSource struct {
9015	_ struct{} `type:"structure"`
9016
9017	// The ARN of the event source.
9018	Arn *string `type:"string"`
9019
9020	// The name of the partner that created the event source.
9021	CreatedBy *string `type:"string"`
9022
9023	// The date and time the event source was created.
9024	CreationTime *time.Time `type:"timestamp"`
9025
9026	// The date and time that the event source will expire, if the Amazon Web Services
9027	// account doesn't create a matching event bus for it.
9028	ExpirationTime *time.Time `type:"timestamp"`
9029
9030	// The name of the event source.
9031	Name *string `type:"string"`
9032
9033	// The state of the event source. If it is ACTIVE, you have already created
9034	// a matching event bus for this event source, and that event bus is active.
9035	// If it is PENDING, either you haven't yet created a matching event bus, or
9036	// that event bus is deactivated. If it is DELETED, you have created a matching
9037	// event bus, but the event source has since been deleted.
9038	State *string `type:"string" enum:"EventSourceState"`
9039}
9040
9041// String returns the string representation
9042func (s EventSource) String() string {
9043	return awsutil.Prettify(s)
9044}
9045
9046// GoString returns the string representation
9047func (s EventSource) GoString() string {
9048	return s.String()
9049}
9050
9051// SetArn sets the Arn field's value.
9052func (s *EventSource) SetArn(v string) *EventSource {
9053	s.Arn = &v
9054	return s
9055}
9056
9057// SetCreatedBy sets the CreatedBy field's value.
9058func (s *EventSource) SetCreatedBy(v string) *EventSource {
9059	s.CreatedBy = &v
9060	return s
9061}
9062
9063// SetCreationTime sets the CreationTime field's value.
9064func (s *EventSource) SetCreationTime(v time.Time) *EventSource {
9065	s.CreationTime = &v
9066	return s
9067}
9068
9069// SetExpirationTime sets the ExpirationTime field's value.
9070func (s *EventSource) SetExpirationTime(v time.Time) *EventSource {
9071	s.ExpirationTime = &v
9072	return s
9073}
9074
9075// SetName sets the Name field's value.
9076func (s *EventSource) SetName(v string) *EventSource {
9077	s.Name = &v
9078	return s
9079}
9080
9081// SetState sets the State field's value.
9082func (s *EventSource) SetState(v string) *EventSource {
9083	s.State = &v
9084	return s
9085}
9086
9087// These are custom parameter to be used when the target is an API Gateway REST
9088// APIs or EventBridge ApiDestinations. In the latter case, these are merged
9089// with any InvocationParameters specified on the Connection, with any values
9090// from the Connection taking precedence.
9091type HttpParameters struct {
9092	_ struct{} `type:"structure"`
9093
9094	// The headers that need to be sent as part of request invoking the API Gateway
9095	// REST API or EventBridge ApiDestination.
9096	HeaderParameters map[string]*string `type:"map"`
9097
9098	// The path parameter values to be used to populate API Gateway REST API or
9099	// EventBridge ApiDestination path wildcards ("*").
9100	PathParameterValues []*string `type:"list"`
9101
9102	// The query string keys/values that need to be sent as part of request invoking
9103	// the API Gateway REST API or EventBridge ApiDestination.
9104	QueryStringParameters map[string]*string `type:"map"`
9105}
9106
9107// String returns the string representation
9108func (s HttpParameters) String() string {
9109	return awsutil.Prettify(s)
9110}
9111
9112// GoString returns the string representation
9113func (s HttpParameters) GoString() string {
9114	return s.String()
9115}
9116
9117// SetHeaderParameters sets the HeaderParameters field's value.
9118func (s *HttpParameters) SetHeaderParameters(v map[string]*string) *HttpParameters {
9119	s.HeaderParameters = v
9120	return s
9121}
9122
9123// SetPathParameterValues sets the PathParameterValues field's value.
9124func (s *HttpParameters) SetPathParameterValues(v []*string) *HttpParameters {
9125	s.PathParameterValues = v
9126	return s
9127}
9128
9129// SetQueryStringParameters sets the QueryStringParameters field's value.
9130func (s *HttpParameters) SetQueryStringParameters(v map[string]*string) *HttpParameters {
9131	s.QueryStringParameters = v
9132	return s
9133}
9134
9135// An error occurred because a replay can be canceled only when the state is
9136// Running or Starting.
9137type IllegalStatusException struct {
9138	_            struct{}                  `type:"structure"`
9139	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9140
9141	Message_ *string `locationName:"message" type:"string"`
9142}
9143
9144// String returns the string representation
9145func (s IllegalStatusException) String() string {
9146	return awsutil.Prettify(s)
9147}
9148
9149// GoString returns the string representation
9150func (s IllegalStatusException) GoString() string {
9151	return s.String()
9152}
9153
9154func newErrorIllegalStatusException(v protocol.ResponseMetadata) error {
9155	return &IllegalStatusException{
9156		RespMetadata: v,
9157	}
9158}
9159
9160// Code returns the exception type name.
9161func (s *IllegalStatusException) Code() string {
9162	return "IllegalStatusException"
9163}
9164
9165// Message returns the exception's message.
9166func (s *IllegalStatusException) Message() string {
9167	if s.Message_ != nil {
9168		return *s.Message_
9169	}
9170	return ""
9171}
9172
9173// OrigErr always returns nil, satisfies awserr.Error interface.
9174func (s *IllegalStatusException) OrigErr() error {
9175	return nil
9176}
9177
9178func (s *IllegalStatusException) Error() string {
9179	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9180}
9181
9182// Status code returns the HTTP status code for the request's response error.
9183func (s *IllegalStatusException) StatusCode() int {
9184	return s.RespMetadata.StatusCode
9185}
9186
9187// RequestID returns the service's response RequestID for request.
9188func (s *IllegalStatusException) RequestID() string {
9189	return s.RespMetadata.RequestID
9190}
9191
9192// Contains the parameters needed for you to provide custom input to a target
9193// based on one or more pieces of data extracted from the event.
9194type InputTransformer struct {
9195	_ struct{} `type:"structure"`
9196
9197	// Map of JSON paths to be extracted from the event. You can then insert these
9198	// in the template in InputTemplate to produce the output you want to be sent
9199	// to the target.
9200	//
9201	// InputPathsMap is an array key-value pairs, where each value is a valid JSON
9202	// path. You can have as many as 100 key-value pairs. You must use JSON dot
9203	// notation, not bracket notation.
9204	//
9205	// The keys cannot start with "Amazon Web Services."
9206	InputPathsMap map[string]*string `type:"map"`
9207
9208	// Input template where you specify placeholders that will be filled with the
9209	// values of the keys from InputPathsMap to customize the data sent to the target.
9210	// Enclose each InputPathsMaps value in brackets: <value> The InputTemplate
9211	// must be valid JSON.
9212	//
9213	// If InputTemplate is a JSON object (surrounded by curly braces), the following
9214	// restrictions apply:
9215	//
9216	//    * The placeholder cannot be used as an object key.
9217	//
9218	// The following example shows the syntax for using InputPathsMap and InputTemplate.
9219	//
9220	// "InputTransformer":
9221	//
9222	// {
9223	//
9224	// "InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},
9225	//
9226	// "InputTemplate": "<instance> is in state <status>"
9227	//
9228	// }
9229	//
9230	// To have the InputTemplate include quote marks within a JSON string, escape
9231	// each quote marks with a slash, as in the following example:
9232	//
9233	// "InputTransformer":
9234	//
9235	// {
9236	//
9237	// "InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},
9238	//
9239	// "InputTemplate": "<instance> is in state \"<status>\""
9240	//
9241	// }
9242	//
9243	// The InputTemplate can also be valid JSON with varibles in quotes or out,
9244	// as in the following example:
9245	//
9246	// "InputTransformer":
9247	//
9248	// {
9249	//
9250	// "InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},
9251	//
9252	// "InputTemplate": '{"myInstance": <instance>,"myStatus": "<instance> is in
9253	// state \"<status>\""}'
9254	//
9255	// }
9256	//
9257	// InputTemplate is a required field
9258	InputTemplate *string `min:"1" type:"string" required:"true"`
9259}
9260
9261// String returns the string representation
9262func (s InputTransformer) String() string {
9263	return awsutil.Prettify(s)
9264}
9265
9266// GoString returns the string representation
9267func (s InputTransformer) GoString() string {
9268	return s.String()
9269}
9270
9271// Validate inspects the fields of the type to determine if they are valid.
9272func (s *InputTransformer) Validate() error {
9273	invalidParams := request.ErrInvalidParams{Context: "InputTransformer"}
9274	if s.InputTemplate == nil {
9275		invalidParams.Add(request.NewErrParamRequired("InputTemplate"))
9276	}
9277	if s.InputTemplate != nil && len(*s.InputTemplate) < 1 {
9278		invalidParams.Add(request.NewErrParamMinLen("InputTemplate", 1))
9279	}
9280
9281	if invalidParams.Len() > 0 {
9282		return invalidParams
9283	}
9284	return nil
9285}
9286
9287// SetInputPathsMap sets the InputPathsMap field's value.
9288func (s *InputTransformer) SetInputPathsMap(v map[string]*string) *InputTransformer {
9289	s.InputPathsMap = v
9290	return s
9291}
9292
9293// SetInputTemplate sets the InputTemplate field's value.
9294func (s *InputTransformer) SetInputTemplate(v string) *InputTransformer {
9295	s.InputTemplate = &v
9296	return s
9297}
9298
9299// This exception occurs due to unexpected causes.
9300type InternalException struct {
9301	_            struct{}                  `type:"structure"`
9302	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9303
9304	Message_ *string `locationName:"message" type:"string"`
9305}
9306
9307// String returns the string representation
9308func (s InternalException) String() string {
9309	return awsutil.Prettify(s)
9310}
9311
9312// GoString returns the string representation
9313func (s InternalException) GoString() string {
9314	return s.String()
9315}
9316
9317func newErrorInternalException(v protocol.ResponseMetadata) error {
9318	return &InternalException{
9319		RespMetadata: v,
9320	}
9321}
9322
9323// Code returns the exception type name.
9324func (s *InternalException) Code() string {
9325	return "InternalException"
9326}
9327
9328// Message returns the exception's message.
9329func (s *InternalException) Message() string {
9330	if s.Message_ != nil {
9331		return *s.Message_
9332	}
9333	return ""
9334}
9335
9336// OrigErr always returns nil, satisfies awserr.Error interface.
9337func (s *InternalException) OrigErr() error {
9338	return nil
9339}
9340
9341func (s *InternalException) Error() string {
9342	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9343}
9344
9345// Status code returns the HTTP status code for the request's response error.
9346func (s *InternalException) StatusCode() int {
9347	return s.RespMetadata.StatusCode
9348}
9349
9350// RequestID returns the service's response RequestID for request.
9351func (s *InternalException) RequestID() string {
9352	return s.RespMetadata.RequestID
9353}
9354
9355// The event pattern is not valid.
9356type InvalidEventPatternException struct {
9357	_            struct{}                  `type:"structure"`
9358	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9359
9360	Message_ *string `locationName:"message" type:"string"`
9361}
9362
9363// String returns the string representation
9364func (s InvalidEventPatternException) String() string {
9365	return awsutil.Prettify(s)
9366}
9367
9368// GoString returns the string representation
9369func (s InvalidEventPatternException) GoString() string {
9370	return s.String()
9371}
9372
9373func newErrorInvalidEventPatternException(v protocol.ResponseMetadata) error {
9374	return &InvalidEventPatternException{
9375		RespMetadata: v,
9376	}
9377}
9378
9379// Code returns the exception type name.
9380func (s *InvalidEventPatternException) Code() string {
9381	return "InvalidEventPatternException"
9382}
9383
9384// Message returns the exception's message.
9385func (s *InvalidEventPatternException) Message() string {
9386	if s.Message_ != nil {
9387		return *s.Message_
9388	}
9389	return ""
9390}
9391
9392// OrigErr always returns nil, satisfies awserr.Error interface.
9393func (s *InvalidEventPatternException) OrigErr() error {
9394	return nil
9395}
9396
9397func (s *InvalidEventPatternException) Error() string {
9398	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9399}
9400
9401// Status code returns the HTTP status code for the request's response error.
9402func (s *InvalidEventPatternException) StatusCode() int {
9403	return s.RespMetadata.StatusCode
9404}
9405
9406// RequestID returns the service's response RequestID for request.
9407func (s *InvalidEventPatternException) RequestID() string {
9408	return s.RespMetadata.RequestID
9409}
9410
9411// The specified state is not a valid state for an event source.
9412type InvalidStateException struct {
9413	_            struct{}                  `type:"structure"`
9414	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9415
9416	Message_ *string `locationName:"message" type:"string"`
9417}
9418
9419// String returns the string representation
9420func (s InvalidStateException) String() string {
9421	return awsutil.Prettify(s)
9422}
9423
9424// GoString returns the string representation
9425func (s InvalidStateException) GoString() string {
9426	return s.String()
9427}
9428
9429func newErrorInvalidStateException(v protocol.ResponseMetadata) error {
9430	return &InvalidStateException{
9431		RespMetadata: v,
9432	}
9433}
9434
9435// Code returns the exception type name.
9436func (s *InvalidStateException) Code() string {
9437	return "InvalidStateException"
9438}
9439
9440// Message returns the exception's message.
9441func (s *InvalidStateException) Message() string {
9442	if s.Message_ != nil {
9443		return *s.Message_
9444	}
9445	return ""
9446}
9447
9448// OrigErr always returns nil, satisfies awserr.Error interface.
9449func (s *InvalidStateException) OrigErr() error {
9450	return nil
9451}
9452
9453func (s *InvalidStateException) Error() string {
9454	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9455}
9456
9457// Status code returns the HTTP status code for the request's response error.
9458func (s *InvalidStateException) StatusCode() int {
9459	return s.RespMetadata.StatusCode
9460}
9461
9462// RequestID returns the service's response RequestID for request.
9463func (s *InvalidStateException) RequestID() string {
9464	return s.RespMetadata.RequestID
9465}
9466
9467// This object enables you to specify a JSON path to extract from the event
9468// and use as the partition key for the Amazon Kinesis data stream, so that
9469// you can control the shard to which the event goes. If you do not include
9470// this parameter, the default is to use the eventId as the partition key.
9471type KinesisParameters struct {
9472	_ struct{} `type:"structure"`
9473
9474	// The JSON path to be extracted from the event and used as the partition key.
9475	// For more information, see Amazon Kinesis Streams Key Concepts (https://docs.aws.amazon.com/streams/latest/dev/key-concepts.html#partition-key)
9476	// in the Amazon Kinesis Streams Developer Guide.
9477	//
9478	// PartitionKeyPath is a required field
9479	PartitionKeyPath *string `type:"string" required:"true"`
9480}
9481
9482// String returns the string representation
9483func (s KinesisParameters) String() string {
9484	return awsutil.Prettify(s)
9485}
9486
9487// GoString returns the string representation
9488func (s KinesisParameters) GoString() string {
9489	return s.String()
9490}
9491
9492// Validate inspects the fields of the type to determine if they are valid.
9493func (s *KinesisParameters) Validate() error {
9494	invalidParams := request.ErrInvalidParams{Context: "KinesisParameters"}
9495	if s.PartitionKeyPath == nil {
9496		invalidParams.Add(request.NewErrParamRequired("PartitionKeyPath"))
9497	}
9498
9499	if invalidParams.Len() > 0 {
9500		return invalidParams
9501	}
9502	return nil
9503}
9504
9505// SetPartitionKeyPath sets the PartitionKeyPath field's value.
9506func (s *KinesisParameters) SetPartitionKeyPath(v string) *KinesisParameters {
9507	s.PartitionKeyPath = &v
9508	return s
9509}
9510
9511// The request failed because it attempted to create resource beyond the allowed
9512// service quota.
9513type LimitExceededException struct {
9514	_            struct{}                  `type:"structure"`
9515	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9516
9517	Message_ *string `locationName:"message" type:"string"`
9518}
9519
9520// String returns the string representation
9521func (s LimitExceededException) String() string {
9522	return awsutil.Prettify(s)
9523}
9524
9525// GoString returns the string representation
9526func (s LimitExceededException) GoString() string {
9527	return s.String()
9528}
9529
9530func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
9531	return &LimitExceededException{
9532		RespMetadata: v,
9533	}
9534}
9535
9536// Code returns the exception type name.
9537func (s *LimitExceededException) Code() string {
9538	return "LimitExceededException"
9539}
9540
9541// Message returns the exception's message.
9542func (s *LimitExceededException) Message() string {
9543	if s.Message_ != nil {
9544		return *s.Message_
9545	}
9546	return ""
9547}
9548
9549// OrigErr always returns nil, satisfies awserr.Error interface.
9550func (s *LimitExceededException) OrigErr() error {
9551	return nil
9552}
9553
9554func (s *LimitExceededException) Error() string {
9555	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9556}
9557
9558// Status code returns the HTTP status code for the request's response error.
9559func (s *LimitExceededException) StatusCode() int {
9560	return s.RespMetadata.StatusCode
9561}
9562
9563// RequestID returns the service's response RequestID for request.
9564func (s *LimitExceededException) RequestID() string {
9565	return s.RespMetadata.RequestID
9566}
9567
9568type ListApiDestinationsInput struct {
9569	_ struct{} `type:"structure"`
9570
9571	// The ARN of the connection specified for the API destination.
9572	ConnectionArn *string `min:"1" type:"string"`
9573
9574	// The maximum number of API destinations to include in the response.
9575	Limit *int64 `min:"1" type:"integer"`
9576
9577	// A name prefix to filter results returned. Only API destinations with a name
9578	// that starts with the prefix are returned.
9579	NamePrefix *string `min:"1" type:"string"`
9580
9581	// The token returned by a previous call to retrieve the next set of results.
9582	NextToken *string `min:"1" type:"string"`
9583}
9584
9585// String returns the string representation
9586func (s ListApiDestinationsInput) String() string {
9587	return awsutil.Prettify(s)
9588}
9589
9590// GoString returns the string representation
9591func (s ListApiDestinationsInput) GoString() string {
9592	return s.String()
9593}
9594
9595// Validate inspects the fields of the type to determine if they are valid.
9596func (s *ListApiDestinationsInput) Validate() error {
9597	invalidParams := request.ErrInvalidParams{Context: "ListApiDestinationsInput"}
9598	if s.ConnectionArn != nil && len(*s.ConnectionArn) < 1 {
9599		invalidParams.Add(request.NewErrParamMinLen("ConnectionArn", 1))
9600	}
9601	if s.Limit != nil && *s.Limit < 1 {
9602		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9603	}
9604	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9605		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9606	}
9607	if s.NextToken != nil && len(*s.NextToken) < 1 {
9608		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9609	}
9610
9611	if invalidParams.Len() > 0 {
9612		return invalidParams
9613	}
9614	return nil
9615}
9616
9617// SetConnectionArn sets the ConnectionArn field's value.
9618func (s *ListApiDestinationsInput) SetConnectionArn(v string) *ListApiDestinationsInput {
9619	s.ConnectionArn = &v
9620	return s
9621}
9622
9623// SetLimit sets the Limit field's value.
9624func (s *ListApiDestinationsInput) SetLimit(v int64) *ListApiDestinationsInput {
9625	s.Limit = &v
9626	return s
9627}
9628
9629// SetNamePrefix sets the NamePrefix field's value.
9630func (s *ListApiDestinationsInput) SetNamePrefix(v string) *ListApiDestinationsInput {
9631	s.NamePrefix = &v
9632	return s
9633}
9634
9635// SetNextToken sets the NextToken field's value.
9636func (s *ListApiDestinationsInput) SetNextToken(v string) *ListApiDestinationsInput {
9637	s.NextToken = &v
9638	return s
9639}
9640
9641type ListApiDestinationsOutput struct {
9642	_ struct{} `type:"structure"`
9643
9644	// An array of ApiDestination objects that include information about an API
9645	// destination.
9646	ApiDestinations []*ApiDestination `type:"list"`
9647
9648	// A token you can use in a subsequent request to retrieve the next set of results.
9649	NextToken *string `min:"1" type:"string"`
9650}
9651
9652// String returns the string representation
9653func (s ListApiDestinationsOutput) String() string {
9654	return awsutil.Prettify(s)
9655}
9656
9657// GoString returns the string representation
9658func (s ListApiDestinationsOutput) GoString() string {
9659	return s.String()
9660}
9661
9662// SetApiDestinations sets the ApiDestinations field's value.
9663func (s *ListApiDestinationsOutput) SetApiDestinations(v []*ApiDestination) *ListApiDestinationsOutput {
9664	s.ApiDestinations = v
9665	return s
9666}
9667
9668// SetNextToken sets the NextToken field's value.
9669func (s *ListApiDestinationsOutput) SetNextToken(v string) *ListApiDestinationsOutput {
9670	s.NextToken = &v
9671	return s
9672}
9673
9674type ListArchivesInput struct {
9675	_ struct{} `type:"structure"`
9676
9677	// The ARN of the event source associated with the archive.
9678	EventSourceArn *string `min:"1" type:"string"`
9679
9680	// The maximum number of results to return.
9681	Limit *int64 `min:"1" type:"integer"`
9682
9683	// A name prefix to filter the archives returned. Only archives with name that
9684	// match the prefix are returned.
9685	NamePrefix *string `min:"1" type:"string"`
9686
9687	// The token returned by a previous call to retrieve the next set of results.
9688	NextToken *string `min:"1" type:"string"`
9689
9690	// The state of the archive.
9691	State *string `type:"string" enum:"ArchiveState"`
9692}
9693
9694// String returns the string representation
9695func (s ListArchivesInput) String() string {
9696	return awsutil.Prettify(s)
9697}
9698
9699// GoString returns the string representation
9700func (s ListArchivesInput) GoString() string {
9701	return s.String()
9702}
9703
9704// Validate inspects the fields of the type to determine if they are valid.
9705func (s *ListArchivesInput) Validate() error {
9706	invalidParams := request.ErrInvalidParams{Context: "ListArchivesInput"}
9707	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
9708		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
9709	}
9710	if s.Limit != nil && *s.Limit < 1 {
9711		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9712	}
9713	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9714		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9715	}
9716	if s.NextToken != nil && len(*s.NextToken) < 1 {
9717		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9718	}
9719
9720	if invalidParams.Len() > 0 {
9721		return invalidParams
9722	}
9723	return nil
9724}
9725
9726// SetEventSourceArn sets the EventSourceArn field's value.
9727func (s *ListArchivesInput) SetEventSourceArn(v string) *ListArchivesInput {
9728	s.EventSourceArn = &v
9729	return s
9730}
9731
9732// SetLimit sets the Limit field's value.
9733func (s *ListArchivesInput) SetLimit(v int64) *ListArchivesInput {
9734	s.Limit = &v
9735	return s
9736}
9737
9738// SetNamePrefix sets the NamePrefix field's value.
9739func (s *ListArchivesInput) SetNamePrefix(v string) *ListArchivesInput {
9740	s.NamePrefix = &v
9741	return s
9742}
9743
9744// SetNextToken sets the NextToken field's value.
9745func (s *ListArchivesInput) SetNextToken(v string) *ListArchivesInput {
9746	s.NextToken = &v
9747	return s
9748}
9749
9750// SetState sets the State field's value.
9751func (s *ListArchivesInput) SetState(v string) *ListArchivesInput {
9752	s.State = &v
9753	return s
9754}
9755
9756type ListArchivesOutput struct {
9757	_ struct{} `type:"structure"`
9758
9759	// An array of Archive objects that include details about an archive.
9760	Archives []*Archive `type:"list"`
9761
9762	// The token returned by a previous call to retrieve the next set of results.
9763	NextToken *string `min:"1" type:"string"`
9764}
9765
9766// String returns the string representation
9767func (s ListArchivesOutput) String() string {
9768	return awsutil.Prettify(s)
9769}
9770
9771// GoString returns the string representation
9772func (s ListArchivesOutput) GoString() string {
9773	return s.String()
9774}
9775
9776// SetArchives sets the Archives field's value.
9777func (s *ListArchivesOutput) SetArchives(v []*Archive) *ListArchivesOutput {
9778	s.Archives = v
9779	return s
9780}
9781
9782// SetNextToken sets the NextToken field's value.
9783func (s *ListArchivesOutput) SetNextToken(v string) *ListArchivesOutput {
9784	s.NextToken = &v
9785	return s
9786}
9787
9788type ListConnectionsInput struct {
9789	_ struct{} `type:"structure"`
9790
9791	// The state of the connection.
9792	ConnectionState *string `type:"string" enum:"ConnectionState"`
9793
9794	// The maximum number of connections to return.
9795	Limit *int64 `min:"1" type:"integer"`
9796
9797	// A name prefix to filter results returned. Only connections with a name that
9798	// starts with the prefix are returned.
9799	NamePrefix *string `min:"1" type:"string"`
9800
9801	// The token returned by a previous call to retrieve the next set of results.
9802	NextToken *string `min:"1" type:"string"`
9803}
9804
9805// String returns the string representation
9806func (s ListConnectionsInput) String() string {
9807	return awsutil.Prettify(s)
9808}
9809
9810// GoString returns the string representation
9811func (s ListConnectionsInput) GoString() string {
9812	return s.String()
9813}
9814
9815// Validate inspects the fields of the type to determine if they are valid.
9816func (s *ListConnectionsInput) Validate() error {
9817	invalidParams := request.ErrInvalidParams{Context: "ListConnectionsInput"}
9818	if s.Limit != nil && *s.Limit < 1 {
9819		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9820	}
9821	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9822		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9823	}
9824	if s.NextToken != nil && len(*s.NextToken) < 1 {
9825		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9826	}
9827
9828	if invalidParams.Len() > 0 {
9829		return invalidParams
9830	}
9831	return nil
9832}
9833
9834// SetConnectionState sets the ConnectionState field's value.
9835func (s *ListConnectionsInput) SetConnectionState(v string) *ListConnectionsInput {
9836	s.ConnectionState = &v
9837	return s
9838}
9839
9840// SetLimit sets the Limit field's value.
9841func (s *ListConnectionsInput) SetLimit(v int64) *ListConnectionsInput {
9842	s.Limit = &v
9843	return s
9844}
9845
9846// SetNamePrefix sets the NamePrefix field's value.
9847func (s *ListConnectionsInput) SetNamePrefix(v string) *ListConnectionsInput {
9848	s.NamePrefix = &v
9849	return s
9850}
9851
9852// SetNextToken sets the NextToken field's value.
9853func (s *ListConnectionsInput) SetNextToken(v string) *ListConnectionsInput {
9854	s.NextToken = &v
9855	return s
9856}
9857
9858type ListConnectionsOutput struct {
9859	_ struct{} `type:"structure"`
9860
9861	// An array of connections objects that include details about the connections.
9862	Connections []*Connection `type:"list"`
9863
9864	// A token you can use in a subsequent request to retrieve the next set of results.
9865	NextToken *string `min:"1" type:"string"`
9866}
9867
9868// String returns the string representation
9869func (s ListConnectionsOutput) String() string {
9870	return awsutil.Prettify(s)
9871}
9872
9873// GoString returns the string representation
9874func (s ListConnectionsOutput) GoString() string {
9875	return s.String()
9876}
9877
9878// SetConnections sets the Connections field's value.
9879func (s *ListConnectionsOutput) SetConnections(v []*Connection) *ListConnectionsOutput {
9880	s.Connections = v
9881	return s
9882}
9883
9884// SetNextToken sets the NextToken field's value.
9885func (s *ListConnectionsOutput) SetNextToken(v string) *ListConnectionsOutput {
9886	s.NextToken = &v
9887	return s
9888}
9889
9890type ListEventBusesInput struct {
9891	_ struct{} `type:"structure"`
9892
9893	// Specifying this limits the number of results returned by this operation.
9894	// The operation also returns a NextToken which you can use in a subsequent
9895	// operation to retrieve the next set of results.
9896	Limit *int64 `min:"1" type:"integer"`
9897
9898	// Specifying this limits the results to only those event buses with names that
9899	// start with the specified prefix.
9900	NamePrefix *string `min:"1" type:"string"`
9901
9902	// The token returned by a previous call to retrieve the next set of results.
9903	NextToken *string `min:"1" type:"string"`
9904}
9905
9906// String returns the string representation
9907func (s ListEventBusesInput) String() string {
9908	return awsutil.Prettify(s)
9909}
9910
9911// GoString returns the string representation
9912func (s ListEventBusesInput) GoString() string {
9913	return s.String()
9914}
9915
9916// Validate inspects the fields of the type to determine if they are valid.
9917func (s *ListEventBusesInput) Validate() error {
9918	invalidParams := request.ErrInvalidParams{Context: "ListEventBusesInput"}
9919	if s.Limit != nil && *s.Limit < 1 {
9920		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9921	}
9922	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9923		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9924	}
9925	if s.NextToken != nil && len(*s.NextToken) < 1 {
9926		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9927	}
9928
9929	if invalidParams.Len() > 0 {
9930		return invalidParams
9931	}
9932	return nil
9933}
9934
9935// SetLimit sets the Limit field's value.
9936func (s *ListEventBusesInput) SetLimit(v int64) *ListEventBusesInput {
9937	s.Limit = &v
9938	return s
9939}
9940
9941// SetNamePrefix sets the NamePrefix field's value.
9942func (s *ListEventBusesInput) SetNamePrefix(v string) *ListEventBusesInput {
9943	s.NamePrefix = &v
9944	return s
9945}
9946
9947// SetNextToken sets the NextToken field's value.
9948func (s *ListEventBusesInput) SetNextToken(v string) *ListEventBusesInput {
9949	s.NextToken = &v
9950	return s
9951}
9952
9953type ListEventBusesOutput struct {
9954	_ struct{} `type:"structure"`
9955
9956	// This list of event buses.
9957	EventBuses []*EventBus `type:"list"`
9958
9959	// A token you can use in a subsequent operation to retrieve the next set of
9960	// results.
9961	NextToken *string `min:"1" type:"string"`
9962}
9963
9964// String returns the string representation
9965func (s ListEventBusesOutput) String() string {
9966	return awsutil.Prettify(s)
9967}
9968
9969// GoString returns the string representation
9970func (s ListEventBusesOutput) GoString() string {
9971	return s.String()
9972}
9973
9974// SetEventBuses sets the EventBuses field's value.
9975func (s *ListEventBusesOutput) SetEventBuses(v []*EventBus) *ListEventBusesOutput {
9976	s.EventBuses = v
9977	return s
9978}
9979
9980// SetNextToken sets the NextToken field's value.
9981func (s *ListEventBusesOutput) SetNextToken(v string) *ListEventBusesOutput {
9982	s.NextToken = &v
9983	return s
9984}
9985
9986type ListEventSourcesInput struct {
9987	_ struct{} `type:"structure"`
9988
9989	// Specifying this limits the number of results returned by this operation.
9990	// The operation also returns a NextToken which you can use in a subsequent
9991	// operation to retrieve the next set of results.
9992	Limit *int64 `min:"1" type:"integer"`
9993
9994	// Specifying this limits the results to only those partner event sources with
9995	// names that start with the specified prefix.
9996	NamePrefix *string `min:"1" type:"string"`
9997
9998	// The token returned by a previous call to retrieve the next set of results.
9999	NextToken *string `min:"1" type:"string"`
10000}
10001
10002// String returns the string representation
10003func (s ListEventSourcesInput) String() string {
10004	return awsutil.Prettify(s)
10005}
10006
10007// GoString returns the string representation
10008func (s ListEventSourcesInput) GoString() string {
10009	return s.String()
10010}
10011
10012// Validate inspects the fields of the type to determine if they are valid.
10013func (s *ListEventSourcesInput) Validate() error {
10014	invalidParams := request.ErrInvalidParams{Context: "ListEventSourcesInput"}
10015	if s.Limit != nil && *s.Limit < 1 {
10016		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10017	}
10018	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10019		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10020	}
10021	if s.NextToken != nil && len(*s.NextToken) < 1 {
10022		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10023	}
10024
10025	if invalidParams.Len() > 0 {
10026		return invalidParams
10027	}
10028	return nil
10029}
10030
10031// SetLimit sets the Limit field's value.
10032func (s *ListEventSourcesInput) SetLimit(v int64) *ListEventSourcesInput {
10033	s.Limit = &v
10034	return s
10035}
10036
10037// SetNamePrefix sets the NamePrefix field's value.
10038func (s *ListEventSourcesInput) SetNamePrefix(v string) *ListEventSourcesInput {
10039	s.NamePrefix = &v
10040	return s
10041}
10042
10043// SetNextToken sets the NextToken field's value.
10044func (s *ListEventSourcesInput) SetNextToken(v string) *ListEventSourcesInput {
10045	s.NextToken = &v
10046	return s
10047}
10048
10049type ListEventSourcesOutput struct {
10050	_ struct{} `type:"structure"`
10051
10052	// The list of event sources.
10053	EventSources []*EventSource `type:"list"`
10054
10055	// A token you can use in a subsequent operation to retrieve the next set of
10056	// results.
10057	NextToken *string `min:"1" type:"string"`
10058}
10059
10060// String returns the string representation
10061func (s ListEventSourcesOutput) String() string {
10062	return awsutil.Prettify(s)
10063}
10064
10065// GoString returns the string representation
10066func (s ListEventSourcesOutput) GoString() string {
10067	return s.String()
10068}
10069
10070// SetEventSources sets the EventSources field's value.
10071func (s *ListEventSourcesOutput) SetEventSources(v []*EventSource) *ListEventSourcesOutput {
10072	s.EventSources = v
10073	return s
10074}
10075
10076// SetNextToken sets the NextToken field's value.
10077func (s *ListEventSourcesOutput) SetNextToken(v string) *ListEventSourcesOutput {
10078	s.NextToken = &v
10079	return s
10080}
10081
10082type ListPartnerEventSourceAccountsInput struct {
10083	_ struct{} `type:"structure"`
10084
10085	// The name of the partner event source to display account information about.
10086	//
10087	// EventSourceName is a required field
10088	EventSourceName *string `min:"1" type:"string" required:"true"`
10089
10090	// Specifying this limits the number of results returned by this operation.
10091	// The operation also returns a NextToken which you can use in a subsequent
10092	// operation to retrieve the next set of results.
10093	Limit *int64 `min:"1" type:"integer"`
10094
10095	// The token returned by a previous call to this operation. Specifying this
10096	// retrieves the next set of results.
10097	NextToken *string `min:"1" type:"string"`
10098}
10099
10100// String returns the string representation
10101func (s ListPartnerEventSourceAccountsInput) String() string {
10102	return awsutil.Prettify(s)
10103}
10104
10105// GoString returns the string representation
10106func (s ListPartnerEventSourceAccountsInput) GoString() string {
10107	return s.String()
10108}
10109
10110// Validate inspects the fields of the type to determine if they are valid.
10111func (s *ListPartnerEventSourceAccountsInput) Validate() error {
10112	invalidParams := request.ErrInvalidParams{Context: "ListPartnerEventSourceAccountsInput"}
10113	if s.EventSourceName == nil {
10114		invalidParams.Add(request.NewErrParamRequired("EventSourceName"))
10115	}
10116	if s.EventSourceName != nil && len(*s.EventSourceName) < 1 {
10117		invalidParams.Add(request.NewErrParamMinLen("EventSourceName", 1))
10118	}
10119	if s.Limit != nil && *s.Limit < 1 {
10120		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10121	}
10122	if s.NextToken != nil && len(*s.NextToken) < 1 {
10123		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10124	}
10125
10126	if invalidParams.Len() > 0 {
10127		return invalidParams
10128	}
10129	return nil
10130}
10131
10132// SetEventSourceName sets the EventSourceName field's value.
10133func (s *ListPartnerEventSourceAccountsInput) SetEventSourceName(v string) *ListPartnerEventSourceAccountsInput {
10134	s.EventSourceName = &v
10135	return s
10136}
10137
10138// SetLimit sets the Limit field's value.
10139func (s *ListPartnerEventSourceAccountsInput) SetLimit(v int64) *ListPartnerEventSourceAccountsInput {
10140	s.Limit = &v
10141	return s
10142}
10143
10144// SetNextToken sets the NextToken field's value.
10145func (s *ListPartnerEventSourceAccountsInput) SetNextToken(v string) *ListPartnerEventSourceAccountsInput {
10146	s.NextToken = &v
10147	return s
10148}
10149
10150type ListPartnerEventSourceAccountsOutput struct {
10151	_ struct{} `type:"structure"`
10152
10153	// A token you can use in a subsequent operation to retrieve the next set of
10154	// results.
10155	NextToken *string `min:"1" type:"string"`
10156
10157	// The list of partner event sources returned by the operation.
10158	PartnerEventSourceAccounts []*PartnerEventSourceAccount `type:"list"`
10159}
10160
10161// String returns the string representation
10162func (s ListPartnerEventSourceAccountsOutput) String() string {
10163	return awsutil.Prettify(s)
10164}
10165
10166// GoString returns the string representation
10167func (s ListPartnerEventSourceAccountsOutput) GoString() string {
10168	return s.String()
10169}
10170
10171// SetNextToken sets the NextToken field's value.
10172func (s *ListPartnerEventSourceAccountsOutput) SetNextToken(v string) *ListPartnerEventSourceAccountsOutput {
10173	s.NextToken = &v
10174	return s
10175}
10176
10177// SetPartnerEventSourceAccounts sets the PartnerEventSourceAccounts field's value.
10178func (s *ListPartnerEventSourceAccountsOutput) SetPartnerEventSourceAccounts(v []*PartnerEventSourceAccount) *ListPartnerEventSourceAccountsOutput {
10179	s.PartnerEventSourceAccounts = v
10180	return s
10181}
10182
10183type ListPartnerEventSourcesInput struct {
10184	_ struct{} `type:"structure"`
10185
10186	// pecifying this limits the number of results returned by this operation. The
10187	// operation also returns a NextToken which you can use in a subsequent operation
10188	// to retrieve the next set of results.
10189	Limit *int64 `min:"1" type:"integer"`
10190
10191	// If you specify this, the results are limited to only those partner event
10192	// sources that start with the string you specify.
10193	//
10194	// NamePrefix is a required field
10195	NamePrefix *string `min:"1" type:"string" required:"true"`
10196
10197	// The token returned by a previous call to this operation. Specifying this
10198	// retrieves the next set of results.
10199	NextToken *string `min:"1" type:"string"`
10200}
10201
10202// String returns the string representation
10203func (s ListPartnerEventSourcesInput) String() string {
10204	return awsutil.Prettify(s)
10205}
10206
10207// GoString returns the string representation
10208func (s ListPartnerEventSourcesInput) GoString() string {
10209	return s.String()
10210}
10211
10212// Validate inspects the fields of the type to determine if they are valid.
10213func (s *ListPartnerEventSourcesInput) Validate() error {
10214	invalidParams := request.ErrInvalidParams{Context: "ListPartnerEventSourcesInput"}
10215	if s.Limit != nil && *s.Limit < 1 {
10216		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10217	}
10218	if s.NamePrefix == nil {
10219		invalidParams.Add(request.NewErrParamRequired("NamePrefix"))
10220	}
10221	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10222		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10223	}
10224	if s.NextToken != nil && len(*s.NextToken) < 1 {
10225		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10226	}
10227
10228	if invalidParams.Len() > 0 {
10229		return invalidParams
10230	}
10231	return nil
10232}
10233
10234// SetLimit sets the Limit field's value.
10235func (s *ListPartnerEventSourcesInput) SetLimit(v int64) *ListPartnerEventSourcesInput {
10236	s.Limit = &v
10237	return s
10238}
10239
10240// SetNamePrefix sets the NamePrefix field's value.
10241func (s *ListPartnerEventSourcesInput) SetNamePrefix(v string) *ListPartnerEventSourcesInput {
10242	s.NamePrefix = &v
10243	return s
10244}
10245
10246// SetNextToken sets the NextToken field's value.
10247func (s *ListPartnerEventSourcesInput) SetNextToken(v string) *ListPartnerEventSourcesInput {
10248	s.NextToken = &v
10249	return s
10250}
10251
10252type ListPartnerEventSourcesOutput struct {
10253	_ struct{} `type:"structure"`
10254
10255	// A token you can use in a subsequent operation to retrieve the next set of
10256	// results.
10257	NextToken *string `min:"1" type:"string"`
10258
10259	// The list of partner event sources returned by the operation.
10260	PartnerEventSources []*PartnerEventSource `type:"list"`
10261}
10262
10263// String returns the string representation
10264func (s ListPartnerEventSourcesOutput) String() string {
10265	return awsutil.Prettify(s)
10266}
10267
10268// GoString returns the string representation
10269func (s ListPartnerEventSourcesOutput) GoString() string {
10270	return s.String()
10271}
10272
10273// SetNextToken sets the NextToken field's value.
10274func (s *ListPartnerEventSourcesOutput) SetNextToken(v string) *ListPartnerEventSourcesOutput {
10275	s.NextToken = &v
10276	return s
10277}
10278
10279// SetPartnerEventSources sets the PartnerEventSources field's value.
10280func (s *ListPartnerEventSourcesOutput) SetPartnerEventSources(v []*PartnerEventSource) *ListPartnerEventSourcesOutput {
10281	s.PartnerEventSources = v
10282	return s
10283}
10284
10285type ListReplaysInput struct {
10286	_ struct{} `type:"structure"`
10287
10288	// The ARN of the archive from which the events are replayed.
10289	EventSourceArn *string `min:"1" type:"string"`
10290
10291	// The maximum number of replays to retrieve.
10292	Limit *int64 `min:"1" type:"integer"`
10293
10294	// A name prefix to filter the replays returned. Only replays with name that
10295	// match the prefix are returned.
10296	NamePrefix *string `min:"1" type:"string"`
10297
10298	// The token returned by a previous call to retrieve the next set of results.
10299	NextToken *string `min:"1" type:"string"`
10300
10301	// The state of the replay.
10302	State *string `type:"string" enum:"ReplayState"`
10303}
10304
10305// String returns the string representation
10306func (s ListReplaysInput) String() string {
10307	return awsutil.Prettify(s)
10308}
10309
10310// GoString returns the string representation
10311func (s ListReplaysInput) GoString() string {
10312	return s.String()
10313}
10314
10315// Validate inspects the fields of the type to determine if they are valid.
10316func (s *ListReplaysInput) Validate() error {
10317	invalidParams := request.ErrInvalidParams{Context: "ListReplaysInput"}
10318	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
10319		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
10320	}
10321	if s.Limit != nil && *s.Limit < 1 {
10322		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10323	}
10324	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10325		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10326	}
10327	if s.NextToken != nil && len(*s.NextToken) < 1 {
10328		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10329	}
10330
10331	if invalidParams.Len() > 0 {
10332		return invalidParams
10333	}
10334	return nil
10335}
10336
10337// SetEventSourceArn sets the EventSourceArn field's value.
10338func (s *ListReplaysInput) SetEventSourceArn(v string) *ListReplaysInput {
10339	s.EventSourceArn = &v
10340	return s
10341}
10342
10343// SetLimit sets the Limit field's value.
10344func (s *ListReplaysInput) SetLimit(v int64) *ListReplaysInput {
10345	s.Limit = &v
10346	return s
10347}
10348
10349// SetNamePrefix sets the NamePrefix field's value.
10350func (s *ListReplaysInput) SetNamePrefix(v string) *ListReplaysInput {
10351	s.NamePrefix = &v
10352	return s
10353}
10354
10355// SetNextToken sets the NextToken field's value.
10356func (s *ListReplaysInput) SetNextToken(v string) *ListReplaysInput {
10357	s.NextToken = &v
10358	return s
10359}
10360
10361// SetState sets the State field's value.
10362func (s *ListReplaysInput) SetState(v string) *ListReplaysInput {
10363	s.State = &v
10364	return s
10365}
10366
10367type ListReplaysOutput struct {
10368	_ struct{} `type:"structure"`
10369
10370	// The token returned by a previous call to retrieve the next set of results.
10371	NextToken *string `min:"1" type:"string"`
10372
10373	// An array of Replay objects that contain information about the replay.
10374	Replays []*Replay `type:"list"`
10375}
10376
10377// String returns the string representation
10378func (s ListReplaysOutput) String() string {
10379	return awsutil.Prettify(s)
10380}
10381
10382// GoString returns the string representation
10383func (s ListReplaysOutput) GoString() string {
10384	return s.String()
10385}
10386
10387// SetNextToken sets the NextToken field's value.
10388func (s *ListReplaysOutput) SetNextToken(v string) *ListReplaysOutput {
10389	s.NextToken = &v
10390	return s
10391}
10392
10393// SetReplays sets the Replays field's value.
10394func (s *ListReplaysOutput) SetReplays(v []*Replay) *ListReplaysOutput {
10395	s.Replays = v
10396	return s
10397}
10398
10399type ListRuleNamesByTargetInput struct {
10400	_ struct{} `type:"structure"`
10401
10402	// The name or ARN of the event bus to list rules for. If you omit this, the
10403	// default event bus is used.
10404	EventBusName *string `min:"1" type:"string"`
10405
10406	// The maximum number of results to return.
10407	Limit *int64 `min:"1" type:"integer"`
10408
10409	// The token returned by a previous call to retrieve the next set of results.
10410	NextToken *string `min:"1" type:"string"`
10411
10412	// The Amazon Resource Name (ARN) of the target resource.
10413	//
10414	// TargetArn is a required field
10415	TargetArn *string `min:"1" type:"string" required:"true"`
10416}
10417
10418// String returns the string representation
10419func (s ListRuleNamesByTargetInput) String() string {
10420	return awsutil.Prettify(s)
10421}
10422
10423// GoString returns the string representation
10424func (s ListRuleNamesByTargetInput) GoString() string {
10425	return s.String()
10426}
10427
10428// Validate inspects the fields of the type to determine if they are valid.
10429func (s *ListRuleNamesByTargetInput) Validate() error {
10430	invalidParams := request.ErrInvalidParams{Context: "ListRuleNamesByTargetInput"}
10431	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
10432		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
10433	}
10434	if s.Limit != nil && *s.Limit < 1 {
10435		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10436	}
10437	if s.NextToken != nil && len(*s.NextToken) < 1 {
10438		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10439	}
10440	if s.TargetArn == nil {
10441		invalidParams.Add(request.NewErrParamRequired("TargetArn"))
10442	}
10443	if s.TargetArn != nil && len(*s.TargetArn) < 1 {
10444		invalidParams.Add(request.NewErrParamMinLen("TargetArn", 1))
10445	}
10446
10447	if invalidParams.Len() > 0 {
10448		return invalidParams
10449	}
10450	return nil
10451}
10452
10453// SetEventBusName sets the EventBusName field's value.
10454func (s *ListRuleNamesByTargetInput) SetEventBusName(v string) *ListRuleNamesByTargetInput {
10455	s.EventBusName = &v
10456	return s
10457}
10458
10459// SetLimit sets the Limit field's value.
10460func (s *ListRuleNamesByTargetInput) SetLimit(v int64) *ListRuleNamesByTargetInput {
10461	s.Limit = &v
10462	return s
10463}
10464
10465// SetNextToken sets the NextToken field's value.
10466func (s *ListRuleNamesByTargetInput) SetNextToken(v string) *ListRuleNamesByTargetInput {
10467	s.NextToken = &v
10468	return s
10469}
10470
10471// SetTargetArn sets the TargetArn field's value.
10472func (s *ListRuleNamesByTargetInput) SetTargetArn(v string) *ListRuleNamesByTargetInput {
10473	s.TargetArn = &v
10474	return s
10475}
10476
10477type ListRuleNamesByTargetOutput struct {
10478	_ struct{} `type:"structure"`
10479
10480	// Indicates whether there are additional results to retrieve. If there are
10481	// no more results, the value is null.
10482	NextToken *string `min:"1" type:"string"`
10483
10484	// The names of the rules that can invoke the given target.
10485	RuleNames []*string `type:"list"`
10486}
10487
10488// String returns the string representation
10489func (s ListRuleNamesByTargetOutput) String() string {
10490	return awsutil.Prettify(s)
10491}
10492
10493// GoString returns the string representation
10494func (s ListRuleNamesByTargetOutput) GoString() string {
10495	return s.String()
10496}
10497
10498// SetNextToken sets the NextToken field's value.
10499func (s *ListRuleNamesByTargetOutput) SetNextToken(v string) *ListRuleNamesByTargetOutput {
10500	s.NextToken = &v
10501	return s
10502}
10503
10504// SetRuleNames sets the RuleNames field's value.
10505func (s *ListRuleNamesByTargetOutput) SetRuleNames(v []*string) *ListRuleNamesByTargetOutput {
10506	s.RuleNames = v
10507	return s
10508}
10509
10510type ListRulesInput struct {
10511	_ struct{} `type:"structure"`
10512
10513	// The name or ARN of the event bus to list the rules for. If you omit this,
10514	// the default event bus is used.
10515	EventBusName *string `min:"1" type:"string"`
10516
10517	// The maximum number of results to return.
10518	Limit *int64 `min:"1" type:"integer"`
10519
10520	// The prefix matching the rule name.
10521	NamePrefix *string `min:"1" type:"string"`
10522
10523	// The token returned by a previous call to retrieve the next set of results.
10524	NextToken *string `min:"1" type:"string"`
10525}
10526
10527// String returns the string representation
10528func (s ListRulesInput) String() string {
10529	return awsutil.Prettify(s)
10530}
10531
10532// GoString returns the string representation
10533func (s ListRulesInput) GoString() string {
10534	return s.String()
10535}
10536
10537// Validate inspects the fields of the type to determine if they are valid.
10538func (s *ListRulesInput) Validate() error {
10539	invalidParams := request.ErrInvalidParams{Context: "ListRulesInput"}
10540	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
10541		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
10542	}
10543	if s.Limit != nil && *s.Limit < 1 {
10544		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10545	}
10546	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10547		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10548	}
10549	if s.NextToken != nil && len(*s.NextToken) < 1 {
10550		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10551	}
10552
10553	if invalidParams.Len() > 0 {
10554		return invalidParams
10555	}
10556	return nil
10557}
10558
10559// SetEventBusName sets the EventBusName field's value.
10560func (s *ListRulesInput) SetEventBusName(v string) *ListRulesInput {
10561	s.EventBusName = &v
10562	return s
10563}
10564
10565// SetLimit sets the Limit field's value.
10566func (s *ListRulesInput) SetLimit(v int64) *ListRulesInput {
10567	s.Limit = &v
10568	return s
10569}
10570
10571// SetNamePrefix sets the NamePrefix field's value.
10572func (s *ListRulesInput) SetNamePrefix(v string) *ListRulesInput {
10573	s.NamePrefix = &v
10574	return s
10575}
10576
10577// SetNextToken sets the NextToken field's value.
10578func (s *ListRulesInput) SetNextToken(v string) *ListRulesInput {
10579	s.NextToken = &v
10580	return s
10581}
10582
10583type ListRulesOutput struct {
10584	_ struct{} `type:"structure"`
10585
10586	// Indicates whether there are additional results to retrieve. If there are
10587	// no more results, the value is null.
10588	NextToken *string `min:"1" type:"string"`
10589
10590	// The rules that match the specified criteria.
10591	Rules []*Rule `type:"list"`
10592}
10593
10594// String returns the string representation
10595func (s ListRulesOutput) String() string {
10596	return awsutil.Prettify(s)
10597}
10598
10599// GoString returns the string representation
10600func (s ListRulesOutput) GoString() string {
10601	return s.String()
10602}
10603
10604// SetNextToken sets the NextToken field's value.
10605func (s *ListRulesOutput) SetNextToken(v string) *ListRulesOutput {
10606	s.NextToken = &v
10607	return s
10608}
10609
10610// SetRules sets the Rules field's value.
10611func (s *ListRulesOutput) SetRules(v []*Rule) *ListRulesOutput {
10612	s.Rules = v
10613	return s
10614}
10615
10616type ListTagsForResourceInput struct {
10617	_ struct{} `type:"structure"`
10618
10619	// The ARN of the EventBridge resource for which you want to view tags.
10620	//
10621	// ResourceARN is a required field
10622	ResourceARN *string `min:"1" type:"string" required:"true"`
10623}
10624
10625// String returns the string representation
10626func (s ListTagsForResourceInput) String() string {
10627	return awsutil.Prettify(s)
10628}
10629
10630// GoString returns the string representation
10631func (s ListTagsForResourceInput) GoString() string {
10632	return s.String()
10633}
10634
10635// Validate inspects the fields of the type to determine if they are valid.
10636func (s *ListTagsForResourceInput) Validate() error {
10637	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
10638	if s.ResourceARN == nil {
10639		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
10640	}
10641	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
10642		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
10643	}
10644
10645	if invalidParams.Len() > 0 {
10646		return invalidParams
10647	}
10648	return nil
10649}
10650
10651// SetResourceARN sets the ResourceARN field's value.
10652func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput {
10653	s.ResourceARN = &v
10654	return s
10655}
10656
10657type ListTagsForResourceOutput struct {
10658	_ struct{} `type:"structure"`
10659
10660	// The list of tag keys and values associated with the resource you specified
10661	Tags []*Tag `type:"list"`
10662}
10663
10664// String returns the string representation
10665func (s ListTagsForResourceOutput) String() string {
10666	return awsutil.Prettify(s)
10667}
10668
10669// GoString returns the string representation
10670func (s ListTagsForResourceOutput) GoString() string {
10671	return s.String()
10672}
10673
10674// SetTags sets the Tags field's value.
10675func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
10676	s.Tags = v
10677	return s
10678}
10679
10680type ListTargetsByRuleInput struct {
10681	_ struct{} `type:"structure"`
10682
10683	// The name or ARN of the event bus associated with the rule. If you omit this,
10684	// the default event bus is used.
10685	EventBusName *string `min:"1" type:"string"`
10686
10687	// The maximum number of results to return.
10688	Limit *int64 `min:"1" type:"integer"`
10689
10690	// The token returned by a previous call to retrieve the next set of results.
10691	NextToken *string `min:"1" type:"string"`
10692
10693	// The name of the rule.
10694	//
10695	// Rule is a required field
10696	Rule *string `min:"1" type:"string" required:"true"`
10697}
10698
10699// String returns the string representation
10700func (s ListTargetsByRuleInput) String() string {
10701	return awsutil.Prettify(s)
10702}
10703
10704// GoString returns the string representation
10705func (s ListTargetsByRuleInput) GoString() string {
10706	return s.String()
10707}
10708
10709// Validate inspects the fields of the type to determine if they are valid.
10710func (s *ListTargetsByRuleInput) Validate() error {
10711	invalidParams := request.ErrInvalidParams{Context: "ListTargetsByRuleInput"}
10712	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
10713		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
10714	}
10715	if s.Limit != nil && *s.Limit < 1 {
10716		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10717	}
10718	if s.NextToken != nil && len(*s.NextToken) < 1 {
10719		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10720	}
10721	if s.Rule == nil {
10722		invalidParams.Add(request.NewErrParamRequired("Rule"))
10723	}
10724	if s.Rule != nil && len(*s.Rule) < 1 {
10725		invalidParams.Add(request.NewErrParamMinLen("Rule", 1))
10726	}
10727
10728	if invalidParams.Len() > 0 {
10729		return invalidParams
10730	}
10731	return nil
10732}
10733
10734// SetEventBusName sets the EventBusName field's value.
10735func (s *ListTargetsByRuleInput) SetEventBusName(v string) *ListTargetsByRuleInput {
10736	s.EventBusName = &v
10737	return s
10738}
10739
10740// SetLimit sets the Limit field's value.
10741func (s *ListTargetsByRuleInput) SetLimit(v int64) *ListTargetsByRuleInput {
10742	s.Limit = &v
10743	return s
10744}
10745
10746// SetNextToken sets the NextToken field's value.
10747func (s *ListTargetsByRuleInput) SetNextToken(v string) *ListTargetsByRuleInput {
10748	s.NextToken = &v
10749	return s
10750}
10751
10752// SetRule sets the Rule field's value.
10753func (s *ListTargetsByRuleInput) SetRule(v string) *ListTargetsByRuleInput {
10754	s.Rule = &v
10755	return s
10756}
10757
10758type ListTargetsByRuleOutput struct {
10759	_ struct{} `type:"structure"`
10760
10761	// Indicates whether there are additional results to retrieve. If there are
10762	// no more results, the value is null.
10763	NextToken *string `min:"1" type:"string"`
10764
10765	// The targets assigned to the rule.
10766	Targets []*Target `min:"1" type:"list"`
10767}
10768
10769// String returns the string representation
10770func (s ListTargetsByRuleOutput) String() string {
10771	return awsutil.Prettify(s)
10772}
10773
10774// GoString returns the string representation
10775func (s ListTargetsByRuleOutput) GoString() string {
10776	return s.String()
10777}
10778
10779// SetNextToken sets the NextToken field's value.
10780func (s *ListTargetsByRuleOutput) SetNextToken(v string) *ListTargetsByRuleOutput {
10781	s.NextToken = &v
10782	return s
10783}
10784
10785// SetTargets sets the Targets field's value.
10786func (s *ListTargetsByRuleOutput) SetTargets(v []*Target) *ListTargetsByRuleOutput {
10787	s.Targets = v
10788	return s
10789}
10790
10791// This rule was created by an Amazon Web Services service on behalf of your
10792// account. It is managed by that service. If you see this error in response
10793// to DeleteRule or RemoveTargets, you can use the Force parameter in those
10794// calls to delete the rule or remove targets from the rule. You cannot modify
10795// these managed rules by using DisableRule, EnableRule, PutTargets, PutRule,
10796// TagResource, or UntagResource.
10797type ManagedRuleException struct {
10798	_            struct{}                  `type:"structure"`
10799	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10800
10801	Message_ *string `locationName:"message" type:"string"`
10802}
10803
10804// String returns the string representation
10805func (s ManagedRuleException) String() string {
10806	return awsutil.Prettify(s)
10807}
10808
10809// GoString returns the string representation
10810func (s ManagedRuleException) GoString() string {
10811	return s.String()
10812}
10813
10814func newErrorManagedRuleException(v protocol.ResponseMetadata) error {
10815	return &ManagedRuleException{
10816		RespMetadata: v,
10817	}
10818}
10819
10820// Code returns the exception type name.
10821func (s *ManagedRuleException) Code() string {
10822	return "ManagedRuleException"
10823}
10824
10825// Message returns the exception's message.
10826func (s *ManagedRuleException) Message() string {
10827	if s.Message_ != nil {
10828		return *s.Message_
10829	}
10830	return ""
10831}
10832
10833// OrigErr always returns nil, satisfies awserr.Error interface.
10834func (s *ManagedRuleException) OrigErr() error {
10835	return nil
10836}
10837
10838func (s *ManagedRuleException) Error() string {
10839	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10840}
10841
10842// Status code returns the HTTP status code for the request's response error.
10843func (s *ManagedRuleException) StatusCode() int {
10844	return s.RespMetadata.StatusCode
10845}
10846
10847// RequestID returns the service's response RequestID for request.
10848func (s *ManagedRuleException) RequestID() string {
10849	return s.RespMetadata.RequestID
10850}
10851
10852// This structure specifies the network configuration for an ECS task.
10853type NetworkConfiguration struct {
10854	_ struct{} `type:"structure"`
10855
10856	// Use this structure to specify the VPC subnets and security groups for the
10857	// task, and whether a public IP address is to be used. This structure is relevant
10858	// only for ECS tasks that use the awsvpc network mode.
10859	AwsvpcConfiguration *AwsVpcConfiguration `locationName:"awsvpcConfiguration" type:"structure"`
10860}
10861
10862// String returns the string representation
10863func (s NetworkConfiguration) String() string {
10864	return awsutil.Prettify(s)
10865}
10866
10867// GoString returns the string representation
10868func (s NetworkConfiguration) GoString() string {
10869	return s.String()
10870}
10871
10872// Validate inspects the fields of the type to determine if they are valid.
10873func (s *NetworkConfiguration) Validate() error {
10874	invalidParams := request.ErrInvalidParams{Context: "NetworkConfiguration"}
10875	if s.AwsvpcConfiguration != nil {
10876		if err := s.AwsvpcConfiguration.Validate(); err != nil {
10877			invalidParams.AddNested("AwsvpcConfiguration", err.(request.ErrInvalidParams))
10878		}
10879	}
10880
10881	if invalidParams.Len() > 0 {
10882		return invalidParams
10883	}
10884	return nil
10885}
10886
10887// SetAwsvpcConfiguration sets the AwsvpcConfiguration field's value.
10888func (s *NetworkConfiguration) SetAwsvpcConfiguration(v *AwsVpcConfiguration) *NetworkConfiguration {
10889	s.AwsvpcConfiguration = v
10890	return s
10891}
10892
10893// The operation you are attempting is not available in this region.
10894type OperationDisabledException struct {
10895	_            struct{}                  `type:"structure"`
10896	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10897
10898	Message_ *string `locationName:"message" type:"string"`
10899}
10900
10901// String returns the string representation
10902func (s OperationDisabledException) String() string {
10903	return awsutil.Prettify(s)
10904}
10905
10906// GoString returns the string representation
10907func (s OperationDisabledException) GoString() string {
10908	return s.String()
10909}
10910
10911func newErrorOperationDisabledException(v protocol.ResponseMetadata) error {
10912	return &OperationDisabledException{
10913		RespMetadata: v,
10914	}
10915}
10916
10917// Code returns the exception type name.
10918func (s *OperationDisabledException) Code() string {
10919	return "OperationDisabledException"
10920}
10921
10922// Message returns the exception's message.
10923func (s *OperationDisabledException) Message() string {
10924	if s.Message_ != nil {
10925		return *s.Message_
10926	}
10927	return ""
10928}
10929
10930// OrigErr always returns nil, satisfies awserr.Error interface.
10931func (s *OperationDisabledException) OrigErr() error {
10932	return nil
10933}
10934
10935func (s *OperationDisabledException) Error() string {
10936	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10937}
10938
10939// Status code returns the HTTP status code for the request's response error.
10940func (s *OperationDisabledException) StatusCode() int {
10941	return s.RespMetadata.StatusCode
10942}
10943
10944// RequestID returns the service's response RequestID for request.
10945func (s *OperationDisabledException) RequestID() string {
10946	return s.RespMetadata.RequestID
10947}
10948
10949// A partner event source is created by an SaaS partner. If a customer creates
10950// a partner event bus that matches this event source, that Amazon Web Services
10951// account can receive events from the partner's applications or services.
10952type PartnerEventSource struct {
10953	_ struct{} `type:"structure"`
10954
10955	// The ARN of the partner event source.
10956	Arn *string `type:"string"`
10957
10958	// The name of the partner event source.
10959	Name *string `type:"string"`
10960}
10961
10962// String returns the string representation
10963func (s PartnerEventSource) String() string {
10964	return awsutil.Prettify(s)
10965}
10966
10967// GoString returns the string representation
10968func (s PartnerEventSource) GoString() string {
10969	return s.String()
10970}
10971
10972// SetArn sets the Arn field's value.
10973func (s *PartnerEventSource) SetArn(v string) *PartnerEventSource {
10974	s.Arn = &v
10975	return s
10976}
10977
10978// SetName sets the Name field's value.
10979func (s *PartnerEventSource) SetName(v string) *PartnerEventSource {
10980	s.Name = &v
10981	return s
10982}
10983
10984// The Amazon Web Services account that a partner event source has been offered
10985// to.
10986type PartnerEventSourceAccount struct {
10987	_ struct{} `type:"structure"`
10988
10989	// The Amazon Web Services account ID that the partner event source was offered
10990	// to.
10991	Account *string `min:"12" type:"string"`
10992
10993	// The date and time the event source was created.
10994	CreationTime *time.Time `type:"timestamp"`
10995
10996	// The date and time that the event source will expire, if the Amazon Web Services
10997	// account doesn't create a matching event bus for it.
10998	ExpirationTime *time.Time `type:"timestamp"`
10999
11000	// The state of the event source. If it is ACTIVE, you have already created
11001	// a matching event bus for this event source, and that event bus is active.
11002	// If it is PENDING, either you haven't yet created a matching event bus, or
11003	// that event bus is deactivated. If it is DELETED, you have created a matching
11004	// event bus, but the event source has since been deleted.
11005	State *string `type:"string" enum:"EventSourceState"`
11006}
11007
11008// String returns the string representation
11009func (s PartnerEventSourceAccount) String() string {
11010	return awsutil.Prettify(s)
11011}
11012
11013// GoString returns the string representation
11014func (s PartnerEventSourceAccount) GoString() string {
11015	return s.String()
11016}
11017
11018// SetAccount sets the Account field's value.
11019func (s *PartnerEventSourceAccount) SetAccount(v string) *PartnerEventSourceAccount {
11020	s.Account = &v
11021	return s
11022}
11023
11024// SetCreationTime sets the CreationTime field's value.
11025func (s *PartnerEventSourceAccount) SetCreationTime(v time.Time) *PartnerEventSourceAccount {
11026	s.CreationTime = &v
11027	return s
11028}
11029
11030// SetExpirationTime sets the ExpirationTime field's value.
11031func (s *PartnerEventSourceAccount) SetExpirationTime(v time.Time) *PartnerEventSourceAccount {
11032	s.ExpirationTime = &v
11033	return s
11034}
11035
11036// SetState sets the State field's value.
11037func (s *PartnerEventSourceAccount) SetState(v string) *PartnerEventSourceAccount {
11038	s.State = &v
11039	return s
11040}
11041
11042// An object representing a constraint on task placement. To learn more, see
11043// Task Placement Constraints (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html)
11044// in the Amazon Elastic Container Service Developer Guide.
11045type PlacementConstraint struct {
11046	_ struct{} `type:"structure"`
11047
11048	// A cluster query language expression to apply to the constraint. You cannot
11049	// specify an expression if the constraint type is distinctInstance. To learn
11050	// more, see Cluster Query Language (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster-query-language.html)
11051	// in the Amazon Elastic Container Service Developer Guide.
11052	Expression *string `locationName:"expression" type:"string"`
11053
11054	// The type of constraint. Use distinctInstance to ensure that each task in
11055	// a particular group is running on a different container instance. Use memberOf
11056	// to restrict the selection to a group of valid candidates.
11057	Type *string `locationName:"type" type:"string" enum:"PlacementConstraintType"`
11058}
11059
11060// String returns the string representation
11061func (s PlacementConstraint) String() string {
11062	return awsutil.Prettify(s)
11063}
11064
11065// GoString returns the string representation
11066func (s PlacementConstraint) GoString() string {
11067	return s.String()
11068}
11069
11070// SetExpression sets the Expression field's value.
11071func (s *PlacementConstraint) SetExpression(v string) *PlacementConstraint {
11072	s.Expression = &v
11073	return s
11074}
11075
11076// SetType sets the Type field's value.
11077func (s *PlacementConstraint) SetType(v string) *PlacementConstraint {
11078	s.Type = &v
11079	return s
11080}
11081
11082// The task placement strategy for a task or service. To learn more, see Task
11083// Placement Strategies (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html)
11084// in the Amazon Elastic Container Service Service Developer Guide.
11085type PlacementStrategy struct {
11086	_ struct{} `type:"structure"`
11087
11088	// The field to apply the placement strategy against. For the spread placement
11089	// strategy, valid values are instanceId (or host, which has the same effect),
11090	// or any platform or custom attribute that is applied to a container instance,
11091	// such as attribute:ecs.availability-zone. For the binpack placement strategy,
11092	// valid values are cpu and memory. For the random placement strategy, this
11093	// field is not used.
11094	Field *string `locationName:"field" type:"string"`
11095
11096	// The type of placement strategy. The random placement strategy randomly places
11097	// tasks on available candidates. The spread placement strategy spreads placement
11098	// across available candidates evenly based on the field parameter. The binpack
11099	// strategy places tasks on available candidates that have the least available
11100	// amount of the resource that is specified with the field parameter. For example,
11101	// if you binpack on memory, a task is placed on the instance with the least
11102	// amount of remaining memory (but still enough to run the task).
11103	Type *string `locationName:"type" type:"string" enum:"PlacementStrategyType"`
11104}
11105
11106// String returns the string representation
11107func (s PlacementStrategy) String() string {
11108	return awsutil.Prettify(s)
11109}
11110
11111// GoString returns the string representation
11112func (s PlacementStrategy) GoString() string {
11113	return s.String()
11114}
11115
11116// SetField sets the Field field's value.
11117func (s *PlacementStrategy) SetField(v string) *PlacementStrategy {
11118	s.Field = &v
11119	return s
11120}
11121
11122// SetType sets the Type field's value.
11123func (s *PlacementStrategy) SetType(v string) *PlacementStrategy {
11124	s.Type = &v
11125	return s
11126}
11127
11128// The event bus policy is too long. For more information, see the limits.
11129type PolicyLengthExceededException struct {
11130	_            struct{}                  `type:"structure"`
11131	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11132
11133	Message_ *string `locationName:"message" type:"string"`
11134}
11135
11136// String returns the string representation
11137func (s PolicyLengthExceededException) String() string {
11138	return awsutil.Prettify(s)
11139}
11140
11141// GoString returns the string representation
11142func (s PolicyLengthExceededException) GoString() string {
11143	return s.String()
11144}
11145
11146func newErrorPolicyLengthExceededException(v protocol.ResponseMetadata) error {
11147	return &PolicyLengthExceededException{
11148		RespMetadata: v,
11149	}
11150}
11151
11152// Code returns the exception type name.
11153func (s *PolicyLengthExceededException) Code() string {
11154	return "PolicyLengthExceededException"
11155}
11156
11157// Message returns the exception's message.
11158func (s *PolicyLengthExceededException) Message() string {
11159	if s.Message_ != nil {
11160		return *s.Message_
11161	}
11162	return ""
11163}
11164
11165// OrigErr always returns nil, satisfies awserr.Error interface.
11166func (s *PolicyLengthExceededException) OrigErr() error {
11167	return nil
11168}
11169
11170func (s *PolicyLengthExceededException) Error() string {
11171	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11172}
11173
11174// Status code returns the HTTP status code for the request's response error.
11175func (s *PolicyLengthExceededException) StatusCode() int {
11176	return s.RespMetadata.StatusCode
11177}
11178
11179// RequestID returns the service's response RequestID for request.
11180func (s *PolicyLengthExceededException) RequestID() string {
11181	return s.RespMetadata.RequestID
11182}
11183
11184type PutEventsInput struct {
11185	_ struct{} `type:"structure"`
11186
11187	// The entry that defines an event in your system. You can specify several parameters
11188	// for the entry such as the source and type of the event, resources associated
11189	// with the event, and so on.
11190	//
11191	// Entries is a required field
11192	Entries []*PutEventsRequestEntry `min:"1" type:"list" required:"true"`
11193}
11194
11195// String returns the string representation
11196func (s PutEventsInput) String() string {
11197	return awsutil.Prettify(s)
11198}
11199
11200// GoString returns the string representation
11201func (s PutEventsInput) GoString() string {
11202	return s.String()
11203}
11204
11205// Validate inspects the fields of the type to determine if they are valid.
11206func (s *PutEventsInput) Validate() error {
11207	invalidParams := request.ErrInvalidParams{Context: "PutEventsInput"}
11208	if s.Entries == nil {
11209		invalidParams.Add(request.NewErrParamRequired("Entries"))
11210	}
11211	if s.Entries != nil && len(s.Entries) < 1 {
11212		invalidParams.Add(request.NewErrParamMinLen("Entries", 1))
11213	}
11214	if s.Entries != nil {
11215		for i, v := range s.Entries {
11216			if v == nil {
11217				continue
11218			}
11219			if err := v.Validate(); err != nil {
11220				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams))
11221			}
11222		}
11223	}
11224
11225	if invalidParams.Len() > 0 {
11226		return invalidParams
11227	}
11228	return nil
11229}
11230
11231// SetEntries sets the Entries field's value.
11232func (s *PutEventsInput) SetEntries(v []*PutEventsRequestEntry) *PutEventsInput {
11233	s.Entries = v
11234	return s
11235}
11236
11237type PutEventsOutput struct {
11238	_ struct{} `type:"structure"`
11239
11240	// The successfully and unsuccessfully ingested events results. If the ingestion
11241	// was successful, the entry has the event ID in it. Otherwise, you can use
11242	// the error code and error message to identify the problem with the entry.
11243	Entries []*PutEventsResultEntry `type:"list"`
11244
11245	// The number of failed entries.
11246	FailedEntryCount *int64 `type:"integer"`
11247}
11248
11249// String returns the string representation
11250func (s PutEventsOutput) String() string {
11251	return awsutil.Prettify(s)
11252}
11253
11254// GoString returns the string representation
11255func (s PutEventsOutput) GoString() string {
11256	return s.String()
11257}
11258
11259// SetEntries sets the Entries field's value.
11260func (s *PutEventsOutput) SetEntries(v []*PutEventsResultEntry) *PutEventsOutput {
11261	s.Entries = v
11262	return s
11263}
11264
11265// SetFailedEntryCount sets the FailedEntryCount field's value.
11266func (s *PutEventsOutput) SetFailedEntryCount(v int64) *PutEventsOutput {
11267	s.FailedEntryCount = &v
11268	return s
11269}
11270
11271// Represents an event to be submitted.
11272type PutEventsRequestEntry struct {
11273	_ struct{} `type:"structure"`
11274
11275	// A valid JSON string. There is no other schema imposed. The JSON string may
11276	// contain fields and nested subobjects.
11277	Detail *string `type:"string"`
11278
11279	// Free-form string used to decide what fields to expect in the event detail.
11280	DetailType *string `type:"string"`
11281
11282	// The name or ARN of the event bus to receive the event. Only the rules that
11283	// are associated with this event bus are used to match the event. If you omit
11284	// this, the default event bus is used.
11285	EventBusName *string `min:"1" type:"string"`
11286
11287	// Amazon Web Services resources, identified by Amazon Resource Name (ARN),
11288	// which the event primarily concerns. Any number, including zero, may be present.
11289	Resources []*string `type:"list"`
11290
11291	// The source of the event.
11292	Source *string `type:"string"`
11293
11294	// The time stamp of the event, per RFC3339 (https://www.rfc-editor.org/rfc/rfc3339.txt).
11295	// If no time stamp is provided, the time stamp of the PutEvents (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEvents.html)
11296	// call is used.
11297	Time *time.Time `type:"timestamp"`
11298
11299	// An X-Ray trade header, which is an http header (X-Amzn-Trace-Id) that contains
11300	// the trace-id associated with the event.
11301	//
11302	// To learn more about X-Ray trace headers, see Tracing header (https://docs.aws.amazon.com/xray/latest/devguide/xray-concepts.html#xray-concepts-tracingheader)
11303	// in the X-Ray Developer Guide.
11304	TraceHeader *string `min:"1" type:"string"`
11305}
11306
11307// String returns the string representation
11308func (s PutEventsRequestEntry) String() string {
11309	return awsutil.Prettify(s)
11310}
11311
11312// GoString returns the string representation
11313func (s PutEventsRequestEntry) GoString() string {
11314	return s.String()
11315}
11316
11317// Validate inspects the fields of the type to determine if they are valid.
11318func (s *PutEventsRequestEntry) Validate() error {
11319	invalidParams := request.ErrInvalidParams{Context: "PutEventsRequestEntry"}
11320	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11321		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11322	}
11323	if s.TraceHeader != nil && len(*s.TraceHeader) < 1 {
11324		invalidParams.Add(request.NewErrParamMinLen("TraceHeader", 1))
11325	}
11326
11327	if invalidParams.Len() > 0 {
11328		return invalidParams
11329	}
11330	return nil
11331}
11332
11333// SetDetail sets the Detail field's value.
11334func (s *PutEventsRequestEntry) SetDetail(v string) *PutEventsRequestEntry {
11335	s.Detail = &v
11336	return s
11337}
11338
11339// SetDetailType sets the DetailType field's value.
11340func (s *PutEventsRequestEntry) SetDetailType(v string) *PutEventsRequestEntry {
11341	s.DetailType = &v
11342	return s
11343}
11344
11345// SetEventBusName sets the EventBusName field's value.
11346func (s *PutEventsRequestEntry) SetEventBusName(v string) *PutEventsRequestEntry {
11347	s.EventBusName = &v
11348	return s
11349}
11350
11351// SetResources sets the Resources field's value.
11352func (s *PutEventsRequestEntry) SetResources(v []*string) *PutEventsRequestEntry {
11353	s.Resources = v
11354	return s
11355}
11356
11357// SetSource sets the Source field's value.
11358func (s *PutEventsRequestEntry) SetSource(v string) *PutEventsRequestEntry {
11359	s.Source = &v
11360	return s
11361}
11362
11363// SetTime sets the Time field's value.
11364func (s *PutEventsRequestEntry) SetTime(v time.Time) *PutEventsRequestEntry {
11365	s.Time = &v
11366	return s
11367}
11368
11369// SetTraceHeader sets the TraceHeader field's value.
11370func (s *PutEventsRequestEntry) SetTraceHeader(v string) *PutEventsRequestEntry {
11371	s.TraceHeader = &v
11372	return s
11373}
11374
11375// Represents an event that failed to be submitted.
11376type PutEventsResultEntry struct {
11377	_ struct{} `type:"structure"`
11378
11379	// The error code that indicates why the event submission failed.
11380	ErrorCode *string `type:"string"`
11381
11382	// The error message that explains why the event submission failed.
11383	ErrorMessage *string `type:"string"`
11384
11385	// The ID of the event.
11386	EventId *string `type:"string"`
11387}
11388
11389// String returns the string representation
11390func (s PutEventsResultEntry) String() string {
11391	return awsutil.Prettify(s)
11392}
11393
11394// GoString returns the string representation
11395func (s PutEventsResultEntry) GoString() string {
11396	return s.String()
11397}
11398
11399// SetErrorCode sets the ErrorCode field's value.
11400func (s *PutEventsResultEntry) SetErrorCode(v string) *PutEventsResultEntry {
11401	s.ErrorCode = &v
11402	return s
11403}
11404
11405// SetErrorMessage sets the ErrorMessage field's value.
11406func (s *PutEventsResultEntry) SetErrorMessage(v string) *PutEventsResultEntry {
11407	s.ErrorMessage = &v
11408	return s
11409}
11410
11411// SetEventId sets the EventId field's value.
11412func (s *PutEventsResultEntry) SetEventId(v string) *PutEventsResultEntry {
11413	s.EventId = &v
11414	return s
11415}
11416
11417type PutPartnerEventsInput struct {
11418	_ struct{} `type:"structure"`
11419
11420	// The list of events to write to the event bus.
11421	//
11422	// Entries is a required field
11423	Entries []*PutPartnerEventsRequestEntry `min:"1" type:"list" required:"true"`
11424}
11425
11426// String returns the string representation
11427func (s PutPartnerEventsInput) String() string {
11428	return awsutil.Prettify(s)
11429}
11430
11431// GoString returns the string representation
11432func (s PutPartnerEventsInput) GoString() string {
11433	return s.String()
11434}
11435
11436// Validate inspects the fields of the type to determine if they are valid.
11437func (s *PutPartnerEventsInput) Validate() error {
11438	invalidParams := request.ErrInvalidParams{Context: "PutPartnerEventsInput"}
11439	if s.Entries == nil {
11440		invalidParams.Add(request.NewErrParamRequired("Entries"))
11441	}
11442	if s.Entries != nil && len(s.Entries) < 1 {
11443		invalidParams.Add(request.NewErrParamMinLen("Entries", 1))
11444	}
11445	if s.Entries != nil {
11446		for i, v := range s.Entries {
11447			if v == nil {
11448				continue
11449			}
11450			if err := v.Validate(); err != nil {
11451				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams))
11452			}
11453		}
11454	}
11455
11456	if invalidParams.Len() > 0 {
11457		return invalidParams
11458	}
11459	return nil
11460}
11461
11462// SetEntries sets the Entries field's value.
11463func (s *PutPartnerEventsInput) SetEntries(v []*PutPartnerEventsRequestEntry) *PutPartnerEventsInput {
11464	s.Entries = v
11465	return s
11466}
11467
11468type PutPartnerEventsOutput struct {
11469	_ struct{} `type:"structure"`
11470
11471	// The list of events from this operation that were successfully written to
11472	// the partner event bus.
11473	Entries []*PutPartnerEventsResultEntry `type:"list"`
11474
11475	// The number of events from this operation that could not be written to the
11476	// partner event bus.
11477	FailedEntryCount *int64 `type:"integer"`
11478}
11479
11480// String returns the string representation
11481func (s PutPartnerEventsOutput) String() string {
11482	return awsutil.Prettify(s)
11483}
11484
11485// GoString returns the string representation
11486func (s PutPartnerEventsOutput) GoString() string {
11487	return s.String()
11488}
11489
11490// SetEntries sets the Entries field's value.
11491func (s *PutPartnerEventsOutput) SetEntries(v []*PutPartnerEventsResultEntry) *PutPartnerEventsOutput {
11492	s.Entries = v
11493	return s
11494}
11495
11496// SetFailedEntryCount sets the FailedEntryCount field's value.
11497func (s *PutPartnerEventsOutput) SetFailedEntryCount(v int64) *PutPartnerEventsOutput {
11498	s.FailedEntryCount = &v
11499	return s
11500}
11501
11502// The details about an event generated by an SaaS partner.
11503type PutPartnerEventsRequestEntry struct {
11504	_ struct{} `type:"structure"`
11505
11506	// A valid JSON string. There is no other schema imposed. The JSON string may
11507	// contain fields and nested subobjects.
11508	Detail *string `type:"string"`
11509
11510	// A free-form string used to decide what fields to expect in the event detail.
11511	DetailType *string `type:"string"`
11512
11513	// Amazon Web Services resources, identified by Amazon Resource Name (ARN),
11514	// which the event primarily concerns. Any number, including zero, may be present.
11515	Resources []*string `type:"list"`
11516
11517	// The event source that is generating the entry.
11518	Source *string `min:"1" type:"string"`
11519
11520	// The date and time of the event.
11521	Time *time.Time `type:"timestamp"`
11522}
11523
11524// String returns the string representation
11525func (s PutPartnerEventsRequestEntry) String() string {
11526	return awsutil.Prettify(s)
11527}
11528
11529// GoString returns the string representation
11530func (s PutPartnerEventsRequestEntry) GoString() string {
11531	return s.String()
11532}
11533
11534// Validate inspects the fields of the type to determine if they are valid.
11535func (s *PutPartnerEventsRequestEntry) Validate() error {
11536	invalidParams := request.ErrInvalidParams{Context: "PutPartnerEventsRequestEntry"}
11537	if s.Source != nil && len(*s.Source) < 1 {
11538		invalidParams.Add(request.NewErrParamMinLen("Source", 1))
11539	}
11540
11541	if invalidParams.Len() > 0 {
11542		return invalidParams
11543	}
11544	return nil
11545}
11546
11547// SetDetail sets the Detail field's value.
11548func (s *PutPartnerEventsRequestEntry) SetDetail(v string) *PutPartnerEventsRequestEntry {
11549	s.Detail = &v
11550	return s
11551}
11552
11553// SetDetailType sets the DetailType field's value.
11554func (s *PutPartnerEventsRequestEntry) SetDetailType(v string) *PutPartnerEventsRequestEntry {
11555	s.DetailType = &v
11556	return s
11557}
11558
11559// SetResources sets the Resources field's value.
11560func (s *PutPartnerEventsRequestEntry) SetResources(v []*string) *PutPartnerEventsRequestEntry {
11561	s.Resources = v
11562	return s
11563}
11564
11565// SetSource sets the Source field's value.
11566func (s *PutPartnerEventsRequestEntry) SetSource(v string) *PutPartnerEventsRequestEntry {
11567	s.Source = &v
11568	return s
11569}
11570
11571// SetTime sets the Time field's value.
11572func (s *PutPartnerEventsRequestEntry) SetTime(v time.Time) *PutPartnerEventsRequestEntry {
11573	s.Time = &v
11574	return s
11575}
11576
11577// Represents an event that a partner tried to generate, but failed.
11578type PutPartnerEventsResultEntry struct {
11579	_ struct{} `type:"structure"`
11580
11581	// The error code that indicates why the event submission failed.
11582	ErrorCode *string `type:"string"`
11583
11584	// The error message that explains why the event submission failed.
11585	ErrorMessage *string `type:"string"`
11586
11587	// The ID of the event.
11588	EventId *string `type:"string"`
11589}
11590
11591// String returns the string representation
11592func (s PutPartnerEventsResultEntry) String() string {
11593	return awsutil.Prettify(s)
11594}
11595
11596// GoString returns the string representation
11597func (s PutPartnerEventsResultEntry) GoString() string {
11598	return s.String()
11599}
11600
11601// SetErrorCode sets the ErrorCode field's value.
11602func (s *PutPartnerEventsResultEntry) SetErrorCode(v string) *PutPartnerEventsResultEntry {
11603	s.ErrorCode = &v
11604	return s
11605}
11606
11607// SetErrorMessage sets the ErrorMessage field's value.
11608func (s *PutPartnerEventsResultEntry) SetErrorMessage(v string) *PutPartnerEventsResultEntry {
11609	s.ErrorMessage = &v
11610	return s
11611}
11612
11613// SetEventId sets the EventId field's value.
11614func (s *PutPartnerEventsResultEntry) SetEventId(v string) *PutPartnerEventsResultEntry {
11615	s.EventId = &v
11616	return s
11617}
11618
11619type PutPermissionInput struct {
11620	_ struct{} `type:"structure"`
11621
11622	// The action that you are enabling the other account to perform.
11623	Action *string `min:"1" type:"string"`
11624
11625	// This parameter enables you to limit the permission to accounts that fulfill
11626	// a certain condition, such as being a member of a certain Amazon Web Services
11627	// organization. For more information about Amazon Web Services Organizations,
11628	// see What Is Amazon Web Services Organizations (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)
11629	// in the Amazon Web Services Organizations User Guide.
11630	//
11631	// If you specify Condition with an Amazon Web Services organization ID, and
11632	// specify "*" as the value for Principal, you grant permission to all the accounts
11633	// in the named organization.
11634	//
11635	// The Condition is a JSON string which must contain Type, Key, and Value fields.
11636	Condition *Condition `type:"structure"`
11637
11638	// The name of the event bus associated with the rule. If you omit this, the
11639	// default event bus is used.
11640	EventBusName *string `min:"1" type:"string"`
11641
11642	// A JSON string that describes the permission policy statement. You can include
11643	// a Policy parameter in the request instead of using the StatementId, Action,
11644	// Principal, or Condition parameters.
11645	Policy *string `type:"string"`
11646
11647	// The 12-digit Amazon Web Services account ID that you are permitting to put
11648	// events to your default event bus. Specify "*" to permit any account to put
11649	// events to your default event bus.
11650	//
11651	// If you specify "*" without specifying Condition, avoid creating rules that
11652	// may match undesirable events. To create more secure rules, make sure that
11653	// the event pattern for each rule contains an account field with a specific
11654	// account ID from which to receive events. Rules with an account field do not
11655	// match any events sent from other accounts.
11656	Principal *string `min:"1" type:"string"`
11657
11658	// An identifier string for the external account that you are granting permissions
11659	// to. If you later want to revoke the permission for this external account,
11660	// specify this StatementId when you run RemovePermission (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RemovePermission.html).
11661	StatementId *string `min:"1" type:"string"`
11662}
11663
11664// String returns the string representation
11665func (s PutPermissionInput) String() string {
11666	return awsutil.Prettify(s)
11667}
11668
11669// GoString returns the string representation
11670func (s PutPermissionInput) GoString() string {
11671	return s.String()
11672}
11673
11674// Validate inspects the fields of the type to determine if they are valid.
11675func (s *PutPermissionInput) Validate() error {
11676	invalidParams := request.ErrInvalidParams{Context: "PutPermissionInput"}
11677	if s.Action != nil && len(*s.Action) < 1 {
11678		invalidParams.Add(request.NewErrParamMinLen("Action", 1))
11679	}
11680	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11681		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11682	}
11683	if s.Principal != nil && len(*s.Principal) < 1 {
11684		invalidParams.Add(request.NewErrParamMinLen("Principal", 1))
11685	}
11686	if s.StatementId != nil && len(*s.StatementId) < 1 {
11687		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
11688	}
11689	if s.Condition != nil {
11690		if err := s.Condition.Validate(); err != nil {
11691			invalidParams.AddNested("Condition", err.(request.ErrInvalidParams))
11692		}
11693	}
11694
11695	if invalidParams.Len() > 0 {
11696		return invalidParams
11697	}
11698	return nil
11699}
11700
11701// SetAction sets the Action field's value.
11702func (s *PutPermissionInput) SetAction(v string) *PutPermissionInput {
11703	s.Action = &v
11704	return s
11705}
11706
11707// SetCondition sets the Condition field's value.
11708func (s *PutPermissionInput) SetCondition(v *Condition) *PutPermissionInput {
11709	s.Condition = v
11710	return s
11711}
11712
11713// SetEventBusName sets the EventBusName field's value.
11714func (s *PutPermissionInput) SetEventBusName(v string) *PutPermissionInput {
11715	s.EventBusName = &v
11716	return s
11717}
11718
11719// SetPolicy sets the Policy field's value.
11720func (s *PutPermissionInput) SetPolicy(v string) *PutPermissionInput {
11721	s.Policy = &v
11722	return s
11723}
11724
11725// SetPrincipal sets the Principal field's value.
11726func (s *PutPermissionInput) SetPrincipal(v string) *PutPermissionInput {
11727	s.Principal = &v
11728	return s
11729}
11730
11731// SetStatementId sets the StatementId field's value.
11732func (s *PutPermissionInput) SetStatementId(v string) *PutPermissionInput {
11733	s.StatementId = &v
11734	return s
11735}
11736
11737type PutPermissionOutput struct {
11738	_ struct{} `type:"structure"`
11739}
11740
11741// String returns the string representation
11742func (s PutPermissionOutput) String() string {
11743	return awsutil.Prettify(s)
11744}
11745
11746// GoString returns the string representation
11747func (s PutPermissionOutput) GoString() string {
11748	return s.String()
11749}
11750
11751type PutRuleInput struct {
11752	_ struct{} `type:"structure"`
11753
11754	// A description of the rule.
11755	Description *string `type:"string"`
11756
11757	// The name or ARN of the event bus to associate with this rule. If you omit
11758	// this, the default event bus is used.
11759	EventBusName *string `min:"1" type:"string"`
11760
11761	// The event pattern. For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
11762	// in the Amazon EventBridge User Guide.
11763	EventPattern *string `type:"string"`
11764
11765	// The name of the rule that you are creating or updating.
11766	//
11767	// Name is a required field
11768	Name *string `min:"1" type:"string" required:"true"`
11769
11770	// The Amazon Resource Name (ARN) of the IAM role associated with the rule.
11771	//
11772	// If you're setting an event bus in another account as the target and that
11773	// account granted permission to your account through an organization instead
11774	// of directly by the account ID, you must specify a RoleArn with proper permissions
11775	// in the Target structure, instead of here in this parameter.
11776	RoleArn *string `min:"1" type:"string"`
11777
11778	// The scheduling expression. For example, "cron(0 20 * * ? *)" or "rate(5 minutes)".
11779	ScheduleExpression *string `type:"string"`
11780
11781	// Indicates whether the rule is enabled or disabled.
11782	State *string `type:"string" enum:"RuleState"`
11783
11784	// The list of key-value pairs to associate with the rule.
11785	Tags []*Tag `type:"list"`
11786}
11787
11788// String returns the string representation
11789func (s PutRuleInput) String() string {
11790	return awsutil.Prettify(s)
11791}
11792
11793// GoString returns the string representation
11794func (s PutRuleInput) GoString() string {
11795	return s.String()
11796}
11797
11798// Validate inspects the fields of the type to determine if they are valid.
11799func (s *PutRuleInput) Validate() error {
11800	invalidParams := request.ErrInvalidParams{Context: "PutRuleInput"}
11801	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11802		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11803	}
11804	if s.Name == nil {
11805		invalidParams.Add(request.NewErrParamRequired("Name"))
11806	}
11807	if s.Name != nil && len(*s.Name) < 1 {
11808		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
11809	}
11810	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
11811		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
11812	}
11813	if s.Tags != nil {
11814		for i, v := range s.Tags {
11815			if v == nil {
11816				continue
11817			}
11818			if err := v.Validate(); err != nil {
11819				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
11820			}
11821		}
11822	}
11823
11824	if invalidParams.Len() > 0 {
11825		return invalidParams
11826	}
11827	return nil
11828}
11829
11830// SetDescription sets the Description field's value.
11831func (s *PutRuleInput) SetDescription(v string) *PutRuleInput {
11832	s.Description = &v
11833	return s
11834}
11835
11836// SetEventBusName sets the EventBusName field's value.
11837func (s *PutRuleInput) SetEventBusName(v string) *PutRuleInput {
11838	s.EventBusName = &v
11839	return s
11840}
11841
11842// SetEventPattern sets the EventPattern field's value.
11843func (s *PutRuleInput) SetEventPattern(v string) *PutRuleInput {
11844	s.EventPattern = &v
11845	return s
11846}
11847
11848// SetName sets the Name field's value.
11849func (s *PutRuleInput) SetName(v string) *PutRuleInput {
11850	s.Name = &v
11851	return s
11852}
11853
11854// SetRoleArn sets the RoleArn field's value.
11855func (s *PutRuleInput) SetRoleArn(v string) *PutRuleInput {
11856	s.RoleArn = &v
11857	return s
11858}
11859
11860// SetScheduleExpression sets the ScheduleExpression field's value.
11861func (s *PutRuleInput) SetScheduleExpression(v string) *PutRuleInput {
11862	s.ScheduleExpression = &v
11863	return s
11864}
11865
11866// SetState sets the State field's value.
11867func (s *PutRuleInput) SetState(v string) *PutRuleInput {
11868	s.State = &v
11869	return s
11870}
11871
11872// SetTags sets the Tags field's value.
11873func (s *PutRuleInput) SetTags(v []*Tag) *PutRuleInput {
11874	s.Tags = v
11875	return s
11876}
11877
11878type PutRuleOutput struct {
11879	_ struct{} `type:"structure"`
11880
11881	// The Amazon Resource Name (ARN) of the rule.
11882	RuleArn *string `min:"1" type:"string"`
11883}
11884
11885// String returns the string representation
11886func (s PutRuleOutput) String() string {
11887	return awsutil.Prettify(s)
11888}
11889
11890// GoString returns the string representation
11891func (s PutRuleOutput) GoString() string {
11892	return s.String()
11893}
11894
11895// SetRuleArn sets the RuleArn field's value.
11896func (s *PutRuleOutput) SetRuleArn(v string) *PutRuleOutput {
11897	s.RuleArn = &v
11898	return s
11899}
11900
11901type PutTargetsInput struct {
11902	_ struct{} `type:"structure"`
11903
11904	// The name or ARN of the event bus associated with the rule. If you omit this,
11905	// the default event bus is used.
11906	EventBusName *string `min:"1" type:"string"`
11907
11908	// The name of the rule.
11909	//
11910	// Rule is a required field
11911	Rule *string `min:"1" type:"string" required:"true"`
11912
11913	// The targets to update or add to the rule.
11914	//
11915	// Targets is a required field
11916	Targets []*Target `min:"1" type:"list" required:"true"`
11917}
11918
11919// String returns the string representation
11920func (s PutTargetsInput) String() string {
11921	return awsutil.Prettify(s)
11922}
11923
11924// GoString returns the string representation
11925func (s PutTargetsInput) GoString() string {
11926	return s.String()
11927}
11928
11929// Validate inspects the fields of the type to determine if they are valid.
11930func (s *PutTargetsInput) Validate() error {
11931	invalidParams := request.ErrInvalidParams{Context: "PutTargetsInput"}
11932	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11933		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11934	}
11935	if s.Rule == nil {
11936		invalidParams.Add(request.NewErrParamRequired("Rule"))
11937	}
11938	if s.Rule != nil && len(*s.Rule) < 1 {
11939		invalidParams.Add(request.NewErrParamMinLen("Rule", 1))
11940	}
11941	if s.Targets == nil {
11942		invalidParams.Add(request.NewErrParamRequired("Targets"))
11943	}
11944	if s.Targets != nil && len(s.Targets) < 1 {
11945		invalidParams.Add(request.NewErrParamMinLen("Targets", 1))
11946	}
11947	if s.Targets != nil {
11948		for i, v := range s.Targets {
11949			if v == nil {
11950				continue
11951			}
11952			if err := v.Validate(); err != nil {
11953				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
11954			}
11955		}
11956	}
11957
11958	if invalidParams.Len() > 0 {
11959		return invalidParams
11960	}
11961	return nil
11962}
11963
11964// SetEventBusName sets the EventBusName field's value.
11965func (s *PutTargetsInput) SetEventBusName(v string) *PutTargetsInput {
11966	s.EventBusName = &v
11967	return s
11968}
11969
11970// SetRule sets the Rule field's value.
11971func (s *PutTargetsInput) SetRule(v string) *PutTargetsInput {
11972	s.Rule = &v
11973	return s
11974}
11975
11976// SetTargets sets the Targets field's value.
11977func (s *PutTargetsInput) SetTargets(v []*Target) *PutTargetsInput {
11978	s.Targets = v
11979	return s
11980}
11981
11982type PutTargetsOutput struct {
11983	_ struct{} `type:"structure"`
11984
11985	// The failed target entries.
11986	FailedEntries []*PutTargetsResultEntry `type:"list"`
11987
11988	// The number of failed entries.
11989	FailedEntryCount *int64 `type:"integer"`
11990}
11991
11992// String returns the string representation
11993func (s PutTargetsOutput) String() string {
11994	return awsutil.Prettify(s)
11995}
11996
11997// GoString returns the string representation
11998func (s PutTargetsOutput) GoString() string {
11999	return s.String()
12000}
12001
12002// SetFailedEntries sets the FailedEntries field's value.
12003func (s *PutTargetsOutput) SetFailedEntries(v []*PutTargetsResultEntry) *PutTargetsOutput {
12004	s.FailedEntries = v
12005	return s
12006}
12007
12008// SetFailedEntryCount sets the FailedEntryCount field's value.
12009func (s *PutTargetsOutput) SetFailedEntryCount(v int64) *PutTargetsOutput {
12010	s.FailedEntryCount = &v
12011	return s
12012}
12013
12014// Represents a target that failed to be added to a rule.
12015type PutTargetsResultEntry struct {
12016	_ struct{} `type:"structure"`
12017
12018	// The error code that indicates why the target addition failed. If the value
12019	// is ConcurrentModificationException, too many requests were made at the same
12020	// time.
12021	ErrorCode *string `type:"string"`
12022
12023	// The error message that explains why the target addition failed.
12024	ErrorMessage *string `type:"string"`
12025
12026	// The ID of the target.
12027	TargetId *string `min:"1" type:"string"`
12028}
12029
12030// String returns the string representation
12031func (s PutTargetsResultEntry) String() string {
12032	return awsutil.Prettify(s)
12033}
12034
12035// GoString returns the string representation
12036func (s PutTargetsResultEntry) GoString() string {
12037	return s.String()
12038}
12039
12040// SetErrorCode sets the ErrorCode field's value.
12041func (s *PutTargetsResultEntry) SetErrorCode(v string) *PutTargetsResultEntry {
12042	s.ErrorCode = &v
12043	return s
12044}
12045
12046// SetErrorMessage sets the ErrorMessage field's value.
12047func (s *PutTargetsResultEntry) SetErrorMessage(v string) *PutTargetsResultEntry {
12048	s.ErrorMessage = &v
12049	return s
12050}
12051
12052// SetTargetId sets the TargetId field's value.
12053func (s *PutTargetsResultEntry) SetTargetId(v string) *PutTargetsResultEntry {
12054	s.TargetId = &v
12055	return s
12056}
12057
12058// These are custom parameters to be used when the target is a Amazon Redshift
12059// cluster to invoke the Amazon Redshift Data API ExecuteStatement based on
12060// EventBridge events.
12061type RedshiftDataParameters struct {
12062	_ struct{} `type:"structure"`
12063
12064	// The name of the database. Required when authenticating using temporary credentials.
12065	//
12066	// Database is a required field
12067	Database *string `min:"1" type:"string" required:"true"`
12068
12069	// The database user name. Required when authenticating using temporary credentials.
12070	DbUser *string `min:"1" type:"string"`
12071
12072	// The name or ARN of the secret that enables access to the database. Required
12073	// when authenticating using Amazon Web Services Secrets Manager.
12074	SecretManagerArn *string `min:"1" type:"string"`
12075
12076	// The SQL statement text to run.
12077	//
12078	// Sql is a required field
12079	Sql *string `min:"1" type:"string" required:"true"`
12080
12081	// The name of the SQL statement. You can name the SQL statement when you create
12082	// it to identify the query.
12083	StatementName *string `min:"1" type:"string"`
12084
12085	// Indicates whether to send an event back to EventBridge after the SQL statement
12086	// runs.
12087	WithEvent *bool `type:"boolean"`
12088}
12089
12090// String returns the string representation
12091func (s RedshiftDataParameters) String() string {
12092	return awsutil.Prettify(s)
12093}
12094
12095// GoString returns the string representation
12096func (s RedshiftDataParameters) GoString() string {
12097	return s.String()
12098}
12099
12100// Validate inspects the fields of the type to determine if they are valid.
12101func (s *RedshiftDataParameters) Validate() error {
12102	invalidParams := request.ErrInvalidParams{Context: "RedshiftDataParameters"}
12103	if s.Database == nil {
12104		invalidParams.Add(request.NewErrParamRequired("Database"))
12105	}
12106	if s.Database != nil && len(*s.Database) < 1 {
12107		invalidParams.Add(request.NewErrParamMinLen("Database", 1))
12108	}
12109	if s.DbUser != nil && len(*s.DbUser) < 1 {
12110		invalidParams.Add(request.NewErrParamMinLen("DbUser", 1))
12111	}
12112	if s.SecretManagerArn != nil && len(*s.SecretManagerArn) < 1 {
12113		invalidParams.Add(request.NewErrParamMinLen("SecretManagerArn", 1))
12114	}
12115	if s.Sql == nil {
12116		invalidParams.Add(request.NewErrParamRequired("Sql"))
12117	}
12118	if s.Sql != nil && len(*s.Sql) < 1 {
12119		invalidParams.Add(request.NewErrParamMinLen("Sql", 1))
12120	}
12121	if s.StatementName != nil && len(*s.StatementName) < 1 {
12122		invalidParams.Add(request.NewErrParamMinLen("StatementName", 1))
12123	}
12124
12125	if invalidParams.Len() > 0 {
12126		return invalidParams
12127	}
12128	return nil
12129}
12130
12131// SetDatabase sets the Database field's value.
12132func (s *RedshiftDataParameters) SetDatabase(v string) *RedshiftDataParameters {
12133	s.Database = &v
12134	return s
12135}
12136
12137// SetDbUser sets the DbUser field's value.
12138func (s *RedshiftDataParameters) SetDbUser(v string) *RedshiftDataParameters {
12139	s.DbUser = &v
12140	return s
12141}
12142
12143// SetSecretManagerArn sets the SecretManagerArn field's value.
12144func (s *RedshiftDataParameters) SetSecretManagerArn(v string) *RedshiftDataParameters {
12145	s.SecretManagerArn = &v
12146	return s
12147}
12148
12149// SetSql sets the Sql field's value.
12150func (s *RedshiftDataParameters) SetSql(v string) *RedshiftDataParameters {
12151	s.Sql = &v
12152	return s
12153}
12154
12155// SetStatementName sets the StatementName field's value.
12156func (s *RedshiftDataParameters) SetStatementName(v string) *RedshiftDataParameters {
12157	s.StatementName = &v
12158	return s
12159}
12160
12161// SetWithEvent sets the WithEvent field's value.
12162func (s *RedshiftDataParameters) SetWithEvent(v bool) *RedshiftDataParameters {
12163	s.WithEvent = &v
12164	return s
12165}
12166
12167type RemovePermissionInput struct {
12168	_ struct{} `type:"structure"`
12169
12170	// The name of the event bus to revoke permissions for. If you omit this, the
12171	// default event bus is used.
12172	EventBusName *string `min:"1" type:"string"`
12173
12174	// Specifies whether to remove all permissions.
12175	RemoveAllPermissions *bool `type:"boolean"`
12176
12177	// The statement ID corresponding to the account that is no longer allowed to
12178	// put events to the default event bus.
12179	StatementId *string `min:"1" type:"string"`
12180}
12181
12182// String returns the string representation
12183func (s RemovePermissionInput) String() string {
12184	return awsutil.Prettify(s)
12185}
12186
12187// GoString returns the string representation
12188func (s RemovePermissionInput) GoString() string {
12189	return s.String()
12190}
12191
12192// Validate inspects the fields of the type to determine if they are valid.
12193func (s *RemovePermissionInput) Validate() error {
12194	invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"}
12195	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
12196		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
12197	}
12198	if s.StatementId != nil && len(*s.StatementId) < 1 {
12199		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
12200	}
12201
12202	if invalidParams.Len() > 0 {
12203		return invalidParams
12204	}
12205	return nil
12206}
12207
12208// SetEventBusName sets the EventBusName field's value.
12209func (s *RemovePermissionInput) SetEventBusName(v string) *RemovePermissionInput {
12210	s.EventBusName = &v
12211	return s
12212}
12213
12214// SetRemoveAllPermissions sets the RemoveAllPermissions field's value.
12215func (s *RemovePermissionInput) SetRemoveAllPermissions(v bool) *RemovePermissionInput {
12216	s.RemoveAllPermissions = &v
12217	return s
12218}
12219
12220// SetStatementId sets the StatementId field's value.
12221func (s *RemovePermissionInput) SetStatementId(v string) *RemovePermissionInput {
12222	s.StatementId = &v
12223	return s
12224}
12225
12226type RemovePermissionOutput struct {
12227	_ struct{} `type:"structure"`
12228}
12229
12230// String returns the string representation
12231func (s RemovePermissionOutput) String() string {
12232	return awsutil.Prettify(s)
12233}
12234
12235// GoString returns the string representation
12236func (s RemovePermissionOutput) GoString() string {
12237	return s.String()
12238}
12239
12240type RemoveTargetsInput struct {
12241	_ struct{} `type:"structure"`
12242
12243	// The name or ARN of the event bus associated with the rule. If you omit this,
12244	// the default event bus is used.
12245	EventBusName *string `min:"1" type:"string"`
12246
12247	// If this is a managed rule, created by an Amazon Web Services service on your
12248	// behalf, you must specify Force as True to remove targets. This parameter
12249	// is ignored for rules that are not managed rules. You can check whether a
12250	// rule is a managed rule by using DescribeRule or ListRules and checking the
12251	// ManagedBy field of the response.
12252	Force *bool `type:"boolean"`
12253
12254	// The IDs of the targets to remove from the rule.
12255	//
12256	// Ids is a required field
12257	Ids []*string `min:"1" type:"list" required:"true"`
12258
12259	// The name of the rule.
12260	//
12261	// Rule is a required field
12262	Rule *string `min:"1" type:"string" required:"true"`
12263}
12264
12265// String returns the string representation
12266func (s RemoveTargetsInput) String() string {
12267	return awsutil.Prettify(s)
12268}
12269
12270// GoString returns the string representation
12271func (s RemoveTargetsInput) GoString() string {
12272	return s.String()
12273}
12274
12275// Validate inspects the fields of the type to determine if they are valid.
12276func (s *RemoveTargetsInput) Validate() error {
12277	invalidParams := request.ErrInvalidParams{Context: "RemoveTargetsInput"}
12278	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
12279		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
12280	}
12281	if s.Ids == nil {
12282		invalidParams.Add(request.NewErrParamRequired("Ids"))
12283	}
12284	if s.Ids != nil && len(s.Ids) < 1 {
12285		invalidParams.Add(request.NewErrParamMinLen("Ids", 1))
12286	}
12287	if s.Rule == nil {
12288		invalidParams.Add(request.NewErrParamRequired("Rule"))
12289	}
12290	if s.Rule != nil && len(*s.Rule) < 1 {
12291		invalidParams.Add(request.NewErrParamMinLen("Rule", 1))
12292	}
12293
12294	if invalidParams.Len() > 0 {
12295		return invalidParams
12296	}
12297	return nil
12298}
12299
12300// SetEventBusName sets the EventBusName field's value.
12301func (s *RemoveTargetsInput) SetEventBusName(v string) *RemoveTargetsInput {
12302	s.EventBusName = &v
12303	return s
12304}
12305
12306// SetForce sets the Force field's value.
12307func (s *RemoveTargetsInput) SetForce(v bool) *RemoveTargetsInput {
12308	s.Force = &v
12309	return s
12310}
12311
12312// SetIds sets the Ids field's value.
12313func (s *RemoveTargetsInput) SetIds(v []*string) *RemoveTargetsInput {
12314	s.Ids = v
12315	return s
12316}
12317
12318// SetRule sets the Rule field's value.
12319func (s *RemoveTargetsInput) SetRule(v string) *RemoveTargetsInput {
12320	s.Rule = &v
12321	return s
12322}
12323
12324type RemoveTargetsOutput struct {
12325	_ struct{} `type:"structure"`
12326
12327	// The failed target entries.
12328	FailedEntries []*RemoveTargetsResultEntry `type:"list"`
12329
12330	// The number of failed entries.
12331	FailedEntryCount *int64 `type:"integer"`
12332}
12333
12334// String returns the string representation
12335func (s RemoveTargetsOutput) String() string {
12336	return awsutil.Prettify(s)
12337}
12338
12339// GoString returns the string representation
12340func (s RemoveTargetsOutput) GoString() string {
12341	return s.String()
12342}
12343
12344// SetFailedEntries sets the FailedEntries field's value.
12345func (s *RemoveTargetsOutput) SetFailedEntries(v []*RemoveTargetsResultEntry) *RemoveTargetsOutput {
12346	s.FailedEntries = v
12347	return s
12348}
12349
12350// SetFailedEntryCount sets the FailedEntryCount field's value.
12351func (s *RemoveTargetsOutput) SetFailedEntryCount(v int64) *RemoveTargetsOutput {
12352	s.FailedEntryCount = &v
12353	return s
12354}
12355
12356// Represents a target that failed to be removed from a rule.
12357type RemoveTargetsResultEntry struct {
12358	_ struct{} `type:"structure"`
12359
12360	// The error code that indicates why the target removal failed. If the value
12361	// is ConcurrentModificationException, too many requests were made at the same
12362	// time.
12363	ErrorCode *string `type:"string"`
12364
12365	// The error message that explains why the target removal failed.
12366	ErrorMessage *string `type:"string"`
12367
12368	// The ID of the target.
12369	TargetId *string `min:"1" type:"string"`
12370}
12371
12372// String returns the string representation
12373func (s RemoveTargetsResultEntry) String() string {
12374	return awsutil.Prettify(s)
12375}
12376
12377// GoString returns the string representation
12378func (s RemoveTargetsResultEntry) GoString() string {
12379	return s.String()
12380}
12381
12382// SetErrorCode sets the ErrorCode field's value.
12383func (s *RemoveTargetsResultEntry) SetErrorCode(v string) *RemoveTargetsResultEntry {
12384	s.ErrorCode = &v
12385	return s
12386}
12387
12388// SetErrorMessage sets the ErrorMessage field's value.
12389func (s *RemoveTargetsResultEntry) SetErrorMessage(v string) *RemoveTargetsResultEntry {
12390	s.ErrorMessage = &v
12391	return s
12392}
12393
12394// SetTargetId sets the TargetId field's value.
12395func (s *RemoveTargetsResultEntry) SetTargetId(v string) *RemoveTargetsResultEntry {
12396	s.TargetId = &v
12397	return s
12398}
12399
12400// A Replay object that contains details about a replay.
12401type Replay struct {
12402	_ struct{} `type:"structure"`
12403
12404	// A time stamp for the time to start replaying events. Any event with a creation
12405	// time prior to the EventEndTime specified is replayed.
12406	EventEndTime *time.Time `type:"timestamp"`
12407
12408	// A time stamp for the time that the last event was replayed.
12409	EventLastReplayedTime *time.Time `type:"timestamp"`
12410
12411	// The ARN of the archive to replay event from.
12412	EventSourceArn *string `min:"1" type:"string"`
12413
12414	// A time stamp for the time to start replaying events. This is determined by
12415	// the time in the event as described in Time (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEventsRequestEntry.html#eventbridge-Type-PutEventsRequestEntry-Time).
12416	EventStartTime *time.Time `type:"timestamp"`
12417
12418	// A time stamp for the time that the replay completed.
12419	ReplayEndTime *time.Time `type:"timestamp"`
12420
12421	// The name of the replay.
12422	ReplayName *string `min:"1" type:"string"`
12423
12424	// A time stamp for the time that the replay started.
12425	ReplayStartTime *time.Time `type:"timestamp"`
12426
12427	// The current state of the replay.
12428	State *string `type:"string" enum:"ReplayState"`
12429
12430	// A description of why the replay is in the current state.
12431	StateReason *string `type:"string"`
12432}
12433
12434// String returns the string representation
12435func (s Replay) String() string {
12436	return awsutil.Prettify(s)
12437}
12438
12439// GoString returns the string representation
12440func (s Replay) GoString() string {
12441	return s.String()
12442}
12443
12444// SetEventEndTime sets the EventEndTime field's value.
12445func (s *Replay) SetEventEndTime(v time.Time) *Replay {
12446	s.EventEndTime = &v
12447	return s
12448}
12449
12450// SetEventLastReplayedTime sets the EventLastReplayedTime field's value.
12451func (s *Replay) SetEventLastReplayedTime(v time.Time) *Replay {
12452	s.EventLastReplayedTime = &v
12453	return s
12454}
12455
12456// SetEventSourceArn sets the EventSourceArn field's value.
12457func (s *Replay) SetEventSourceArn(v string) *Replay {
12458	s.EventSourceArn = &v
12459	return s
12460}
12461
12462// SetEventStartTime sets the EventStartTime field's value.
12463func (s *Replay) SetEventStartTime(v time.Time) *Replay {
12464	s.EventStartTime = &v
12465	return s
12466}
12467
12468// SetReplayEndTime sets the ReplayEndTime field's value.
12469func (s *Replay) SetReplayEndTime(v time.Time) *Replay {
12470	s.ReplayEndTime = &v
12471	return s
12472}
12473
12474// SetReplayName sets the ReplayName field's value.
12475func (s *Replay) SetReplayName(v string) *Replay {
12476	s.ReplayName = &v
12477	return s
12478}
12479
12480// SetReplayStartTime sets the ReplayStartTime field's value.
12481func (s *Replay) SetReplayStartTime(v time.Time) *Replay {
12482	s.ReplayStartTime = &v
12483	return s
12484}
12485
12486// SetState sets the State field's value.
12487func (s *Replay) SetState(v string) *Replay {
12488	s.State = &v
12489	return s
12490}
12491
12492// SetStateReason sets the StateReason field's value.
12493func (s *Replay) SetStateReason(v string) *Replay {
12494	s.StateReason = &v
12495	return s
12496}
12497
12498// A ReplayDestination object that contains details about a replay.
12499type ReplayDestination struct {
12500	_ struct{} `type:"structure"`
12501
12502	// The ARN of the event bus to replay event to. You can replay events only to
12503	// the event bus specified to create the archive.
12504	//
12505	// Arn is a required field
12506	Arn *string `min:"1" type:"string" required:"true"`
12507
12508	// A list of ARNs for rules to replay events to.
12509	FilterArns []*string `type:"list"`
12510}
12511
12512// String returns the string representation
12513func (s ReplayDestination) String() string {
12514	return awsutil.Prettify(s)
12515}
12516
12517// GoString returns the string representation
12518func (s ReplayDestination) GoString() string {
12519	return s.String()
12520}
12521
12522// Validate inspects the fields of the type to determine if they are valid.
12523func (s *ReplayDestination) Validate() error {
12524	invalidParams := request.ErrInvalidParams{Context: "ReplayDestination"}
12525	if s.Arn == nil {
12526		invalidParams.Add(request.NewErrParamRequired("Arn"))
12527	}
12528	if s.Arn != nil && len(*s.Arn) < 1 {
12529		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
12530	}
12531
12532	if invalidParams.Len() > 0 {
12533		return invalidParams
12534	}
12535	return nil
12536}
12537
12538// SetArn sets the Arn field's value.
12539func (s *ReplayDestination) SetArn(v string) *ReplayDestination {
12540	s.Arn = &v
12541	return s
12542}
12543
12544// SetFilterArns sets the FilterArns field's value.
12545func (s *ReplayDestination) SetFilterArns(v []*string) *ReplayDestination {
12546	s.FilterArns = v
12547	return s
12548}
12549
12550// The resource you are trying to create already exists.
12551type ResourceAlreadyExistsException struct {
12552	_            struct{}                  `type:"structure"`
12553	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12554
12555	Message_ *string `locationName:"message" type:"string"`
12556}
12557
12558// String returns the string representation
12559func (s ResourceAlreadyExistsException) String() string {
12560	return awsutil.Prettify(s)
12561}
12562
12563// GoString returns the string representation
12564func (s ResourceAlreadyExistsException) GoString() string {
12565	return s.String()
12566}
12567
12568func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error {
12569	return &ResourceAlreadyExistsException{
12570		RespMetadata: v,
12571	}
12572}
12573
12574// Code returns the exception type name.
12575func (s *ResourceAlreadyExistsException) Code() string {
12576	return "ResourceAlreadyExistsException"
12577}
12578
12579// Message returns the exception's message.
12580func (s *ResourceAlreadyExistsException) Message() string {
12581	if s.Message_ != nil {
12582		return *s.Message_
12583	}
12584	return ""
12585}
12586
12587// OrigErr always returns nil, satisfies awserr.Error interface.
12588func (s *ResourceAlreadyExistsException) OrigErr() error {
12589	return nil
12590}
12591
12592func (s *ResourceAlreadyExistsException) Error() string {
12593	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12594}
12595
12596// Status code returns the HTTP status code for the request's response error.
12597func (s *ResourceAlreadyExistsException) StatusCode() int {
12598	return s.RespMetadata.StatusCode
12599}
12600
12601// RequestID returns the service's response RequestID for request.
12602func (s *ResourceAlreadyExistsException) RequestID() string {
12603	return s.RespMetadata.RequestID
12604}
12605
12606// An entity that you specified does not exist.
12607type ResourceNotFoundException struct {
12608	_            struct{}                  `type:"structure"`
12609	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12610
12611	Message_ *string `locationName:"message" type:"string"`
12612}
12613
12614// String returns the string representation
12615func (s ResourceNotFoundException) String() string {
12616	return awsutil.Prettify(s)
12617}
12618
12619// GoString returns the string representation
12620func (s ResourceNotFoundException) GoString() string {
12621	return s.String()
12622}
12623
12624func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
12625	return &ResourceNotFoundException{
12626		RespMetadata: v,
12627	}
12628}
12629
12630// Code returns the exception type name.
12631func (s *ResourceNotFoundException) Code() string {
12632	return "ResourceNotFoundException"
12633}
12634
12635// Message returns the exception's message.
12636func (s *ResourceNotFoundException) Message() string {
12637	if s.Message_ != nil {
12638		return *s.Message_
12639	}
12640	return ""
12641}
12642
12643// OrigErr always returns nil, satisfies awserr.Error interface.
12644func (s *ResourceNotFoundException) OrigErr() error {
12645	return nil
12646}
12647
12648func (s *ResourceNotFoundException) Error() string {
12649	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12650}
12651
12652// Status code returns the HTTP status code for the request's response error.
12653func (s *ResourceNotFoundException) StatusCode() int {
12654	return s.RespMetadata.StatusCode
12655}
12656
12657// RequestID returns the service's response RequestID for request.
12658func (s *ResourceNotFoundException) RequestID() string {
12659	return s.RespMetadata.RequestID
12660}
12661
12662// A RetryPolicy object that includes information about the retry policy settings.
12663type RetryPolicy struct {
12664	_ struct{} `type:"structure"`
12665
12666	// The maximum amount of time, in seconds, to continue to make retry attempts.
12667	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
12668
12669	// The maximum number of retry attempts to make before the request fails. Retry
12670	// attempts continue until either the maximum number of attempts is made or
12671	// until the duration of the MaximumEventAgeInSeconds is met.
12672	MaximumRetryAttempts *int64 `type:"integer"`
12673}
12674
12675// String returns the string representation
12676func (s RetryPolicy) String() string {
12677	return awsutil.Prettify(s)
12678}
12679
12680// GoString returns the string representation
12681func (s RetryPolicy) GoString() string {
12682	return s.String()
12683}
12684
12685// Validate inspects the fields of the type to determine if they are valid.
12686func (s *RetryPolicy) Validate() error {
12687	invalidParams := request.ErrInvalidParams{Context: "RetryPolicy"}
12688	if s.MaximumEventAgeInSeconds != nil && *s.MaximumEventAgeInSeconds < 60 {
12689		invalidParams.Add(request.NewErrParamMinValue("MaximumEventAgeInSeconds", 60))
12690	}
12691
12692	if invalidParams.Len() > 0 {
12693		return invalidParams
12694	}
12695	return nil
12696}
12697
12698// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
12699func (s *RetryPolicy) SetMaximumEventAgeInSeconds(v int64) *RetryPolicy {
12700	s.MaximumEventAgeInSeconds = &v
12701	return s
12702}
12703
12704// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
12705func (s *RetryPolicy) SetMaximumRetryAttempts(v int64) *RetryPolicy {
12706	s.MaximumRetryAttempts = &v
12707	return s
12708}
12709
12710// Contains information about a rule in Amazon EventBridge.
12711type Rule struct {
12712	_ struct{} `type:"structure"`
12713
12714	// The Amazon Resource Name (ARN) of the rule.
12715	Arn *string `min:"1" type:"string"`
12716
12717	// The description of the rule.
12718	Description *string `type:"string"`
12719
12720	// The name or ARN of the event bus associated with the rule. If you omit this,
12721	// the default event bus is used.
12722	EventBusName *string `min:"1" type:"string"`
12723
12724	// The event pattern of the rule. For more information, see Events and Event
12725	// Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
12726	// in the Amazon EventBridge User Guide.
12727	EventPattern *string `type:"string"`
12728
12729	// If the rule was created on behalf of your account by an Amazon Web Services
12730	// service, this field displays the principal name of the service that created
12731	// the rule.
12732	ManagedBy *string `min:"1" type:"string"`
12733
12734	// The name of the rule.
12735	Name *string `min:"1" type:"string"`
12736
12737	// The Amazon Resource Name (ARN) of the role that is used for target invocation.
12738	//
12739	// If you're setting an event bus in another account as the target and that
12740	// account granted permission to your account through an organization instead
12741	// of directly by the account ID, you must specify a RoleArn with proper permissions
12742	// in the Target structure, instead of here in this parameter.
12743	RoleArn *string `min:"1" type:"string"`
12744
12745	// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)".
12746	// For more information, see Creating an Amazon EventBridge rule that runs on
12747	// a schedule (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html).
12748	ScheduleExpression *string `type:"string"`
12749
12750	// The state of the rule.
12751	State *string `type:"string" enum:"RuleState"`
12752}
12753
12754// String returns the string representation
12755func (s Rule) String() string {
12756	return awsutil.Prettify(s)
12757}
12758
12759// GoString returns the string representation
12760func (s Rule) GoString() string {
12761	return s.String()
12762}
12763
12764// SetArn sets the Arn field's value.
12765func (s *Rule) SetArn(v string) *Rule {
12766	s.Arn = &v
12767	return s
12768}
12769
12770// SetDescription sets the Description field's value.
12771func (s *Rule) SetDescription(v string) *Rule {
12772	s.Description = &v
12773	return s
12774}
12775
12776// SetEventBusName sets the EventBusName field's value.
12777func (s *Rule) SetEventBusName(v string) *Rule {
12778	s.EventBusName = &v
12779	return s
12780}
12781
12782// SetEventPattern sets the EventPattern field's value.
12783func (s *Rule) SetEventPattern(v string) *Rule {
12784	s.EventPattern = &v
12785	return s
12786}
12787
12788// SetManagedBy sets the ManagedBy field's value.
12789func (s *Rule) SetManagedBy(v string) *Rule {
12790	s.ManagedBy = &v
12791	return s
12792}
12793
12794// SetName sets the Name field's value.
12795func (s *Rule) SetName(v string) *Rule {
12796	s.Name = &v
12797	return s
12798}
12799
12800// SetRoleArn sets the RoleArn field's value.
12801func (s *Rule) SetRoleArn(v string) *Rule {
12802	s.RoleArn = &v
12803	return s
12804}
12805
12806// SetScheduleExpression sets the ScheduleExpression field's value.
12807func (s *Rule) SetScheduleExpression(v string) *Rule {
12808	s.ScheduleExpression = &v
12809	return s
12810}
12811
12812// SetState sets the State field's value.
12813func (s *Rule) SetState(v string) *Rule {
12814	s.State = &v
12815	return s
12816}
12817
12818// This parameter contains the criteria (either InstanceIds or a tag) used to
12819// specify which EC2 instances are to be sent the command.
12820type RunCommandParameters struct {
12821	_ struct{} `type:"structure"`
12822
12823	// Currently, we support including only one RunCommandTarget block, which specifies
12824	// either an array of InstanceIds or a tag.
12825	//
12826	// RunCommandTargets is a required field
12827	RunCommandTargets []*RunCommandTarget `min:"1" type:"list" required:"true"`
12828}
12829
12830// String returns the string representation
12831func (s RunCommandParameters) String() string {
12832	return awsutil.Prettify(s)
12833}
12834
12835// GoString returns the string representation
12836func (s RunCommandParameters) GoString() string {
12837	return s.String()
12838}
12839
12840// Validate inspects the fields of the type to determine if they are valid.
12841func (s *RunCommandParameters) Validate() error {
12842	invalidParams := request.ErrInvalidParams{Context: "RunCommandParameters"}
12843	if s.RunCommandTargets == nil {
12844		invalidParams.Add(request.NewErrParamRequired("RunCommandTargets"))
12845	}
12846	if s.RunCommandTargets != nil && len(s.RunCommandTargets) < 1 {
12847		invalidParams.Add(request.NewErrParamMinLen("RunCommandTargets", 1))
12848	}
12849	if s.RunCommandTargets != nil {
12850		for i, v := range s.RunCommandTargets {
12851			if v == nil {
12852				continue
12853			}
12854			if err := v.Validate(); err != nil {
12855				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RunCommandTargets", i), err.(request.ErrInvalidParams))
12856			}
12857		}
12858	}
12859
12860	if invalidParams.Len() > 0 {
12861		return invalidParams
12862	}
12863	return nil
12864}
12865
12866// SetRunCommandTargets sets the RunCommandTargets field's value.
12867func (s *RunCommandParameters) SetRunCommandTargets(v []*RunCommandTarget) *RunCommandParameters {
12868	s.RunCommandTargets = v
12869	return s
12870}
12871
12872// Information about the EC2 instances that are to be sent the command, specified
12873// as key-value pairs. Each RunCommandTarget block can include only one key,
12874// but this key may specify multiple values.
12875type RunCommandTarget struct {
12876	_ struct{} `type:"structure"`
12877
12878	// Can be either tag: tag-key or InstanceIds.
12879	//
12880	// Key is a required field
12881	Key *string `min:"1" type:"string" required:"true"`
12882
12883	// If Key is tag: tag-key, Values is a list of tag values. If Key is InstanceIds,
12884	// Values is a list of Amazon EC2 instance IDs.
12885	//
12886	// Values is a required field
12887	Values []*string `min:"1" type:"list" required:"true"`
12888}
12889
12890// String returns the string representation
12891func (s RunCommandTarget) String() string {
12892	return awsutil.Prettify(s)
12893}
12894
12895// GoString returns the string representation
12896func (s RunCommandTarget) GoString() string {
12897	return s.String()
12898}
12899
12900// Validate inspects the fields of the type to determine if they are valid.
12901func (s *RunCommandTarget) Validate() error {
12902	invalidParams := request.ErrInvalidParams{Context: "RunCommandTarget"}
12903	if s.Key == nil {
12904		invalidParams.Add(request.NewErrParamRequired("Key"))
12905	}
12906	if s.Key != nil && len(*s.Key) < 1 {
12907		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
12908	}
12909	if s.Values == nil {
12910		invalidParams.Add(request.NewErrParamRequired("Values"))
12911	}
12912	if s.Values != nil && len(s.Values) < 1 {
12913		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
12914	}
12915
12916	if invalidParams.Len() > 0 {
12917		return invalidParams
12918	}
12919	return nil
12920}
12921
12922// SetKey sets the Key field's value.
12923func (s *RunCommandTarget) SetKey(v string) *RunCommandTarget {
12924	s.Key = &v
12925	return s
12926}
12927
12928// SetValues sets the Values field's value.
12929func (s *RunCommandTarget) SetValues(v []*string) *RunCommandTarget {
12930	s.Values = v
12931	return s
12932}
12933
12934// Name/Value pair of a parameter to start execution of a SageMaker Model Building
12935// Pipeline.
12936type SageMakerPipelineParameter struct {
12937	_ struct{} `type:"structure"`
12938
12939	// Name of parameter to start execution of a SageMaker Model Building Pipeline.
12940	//
12941	// Name is a required field
12942	Name *string `min:"1" type:"string" required:"true"`
12943
12944	// Value of parameter to start execution of a SageMaker Model Building Pipeline.
12945	//
12946	// Value is a required field
12947	Value *string `type:"string" required:"true"`
12948}
12949
12950// String returns the string representation
12951func (s SageMakerPipelineParameter) String() string {
12952	return awsutil.Prettify(s)
12953}
12954
12955// GoString returns the string representation
12956func (s SageMakerPipelineParameter) GoString() string {
12957	return s.String()
12958}
12959
12960// Validate inspects the fields of the type to determine if they are valid.
12961func (s *SageMakerPipelineParameter) Validate() error {
12962	invalidParams := request.ErrInvalidParams{Context: "SageMakerPipelineParameter"}
12963	if s.Name == nil {
12964		invalidParams.Add(request.NewErrParamRequired("Name"))
12965	}
12966	if s.Name != nil && len(*s.Name) < 1 {
12967		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12968	}
12969	if s.Value == nil {
12970		invalidParams.Add(request.NewErrParamRequired("Value"))
12971	}
12972
12973	if invalidParams.Len() > 0 {
12974		return invalidParams
12975	}
12976	return nil
12977}
12978
12979// SetName sets the Name field's value.
12980func (s *SageMakerPipelineParameter) SetName(v string) *SageMakerPipelineParameter {
12981	s.Name = &v
12982	return s
12983}
12984
12985// SetValue sets the Value field's value.
12986func (s *SageMakerPipelineParameter) SetValue(v string) *SageMakerPipelineParameter {
12987	s.Value = &v
12988	return s
12989}
12990
12991// These are custom parameters to use when the target is a SageMaker Model Building
12992// Pipeline that starts based on EventBridge events.
12993type SageMakerPipelineParameters struct {
12994	_ struct{} `type:"structure"`
12995
12996	// List of Parameter names and values for SageMaker Model Building Pipeline
12997	// execution.
12998	PipelineParameterList []*SageMakerPipelineParameter `type:"list"`
12999}
13000
13001// String returns the string representation
13002func (s SageMakerPipelineParameters) String() string {
13003	return awsutil.Prettify(s)
13004}
13005
13006// GoString returns the string representation
13007func (s SageMakerPipelineParameters) GoString() string {
13008	return s.String()
13009}
13010
13011// Validate inspects the fields of the type to determine if they are valid.
13012func (s *SageMakerPipelineParameters) Validate() error {
13013	invalidParams := request.ErrInvalidParams{Context: "SageMakerPipelineParameters"}
13014	if s.PipelineParameterList != nil {
13015		for i, v := range s.PipelineParameterList {
13016			if v == nil {
13017				continue
13018			}
13019			if err := v.Validate(); err != nil {
13020				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PipelineParameterList", i), err.(request.ErrInvalidParams))
13021			}
13022		}
13023	}
13024
13025	if invalidParams.Len() > 0 {
13026		return invalidParams
13027	}
13028	return nil
13029}
13030
13031// SetPipelineParameterList sets the PipelineParameterList field's value.
13032func (s *SageMakerPipelineParameters) SetPipelineParameterList(v []*SageMakerPipelineParameter) *SageMakerPipelineParameters {
13033	s.PipelineParameterList = v
13034	return s
13035}
13036
13037// This structure includes the custom parameter to be used when the target is
13038// an SQS FIFO queue.
13039type SqsParameters struct {
13040	_ struct{} `type:"structure"`
13041
13042	// The FIFO message group ID to use as the target.
13043	MessageGroupId *string `type:"string"`
13044}
13045
13046// String returns the string representation
13047func (s SqsParameters) String() string {
13048	return awsutil.Prettify(s)
13049}
13050
13051// GoString returns the string representation
13052func (s SqsParameters) GoString() string {
13053	return s.String()
13054}
13055
13056// SetMessageGroupId sets the MessageGroupId field's value.
13057func (s *SqsParameters) SetMessageGroupId(v string) *SqsParameters {
13058	s.MessageGroupId = &v
13059	return s
13060}
13061
13062type StartReplayInput struct {
13063	_ struct{} `type:"structure"`
13064
13065	// A description for the replay to start.
13066	Description *string `type:"string"`
13067
13068	// A ReplayDestination object that includes details about the destination for
13069	// the replay.
13070	//
13071	// Destination is a required field
13072	Destination *ReplayDestination `type:"structure" required:"true"`
13073
13074	// A time stamp for the time to stop replaying events. Only events that occurred
13075	// between the EventStartTime and EventEndTime are replayed.
13076	//
13077	// EventEndTime is a required field
13078	EventEndTime *time.Time `type:"timestamp" required:"true"`
13079
13080	// The ARN of the archive to replay events from.
13081	//
13082	// EventSourceArn is a required field
13083	EventSourceArn *string `min:"1" type:"string" required:"true"`
13084
13085	// A time stamp for the time to start replaying events. Only events that occurred
13086	// between the EventStartTime and EventEndTime are replayed.
13087	//
13088	// EventStartTime is a required field
13089	EventStartTime *time.Time `type:"timestamp" required:"true"`
13090
13091	// The name of the replay to start.
13092	//
13093	// ReplayName is a required field
13094	ReplayName *string `min:"1" type:"string" required:"true"`
13095}
13096
13097// String returns the string representation
13098func (s StartReplayInput) String() string {
13099	return awsutil.Prettify(s)
13100}
13101
13102// GoString returns the string representation
13103func (s StartReplayInput) GoString() string {
13104	return s.String()
13105}
13106
13107// Validate inspects the fields of the type to determine if they are valid.
13108func (s *StartReplayInput) Validate() error {
13109	invalidParams := request.ErrInvalidParams{Context: "StartReplayInput"}
13110	if s.Destination == nil {
13111		invalidParams.Add(request.NewErrParamRequired("Destination"))
13112	}
13113	if s.EventEndTime == nil {
13114		invalidParams.Add(request.NewErrParamRequired("EventEndTime"))
13115	}
13116	if s.EventSourceArn == nil {
13117		invalidParams.Add(request.NewErrParamRequired("EventSourceArn"))
13118	}
13119	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
13120		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
13121	}
13122	if s.EventStartTime == nil {
13123		invalidParams.Add(request.NewErrParamRequired("EventStartTime"))
13124	}
13125	if s.ReplayName == nil {
13126		invalidParams.Add(request.NewErrParamRequired("ReplayName"))
13127	}
13128	if s.ReplayName != nil && len(*s.ReplayName) < 1 {
13129		invalidParams.Add(request.NewErrParamMinLen("ReplayName", 1))
13130	}
13131	if s.Destination != nil {
13132		if err := s.Destination.Validate(); err != nil {
13133			invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
13134		}
13135	}
13136
13137	if invalidParams.Len() > 0 {
13138		return invalidParams
13139	}
13140	return nil
13141}
13142
13143// SetDescription sets the Description field's value.
13144func (s *StartReplayInput) SetDescription(v string) *StartReplayInput {
13145	s.Description = &v
13146	return s
13147}
13148
13149// SetDestination sets the Destination field's value.
13150func (s *StartReplayInput) SetDestination(v *ReplayDestination) *StartReplayInput {
13151	s.Destination = v
13152	return s
13153}
13154
13155// SetEventEndTime sets the EventEndTime field's value.
13156func (s *StartReplayInput) SetEventEndTime(v time.Time) *StartReplayInput {
13157	s.EventEndTime = &v
13158	return s
13159}
13160
13161// SetEventSourceArn sets the EventSourceArn field's value.
13162func (s *StartReplayInput) SetEventSourceArn(v string) *StartReplayInput {
13163	s.EventSourceArn = &v
13164	return s
13165}
13166
13167// SetEventStartTime sets the EventStartTime field's value.
13168func (s *StartReplayInput) SetEventStartTime(v time.Time) *StartReplayInput {
13169	s.EventStartTime = &v
13170	return s
13171}
13172
13173// SetReplayName sets the ReplayName field's value.
13174func (s *StartReplayInput) SetReplayName(v string) *StartReplayInput {
13175	s.ReplayName = &v
13176	return s
13177}
13178
13179type StartReplayOutput struct {
13180	_ struct{} `type:"structure"`
13181
13182	// The ARN of the replay.
13183	ReplayArn *string `min:"1" type:"string"`
13184
13185	// The time at which the replay started.
13186	ReplayStartTime *time.Time `type:"timestamp"`
13187
13188	// The state of the replay.
13189	State *string `type:"string" enum:"ReplayState"`
13190
13191	// The reason that the replay is in the state.
13192	StateReason *string `type:"string"`
13193}
13194
13195// String returns the string representation
13196func (s StartReplayOutput) String() string {
13197	return awsutil.Prettify(s)
13198}
13199
13200// GoString returns the string representation
13201func (s StartReplayOutput) GoString() string {
13202	return s.String()
13203}
13204
13205// SetReplayArn sets the ReplayArn field's value.
13206func (s *StartReplayOutput) SetReplayArn(v string) *StartReplayOutput {
13207	s.ReplayArn = &v
13208	return s
13209}
13210
13211// SetReplayStartTime sets the ReplayStartTime field's value.
13212func (s *StartReplayOutput) SetReplayStartTime(v time.Time) *StartReplayOutput {
13213	s.ReplayStartTime = &v
13214	return s
13215}
13216
13217// SetState sets the State field's value.
13218func (s *StartReplayOutput) SetState(v string) *StartReplayOutput {
13219	s.State = &v
13220	return s
13221}
13222
13223// SetStateReason sets the StateReason field's value.
13224func (s *StartReplayOutput) SetStateReason(v string) *StartReplayOutput {
13225	s.StateReason = &v
13226	return s
13227}
13228
13229// A key-value pair associated with an Amazon Web Services resource. In EventBridge,
13230// rules and event buses support tagging.
13231type Tag struct {
13232	_ struct{} `type:"structure"`
13233
13234	// A string you can use to assign a value. The combination of tag keys and values
13235	// can help you organize and categorize your resources.
13236	//
13237	// Key is a required field
13238	Key *string `min:"1" type:"string" required:"true"`
13239
13240	// The value for the specified tag key.
13241	//
13242	// Value is a required field
13243	Value *string `type:"string" required:"true"`
13244}
13245
13246// String returns the string representation
13247func (s Tag) String() string {
13248	return awsutil.Prettify(s)
13249}
13250
13251// GoString returns the string representation
13252func (s Tag) GoString() string {
13253	return s.String()
13254}
13255
13256// Validate inspects the fields of the type to determine if they are valid.
13257func (s *Tag) Validate() error {
13258	invalidParams := request.ErrInvalidParams{Context: "Tag"}
13259	if s.Key == nil {
13260		invalidParams.Add(request.NewErrParamRequired("Key"))
13261	}
13262	if s.Key != nil && len(*s.Key) < 1 {
13263		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13264	}
13265	if s.Value == nil {
13266		invalidParams.Add(request.NewErrParamRequired("Value"))
13267	}
13268
13269	if invalidParams.Len() > 0 {
13270		return invalidParams
13271	}
13272	return nil
13273}
13274
13275// SetKey sets the Key field's value.
13276func (s *Tag) SetKey(v string) *Tag {
13277	s.Key = &v
13278	return s
13279}
13280
13281// SetValue sets the Value field's value.
13282func (s *Tag) SetValue(v string) *Tag {
13283	s.Value = &v
13284	return s
13285}
13286
13287type TagResourceInput struct {
13288	_ struct{} `type:"structure"`
13289
13290	// The ARN of the EventBridge resource that you're adding tags to.
13291	//
13292	// ResourceARN is a required field
13293	ResourceARN *string `min:"1" type:"string" required:"true"`
13294
13295	// The list of key-value pairs to associate with the resource.
13296	//
13297	// Tags is a required field
13298	Tags []*Tag `type:"list" required:"true"`
13299}
13300
13301// String returns the string representation
13302func (s TagResourceInput) String() string {
13303	return awsutil.Prettify(s)
13304}
13305
13306// GoString returns the string representation
13307func (s TagResourceInput) GoString() string {
13308	return s.String()
13309}
13310
13311// Validate inspects the fields of the type to determine if they are valid.
13312func (s *TagResourceInput) Validate() error {
13313	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
13314	if s.ResourceARN == nil {
13315		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
13316	}
13317	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
13318		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
13319	}
13320	if s.Tags == nil {
13321		invalidParams.Add(request.NewErrParamRequired("Tags"))
13322	}
13323	if s.Tags != nil {
13324		for i, v := range s.Tags {
13325			if v == nil {
13326				continue
13327			}
13328			if err := v.Validate(); err != nil {
13329				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
13330			}
13331		}
13332	}
13333
13334	if invalidParams.Len() > 0 {
13335		return invalidParams
13336	}
13337	return nil
13338}
13339
13340// SetResourceARN sets the ResourceARN field's value.
13341func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput {
13342	s.ResourceARN = &v
13343	return s
13344}
13345
13346// SetTags sets the Tags field's value.
13347func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
13348	s.Tags = v
13349	return s
13350}
13351
13352type TagResourceOutput struct {
13353	_ struct{} `type:"structure"`
13354}
13355
13356// String returns the string representation
13357func (s TagResourceOutput) String() string {
13358	return awsutil.Prettify(s)
13359}
13360
13361// GoString returns the string representation
13362func (s TagResourceOutput) GoString() string {
13363	return s.String()
13364}
13365
13366// Targets are the resources to be invoked when a rule is triggered. For a complete
13367// list of services and resources that can be set as a target, see PutTargets
13368// (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutTargets.html).
13369//
13370// If you are setting the event bus of another account as the target, and that
13371// account granted permission to your account through an organization instead
13372// of directly by the account ID, then you must specify a RoleArn with proper
13373// permissions in the Target structure. For more information, see Sending and
13374// Receiving Events Between Amazon Web Services Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html)
13375// in the Amazon EventBridge User Guide.
13376type Target struct {
13377	_ struct{} `type:"structure"`
13378
13379	// The Amazon Resource Name (ARN) of the target.
13380	//
13381	// Arn is a required field
13382	Arn *string `min:"1" type:"string" required:"true"`
13383
13384	// If the event target is an Batch job, this contains the job definition, job
13385	// name, and other parameters. For more information, see Jobs (https://docs.aws.amazon.com/batch/latest/userguide/jobs.html)
13386	// in the Batch User Guide.
13387	BatchParameters *BatchParameters `type:"structure"`
13388
13389	// The DeadLetterConfig that defines the target queue to send dead-letter queue
13390	// events to.
13391	DeadLetterConfig *DeadLetterConfig `type:"structure"`
13392
13393	// Contains the Amazon ECS task definition and task count to be used, if the
13394	// event target is an Amazon ECS task. For more information about Amazon ECS
13395	// tasks, see Task Definitions (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html)
13396	// in the Amazon EC2 Container Service Developer Guide.
13397	EcsParameters *EcsParameters `type:"structure"`
13398
13399	// Contains the HTTP parameters to use when the target is a API Gateway REST
13400	// endpoint or EventBridge ApiDestination.
13401	//
13402	// If you specify an API Gateway REST API or EventBridge ApiDestination as a
13403	// target, you can use this parameter to specify headers, path parameters, and
13404	// query string keys/values as part of your target invoking request. If you're
13405	// using ApiDestinations, the corresponding Connection can also have these values
13406	// configured. In case of any conflicting keys, values from the Connection take
13407	// precedence.
13408	HttpParameters *HttpParameters `type:"structure"`
13409
13410	// The ID of the target. We recommend using a memorable and unique string.
13411	//
13412	// Id is a required field
13413	Id *string `min:"1" type:"string" required:"true"`
13414
13415	// Valid JSON text passed to the target. In this case, nothing from the event
13416	// itself is passed to the target. For more information, see The JavaScript
13417	// Object Notation (JSON) Data Interchange Format (http://www.rfc-editor.org/rfc/rfc7159.txt).
13418	Input *string `type:"string"`
13419
13420	// The value of the JSONPath that is used for extracting part of the matched
13421	// event when passing it to the target. You must use JSON dot notation, not
13422	// bracket notation. For more information about JSON paths, see JSONPath (http://goessner.net/articles/JsonPath/).
13423	InputPath *string `type:"string"`
13424
13425	// Settings to enable you to provide custom input to a target based on certain
13426	// event data. You can extract one or more key-value pairs from the event and
13427	// then use that data to send customized input to the target.
13428	InputTransformer *InputTransformer `type:"structure"`
13429
13430	// The custom parameter you can use to control the shard assignment, when the
13431	// target is a Kinesis data stream. If you do not include this parameter, the
13432	// default is to use the eventId as the partition key.
13433	KinesisParameters *KinesisParameters `type:"structure"`
13434
13435	// Contains the Amazon Redshift Data API parameters to use when the target is
13436	// a Amazon Redshift cluster.
13437	//
13438	// If you specify a Amazon Redshift Cluster as a Target, you can use this to
13439	// specify parameters to invoke the Amazon Redshift Data API ExecuteStatement
13440	// based on EventBridge events.
13441	RedshiftDataParameters *RedshiftDataParameters `type:"structure"`
13442
13443	// The RetryPolicy object that contains the retry policy configuration to use
13444	// for the dead-letter queue.
13445	RetryPolicy *RetryPolicy `type:"structure"`
13446
13447	// The Amazon Resource Name (ARN) of the IAM role to be used for this target
13448	// when the rule is triggered. If one rule triggers multiple targets, you can
13449	// use a different IAM role for each target.
13450	RoleArn *string `min:"1" type:"string"`
13451
13452	// Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
13453	RunCommandParameters *RunCommandParameters `type:"structure"`
13454
13455	// Contains the SageMaker Model Building Pipeline parameters to start execution
13456	// of a SageMaker Model Building Pipeline.
13457	//
13458	// If you specify a SageMaker Model Building Pipeline as a target, you can use
13459	// this to specify parameters to start a pipeline execution based on EventBridge
13460	// events.
13461	SageMakerPipelineParameters *SageMakerPipelineParameters `type:"structure"`
13462
13463	// Contains the message group ID to use when the target is a FIFO queue.
13464	//
13465	// If you specify an SQS FIFO queue as a target, the queue must have content-based
13466	// deduplication enabled.
13467	SqsParameters *SqsParameters `type:"structure"`
13468}
13469
13470// String returns the string representation
13471func (s Target) String() string {
13472	return awsutil.Prettify(s)
13473}
13474
13475// GoString returns the string representation
13476func (s Target) GoString() string {
13477	return s.String()
13478}
13479
13480// Validate inspects the fields of the type to determine if they are valid.
13481func (s *Target) Validate() error {
13482	invalidParams := request.ErrInvalidParams{Context: "Target"}
13483	if s.Arn == nil {
13484		invalidParams.Add(request.NewErrParamRequired("Arn"))
13485	}
13486	if s.Arn != nil && len(*s.Arn) < 1 {
13487		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
13488	}
13489	if s.Id == nil {
13490		invalidParams.Add(request.NewErrParamRequired("Id"))
13491	}
13492	if s.Id != nil && len(*s.Id) < 1 {
13493		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
13494	}
13495	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
13496		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
13497	}
13498	if s.BatchParameters != nil {
13499		if err := s.BatchParameters.Validate(); err != nil {
13500			invalidParams.AddNested("BatchParameters", err.(request.ErrInvalidParams))
13501		}
13502	}
13503	if s.DeadLetterConfig != nil {
13504		if err := s.DeadLetterConfig.Validate(); err != nil {
13505			invalidParams.AddNested("DeadLetterConfig", err.(request.ErrInvalidParams))
13506		}
13507	}
13508	if s.EcsParameters != nil {
13509		if err := s.EcsParameters.Validate(); err != nil {
13510			invalidParams.AddNested("EcsParameters", err.(request.ErrInvalidParams))
13511		}
13512	}
13513	if s.InputTransformer != nil {
13514		if err := s.InputTransformer.Validate(); err != nil {
13515			invalidParams.AddNested("InputTransformer", err.(request.ErrInvalidParams))
13516		}
13517	}
13518	if s.KinesisParameters != nil {
13519		if err := s.KinesisParameters.Validate(); err != nil {
13520			invalidParams.AddNested("KinesisParameters", err.(request.ErrInvalidParams))
13521		}
13522	}
13523	if s.RedshiftDataParameters != nil {
13524		if err := s.RedshiftDataParameters.Validate(); err != nil {
13525			invalidParams.AddNested("RedshiftDataParameters", err.(request.ErrInvalidParams))
13526		}
13527	}
13528	if s.RetryPolicy != nil {
13529		if err := s.RetryPolicy.Validate(); err != nil {
13530			invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams))
13531		}
13532	}
13533	if s.RunCommandParameters != nil {
13534		if err := s.RunCommandParameters.Validate(); err != nil {
13535			invalidParams.AddNested("RunCommandParameters", err.(request.ErrInvalidParams))
13536		}
13537	}
13538	if s.SageMakerPipelineParameters != nil {
13539		if err := s.SageMakerPipelineParameters.Validate(); err != nil {
13540			invalidParams.AddNested("SageMakerPipelineParameters", err.(request.ErrInvalidParams))
13541		}
13542	}
13543
13544	if invalidParams.Len() > 0 {
13545		return invalidParams
13546	}
13547	return nil
13548}
13549
13550// SetArn sets the Arn field's value.
13551func (s *Target) SetArn(v string) *Target {
13552	s.Arn = &v
13553	return s
13554}
13555
13556// SetBatchParameters sets the BatchParameters field's value.
13557func (s *Target) SetBatchParameters(v *BatchParameters) *Target {
13558	s.BatchParameters = v
13559	return s
13560}
13561
13562// SetDeadLetterConfig sets the DeadLetterConfig field's value.
13563func (s *Target) SetDeadLetterConfig(v *DeadLetterConfig) *Target {
13564	s.DeadLetterConfig = v
13565	return s
13566}
13567
13568// SetEcsParameters sets the EcsParameters field's value.
13569func (s *Target) SetEcsParameters(v *EcsParameters) *Target {
13570	s.EcsParameters = v
13571	return s
13572}
13573
13574// SetHttpParameters sets the HttpParameters field's value.
13575func (s *Target) SetHttpParameters(v *HttpParameters) *Target {
13576	s.HttpParameters = v
13577	return s
13578}
13579
13580// SetId sets the Id field's value.
13581func (s *Target) SetId(v string) *Target {
13582	s.Id = &v
13583	return s
13584}
13585
13586// SetInput sets the Input field's value.
13587func (s *Target) SetInput(v string) *Target {
13588	s.Input = &v
13589	return s
13590}
13591
13592// SetInputPath sets the InputPath field's value.
13593func (s *Target) SetInputPath(v string) *Target {
13594	s.InputPath = &v
13595	return s
13596}
13597
13598// SetInputTransformer sets the InputTransformer field's value.
13599func (s *Target) SetInputTransformer(v *InputTransformer) *Target {
13600	s.InputTransformer = v
13601	return s
13602}
13603
13604// SetKinesisParameters sets the KinesisParameters field's value.
13605func (s *Target) SetKinesisParameters(v *KinesisParameters) *Target {
13606	s.KinesisParameters = v
13607	return s
13608}
13609
13610// SetRedshiftDataParameters sets the RedshiftDataParameters field's value.
13611func (s *Target) SetRedshiftDataParameters(v *RedshiftDataParameters) *Target {
13612	s.RedshiftDataParameters = v
13613	return s
13614}
13615
13616// SetRetryPolicy sets the RetryPolicy field's value.
13617func (s *Target) SetRetryPolicy(v *RetryPolicy) *Target {
13618	s.RetryPolicy = v
13619	return s
13620}
13621
13622// SetRoleArn sets the RoleArn field's value.
13623func (s *Target) SetRoleArn(v string) *Target {
13624	s.RoleArn = &v
13625	return s
13626}
13627
13628// SetRunCommandParameters sets the RunCommandParameters field's value.
13629func (s *Target) SetRunCommandParameters(v *RunCommandParameters) *Target {
13630	s.RunCommandParameters = v
13631	return s
13632}
13633
13634// SetSageMakerPipelineParameters sets the SageMakerPipelineParameters field's value.
13635func (s *Target) SetSageMakerPipelineParameters(v *SageMakerPipelineParameters) *Target {
13636	s.SageMakerPipelineParameters = v
13637	return s
13638}
13639
13640// SetSqsParameters sets the SqsParameters field's value.
13641func (s *Target) SetSqsParameters(v *SqsParameters) *Target {
13642	s.SqsParameters = v
13643	return s
13644}
13645
13646type TestEventPatternInput struct {
13647	_ struct{} `type:"structure"`
13648
13649	// The event, in JSON format, to test against the event pattern. The JSON must
13650	// follow the format specified in Amazon Web Services Events (https://docs.aws.amazon.com/eventbridge/latest/userguide/aws-events.html),
13651	// and the following fields are mandatory:
13652	//
13653	//    * id
13654	//
13655	//    * account
13656	//
13657	//    * source
13658	//
13659	//    * time
13660	//
13661	//    * region
13662	//
13663	//    * resources
13664	//
13665	//    * detail-type
13666	//
13667	// Event is a required field
13668	Event *string `type:"string" required:"true"`
13669
13670	// The event pattern. For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
13671	// in the Amazon EventBridge User Guide.
13672	//
13673	// EventPattern is a required field
13674	EventPattern *string `type:"string" required:"true"`
13675}
13676
13677// String returns the string representation
13678func (s TestEventPatternInput) String() string {
13679	return awsutil.Prettify(s)
13680}
13681
13682// GoString returns the string representation
13683func (s TestEventPatternInput) GoString() string {
13684	return s.String()
13685}
13686
13687// Validate inspects the fields of the type to determine if they are valid.
13688func (s *TestEventPatternInput) Validate() error {
13689	invalidParams := request.ErrInvalidParams{Context: "TestEventPatternInput"}
13690	if s.Event == nil {
13691		invalidParams.Add(request.NewErrParamRequired("Event"))
13692	}
13693	if s.EventPattern == nil {
13694		invalidParams.Add(request.NewErrParamRequired("EventPattern"))
13695	}
13696
13697	if invalidParams.Len() > 0 {
13698		return invalidParams
13699	}
13700	return nil
13701}
13702
13703// SetEvent sets the Event field's value.
13704func (s *TestEventPatternInput) SetEvent(v string) *TestEventPatternInput {
13705	s.Event = &v
13706	return s
13707}
13708
13709// SetEventPattern sets the EventPattern field's value.
13710func (s *TestEventPatternInput) SetEventPattern(v string) *TestEventPatternInput {
13711	s.EventPattern = &v
13712	return s
13713}
13714
13715type TestEventPatternOutput struct {
13716	_ struct{} `type:"structure"`
13717
13718	// Indicates whether the event matches the event pattern.
13719	Result *bool `type:"boolean"`
13720}
13721
13722// String returns the string representation
13723func (s TestEventPatternOutput) String() string {
13724	return awsutil.Prettify(s)
13725}
13726
13727// GoString returns the string representation
13728func (s TestEventPatternOutput) GoString() string {
13729	return s.String()
13730}
13731
13732// SetResult sets the Result field's value.
13733func (s *TestEventPatternOutput) SetResult(v bool) *TestEventPatternOutput {
13734	s.Result = &v
13735	return s
13736}
13737
13738type UntagResourceInput struct {
13739	_ struct{} `type:"structure"`
13740
13741	// The ARN of the EventBridge resource from which you are removing tags.
13742	//
13743	// ResourceARN is a required field
13744	ResourceARN *string `min:"1" type:"string" required:"true"`
13745
13746	// The list of tag keys to remove from the resource.
13747	//
13748	// TagKeys is a required field
13749	TagKeys []*string `type:"list" required:"true"`
13750}
13751
13752// String returns the string representation
13753func (s UntagResourceInput) String() string {
13754	return awsutil.Prettify(s)
13755}
13756
13757// GoString returns the string representation
13758func (s UntagResourceInput) GoString() string {
13759	return s.String()
13760}
13761
13762// Validate inspects the fields of the type to determine if they are valid.
13763func (s *UntagResourceInput) Validate() error {
13764	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
13765	if s.ResourceARN == nil {
13766		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
13767	}
13768	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
13769		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
13770	}
13771	if s.TagKeys == nil {
13772		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
13773	}
13774
13775	if invalidParams.Len() > 0 {
13776		return invalidParams
13777	}
13778	return nil
13779}
13780
13781// SetResourceARN sets the ResourceARN field's value.
13782func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput {
13783	s.ResourceARN = &v
13784	return s
13785}
13786
13787// SetTagKeys sets the TagKeys field's value.
13788func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
13789	s.TagKeys = v
13790	return s
13791}
13792
13793type UntagResourceOutput struct {
13794	_ struct{} `type:"structure"`
13795}
13796
13797// String returns the string representation
13798func (s UntagResourceOutput) String() string {
13799	return awsutil.Prettify(s)
13800}
13801
13802// GoString returns the string representation
13803func (s UntagResourceOutput) GoString() string {
13804	return s.String()
13805}
13806
13807type UpdateApiDestinationInput struct {
13808	_ struct{} `type:"structure"`
13809
13810	// The ARN of the connection to use for the API destination.
13811	ConnectionArn *string `min:"1" type:"string"`
13812
13813	// The name of the API destination to update.
13814	Description *string `type:"string"`
13815
13816	// The method to use for the API destination.
13817	HttpMethod *string `type:"string" enum:"ApiDestinationHttpMethod"`
13818
13819	// The URL to the endpoint to use for the API destination.
13820	InvocationEndpoint *string `min:"1" type:"string"`
13821
13822	// The maximum number of invocations per second to send to the API destination.
13823	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
13824
13825	// The name of the API destination to update.
13826	//
13827	// Name is a required field
13828	Name *string `min:"1" type:"string" required:"true"`
13829}
13830
13831// String returns the string representation
13832func (s UpdateApiDestinationInput) String() string {
13833	return awsutil.Prettify(s)
13834}
13835
13836// GoString returns the string representation
13837func (s UpdateApiDestinationInput) GoString() string {
13838	return s.String()
13839}
13840
13841// Validate inspects the fields of the type to determine if they are valid.
13842func (s *UpdateApiDestinationInput) Validate() error {
13843	invalidParams := request.ErrInvalidParams{Context: "UpdateApiDestinationInput"}
13844	if s.ConnectionArn != nil && len(*s.ConnectionArn) < 1 {
13845		invalidParams.Add(request.NewErrParamMinLen("ConnectionArn", 1))
13846	}
13847	if s.InvocationEndpoint != nil && len(*s.InvocationEndpoint) < 1 {
13848		invalidParams.Add(request.NewErrParamMinLen("InvocationEndpoint", 1))
13849	}
13850	if s.InvocationRateLimitPerSecond != nil && *s.InvocationRateLimitPerSecond < 1 {
13851		invalidParams.Add(request.NewErrParamMinValue("InvocationRateLimitPerSecond", 1))
13852	}
13853	if s.Name == nil {
13854		invalidParams.Add(request.NewErrParamRequired("Name"))
13855	}
13856	if s.Name != nil && len(*s.Name) < 1 {
13857		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
13858	}
13859
13860	if invalidParams.Len() > 0 {
13861		return invalidParams
13862	}
13863	return nil
13864}
13865
13866// SetConnectionArn sets the ConnectionArn field's value.
13867func (s *UpdateApiDestinationInput) SetConnectionArn(v string) *UpdateApiDestinationInput {
13868	s.ConnectionArn = &v
13869	return s
13870}
13871
13872// SetDescription sets the Description field's value.
13873func (s *UpdateApiDestinationInput) SetDescription(v string) *UpdateApiDestinationInput {
13874	s.Description = &v
13875	return s
13876}
13877
13878// SetHttpMethod sets the HttpMethod field's value.
13879func (s *UpdateApiDestinationInput) SetHttpMethod(v string) *UpdateApiDestinationInput {
13880	s.HttpMethod = &v
13881	return s
13882}
13883
13884// SetInvocationEndpoint sets the InvocationEndpoint field's value.
13885func (s *UpdateApiDestinationInput) SetInvocationEndpoint(v string) *UpdateApiDestinationInput {
13886	s.InvocationEndpoint = &v
13887	return s
13888}
13889
13890// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
13891func (s *UpdateApiDestinationInput) SetInvocationRateLimitPerSecond(v int64) *UpdateApiDestinationInput {
13892	s.InvocationRateLimitPerSecond = &v
13893	return s
13894}
13895
13896// SetName sets the Name field's value.
13897func (s *UpdateApiDestinationInput) SetName(v string) *UpdateApiDestinationInput {
13898	s.Name = &v
13899	return s
13900}
13901
13902type UpdateApiDestinationOutput struct {
13903	_ struct{} `type:"structure"`
13904
13905	// The ARN of the API destination that was updated.
13906	ApiDestinationArn *string `min:"1" type:"string"`
13907
13908	// The state of the API destination that was updated.
13909	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
13910
13911	// A time stamp for the time that the API destination was created.
13912	CreationTime *time.Time `type:"timestamp"`
13913
13914	// A time stamp for the time that the API destination was last modified.
13915	LastModifiedTime *time.Time `type:"timestamp"`
13916}
13917
13918// String returns the string representation
13919func (s UpdateApiDestinationOutput) String() string {
13920	return awsutil.Prettify(s)
13921}
13922
13923// GoString returns the string representation
13924func (s UpdateApiDestinationOutput) GoString() string {
13925	return s.String()
13926}
13927
13928// SetApiDestinationArn sets the ApiDestinationArn field's value.
13929func (s *UpdateApiDestinationOutput) SetApiDestinationArn(v string) *UpdateApiDestinationOutput {
13930	s.ApiDestinationArn = &v
13931	return s
13932}
13933
13934// SetApiDestinationState sets the ApiDestinationState field's value.
13935func (s *UpdateApiDestinationOutput) SetApiDestinationState(v string) *UpdateApiDestinationOutput {
13936	s.ApiDestinationState = &v
13937	return s
13938}
13939
13940// SetCreationTime sets the CreationTime field's value.
13941func (s *UpdateApiDestinationOutput) SetCreationTime(v time.Time) *UpdateApiDestinationOutput {
13942	s.CreationTime = &v
13943	return s
13944}
13945
13946// SetLastModifiedTime sets the LastModifiedTime field's value.
13947func (s *UpdateApiDestinationOutput) SetLastModifiedTime(v time.Time) *UpdateApiDestinationOutput {
13948	s.LastModifiedTime = &v
13949	return s
13950}
13951
13952type UpdateArchiveInput struct {
13953	_ struct{} `type:"structure"`
13954
13955	// The name of the archive to update.
13956	//
13957	// ArchiveName is a required field
13958	ArchiveName *string `min:"1" type:"string" required:"true"`
13959
13960	// The description for the archive.
13961	Description *string `type:"string"`
13962
13963	// The event pattern to use to filter events sent to the archive.
13964	EventPattern *string `type:"string"`
13965
13966	// The number of days to retain events in the archive.
13967	RetentionDays *int64 `type:"integer"`
13968}
13969
13970// String returns the string representation
13971func (s UpdateArchiveInput) String() string {
13972	return awsutil.Prettify(s)
13973}
13974
13975// GoString returns the string representation
13976func (s UpdateArchiveInput) GoString() string {
13977	return s.String()
13978}
13979
13980// Validate inspects the fields of the type to determine if they are valid.
13981func (s *UpdateArchiveInput) Validate() error {
13982	invalidParams := request.ErrInvalidParams{Context: "UpdateArchiveInput"}
13983	if s.ArchiveName == nil {
13984		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
13985	}
13986	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
13987		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
13988	}
13989
13990	if invalidParams.Len() > 0 {
13991		return invalidParams
13992	}
13993	return nil
13994}
13995
13996// SetArchiveName sets the ArchiveName field's value.
13997func (s *UpdateArchiveInput) SetArchiveName(v string) *UpdateArchiveInput {
13998	s.ArchiveName = &v
13999	return s
14000}
14001
14002// SetDescription sets the Description field's value.
14003func (s *UpdateArchiveInput) SetDescription(v string) *UpdateArchiveInput {
14004	s.Description = &v
14005	return s
14006}
14007
14008// SetEventPattern sets the EventPattern field's value.
14009func (s *UpdateArchiveInput) SetEventPattern(v string) *UpdateArchiveInput {
14010	s.EventPattern = &v
14011	return s
14012}
14013
14014// SetRetentionDays sets the RetentionDays field's value.
14015func (s *UpdateArchiveInput) SetRetentionDays(v int64) *UpdateArchiveInput {
14016	s.RetentionDays = &v
14017	return s
14018}
14019
14020type UpdateArchiveOutput struct {
14021	_ struct{} `type:"structure"`
14022
14023	// The ARN of the archive.
14024	ArchiveArn *string `min:"1" type:"string"`
14025
14026	// The time at which the archive was updated.
14027	CreationTime *time.Time `type:"timestamp"`
14028
14029	// The state of the archive.
14030	State *string `type:"string" enum:"ArchiveState"`
14031
14032	// The reason that the archive is in the current state.
14033	StateReason *string `type:"string"`
14034}
14035
14036// String returns the string representation
14037func (s UpdateArchiveOutput) String() string {
14038	return awsutil.Prettify(s)
14039}
14040
14041// GoString returns the string representation
14042func (s UpdateArchiveOutput) GoString() string {
14043	return s.String()
14044}
14045
14046// SetArchiveArn sets the ArchiveArn field's value.
14047func (s *UpdateArchiveOutput) SetArchiveArn(v string) *UpdateArchiveOutput {
14048	s.ArchiveArn = &v
14049	return s
14050}
14051
14052// SetCreationTime sets the CreationTime field's value.
14053func (s *UpdateArchiveOutput) SetCreationTime(v time.Time) *UpdateArchiveOutput {
14054	s.CreationTime = &v
14055	return s
14056}
14057
14058// SetState sets the State field's value.
14059func (s *UpdateArchiveOutput) SetState(v string) *UpdateArchiveOutput {
14060	s.State = &v
14061	return s
14062}
14063
14064// SetStateReason sets the StateReason field's value.
14065func (s *UpdateArchiveOutput) SetStateReason(v string) *UpdateArchiveOutput {
14066	s.StateReason = &v
14067	return s
14068}
14069
14070// Contains the API key authorization parameters to use to update the connection.
14071type UpdateConnectionApiKeyAuthRequestParameters struct {
14072	_ struct{} `type:"structure"`
14073
14074	// The name of the API key to use for authorization.
14075	ApiKeyName *string `min:"1" type:"string"`
14076
14077	// The value associated with teh API key to use for authorization.
14078	ApiKeyValue *string `min:"1" type:"string"`
14079}
14080
14081// String returns the string representation
14082func (s UpdateConnectionApiKeyAuthRequestParameters) String() string {
14083	return awsutil.Prettify(s)
14084}
14085
14086// GoString returns the string representation
14087func (s UpdateConnectionApiKeyAuthRequestParameters) GoString() string {
14088	return s.String()
14089}
14090
14091// Validate inspects the fields of the type to determine if they are valid.
14092func (s *UpdateConnectionApiKeyAuthRequestParameters) Validate() error {
14093	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionApiKeyAuthRequestParameters"}
14094	if s.ApiKeyName != nil && len(*s.ApiKeyName) < 1 {
14095		invalidParams.Add(request.NewErrParamMinLen("ApiKeyName", 1))
14096	}
14097	if s.ApiKeyValue != nil && len(*s.ApiKeyValue) < 1 {
14098		invalidParams.Add(request.NewErrParamMinLen("ApiKeyValue", 1))
14099	}
14100
14101	if invalidParams.Len() > 0 {
14102		return invalidParams
14103	}
14104	return nil
14105}
14106
14107// SetApiKeyName sets the ApiKeyName field's value.
14108func (s *UpdateConnectionApiKeyAuthRequestParameters) SetApiKeyName(v string) *UpdateConnectionApiKeyAuthRequestParameters {
14109	s.ApiKeyName = &v
14110	return s
14111}
14112
14113// SetApiKeyValue sets the ApiKeyValue field's value.
14114func (s *UpdateConnectionApiKeyAuthRequestParameters) SetApiKeyValue(v string) *UpdateConnectionApiKeyAuthRequestParameters {
14115	s.ApiKeyValue = &v
14116	return s
14117}
14118
14119// Contains the additional parameters to use for the connection.
14120type UpdateConnectionAuthRequestParameters struct {
14121	_ struct{} `type:"structure"`
14122
14123	// A UpdateConnectionApiKeyAuthRequestParameters object that contains the authorization
14124	// parameters for API key authorization.
14125	ApiKeyAuthParameters *UpdateConnectionApiKeyAuthRequestParameters `type:"structure"`
14126
14127	// A UpdateConnectionBasicAuthRequestParameters object that contains the authorization
14128	// parameters for Basic authorization.
14129	BasicAuthParameters *UpdateConnectionBasicAuthRequestParameters `type:"structure"`
14130
14131	// A ConnectionHttpParameters object that contains the additional parameters
14132	// to use for the connection.
14133	InvocationHttpParameters *ConnectionHttpParameters `type:"structure"`
14134
14135	// A UpdateConnectionOAuthRequestParameters object that contains the authorization
14136	// parameters for OAuth authorization.
14137	OAuthParameters *UpdateConnectionOAuthRequestParameters `type:"structure"`
14138}
14139
14140// String returns the string representation
14141func (s UpdateConnectionAuthRequestParameters) String() string {
14142	return awsutil.Prettify(s)
14143}
14144
14145// GoString returns the string representation
14146func (s UpdateConnectionAuthRequestParameters) GoString() string {
14147	return s.String()
14148}
14149
14150// Validate inspects the fields of the type to determine if they are valid.
14151func (s *UpdateConnectionAuthRequestParameters) Validate() error {
14152	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionAuthRequestParameters"}
14153	if s.ApiKeyAuthParameters != nil {
14154		if err := s.ApiKeyAuthParameters.Validate(); err != nil {
14155			invalidParams.AddNested("ApiKeyAuthParameters", err.(request.ErrInvalidParams))
14156		}
14157	}
14158	if s.BasicAuthParameters != nil {
14159		if err := s.BasicAuthParameters.Validate(); err != nil {
14160			invalidParams.AddNested("BasicAuthParameters", err.(request.ErrInvalidParams))
14161		}
14162	}
14163	if s.OAuthParameters != nil {
14164		if err := s.OAuthParameters.Validate(); err != nil {
14165			invalidParams.AddNested("OAuthParameters", err.(request.ErrInvalidParams))
14166		}
14167	}
14168
14169	if invalidParams.Len() > 0 {
14170		return invalidParams
14171	}
14172	return nil
14173}
14174
14175// SetApiKeyAuthParameters sets the ApiKeyAuthParameters field's value.
14176func (s *UpdateConnectionAuthRequestParameters) SetApiKeyAuthParameters(v *UpdateConnectionApiKeyAuthRequestParameters) *UpdateConnectionAuthRequestParameters {
14177	s.ApiKeyAuthParameters = v
14178	return s
14179}
14180
14181// SetBasicAuthParameters sets the BasicAuthParameters field's value.
14182func (s *UpdateConnectionAuthRequestParameters) SetBasicAuthParameters(v *UpdateConnectionBasicAuthRequestParameters) *UpdateConnectionAuthRequestParameters {
14183	s.BasicAuthParameters = v
14184	return s
14185}
14186
14187// SetInvocationHttpParameters sets the InvocationHttpParameters field's value.
14188func (s *UpdateConnectionAuthRequestParameters) SetInvocationHttpParameters(v *ConnectionHttpParameters) *UpdateConnectionAuthRequestParameters {
14189	s.InvocationHttpParameters = v
14190	return s
14191}
14192
14193// SetOAuthParameters sets the OAuthParameters field's value.
14194func (s *UpdateConnectionAuthRequestParameters) SetOAuthParameters(v *UpdateConnectionOAuthRequestParameters) *UpdateConnectionAuthRequestParameters {
14195	s.OAuthParameters = v
14196	return s
14197}
14198
14199// Contains the Basic authorization parameters for the connection.
14200type UpdateConnectionBasicAuthRequestParameters struct {
14201	_ struct{} `type:"structure"`
14202
14203	// The password associated with the user name to use for Basic authorization.
14204	Password *string `min:"1" type:"string"`
14205
14206	// The user name to use for Basic authorization.
14207	Username *string `min:"1" type:"string"`
14208}
14209
14210// String returns the string representation
14211func (s UpdateConnectionBasicAuthRequestParameters) String() string {
14212	return awsutil.Prettify(s)
14213}
14214
14215// GoString returns the string representation
14216func (s UpdateConnectionBasicAuthRequestParameters) GoString() string {
14217	return s.String()
14218}
14219
14220// Validate inspects the fields of the type to determine if they are valid.
14221func (s *UpdateConnectionBasicAuthRequestParameters) Validate() error {
14222	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionBasicAuthRequestParameters"}
14223	if s.Password != nil && len(*s.Password) < 1 {
14224		invalidParams.Add(request.NewErrParamMinLen("Password", 1))
14225	}
14226	if s.Username != nil && len(*s.Username) < 1 {
14227		invalidParams.Add(request.NewErrParamMinLen("Username", 1))
14228	}
14229
14230	if invalidParams.Len() > 0 {
14231		return invalidParams
14232	}
14233	return nil
14234}
14235
14236// SetPassword sets the Password field's value.
14237func (s *UpdateConnectionBasicAuthRequestParameters) SetPassword(v string) *UpdateConnectionBasicAuthRequestParameters {
14238	s.Password = &v
14239	return s
14240}
14241
14242// SetUsername sets the Username field's value.
14243func (s *UpdateConnectionBasicAuthRequestParameters) SetUsername(v string) *UpdateConnectionBasicAuthRequestParameters {
14244	s.Username = &v
14245	return s
14246}
14247
14248type UpdateConnectionInput struct {
14249	_ struct{} `type:"structure"`
14250
14251	// The authorization parameters to use for the connection.
14252	AuthParameters *UpdateConnectionAuthRequestParameters `type:"structure"`
14253
14254	// The type of authorization to use for the connection.
14255	AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"`
14256
14257	// A description for the connection.
14258	Description *string `type:"string"`
14259
14260	// The name of the connection to update.
14261	//
14262	// Name is a required field
14263	Name *string `min:"1" type:"string" required:"true"`
14264}
14265
14266// String returns the string representation
14267func (s UpdateConnectionInput) String() string {
14268	return awsutil.Prettify(s)
14269}
14270
14271// GoString returns the string representation
14272func (s UpdateConnectionInput) GoString() string {
14273	return s.String()
14274}
14275
14276// Validate inspects the fields of the type to determine if they are valid.
14277func (s *UpdateConnectionInput) Validate() error {
14278	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionInput"}
14279	if s.Name == nil {
14280		invalidParams.Add(request.NewErrParamRequired("Name"))
14281	}
14282	if s.Name != nil && len(*s.Name) < 1 {
14283		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
14284	}
14285	if s.AuthParameters != nil {
14286		if err := s.AuthParameters.Validate(); err != nil {
14287			invalidParams.AddNested("AuthParameters", err.(request.ErrInvalidParams))
14288		}
14289	}
14290
14291	if invalidParams.Len() > 0 {
14292		return invalidParams
14293	}
14294	return nil
14295}
14296
14297// SetAuthParameters sets the AuthParameters field's value.
14298func (s *UpdateConnectionInput) SetAuthParameters(v *UpdateConnectionAuthRequestParameters) *UpdateConnectionInput {
14299	s.AuthParameters = v
14300	return s
14301}
14302
14303// SetAuthorizationType sets the AuthorizationType field's value.
14304func (s *UpdateConnectionInput) SetAuthorizationType(v string) *UpdateConnectionInput {
14305	s.AuthorizationType = &v
14306	return s
14307}
14308
14309// SetDescription sets the Description field's value.
14310func (s *UpdateConnectionInput) SetDescription(v string) *UpdateConnectionInput {
14311	s.Description = &v
14312	return s
14313}
14314
14315// SetName sets the Name field's value.
14316func (s *UpdateConnectionInput) SetName(v string) *UpdateConnectionInput {
14317	s.Name = &v
14318	return s
14319}
14320
14321// Contains the OAuth authorization parameters to use for the connection.
14322type UpdateConnectionOAuthClientRequestParameters struct {
14323	_ struct{} `type:"structure"`
14324
14325	// The client ID to use for OAuth authorization.
14326	ClientID *string `min:"1" type:"string"`
14327
14328	// The client secret assciated with the client ID to use for OAuth authorization.
14329	ClientSecret *string `min:"1" type:"string"`
14330}
14331
14332// String returns the string representation
14333func (s UpdateConnectionOAuthClientRequestParameters) String() string {
14334	return awsutil.Prettify(s)
14335}
14336
14337// GoString returns the string representation
14338func (s UpdateConnectionOAuthClientRequestParameters) GoString() string {
14339	return s.String()
14340}
14341
14342// Validate inspects the fields of the type to determine if they are valid.
14343func (s *UpdateConnectionOAuthClientRequestParameters) Validate() error {
14344	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionOAuthClientRequestParameters"}
14345	if s.ClientID != nil && len(*s.ClientID) < 1 {
14346		invalidParams.Add(request.NewErrParamMinLen("ClientID", 1))
14347	}
14348	if s.ClientSecret != nil && len(*s.ClientSecret) < 1 {
14349		invalidParams.Add(request.NewErrParamMinLen("ClientSecret", 1))
14350	}
14351
14352	if invalidParams.Len() > 0 {
14353		return invalidParams
14354	}
14355	return nil
14356}
14357
14358// SetClientID sets the ClientID field's value.
14359func (s *UpdateConnectionOAuthClientRequestParameters) SetClientID(v string) *UpdateConnectionOAuthClientRequestParameters {
14360	s.ClientID = &v
14361	return s
14362}
14363
14364// SetClientSecret sets the ClientSecret field's value.
14365func (s *UpdateConnectionOAuthClientRequestParameters) SetClientSecret(v string) *UpdateConnectionOAuthClientRequestParameters {
14366	s.ClientSecret = &v
14367	return s
14368}
14369
14370// Contains the OAuth request parameters to use for the connection.
14371type UpdateConnectionOAuthRequestParameters struct {
14372	_ struct{} `type:"structure"`
14373
14374	// The URL to the authorization endpoint when OAuth is specified as the authorization
14375	// type.
14376	AuthorizationEndpoint *string `min:"1" type:"string"`
14377
14378	// A UpdateConnectionOAuthClientRequestParameters object that contains the client
14379	// parameters to use for the connection when OAuth is specified as the authorization
14380	// type.
14381	ClientParameters *UpdateConnectionOAuthClientRequestParameters `type:"structure"`
14382
14383	// The method used to connect to the HTTP endpoint.
14384	HttpMethod *string `type:"string" enum:"ConnectionOAuthHttpMethod"`
14385
14386	// The additional HTTP parameters used for the OAuth authorization request.
14387	OAuthHttpParameters *ConnectionHttpParameters `type:"structure"`
14388}
14389
14390// String returns the string representation
14391func (s UpdateConnectionOAuthRequestParameters) String() string {
14392	return awsutil.Prettify(s)
14393}
14394
14395// GoString returns the string representation
14396func (s UpdateConnectionOAuthRequestParameters) GoString() string {
14397	return s.String()
14398}
14399
14400// Validate inspects the fields of the type to determine if they are valid.
14401func (s *UpdateConnectionOAuthRequestParameters) Validate() error {
14402	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionOAuthRequestParameters"}
14403	if s.AuthorizationEndpoint != nil && len(*s.AuthorizationEndpoint) < 1 {
14404		invalidParams.Add(request.NewErrParamMinLen("AuthorizationEndpoint", 1))
14405	}
14406	if s.ClientParameters != nil {
14407		if err := s.ClientParameters.Validate(); err != nil {
14408			invalidParams.AddNested("ClientParameters", err.(request.ErrInvalidParams))
14409		}
14410	}
14411
14412	if invalidParams.Len() > 0 {
14413		return invalidParams
14414	}
14415	return nil
14416}
14417
14418// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
14419func (s *UpdateConnectionOAuthRequestParameters) SetAuthorizationEndpoint(v string) *UpdateConnectionOAuthRequestParameters {
14420	s.AuthorizationEndpoint = &v
14421	return s
14422}
14423
14424// SetClientParameters sets the ClientParameters field's value.
14425func (s *UpdateConnectionOAuthRequestParameters) SetClientParameters(v *UpdateConnectionOAuthClientRequestParameters) *UpdateConnectionOAuthRequestParameters {
14426	s.ClientParameters = v
14427	return s
14428}
14429
14430// SetHttpMethod sets the HttpMethod field's value.
14431func (s *UpdateConnectionOAuthRequestParameters) SetHttpMethod(v string) *UpdateConnectionOAuthRequestParameters {
14432	s.HttpMethod = &v
14433	return s
14434}
14435
14436// SetOAuthHttpParameters sets the OAuthHttpParameters field's value.
14437func (s *UpdateConnectionOAuthRequestParameters) SetOAuthHttpParameters(v *ConnectionHttpParameters) *UpdateConnectionOAuthRequestParameters {
14438	s.OAuthHttpParameters = v
14439	return s
14440}
14441
14442type UpdateConnectionOutput struct {
14443	_ struct{} `type:"structure"`
14444
14445	// The ARN of the connection that was updated.
14446	ConnectionArn *string `min:"1" type:"string"`
14447
14448	// The state of the connection that was updated.
14449	ConnectionState *string `type:"string" enum:"ConnectionState"`
14450
14451	// A time stamp for the time that the connection was created.
14452	CreationTime *time.Time `type:"timestamp"`
14453
14454	// A time stamp for the time that the connection was last authorized.
14455	LastAuthorizedTime *time.Time `type:"timestamp"`
14456
14457	// A time stamp for the time that the connection was last modified.
14458	LastModifiedTime *time.Time `type:"timestamp"`
14459}
14460
14461// String returns the string representation
14462func (s UpdateConnectionOutput) String() string {
14463	return awsutil.Prettify(s)
14464}
14465
14466// GoString returns the string representation
14467func (s UpdateConnectionOutput) GoString() string {
14468	return s.String()
14469}
14470
14471// SetConnectionArn sets the ConnectionArn field's value.
14472func (s *UpdateConnectionOutput) SetConnectionArn(v string) *UpdateConnectionOutput {
14473	s.ConnectionArn = &v
14474	return s
14475}
14476
14477// SetConnectionState sets the ConnectionState field's value.
14478func (s *UpdateConnectionOutput) SetConnectionState(v string) *UpdateConnectionOutput {
14479	s.ConnectionState = &v
14480	return s
14481}
14482
14483// SetCreationTime sets the CreationTime field's value.
14484func (s *UpdateConnectionOutput) SetCreationTime(v time.Time) *UpdateConnectionOutput {
14485	s.CreationTime = &v
14486	return s
14487}
14488
14489// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
14490func (s *UpdateConnectionOutput) SetLastAuthorizedTime(v time.Time) *UpdateConnectionOutput {
14491	s.LastAuthorizedTime = &v
14492	return s
14493}
14494
14495// SetLastModifiedTime sets the LastModifiedTime field's value.
14496func (s *UpdateConnectionOutput) SetLastModifiedTime(v time.Time) *UpdateConnectionOutput {
14497	s.LastModifiedTime = &v
14498	return s
14499}
14500
14501const (
14502	// ApiDestinationHttpMethodPost is a ApiDestinationHttpMethod enum value
14503	ApiDestinationHttpMethodPost = "POST"
14504
14505	// ApiDestinationHttpMethodGet is a ApiDestinationHttpMethod enum value
14506	ApiDestinationHttpMethodGet = "GET"
14507
14508	// ApiDestinationHttpMethodHead is a ApiDestinationHttpMethod enum value
14509	ApiDestinationHttpMethodHead = "HEAD"
14510
14511	// ApiDestinationHttpMethodOptions is a ApiDestinationHttpMethod enum value
14512	ApiDestinationHttpMethodOptions = "OPTIONS"
14513
14514	// ApiDestinationHttpMethodPut is a ApiDestinationHttpMethod enum value
14515	ApiDestinationHttpMethodPut = "PUT"
14516
14517	// ApiDestinationHttpMethodPatch is a ApiDestinationHttpMethod enum value
14518	ApiDestinationHttpMethodPatch = "PATCH"
14519
14520	// ApiDestinationHttpMethodDelete is a ApiDestinationHttpMethod enum value
14521	ApiDestinationHttpMethodDelete = "DELETE"
14522)
14523
14524// ApiDestinationHttpMethod_Values returns all elements of the ApiDestinationHttpMethod enum
14525func ApiDestinationHttpMethod_Values() []string {
14526	return []string{
14527		ApiDestinationHttpMethodPost,
14528		ApiDestinationHttpMethodGet,
14529		ApiDestinationHttpMethodHead,
14530		ApiDestinationHttpMethodOptions,
14531		ApiDestinationHttpMethodPut,
14532		ApiDestinationHttpMethodPatch,
14533		ApiDestinationHttpMethodDelete,
14534	}
14535}
14536
14537const (
14538	// ApiDestinationStateActive is a ApiDestinationState enum value
14539	ApiDestinationStateActive = "ACTIVE"
14540
14541	// ApiDestinationStateInactive is a ApiDestinationState enum value
14542	ApiDestinationStateInactive = "INACTIVE"
14543)
14544
14545// ApiDestinationState_Values returns all elements of the ApiDestinationState enum
14546func ApiDestinationState_Values() []string {
14547	return []string{
14548		ApiDestinationStateActive,
14549		ApiDestinationStateInactive,
14550	}
14551}
14552
14553const (
14554	// ArchiveStateEnabled is a ArchiveState enum value
14555	ArchiveStateEnabled = "ENABLED"
14556
14557	// ArchiveStateDisabled is a ArchiveState enum value
14558	ArchiveStateDisabled = "DISABLED"
14559
14560	// ArchiveStateCreating is a ArchiveState enum value
14561	ArchiveStateCreating = "CREATING"
14562
14563	// ArchiveStateUpdating is a ArchiveState enum value
14564	ArchiveStateUpdating = "UPDATING"
14565
14566	// ArchiveStateCreateFailed is a ArchiveState enum value
14567	ArchiveStateCreateFailed = "CREATE_FAILED"
14568
14569	// ArchiveStateUpdateFailed is a ArchiveState enum value
14570	ArchiveStateUpdateFailed = "UPDATE_FAILED"
14571)
14572
14573// ArchiveState_Values returns all elements of the ArchiveState enum
14574func ArchiveState_Values() []string {
14575	return []string{
14576		ArchiveStateEnabled,
14577		ArchiveStateDisabled,
14578		ArchiveStateCreating,
14579		ArchiveStateUpdating,
14580		ArchiveStateCreateFailed,
14581		ArchiveStateUpdateFailed,
14582	}
14583}
14584
14585const (
14586	// AssignPublicIpEnabled is a AssignPublicIp enum value
14587	AssignPublicIpEnabled = "ENABLED"
14588
14589	// AssignPublicIpDisabled is a AssignPublicIp enum value
14590	AssignPublicIpDisabled = "DISABLED"
14591)
14592
14593// AssignPublicIp_Values returns all elements of the AssignPublicIp enum
14594func AssignPublicIp_Values() []string {
14595	return []string{
14596		AssignPublicIpEnabled,
14597		AssignPublicIpDisabled,
14598	}
14599}
14600
14601const (
14602	// ConnectionAuthorizationTypeBasic is a ConnectionAuthorizationType enum value
14603	ConnectionAuthorizationTypeBasic = "BASIC"
14604
14605	// ConnectionAuthorizationTypeOauthClientCredentials is a ConnectionAuthorizationType enum value
14606	ConnectionAuthorizationTypeOauthClientCredentials = "OAUTH_CLIENT_CREDENTIALS"
14607
14608	// ConnectionAuthorizationTypeApiKey is a ConnectionAuthorizationType enum value
14609	ConnectionAuthorizationTypeApiKey = "API_KEY"
14610)
14611
14612// ConnectionAuthorizationType_Values returns all elements of the ConnectionAuthorizationType enum
14613func ConnectionAuthorizationType_Values() []string {
14614	return []string{
14615		ConnectionAuthorizationTypeBasic,
14616		ConnectionAuthorizationTypeOauthClientCredentials,
14617		ConnectionAuthorizationTypeApiKey,
14618	}
14619}
14620
14621const (
14622	// ConnectionOAuthHttpMethodGet is a ConnectionOAuthHttpMethod enum value
14623	ConnectionOAuthHttpMethodGet = "GET"
14624
14625	// ConnectionOAuthHttpMethodPost is a ConnectionOAuthHttpMethod enum value
14626	ConnectionOAuthHttpMethodPost = "POST"
14627
14628	// ConnectionOAuthHttpMethodPut is a ConnectionOAuthHttpMethod enum value
14629	ConnectionOAuthHttpMethodPut = "PUT"
14630)
14631
14632// ConnectionOAuthHttpMethod_Values returns all elements of the ConnectionOAuthHttpMethod enum
14633func ConnectionOAuthHttpMethod_Values() []string {
14634	return []string{
14635		ConnectionOAuthHttpMethodGet,
14636		ConnectionOAuthHttpMethodPost,
14637		ConnectionOAuthHttpMethodPut,
14638	}
14639}
14640
14641const (
14642	// ConnectionStateCreating is a ConnectionState enum value
14643	ConnectionStateCreating = "CREATING"
14644
14645	// ConnectionStateUpdating is a ConnectionState enum value
14646	ConnectionStateUpdating = "UPDATING"
14647
14648	// ConnectionStateDeleting is a ConnectionState enum value
14649	ConnectionStateDeleting = "DELETING"
14650
14651	// ConnectionStateAuthorized is a ConnectionState enum value
14652	ConnectionStateAuthorized = "AUTHORIZED"
14653
14654	// ConnectionStateDeauthorized is a ConnectionState enum value
14655	ConnectionStateDeauthorized = "DEAUTHORIZED"
14656
14657	// ConnectionStateAuthorizing is a ConnectionState enum value
14658	ConnectionStateAuthorizing = "AUTHORIZING"
14659
14660	// ConnectionStateDeauthorizing is a ConnectionState enum value
14661	ConnectionStateDeauthorizing = "DEAUTHORIZING"
14662)
14663
14664// ConnectionState_Values returns all elements of the ConnectionState enum
14665func ConnectionState_Values() []string {
14666	return []string{
14667		ConnectionStateCreating,
14668		ConnectionStateUpdating,
14669		ConnectionStateDeleting,
14670		ConnectionStateAuthorized,
14671		ConnectionStateDeauthorized,
14672		ConnectionStateAuthorizing,
14673		ConnectionStateDeauthorizing,
14674	}
14675}
14676
14677const (
14678	// EventSourceStatePending is a EventSourceState enum value
14679	EventSourceStatePending = "PENDING"
14680
14681	// EventSourceStateActive is a EventSourceState enum value
14682	EventSourceStateActive = "ACTIVE"
14683
14684	// EventSourceStateDeleted is a EventSourceState enum value
14685	EventSourceStateDeleted = "DELETED"
14686)
14687
14688// EventSourceState_Values returns all elements of the EventSourceState enum
14689func EventSourceState_Values() []string {
14690	return []string{
14691		EventSourceStatePending,
14692		EventSourceStateActive,
14693		EventSourceStateDeleted,
14694	}
14695}
14696
14697const (
14698	// LaunchTypeEc2 is a LaunchType enum value
14699	LaunchTypeEc2 = "EC2"
14700
14701	// LaunchTypeFargate is a LaunchType enum value
14702	LaunchTypeFargate = "FARGATE"
14703)
14704
14705// LaunchType_Values returns all elements of the LaunchType enum
14706func LaunchType_Values() []string {
14707	return []string{
14708		LaunchTypeEc2,
14709		LaunchTypeFargate,
14710	}
14711}
14712
14713const (
14714	// PlacementConstraintTypeDistinctInstance is a PlacementConstraintType enum value
14715	PlacementConstraintTypeDistinctInstance = "distinctInstance"
14716
14717	// PlacementConstraintTypeMemberOf is a PlacementConstraintType enum value
14718	PlacementConstraintTypeMemberOf = "memberOf"
14719)
14720
14721// PlacementConstraintType_Values returns all elements of the PlacementConstraintType enum
14722func PlacementConstraintType_Values() []string {
14723	return []string{
14724		PlacementConstraintTypeDistinctInstance,
14725		PlacementConstraintTypeMemberOf,
14726	}
14727}
14728
14729const (
14730	// PlacementStrategyTypeRandom is a PlacementStrategyType enum value
14731	PlacementStrategyTypeRandom = "random"
14732
14733	// PlacementStrategyTypeSpread is a PlacementStrategyType enum value
14734	PlacementStrategyTypeSpread = "spread"
14735
14736	// PlacementStrategyTypeBinpack is a PlacementStrategyType enum value
14737	PlacementStrategyTypeBinpack = "binpack"
14738)
14739
14740// PlacementStrategyType_Values returns all elements of the PlacementStrategyType enum
14741func PlacementStrategyType_Values() []string {
14742	return []string{
14743		PlacementStrategyTypeRandom,
14744		PlacementStrategyTypeSpread,
14745		PlacementStrategyTypeBinpack,
14746	}
14747}
14748
14749const (
14750	// PropagateTagsTaskDefinition is a PropagateTags enum value
14751	PropagateTagsTaskDefinition = "TASK_DEFINITION"
14752)
14753
14754// PropagateTags_Values returns all elements of the PropagateTags enum
14755func PropagateTags_Values() []string {
14756	return []string{
14757		PropagateTagsTaskDefinition,
14758	}
14759}
14760
14761const (
14762	// ReplayStateStarting is a ReplayState enum value
14763	ReplayStateStarting = "STARTING"
14764
14765	// ReplayStateRunning is a ReplayState enum value
14766	ReplayStateRunning = "RUNNING"
14767
14768	// ReplayStateCancelling is a ReplayState enum value
14769	ReplayStateCancelling = "CANCELLING"
14770
14771	// ReplayStateCompleted is a ReplayState enum value
14772	ReplayStateCompleted = "COMPLETED"
14773
14774	// ReplayStateCancelled is a ReplayState enum value
14775	ReplayStateCancelled = "CANCELLED"
14776
14777	// ReplayStateFailed is a ReplayState enum value
14778	ReplayStateFailed = "FAILED"
14779)
14780
14781// ReplayState_Values returns all elements of the ReplayState enum
14782func ReplayState_Values() []string {
14783	return []string{
14784		ReplayStateStarting,
14785		ReplayStateRunning,
14786		ReplayStateCancelling,
14787		ReplayStateCompleted,
14788		ReplayStateCancelled,
14789		ReplayStateFailed,
14790	}
14791}
14792
14793const (
14794	// RuleStateEnabled is a RuleState enum value
14795	RuleStateEnabled = "ENABLED"
14796
14797	// RuleStateDisabled is a RuleState enum value
14798	RuleStateDisabled = "DISABLED"
14799)
14800
14801// RuleState_Values returns all elements of the RuleState enum
14802func RuleState_Values() []string {
14803	return []string{
14804		RuleStateEnabled,
14805		RuleStateDisabled,
14806	}
14807}
14808