1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package cloudwatchevents
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/events-2015-10-07/ActivateEventSource
42func (c *CloudWatchEvents) 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 CloudWatch Events.
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 CloudWatch Events'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/events-2015-10-07/ActivateEventSource
88func (c *CloudWatchEvents) 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 *CloudWatchEvents) 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/events-2015-10-07/CancelReplay
135func (c *CloudWatchEvents) 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 CloudWatch Events.
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 CloudWatch Events'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/events-2015-10-07/CancelReplay
177func (c *CloudWatchEvents) 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 *CloudWatchEvents) 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/events-2015-10-07/CreateApiDestination
224func (c *CloudWatchEvents) 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 CloudWatch Events.
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 CloudWatch Events'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/events-2015-10-07/CreateApiDestination
267func (c *CloudWatchEvents) 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 *CloudWatchEvents) 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/events-2015-10-07/CreateArchive
314func (c *CloudWatchEvents) 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 CloudWatch Events.
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 CloudWatch Events'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/events-2015-10-07/CreateArchive
367func (c *CloudWatchEvents) 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 *CloudWatchEvents) 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/events-2015-10-07/CreateConnection
414func (c *CloudWatchEvents) 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 CloudWatch Events.
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 CloudWatch Events'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/events-2015-10-07/CreateConnection
454func (c *CloudWatchEvents) 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 *CloudWatchEvents) 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/events-2015-10-07/CreateEventBus
501func (c *CloudWatchEvents) 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 CloudWatch Events.
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 CloudWatch Events'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/events-2015-10-07/CreateEventBus
555func (c *CloudWatchEvents) 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 *CloudWatchEvents) 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/events-2015-10-07/CreatePartnerEventSource
602func (c *CloudWatchEvents) 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 CloudWatch Events.
619//
620// Called by an SaaS partner to create a partner event source. This operation
621// is not used by AWS customers.
622//
623// Each partner event source can be used by one AWS account to create a matching
624// partner event bus in that AWS account. A SaaS partner must create one partner
625// event source for each AWS account that wants to receive those event types.
626//
627// A partner event source creates events based on resources within the SaaS
628// partner's service or application.
629//
630// An AWS account that creates a partner event bus that matches the partner
631// event source can use that event bus to receive events from the partner, and
632// then process them using AWS Events rules and targets.
633//
634// Partner event source names follow this format:
635//
636// partner_name/event_namespace/event_name
637//
638// partner_name is determined during partner registration and identifies the
639// partner to AWS customers. event_namespace is determined by the partner and
640// is a way for the partner to categorize their events. event_name is determined
641// by the partner, and should uniquely identify an event-generating resource
642// within the partner system. The combination of event_namespace and event_name
643// should help AWS customers decide whether to create an event bus to receive
644// these events.
645//
646// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
647// with awserr.Error's Code and Message methods to get detailed information about
648// the error.
649//
650// See the AWS API reference guide for Amazon CloudWatch Events's
651// API operation CreatePartnerEventSource for usage and error information.
652//
653// Returned Error Types:
654//   * ResourceAlreadyExistsException
655//   The resource you are trying to create already exists.
656//
657//   * InternalException
658//   This exception occurs due to unexpected causes.
659//
660//   * ConcurrentModificationException
661//   There is concurrent modification on a rule, target, archive, or replay.
662//
663//   * LimitExceededException
664//   The request failed because it attempted to create resource beyond the allowed
665//   service quota.
666//
667//   * OperationDisabledException
668//   The operation you are attempting is not available in this region.
669//
670// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/CreatePartnerEventSource
671func (c *CloudWatchEvents) CreatePartnerEventSource(input *CreatePartnerEventSourceInput) (*CreatePartnerEventSourceOutput, error) {
672	req, out := c.CreatePartnerEventSourceRequest(input)
673	return out, req.Send()
674}
675
676// CreatePartnerEventSourceWithContext is the same as CreatePartnerEventSource with the addition of
677// the ability to pass a context and additional request options.
678//
679// See CreatePartnerEventSource for details on how to use this API operation.
680//
681// The context must be non-nil and will be used for request cancellation. If
682// the context is nil a panic will occur. In the future the SDK may create
683// sub-contexts for http.Requests. See https://golang.org/pkg/context/
684// for more information on using Contexts.
685func (c *CloudWatchEvents) CreatePartnerEventSourceWithContext(ctx aws.Context, input *CreatePartnerEventSourceInput, opts ...request.Option) (*CreatePartnerEventSourceOutput, error) {
686	req, out := c.CreatePartnerEventSourceRequest(input)
687	req.SetContext(ctx)
688	req.ApplyOptions(opts...)
689	return out, req.Send()
690}
691
692const opDeactivateEventSource = "DeactivateEventSource"
693
694// DeactivateEventSourceRequest generates a "aws/request.Request" representing the
695// client's request for the DeactivateEventSource operation. The "output" return
696// value will be populated with the request's response once the request completes
697// successfully.
698//
699// Use "Send" method on the returned Request to send the API call to the service.
700// the "output" return value is not valid until after Send returns without error.
701//
702// See DeactivateEventSource for more information on using the DeactivateEventSource
703// API call, and error handling.
704//
705// This method is useful when you want to inject custom logic or configuration
706// into the SDK's request lifecycle. Such as custom headers, or retry logic.
707//
708//
709//    // Example sending a request using the DeactivateEventSourceRequest method.
710//    req, resp := client.DeactivateEventSourceRequest(params)
711//
712//    err := req.Send()
713//    if err == nil { // resp is now filled
714//        fmt.Println(resp)
715//    }
716//
717// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeactivateEventSource
718func (c *CloudWatchEvents) DeactivateEventSourceRequest(input *DeactivateEventSourceInput) (req *request.Request, output *DeactivateEventSourceOutput) {
719	op := &request.Operation{
720		Name:       opDeactivateEventSource,
721		HTTPMethod: "POST",
722		HTTPPath:   "/",
723	}
724
725	if input == nil {
726		input = &DeactivateEventSourceInput{}
727	}
728
729	output = &DeactivateEventSourceOutput{}
730	req = c.newRequest(op, input, output)
731	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
732	return
733}
734
735// DeactivateEventSource API operation for Amazon CloudWatch Events.
736//
737// You can use this operation to temporarily stop receiving events from the
738// specified partner event source. The matching event bus is not deleted.
739//
740// When you deactivate a partner event source, the source goes into PENDING
741// state. If it remains in PENDING state for more than two weeks, it is deleted.
742//
743// To activate a deactivated partner event source, use ActivateEventSource.
744//
745// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
746// with awserr.Error's Code and Message methods to get detailed information about
747// the error.
748//
749// See the AWS API reference guide for Amazon CloudWatch Events's
750// API operation DeactivateEventSource for usage and error information.
751//
752// Returned Error Types:
753//   * ResourceNotFoundException
754//   An entity that you specified does not exist.
755//
756//   * ConcurrentModificationException
757//   There is concurrent modification on a rule, target, archive, or replay.
758//
759//   * InvalidStateException
760//   The specified state is not a valid state for an event source.
761//
762//   * InternalException
763//   This exception occurs due to unexpected causes.
764//
765//   * OperationDisabledException
766//   The operation you are attempting is not available in this region.
767//
768// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeactivateEventSource
769func (c *CloudWatchEvents) DeactivateEventSource(input *DeactivateEventSourceInput) (*DeactivateEventSourceOutput, error) {
770	req, out := c.DeactivateEventSourceRequest(input)
771	return out, req.Send()
772}
773
774// DeactivateEventSourceWithContext is the same as DeactivateEventSource with the addition of
775// the ability to pass a context and additional request options.
776//
777// See DeactivateEventSource for details on how to use this API operation.
778//
779// The context must be non-nil and will be used for request cancellation. If
780// the context is nil a panic will occur. In the future the SDK may create
781// sub-contexts for http.Requests. See https://golang.org/pkg/context/
782// for more information on using Contexts.
783func (c *CloudWatchEvents) DeactivateEventSourceWithContext(ctx aws.Context, input *DeactivateEventSourceInput, opts ...request.Option) (*DeactivateEventSourceOutput, error) {
784	req, out := c.DeactivateEventSourceRequest(input)
785	req.SetContext(ctx)
786	req.ApplyOptions(opts...)
787	return out, req.Send()
788}
789
790const opDeauthorizeConnection = "DeauthorizeConnection"
791
792// DeauthorizeConnectionRequest generates a "aws/request.Request" representing the
793// client's request for the DeauthorizeConnection operation. The "output" return
794// value will be populated with the request's response once the request completes
795// successfully.
796//
797// Use "Send" method on the returned Request to send the API call to the service.
798// the "output" return value is not valid until after Send returns without error.
799//
800// See DeauthorizeConnection for more information on using the DeauthorizeConnection
801// API call, and error handling.
802//
803// This method is useful when you want to inject custom logic or configuration
804// into the SDK's request lifecycle. Such as custom headers, or retry logic.
805//
806//
807//    // Example sending a request using the DeauthorizeConnectionRequest method.
808//    req, resp := client.DeauthorizeConnectionRequest(params)
809//
810//    err := req.Send()
811//    if err == nil { // resp is now filled
812//        fmt.Println(resp)
813//    }
814//
815// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeauthorizeConnection
816func (c *CloudWatchEvents) DeauthorizeConnectionRequest(input *DeauthorizeConnectionInput) (req *request.Request, output *DeauthorizeConnectionOutput) {
817	op := &request.Operation{
818		Name:       opDeauthorizeConnection,
819		HTTPMethod: "POST",
820		HTTPPath:   "/",
821	}
822
823	if input == nil {
824		input = &DeauthorizeConnectionInput{}
825	}
826
827	output = &DeauthorizeConnectionOutput{}
828	req = c.newRequest(op, input, output)
829	return
830}
831
832// DeauthorizeConnection API operation for Amazon CloudWatch Events.
833//
834// Removes all authorization parameters from the connection. This lets you remove
835// the secret from the connection so you can reuse it without having to create
836// a new connection.
837//
838// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
839// with awserr.Error's Code and Message methods to get detailed information about
840// the error.
841//
842// See the AWS API reference guide for Amazon CloudWatch Events's
843// API operation DeauthorizeConnection for usage and error information.
844//
845// Returned Error Types:
846//   * ConcurrentModificationException
847//   There is concurrent modification on a rule, target, archive, or replay.
848//
849//   * ResourceNotFoundException
850//   An entity that you specified does not exist.
851//
852//   * InternalException
853//   This exception occurs due to unexpected causes.
854//
855// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeauthorizeConnection
856func (c *CloudWatchEvents) DeauthorizeConnection(input *DeauthorizeConnectionInput) (*DeauthorizeConnectionOutput, error) {
857	req, out := c.DeauthorizeConnectionRequest(input)
858	return out, req.Send()
859}
860
861// DeauthorizeConnectionWithContext is the same as DeauthorizeConnection with the addition of
862// the ability to pass a context and additional request options.
863//
864// See DeauthorizeConnection for details on how to use this API operation.
865//
866// The context must be non-nil and will be used for request cancellation. If
867// the context is nil a panic will occur. In the future the SDK may create
868// sub-contexts for http.Requests. See https://golang.org/pkg/context/
869// for more information on using Contexts.
870func (c *CloudWatchEvents) DeauthorizeConnectionWithContext(ctx aws.Context, input *DeauthorizeConnectionInput, opts ...request.Option) (*DeauthorizeConnectionOutput, error) {
871	req, out := c.DeauthorizeConnectionRequest(input)
872	req.SetContext(ctx)
873	req.ApplyOptions(opts...)
874	return out, req.Send()
875}
876
877const opDeleteApiDestination = "DeleteApiDestination"
878
879// DeleteApiDestinationRequest generates a "aws/request.Request" representing the
880// client's request for the DeleteApiDestination operation. The "output" return
881// value will be populated with the request's response once the request completes
882// successfully.
883//
884// Use "Send" method on the returned Request to send the API call to the service.
885// the "output" return value is not valid until after Send returns without error.
886//
887// See DeleteApiDestination for more information on using the DeleteApiDestination
888// API call, and error handling.
889//
890// This method is useful when you want to inject custom logic or configuration
891// into the SDK's request lifecycle. Such as custom headers, or retry logic.
892//
893//
894//    // Example sending a request using the DeleteApiDestinationRequest method.
895//    req, resp := client.DeleteApiDestinationRequest(params)
896//
897//    err := req.Send()
898//    if err == nil { // resp is now filled
899//        fmt.Println(resp)
900//    }
901//
902// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteApiDestination
903func (c *CloudWatchEvents) DeleteApiDestinationRequest(input *DeleteApiDestinationInput) (req *request.Request, output *DeleteApiDestinationOutput) {
904	op := &request.Operation{
905		Name:       opDeleteApiDestination,
906		HTTPMethod: "POST",
907		HTTPPath:   "/",
908	}
909
910	if input == nil {
911		input = &DeleteApiDestinationInput{}
912	}
913
914	output = &DeleteApiDestinationOutput{}
915	req = c.newRequest(op, input, output)
916	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
917	return
918}
919
920// DeleteApiDestination API operation for Amazon CloudWatch Events.
921//
922// Deletes the specified API destination.
923//
924// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
925// with awserr.Error's Code and Message methods to get detailed information about
926// the error.
927//
928// See the AWS API reference guide for Amazon CloudWatch Events's
929// API operation DeleteApiDestination for usage and error information.
930//
931// Returned Error Types:
932//   * ConcurrentModificationException
933//   There is concurrent modification on a rule, target, archive, or replay.
934//
935//   * ResourceNotFoundException
936//   An entity that you specified does not exist.
937//
938//   * InternalException
939//   This exception occurs due to unexpected causes.
940//
941// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteApiDestination
942func (c *CloudWatchEvents) DeleteApiDestination(input *DeleteApiDestinationInput) (*DeleteApiDestinationOutput, error) {
943	req, out := c.DeleteApiDestinationRequest(input)
944	return out, req.Send()
945}
946
947// DeleteApiDestinationWithContext is the same as DeleteApiDestination with the addition of
948// the ability to pass a context and additional request options.
949//
950// See DeleteApiDestination for details on how to use this API operation.
951//
952// The context must be non-nil and will be used for request cancellation. If
953// the context is nil a panic will occur. In the future the SDK may create
954// sub-contexts for http.Requests. See https://golang.org/pkg/context/
955// for more information on using Contexts.
956func (c *CloudWatchEvents) DeleteApiDestinationWithContext(ctx aws.Context, input *DeleteApiDestinationInput, opts ...request.Option) (*DeleteApiDestinationOutput, error) {
957	req, out := c.DeleteApiDestinationRequest(input)
958	req.SetContext(ctx)
959	req.ApplyOptions(opts...)
960	return out, req.Send()
961}
962
963const opDeleteArchive = "DeleteArchive"
964
965// DeleteArchiveRequest generates a "aws/request.Request" representing the
966// client's request for the DeleteArchive operation. The "output" return
967// value will be populated with the request's response once the request completes
968// successfully.
969//
970// Use "Send" method on the returned Request to send the API call to the service.
971// the "output" return value is not valid until after Send returns without error.
972//
973// See DeleteArchive for more information on using the DeleteArchive
974// API call, and error handling.
975//
976// This method is useful when you want to inject custom logic or configuration
977// into the SDK's request lifecycle. Such as custom headers, or retry logic.
978//
979//
980//    // Example sending a request using the DeleteArchiveRequest method.
981//    req, resp := client.DeleteArchiveRequest(params)
982//
983//    err := req.Send()
984//    if err == nil { // resp is now filled
985//        fmt.Println(resp)
986//    }
987//
988// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteArchive
989func (c *CloudWatchEvents) DeleteArchiveRequest(input *DeleteArchiveInput) (req *request.Request, output *DeleteArchiveOutput) {
990	op := &request.Operation{
991		Name:       opDeleteArchive,
992		HTTPMethod: "POST",
993		HTTPPath:   "/",
994	}
995
996	if input == nil {
997		input = &DeleteArchiveInput{}
998	}
999
1000	output = &DeleteArchiveOutput{}
1001	req = c.newRequest(op, input, output)
1002	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1003	return
1004}
1005
1006// DeleteArchive API operation for Amazon CloudWatch Events.
1007//
1008// Deletes the specified archive.
1009//
1010// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1011// with awserr.Error's Code and Message methods to get detailed information about
1012// the error.
1013//
1014// See the AWS API reference guide for Amazon CloudWatch Events's
1015// API operation DeleteArchive for usage and error information.
1016//
1017// Returned Error Types:
1018//   * ConcurrentModificationException
1019//   There is concurrent modification on a rule, target, archive, or replay.
1020//
1021//   * ResourceNotFoundException
1022//   An entity that you specified does not exist.
1023//
1024//   * InternalException
1025//   This exception occurs due to unexpected causes.
1026//
1027// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteArchive
1028func (c *CloudWatchEvents) DeleteArchive(input *DeleteArchiveInput) (*DeleteArchiveOutput, error) {
1029	req, out := c.DeleteArchiveRequest(input)
1030	return out, req.Send()
1031}
1032
1033// DeleteArchiveWithContext is the same as DeleteArchive with the addition of
1034// the ability to pass a context and additional request options.
1035//
1036// See DeleteArchive for details on how to use this API operation.
1037//
1038// The context must be non-nil and will be used for request cancellation. If
1039// the context is nil a panic will occur. In the future the SDK may create
1040// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1041// for more information on using Contexts.
1042func (c *CloudWatchEvents) DeleteArchiveWithContext(ctx aws.Context, input *DeleteArchiveInput, opts ...request.Option) (*DeleteArchiveOutput, error) {
1043	req, out := c.DeleteArchiveRequest(input)
1044	req.SetContext(ctx)
1045	req.ApplyOptions(opts...)
1046	return out, req.Send()
1047}
1048
1049const opDeleteConnection = "DeleteConnection"
1050
1051// DeleteConnectionRequest generates a "aws/request.Request" representing the
1052// client's request for the DeleteConnection operation. The "output" return
1053// value will be populated with the request's response once the request completes
1054// successfully.
1055//
1056// Use "Send" method on the returned Request to send the API call to the service.
1057// the "output" return value is not valid until after Send returns without error.
1058//
1059// See DeleteConnection for more information on using the DeleteConnection
1060// API call, and error handling.
1061//
1062// This method is useful when you want to inject custom logic or configuration
1063// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1064//
1065//
1066//    // Example sending a request using the DeleteConnectionRequest method.
1067//    req, resp := client.DeleteConnectionRequest(params)
1068//
1069//    err := req.Send()
1070//    if err == nil { // resp is now filled
1071//        fmt.Println(resp)
1072//    }
1073//
1074// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteConnection
1075func (c *CloudWatchEvents) DeleteConnectionRequest(input *DeleteConnectionInput) (req *request.Request, output *DeleteConnectionOutput) {
1076	op := &request.Operation{
1077		Name:       opDeleteConnection,
1078		HTTPMethod: "POST",
1079		HTTPPath:   "/",
1080	}
1081
1082	if input == nil {
1083		input = &DeleteConnectionInput{}
1084	}
1085
1086	output = &DeleteConnectionOutput{}
1087	req = c.newRequest(op, input, output)
1088	return
1089}
1090
1091// DeleteConnection API operation for Amazon CloudWatch Events.
1092//
1093// Deletes a connection.
1094//
1095// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1096// with awserr.Error's Code and Message methods to get detailed information about
1097// the error.
1098//
1099// See the AWS API reference guide for Amazon CloudWatch Events's
1100// API operation DeleteConnection for usage and error information.
1101//
1102// Returned Error Types:
1103//   * ConcurrentModificationException
1104//   There is concurrent modification on a rule, target, archive, or replay.
1105//
1106//   * ResourceNotFoundException
1107//   An entity that you specified does not exist.
1108//
1109//   * InternalException
1110//   This exception occurs due to unexpected causes.
1111//
1112// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteConnection
1113func (c *CloudWatchEvents) DeleteConnection(input *DeleteConnectionInput) (*DeleteConnectionOutput, error) {
1114	req, out := c.DeleteConnectionRequest(input)
1115	return out, req.Send()
1116}
1117
1118// DeleteConnectionWithContext is the same as DeleteConnection with the addition of
1119// the ability to pass a context and additional request options.
1120//
1121// See DeleteConnection for details on how to use this API operation.
1122//
1123// The context must be non-nil and will be used for request cancellation. If
1124// the context is nil a panic will occur. In the future the SDK may create
1125// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1126// for more information on using Contexts.
1127func (c *CloudWatchEvents) DeleteConnectionWithContext(ctx aws.Context, input *DeleteConnectionInput, opts ...request.Option) (*DeleteConnectionOutput, error) {
1128	req, out := c.DeleteConnectionRequest(input)
1129	req.SetContext(ctx)
1130	req.ApplyOptions(opts...)
1131	return out, req.Send()
1132}
1133
1134const opDeleteEventBus = "DeleteEventBus"
1135
1136// DeleteEventBusRequest generates a "aws/request.Request" representing the
1137// client's request for the DeleteEventBus operation. The "output" return
1138// value will be populated with the request's response once the request completes
1139// successfully.
1140//
1141// Use "Send" method on the returned Request to send the API call to the service.
1142// the "output" return value is not valid until after Send returns without error.
1143//
1144// See DeleteEventBus for more information on using the DeleteEventBus
1145// API call, and error handling.
1146//
1147// This method is useful when you want to inject custom logic or configuration
1148// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1149//
1150//
1151//    // Example sending a request using the DeleteEventBusRequest method.
1152//    req, resp := client.DeleteEventBusRequest(params)
1153//
1154//    err := req.Send()
1155//    if err == nil { // resp is now filled
1156//        fmt.Println(resp)
1157//    }
1158//
1159// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteEventBus
1160func (c *CloudWatchEvents) DeleteEventBusRequest(input *DeleteEventBusInput) (req *request.Request, output *DeleteEventBusOutput) {
1161	op := &request.Operation{
1162		Name:       opDeleteEventBus,
1163		HTTPMethod: "POST",
1164		HTTPPath:   "/",
1165	}
1166
1167	if input == nil {
1168		input = &DeleteEventBusInput{}
1169	}
1170
1171	output = &DeleteEventBusOutput{}
1172	req = c.newRequest(op, input, output)
1173	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1174	return
1175}
1176
1177// DeleteEventBus API operation for Amazon CloudWatch Events.
1178//
1179// Deletes the specified custom event bus or partner event bus. All rules associated
1180// with this event bus need to be deleted. You can't delete your account's default
1181// event bus.
1182//
1183// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1184// with awserr.Error's Code and Message methods to get detailed information about
1185// the error.
1186//
1187// See the AWS API reference guide for Amazon CloudWatch Events's
1188// API operation DeleteEventBus for usage and error information.
1189//
1190// Returned Error Types:
1191//   * InternalException
1192//   This exception occurs due to unexpected causes.
1193//
1194//   * ConcurrentModificationException
1195//   There is concurrent modification on a rule, target, archive, or replay.
1196//
1197// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteEventBus
1198func (c *CloudWatchEvents) DeleteEventBus(input *DeleteEventBusInput) (*DeleteEventBusOutput, error) {
1199	req, out := c.DeleteEventBusRequest(input)
1200	return out, req.Send()
1201}
1202
1203// DeleteEventBusWithContext is the same as DeleteEventBus with the addition of
1204// the ability to pass a context and additional request options.
1205//
1206// See DeleteEventBus for details on how to use this API operation.
1207//
1208// The context must be non-nil and will be used for request cancellation. If
1209// the context is nil a panic will occur. In the future the SDK may create
1210// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1211// for more information on using Contexts.
1212func (c *CloudWatchEvents) DeleteEventBusWithContext(ctx aws.Context, input *DeleteEventBusInput, opts ...request.Option) (*DeleteEventBusOutput, error) {
1213	req, out := c.DeleteEventBusRequest(input)
1214	req.SetContext(ctx)
1215	req.ApplyOptions(opts...)
1216	return out, req.Send()
1217}
1218
1219const opDeletePartnerEventSource = "DeletePartnerEventSource"
1220
1221// DeletePartnerEventSourceRequest generates a "aws/request.Request" representing the
1222// client's request for the DeletePartnerEventSource operation. The "output" return
1223// value will be populated with the request's response once the request completes
1224// successfully.
1225//
1226// Use "Send" method on the returned Request to send the API call to the service.
1227// the "output" return value is not valid until after Send returns without error.
1228//
1229// See DeletePartnerEventSource for more information on using the DeletePartnerEventSource
1230// API call, and error handling.
1231//
1232// This method is useful when you want to inject custom logic or configuration
1233// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1234//
1235//
1236//    // Example sending a request using the DeletePartnerEventSourceRequest method.
1237//    req, resp := client.DeletePartnerEventSourceRequest(params)
1238//
1239//    err := req.Send()
1240//    if err == nil { // resp is now filled
1241//        fmt.Println(resp)
1242//    }
1243//
1244// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeletePartnerEventSource
1245func (c *CloudWatchEvents) DeletePartnerEventSourceRequest(input *DeletePartnerEventSourceInput) (req *request.Request, output *DeletePartnerEventSourceOutput) {
1246	op := &request.Operation{
1247		Name:       opDeletePartnerEventSource,
1248		HTTPMethod: "POST",
1249		HTTPPath:   "/",
1250	}
1251
1252	if input == nil {
1253		input = &DeletePartnerEventSourceInput{}
1254	}
1255
1256	output = &DeletePartnerEventSourceOutput{}
1257	req = c.newRequest(op, input, output)
1258	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1259	return
1260}
1261
1262// DeletePartnerEventSource API operation for Amazon CloudWatch Events.
1263//
1264// This operation is used by SaaS partners to delete a partner event source.
1265// This operation is not used by AWS customers.
1266//
1267// When you delete an event source, the status of the corresponding partner
1268// event bus in the AWS customer account becomes DELETED.
1269//
1270// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1271// with awserr.Error's Code and Message methods to get detailed information about
1272// the error.
1273//
1274// See the AWS API reference guide for Amazon CloudWatch Events's
1275// API operation DeletePartnerEventSource for usage and error information.
1276//
1277// Returned Error Types:
1278//   * InternalException
1279//   This exception occurs due to unexpected causes.
1280//
1281//   * ConcurrentModificationException
1282//   There is concurrent modification on a rule, target, archive, or replay.
1283//
1284//   * OperationDisabledException
1285//   The operation you are attempting is not available in this region.
1286//
1287// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeletePartnerEventSource
1288func (c *CloudWatchEvents) DeletePartnerEventSource(input *DeletePartnerEventSourceInput) (*DeletePartnerEventSourceOutput, error) {
1289	req, out := c.DeletePartnerEventSourceRequest(input)
1290	return out, req.Send()
1291}
1292
1293// DeletePartnerEventSourceWithContext is the same as DeletePartnerEventSource with the addition of
1294// the ability to pass a context and additional request options.
1295//
1296// See DeletePartnerEventSource for details on how to use this API operation.
1297//
1298// The context must be non-nil and will be used for request cancellation. If
1299// the context is nil a panic will occur. In the future the SDK may create
1300// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1301// for more information on using Contexts.
1302func (c *CloudWatchEvents) DeletePartnerEventSourceWithContext(ctx aws.Context, input *DeletePartnerEventSourceInput, opts ...request.Option) (*DeletePartnerEventSourceOutput, error) {
1303	req, out := c.DeletePartnerEventSourceRequest(input)
1304	req.SetContext(ctx)
1305	req.ApplyOptions(opts...)
1306	return out, req.Send()
1307}
1308
1309const opDeleteRule = "DeleteRule"
1310
1311// DeleteRuleRequest generates a "aws/request.Request" representing the
1312// client's request for the DeleteRule operation. The "output" return
1313// value will be populated with the request's response once the request completes
1314// successfully.
1315//
1316// Use "Send" method on the returned Request to send the API call to the service.
1317// the "output" return value is not valid until after Send returns without error.
1318//
1319// See DeleteRule for more information on using the DeleteRule
1320// API call, and error handling.
1321//
1322// This method is useful when you want to inject custom logic or configuration
1323// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1324//
1325//
1326//    // Example sending a request using the DeleteRuleRequest method.
1327//    req, resp := client.DeleteRuleRequest(params)
1328//
1329//    err := req.Send()
1330//    if err == nil { // resp is now filled
1331//        fmt.Println(resp)
1332//    }
1333//
1334// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteRule
1335func (c *CloudWatchEvents) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) {
1336	op := &request.Operation{
1337		Name:       opDeleteRule,
1338		HTTPMethod: "POST",
1339		HTTPPath:   "/",
1340	}
1341
1342	if input == nil {
1343		input = &DeleteRuleInput{}
1344	}
1345
1346	output = &DeleteRuleOutput{}
1347	req = c.newRequest(op, input, output)
1348	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1349	return
1350}
1351
1352// DeleteRule API operation for Amazon CloudWatch Events.
1353//
1354// Deletes the specified rule.
1355//
1356// Before you can delete the rule, you must remove all targets, using RemoveTargets.
1357//
1358// When you delete a rule, incoming events might continue to match to the deleted
1359// rule. Allow a short period of time for changes to take effect.
1360//
1361// Managed rules are rules created and managed by another AWS service on your
1362// behalf. These rules are created by those other AWS services to support functionality
1363// in those services. You can delete these rules using the Force option, but
1364// you should do so only if you are sure the other service is not still using
1365// that rule.
1366//
1367// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1368// with awserr.Error's Code and Message methods to get detailed information about
1369// the error.
1370//
1371// See the AWS API reference guide for Amazon CloudWatch Events's
1372// API operation DeleteRule for usage and error information.
1373//
1374// Returned Error Types:
1375//   * ConcurrentModificationException
1376//   There is concurrent modification on a rule, target, archive, or replay.
1377//
1378//   * ManagedRuleException
1379//   This rule was created by an AWS service on behalf of your account. It is
1380//   managed by that service. If you see this error in response to DeleteRule
1381//   or RemoveTargets, you can use the Force parameter in those calls to delete
1382//   the rule or remove targets from the rule. You cannot modify these managed
1383//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
1384//   or UntagResource.
1385//
1386//   * InternalException
1387//   This exception occurs due to unexpected causes.
1388//
1389//   * ResourceNotFoundException
1390//   An entity that you specified does not exist.
1391//
1392// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeleteRule
1393func (c *CloudWatchEvents) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) {
1394	req, out := c.DeleteRuleRequest(input)
1395	return out, req.Send()
1396}
1397
1398// DeleteRuleWithContext is the same as DeleteRule with the addition of
1399// the ability to pass a context and additional request options.
1400//
1401// See DeleteRule for details on how to use this API operation.
1402//
1403// The context must be non-nil and will be used for request cancellation. If
1404// the context is nil a panic will occur. In the future the SDK may create
1405// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1406// for more information on using Contexts.
1407func (c *CloudWatchEvents) DeleteRuleWithContext(ctx aws.Context, input *DeleteRuleInput, opts ...request.Option) (*DeleteRuleOutput, error) {
1408	req, out := c.DeleteRuleRequest(input)
1409	req.SetContext(ctx)
1410	req.ApplyOptions(opts...)
1411	return out, req.Send()
1412}
1413
1414const opDescribeApiDestination = "DescribeApiDestination"
1415
1416// DescribeApiDestinationRequest generates a "aws/request.Request" representing the
1417// client's request for the DescribeApiDestination operation. The "output" return
1418// value will be populated with the request's response once the request completes
1419// successfully.
1420//
1421// Use "Send" method on the returned Request to send the API call to the service.
1422// the "output" return value is not valid until after Send returns without error.
1423//
1424// See DescribeApiDestination for more information on using the DescribeApiDestination
1425// API call, and error handling.
1426//
1427// This method is useful when you want to inject custom logic or configuration
1428// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1429//
1430//
1431//    // Example sending a request using the DescribeApiDestinationRequest method.
1432//    req, resp := client.DescribeApiDestinationRequest(params)
1433//
1434//    err := req.Send()
1435//    if err == nil { // resp is now filled
1436//        fmt.Println(resp)
1437//    }
1438//
1439// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeApiDestination
1440func (c *CloudWatchEvents) DescribeApiDestinationRequest(input *DescribeApiDestinationInput) (req *request.Request, output *DescribeApiDestinationOutput) {
1441	op := &request.Operation{
1442		Name:       opDescribeApiDestination,
1443		HTTPMethod: "POST",
1444		HTTPPath:   "/",
1445	}
1446
1447	if input == nil {
1448		input = &DescribeApiDestinationInput{}
1449	}
1450
1451	output = &DescribeApiDestinationOutput{}
1452	req = c.newRequest(op, input, output)
1453	return
1454}
1455
1456// DescribeApiDestination API operation for Amazon CloudWatch Events.
1457//
1458// Retrieves details about an API destination.
1459//
1460// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1461// with awserr.Error's Code and Message methods to get detailed information about
1462// the error.
1463//
1464// See the AWS API reference guide for Amazon CloudWatch Events's
1465// API operation DescribeApiDestination for usage and error information.
1466//
1467// Returned Error Types:
1468//   * ResourceNotFoundException
1469//   An entity that you specified does not exist.
1470//
1471//   * InternalException
1472//   This exception occurs due to unexpected causes.
1473//
1474// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeApiDestination
1475func (c *CloudWatchEvents) DescribeApiDestination(input *DescribeApiDestinationInput) (*DescribeApiDestinationOutput, error) {
1476	req, out := c.DescribeApiDestinationRequest(input)
1477	return out, req.Send()
1478}
1479
1480// DescribeApiDestinationWithContext is the same as DescribeApiDestination with the addition of
1481// the ability to pass a context and additional request options.
1482//
1483// See DescribeApiDestination for details on how to use this API operation.
1484//
1485// The context must be non-nil and will be used for request cancellation. If
1486// the context is nil a panic will occur. In the future the SDK may create
1487// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1488// for more information on using Contexts.
1489func (c *CloudWatchEvents) DescribeApiDestinationWithContext(ctx aws.Context, input *DescribeApiDestinationInput, opts ...request.Option) (*DescribeApiDestinationOutput, error) {
1490	req, out := c.DescribeApiDestinationRequest(input)
1491	req.SetContext(ctx)
1492	req.ApplyOptions(opts...)
1493	return out, req.Send()
1494}
1495
1496const opDescribeArchive = "DescribeArchive"
1497
1498// DescribeArchiveRequest generates a "aws/request.Request" representing the
1499// client's request for the DescribeArchive operation. The "output" return
1500// value will be populated with the request's response once the request completes
1501// successfully.
1502//
1503// Use "Send" method on the returned Request to send the API call to the service.
1504// the "output" return value is not valid until after Send returns without error.
1505//
1506// See DescribeArchive for more information on using the DescribeArchive
1507// API call, and error handling.
1508//
1509// This method is useful when you want to inject custom logic or configuration
1510// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1511//
1512//
1513//    // Example sending a request using the DescribeArchiveRequest method.
1514//    req, resp := client.DescribeArchiveRequest(params)
1515//
1516//    err := req.Send()
1517//    if err == nil { // resp is now filled
1518//        fmt.Println(resp)
1519//    }
1520//
1521// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeArchive
1522func (c *CloudWatchEvents) DescribeArchiveRequest(input *DescribeArchiveInput) (req *request.Request, output *DescribeArchiveOutput) {
1523	op := &request.Operation{
1524		Name:       opDescribeArchive,
1525		HTTPMethod: "POST",
1526		HTTPPath:   "/",
1527	}
1528
1529	if input == nil {
1530		input = &DescribeArchiveInput{}
1531	}
1532
1533	output = &DescribeArchiveOutput{}
1534	req = c.newRequest(op, input, output)
1535	return
1536}
1537
1538// DescribeArchive API operation for Amazon CloudWatch Events.
1539//
1540// Retrieves details about an archive.
1541//
1542// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1543// with awserr.Error's Code and Message methods to get detailed information about
1544// the error.
1545//
1546// See the AWS API reference guide for Amazon CloudWatch Events's
1547// API operation DescribeArchive for usage and error information.
1548//
1549// Returned Error Types:
1550//   * ResourceAlreadyExistsException
1551//   The resource you are trying to create already exists.
1552//
1553//   * ResourceNotFoundException
1554//   An entity that you specified does not exist.
1555//
1556//   * InternalException
1557//   This exception occurs due to unexpected causes.
1558//
1559// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeArchive
1560func (c *CloudWatchEvents) DescribeArchive(input *DescribeArchiveInput) (*DescribeArchiveOutput, error) {
1561	req, out := c.DescribeArchiveRequest(input)
1562	return out, req.Send()
1563}
1564
1565// DescribeArchiveWithContext is the same as DescribeArchive with the addition of
1566// the ability to pass a context and additional request options.
1567//
1568// See DescribeArchive for details on how to use this API operation.
1569//
1570// The context must be non-nil and will be used for request cancellation. If
1571// the context is nil a panic will occur. In the future the SDK may create
1572// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1573// for more information on using Contexts.
1574func (c *CloudWatchEvents) DescribeArchiveWithContext(ctx aws.Context, input *DescribeArchiveInput, opts ...request.Option) (*DescribeArchiveOutput, error) {
1575	req, out := c.DescribeArchiveRequest(input)
1576	req.SetContext(ctx)
1577	req.ApplyOptions(opts...)
1578	return out, req.Send()
1579}
1580
1581const opDescribeConnection = "DescribeConnection"
1582
1583// DescribeConnectionRequest generates a "aws/request.Request" representing the
1584// client's request for the DescribeConnection operation. The "output" return
1585// value will be populated with the request's response once the request completes
1586// successfully.
1587//
1588// Use "Send" method on the returned Request to send the API call to the service.
1589// the "output" return value is not valid until after Send returns without error.
1590//
1591// See DescribeConnection for more information on using the DescribeConnection
1592// API call, and error handling.
1593//
1594// This method is useful when you want to inject custom logic or configuration
1595// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1596//
1597//
1598//    // Example sending a request using the DescribeConnectionRequest method.
1599//    req, resp := client.DescribeConnectionRequest(params)
1600//
1601//    err := req.Send()
1602//    if err == nil { // resp is now filled
1603//        fmt.Println(resp)
1604//    }
1605//
1606// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeConnection
1607func (c *CloudWatchEvents) DescribeConnectionRequest(input *DescribeConnectionInput) (req *request.Request, output *DescribeConnectionOutput) {
1608	op := &request.Operation{
1609		Name:       opDescribeConnection,
1610		HTTPMethod: "POST",
1611		HTTPPath:   "/",
1612	}
1613
1614	if input == nil {
1615		input = &DescribeConnectionInput{}
1616	}
1617
1618	output = &DescribeConnectionOutput{}
1619	req = c.newRequest(op, input, output)
1620	return
1621}
1622
1623// DescribeConnection API operation for Amazon CloudWatch Events.
1624//
1625// Retrieves details about a connection.
1626//
1627// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1628// with awserr.Error's Code and Message methods to get detailed information about
1629// the error.
1630//
1631// See the AWS API reference guide for Amazon CloudWatch Events's
1632// API operation DescribeConnection for usage and error information.
1633//
1634// Returned Error Types:
1635//   * ResourceNotFoundException
1636//   An entity that you specified does not exist.
1637//
1638//   * InternalException
1639//   This exception occurs due to unexpected causes.
1640//
1641// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeConnection
1642func (c *CloudWatchEvents) DescribeConnection(input *DescribeConnectionInput) (*DescribeConnectionOutput, error) {
1643	req, out := c.DescribeConnectionRequest(input)
1644	return out, req.Send()
1645}
1646
1647// DescribeConnectionWithContext is the same as DescribeConnection with the addition of
1648// the ability to pass a context and additional request options.
1649//
1650// See DescribeConnection for details on how to use this API operation.
1651//
1652// The context must be non-nil and will be used for request cancellation. If
1653// the context is nil a panic will occur. In the future the SDK may create
1654// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1655// for more information on using Contexts.
1656func (c *CloudWatchEvents) DescribeConnectionWithContext(ctx aws.Context, input *DescribeConnectionInput, opts ...request.Option) (*DescribeConnectionOutput, error) {
1657	req, out := c.DescribeConnectionRequest(input)
1658	req.SetContext(ctx)
1659	req.ApplyOptions(opts...)
1660	return out, req.Send()
1661}
1662
1663const opDescribeEventBus = "DescribeEventBus"
1664
1665// DescribeEventBusRequest generates a "aws/request.Request" representing the
1666// client's request for the DescribeEventBus operation. The "output" return
1667// value will be populated with the request's response once the request completes
1668// successfully.
1669//
1670// Use "Send" method on the returned Request to send the API call to the service.
1671// the "output" return value is not valid until after Send returns without error.
1672//
1673// See DescribeEventBus for more information on using the DescribeEventBus
1674// API call, and error handling.
1675//
1676// This method is useful when you want to inject custom logic or configuration
1677// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1678//
1679//
1680//    // Example sending a request using the DescribeEventBusRequest method.
1681//    req, resp := client.DescribeEventBusRequest(params)
1682//
1683//    err := req.Send()
1684//    if err == nil { // resp is now filled
1685//        fmt.Println(resp)
1686//    }
1687//
1688// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeEventBus
1689func (c *CloudWatchEvents) DescribeEventBusRequest(input *DescribeEventBusInput) (req *request.Request, output *DescribeEventBusOutput) {
1690	op := &request.Operation{
1691		Name:       opDescribeEventBus,
1692		HTTPMethod: "POST",
1693		HTTPPath:   "/",
1694	}
1695
1696	if input == nil {
1697		input = &DescribeEventBusInput{}
1698	}
1699
1700	output = &DescribeEventBusOutput{}
1701	req = c.newRequest(op, input, output)
1702	return
1703}
1704
1705// DescribeEventBus API operation for Amazon CloudWatch Events.
1706//
1707// Displays details about an event bus in your account. This can include the
1708// external AWS accounts that are permitted to write events to your default
1709// event bus, and the associated policy. For custom event buses and partner
1710// event buses, it displays the name, ARN, policy, state, and creation time.
1711//
1712// To enable your account to receive events from other accounts on its default
1713// event bus, use PutPermission.
1714//
1715// For more information about partner event buses, see CreateEventBus.
1716//
1717// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1718// with awserr.Error's Code and Message methods to get detailed information about
1719// the error.
1720//
1721// See the AWS API reference guide for Amazon CloudWatch Events's
1722// API operation DescribeEventBus for usage and error information.
1723//
1724// Returned Error Types:
1725//   * ResourceNotFoundException
1726//   An entity that you specified does not exist.
1727//
1728//   * InternalException
1729//   This exception occurs due to unexpected causes.
1730//
1731// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeEventBus
1732func (c *CloudWatchEvents) DescribeEventBus(input *DescribeEventBusInput) (*DescribeEventBusOutput, error) {
1733	req, out := c.DescribeEventBusRequest(input)
1734	return out, req.Send()
1735}
1736
1737// DescribeEventBusWithContext is the same as DescribeEventBus with the addition of
1738// the ability to pass a context and additional request options.
1739//
1740// See DescribeEventBus for details on how to use this API operation.
1741//
1742// The context must be non-nil and will be used for request cancellation. If
1743// the context is nil a panic will occur. In the future the SDK may create
1744// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1745// for more information on using Contexts.
1746func (c *CloudWatchEvents) DescribeEventBusWithContext(ctx aws.Context, input *DescribeEventBusInput, opts ...request.Option) (*DescribeEventBusOutput, error) {
1747	req, out := c.DescribeEventBusRequest(input)
1748	req.SetContext(ctx)
1749	req.ApplyOptions(opts...)
1750	return out, req.Send()
1751}
1752
1753const opDescribeEventSource = "DescribeEventSource"
1754
1755// DescribeEventSourceRequest generates a "aws/request.Request" representing the
1756// client's request for the DescribeEventSource operation. The "output" return
1757// value will be populated with the request's response once the request completes
1758// successfully.
1759//
1760// Use "Send" method on the returned Request to send the API call to the service.
1761// the "output" return value is not valid until after Send returns without error.
1762//
1763// See DescribeEventSource for more information on using the DescribeEventSource
1764// API call, and error handling.
1765//
1766// This method is useful when you want to inject custom logic or configuration
1767// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1768//
1769//
1770//    // Example sending a request using the DescribeEventSourceRequest method.
1771//    req, resp := client.DescribeEventSourceRequest(params)
1772//
1773//    err := req.Send()
1774//    if err == nil { // resp is now filled
1775//        fmt.Println(resp)
1776//    }
1777//
1778// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeEventSource
1779func (c *CloudWatchEvents) DescribeEventSourceRequest(input *DescribeEventSourceInput) (req *request.Request, output *DescribeEventSourceOutput) {
1780	op := &request.Operation{
1781		Name:       opDescribeEventSource,
1782		HTTPMethod: "POST",
1783		HTTPPath:   "/",
1784	}
1785
1786	if input == nil {
1787		input = &DescribeEventSourceInput{}
1788	}
1789
1790	output = &DescribeEventSourceOutput{}
1791	req = c.newRequest(op, input, output)
1792	return
1793}
1794
1795// DescribeEventSource API operation for Amazon CloudWatch Events.
1796//
1797// This operation lists details about a partner event source that is shared
1798// with your account.
1799//
1800// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1801// with awserr.Error's Code and Message methods to get detailed information about
1802// the error.
1803//
1804// See the AWS API reference guide for Amazon CloudWatch Events's
1805// API operation DescribeEventSource for usage and error information.
1806//
1807// Returned Error Types:
1808//   * ResourceNotFoundException
1809//   An entity that you specified does not exist.
1810//
1811//   * InternalException
1812//   This exception occurs due to unexpected causes.
1813//
1814//   * OperationDisabledException
1815//   The operation you are attempting is not available in this region.
1816//
1817// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeEventSource
1818func (c *CloudWatchEvents) DescribeEventSource(input *DescribeEventSourceInput) (*DescribeEventSourceOutput, error) {
1819	req, out := c.DescribeEventSourceRequest(input)
1820	return out, req.Send()
1821}
1822
1823// DescribeEventSourceWithContext is the same as DescribeEventSource with the addition of
1824// the ability to pass a context and additional request options.
1825//
1826// See DescribeEventSource for details on how to use this API operation.
1827//
1828// The context must be non-nil and will be used for request cancellation. If
1829// the context is nil a panic will occur. In the future the SDK may create
1830// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1831// for more information on using Contexts.
1832func (c *CloudWatchEvents) DescribeEventSourceWithContext(ctx aws.Context, input *DescribeEventSourceInput, opts ...request.Option) (*DescribeEventSourceOutput, error) {
1833	req, out := c.DescribeEventSourceRequest(input)
1834	req.SetContext(ctx)
1835	req.ApplyOptions(opts...)
1836	return out, req.Send()
1837}
1838
1839const opDescribePartnerEventSource = "DescribePartnerEventSource"
1840
1841// DescribePartnerEventSourceRequest generates a "aws/request.Request" representing the
1842// client's request for the DescribePartnerEventSource operation. The "output" return
1843// value will be populated with the request's response once the request completes
1844// successfully.
1845//
1846// Use "Send" method on the returned Request to send the API call to the service.
1847// the "output" return value is not valid until after Send returns without error.
1848//
1849// See DescribePartnerEventSource for more information on using the DescribePartnerEventSource
1850// API call, and error handling.
1851//
1852// This method is useful when you want to inject custom logic or configuration
1853// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1854//
1855//
1856//    // Example sending a request using the DescribePartnerEventSourceRequest method.
1857//    req, resp := client.DescribePartnerEventSourceRequest(params)
1858//
1859//    err := req.Send()
1860//    if err == nil { // resp is now filled
1861//        fmt.Println(resp)
1862//    }
1863//
1864// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribePartnerEventSource
1865func (c *CloudWatchEvents) DescribePartnerEventSourceRequest(input *DescribePartnerEventSourceInput) (req *request.Request, output *DescribePartnerEventSourceOutput) {
1866	op := &request.Operation{
1867		Name:       opDescribePartnerEventSource,
1868		HTTPMethod: "POST",
1869		HTTPPath:   "/",
1870	}
1871
1872	if input == nil {
1873		input = &DescribePartnerEventSourceInput{}
1874	}
1875
1876	output = &DescribePartnerEventSourceOutput{}
1877	req = c.newRequest(op, input, output)
1878	return
1879}
1880
1881// DescribePartnerEventSource API operation for Amazon CloudWatch Events.
1882//
1883// An SaaS partner can use this operation to list details about a partner event
1884// source that they have created. AWS customers do not use this operation. Instead,
1885// AWS customers can use DescribeEventSource to see details about a partner
1886// event source that is shared with them.
1887//
1888// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1889// with awserr.Error's Code and Message methods to get detailed information about
1890// the error.
1891//
1892// See the AWS API reference guide for Amazon CloudWatch Events's
1893// API operation DescribePartnerEventSource for usage and error information.
1894//
1895// Returned Error Types:
1896//   * ResourceNotFoundException
1897//   An entity that you specified does not exist.
1898//
1899//   * InternalException
1900//   This exception occurs due to unexpected causes.
1901//
1902//   * OperationDisabledException
1903//   The operation you are attempting is not available in this region.
1904//
1905// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribePartnerEventSource
1906func (c *CloudWatchEvents) DescribePartnerEventSource(input *DescribePartnerEventSourceInput) (*DescribePartnerEventSourceOutput, error) {
1907	req, out := c.DescribePartnerEventSourceRequest(input)
1908	return out, req.Send()
1909}
1910
1911// DescribePartnerEventSourceWithContext is the same as DescribePartnerEventSource with the addition of
1912// the ability to pass a context and additional request options.
1913//
1914// See DescribePartnerEventSource for details on how to use this API operation.
1915//
1916// The context must be non-nil and will be used for request cancellation. If
1917// the context is nil a panic will occur. In the future the SDK may create
1918// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1919// for more information on using Contexts.
1920func (c *CloudWatchEvents) DescribePartnerEventSourceWithContext(ctx aws.Context, input *DescribePartnerEventSourceInput, opts ...request.Option) (*DescribePartnerEventSourceOutput, error) {
1921	req, out := c.DescribePartnerEventSourceRequest(input)
1922	req.SetContext(ctx)
1923	req.ApplyOptions(opts...)
1924	return out, req.Send()
1925}
1926
1927const opDescribeReplay = "DescribeReplay"
1928
1929// DescribeReplayRequest generates a "aws/request.Request" representing the
1930// client's request for the DescribeReplay operation. The "output" return
1931// value will be populated with the request's response once the request completes
1932// successfully.
1933//
1934// Use "Send" method on the returned Request to send the API call to the service.
1935// the "output" return value is not valid until after Send returns without error.
1936//
1937// See DescribeReplay for more information on using the DescribeReplay
1938// API call, and error handling.
1939//
1940// This method is useful when you want to inject custom logic or configuration
1941// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1942//
1943//
1944//    // Example sending a request using the DescribeReplayRequest method.
1945//    req, resp := client.DescribeReplayRequest(params)
1946//
1947//    err := req.Send()
1948//    if err == nil { // resp is now filled
1949//        fmt.Println(resp)
1950//    }
1951//
1952// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeReplay
1953func (c *CloudWatchEvents) DescribeReplayRequest(input *DescribeReplayInput) (req *request.Request, output *DescribeReplayOutput) {
1954	op := &request.Operation{
1955		Name:       opDescribeReplay,
1956		HTTPMethod: "POST",
1957		HTTPPath:   "/",
1958	}
1959
1960	if input == nil {
1961		input = &DescribeReplayInput{}
1962	}
1963
1964	output = &DescribeReplayOutput{}
1965	req = c.newRequest(op, input, output)
1966	return
1967}
1968
1969// DescribeReplay API operation for Amazon CloudWatch Events.
1970//
1971// Retrieves details about a replay. Use DescribeReplay to determine the progress
1972// of a running replay. A replay processes events to replay based on the time
1973// in the event, and replays them using 1 minute intervals. If you use StartReplay
1974// and specify an EventStartTime and an EventEndTime that covers a 20 minute
1975// time range, the events are replayed from the first minute of that 20 minute
1976// range first. Then the events from the second minute are replayed. You can
1977// use DescribeReplay to determine the progress of a replay. The value returned
1978// for EventLastReplayedTime indicates the time within the specified time range
1979// associated with the last event replayed.
1980//
1981// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1982// with awserr.Error's Code and Message methods to get detailed information about
1983// the error.
1984//
1985// See the AWS API reference guide for Amazon CloudWatch Events's
1986// API operation DescribeReplay for usage and error information.
1987//
1988// Returned Error Types:
1989//   * ResourceNotFoundException
1990//   An entity that you specified does not exist.
1991//
1992//   * InternalException
1993//   This exception occurs due to unexpected causes.
1994//
1995// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeReplay
1996func (c *CloudWatchEvents) DescribeReplay(input *DescribeReplayInput) (*DescribeReplayOutput, error) {
1997	req, out := c.DescribeReplayRequest(input)
1998	return out, req.Send()
1999}
2000
2001// DescribeReplayWithContext is the same as DescribeReplay with the addition of
2002// the ability to pass a context and additional request options.
2003//
2004// See DescribeReplay for details on how to use this API operation.
2005//
2006// The context must be non-nil and will be used for request cancellation. If
2007// the context is nil a panic will occur. In the future the SDK may create
2008// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2009// for more information on using Contexts.
2010func (c *CloudWatchEvents) DescribeReplayWithContext(ctx aws.Context, input *DescribeReplayInput, opts ...request.Option) (*DescribeReplayOutput, error) {
2011	req, out := c.DescribeReplayRequest(input)
2012	req.SetContext(ctx)
2013	req.ApplyOptions(opts...)
2014	return out, req.Send()
2015}
2016
2017const opDescribeRule = "DescribeRule"
2018
2019// DescribeRuleRequest generates a "aws/request.Request" representing the
2020// client's request for the DescribeRule operation. The "output" return
2021// value will be populated with the request's response once the request completes
2022// successfully.
2023//
2024// Use "Send" method on the returned Request to send the API call to the service.
2025// the "output" return value is not valid until after Send returns without error.
2026//
2027// See DescribeRule for more information on using the DescribeRule
2028// API call, and error handling.
2029//
2030// This method is useful when you want to inject custom logic or configuration
2031// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2032//
2033//
2034//    // Example sending a request using the DescribeRuleRequest method.
2035//    req, resp := client.DescribeRuleRequest(params)
2036//
2037//    err := req.Send()
2038//    if err == nil { // resp is now filled
2039//        fmt.Println(resp)
2040//    }
2041//
2042// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeRule
2043func (c *CloudWatchEvents) DescribeRuleRequest(input *DescribeRuleInput) (req *request.Request, output *DescribeRuleOutput) {
2044	op := &request.Operation{
2045		Name:       opDescribeRule,
2046		HTTPMethod: "POST",
2047		HTTPPath:   "/",
2048	}
2049
2050	if input == nil {
2051		input = &DescribeRuleInput{}
2052	}
2053
2054	output = &DescribeRuleOutput{}
2055	req = c.newRequest(op, input, output)
2056	return
2057}
2058
2059// DescribeRule API operation for Amazon CloudWatch Events.
2060//
2061// Describes the specified rule.
2062//
2063// DescribeRule does not list the targets of a rule. To see the targets associated
2064// with a rule, use ListTargetsByRule.
2065//
2066// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2067// with awserr.Error's Code and Message methods to get detailed information about
2068// the error.
2069//
2070// See the AWS API reference guide for Amazon CloudWatch Events's
2071// API operation DescribeRule for usage and error information.
2072//
2073// Returned Error Types:
2074//   * ResourceNotFoundException
2075//   An entity that you specified does not exist.
2076//
2077//   * InternalException
2078//   This exception occurs due to unexpected causes.
2079//
2080// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeRule
2081func (c *CloudWatchEvents) DescribeRule(input *DescribeRuleInput) (*DescribeRuleOutput, error) {
2082	req, out := c.DescribeRuleRequest(input)
2083	return out, req.Send()
2084}
2085
2086// DescribeRuleWithContext is the same as DescribeRule with the addition of
2087// the ability to pass a context and additional request options.
2088//
2089// See DescribeRule for details on how to use this API operation.
2090//
2091// The context must be non-nil and will be used for request cancellation. If
2092// the context is nil a panic will occur. In the future the SDK may create
2093// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2094// for more information on using Contexts.
2095func (c *CloudWatchEvents) DescribeRuleWithContext(ctx aws.Context, input *DescribeRuleInput, opts ...request.Option) (*DescribeRuleOutput, error) {
2096	req, out := c.DescribeRuleRequest(input)
2097	req.SetContext(ctx)
2098	req.ApplyOptions(opts...)
2099	return out, req.Send()
2100}
2101
2102const opDisableRule = "DisableRule"
2103
2104// DisableRuleRequest generates a "aws/request.Request" representing the
2105// client's request for the DisableRule operation. The "output" return
2106// value will be populated with the request's response once the request completes
2107// successfully.
2108//
2109// Use "Send" method on the returned Request to send the API call to the service.
2110// the "output" return value is not valid until after Send returns without error.
2111//
2112// See DisableRule for more information on using the DisableRule
2113// API call, and error handling.
2114//
2115// This method is useful when you want to inject custom logic or configuration
2116// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2117//
2118//
2119//    // Example sending a request using the DisableRuleRequest method.
2120//    req, resp := client.DisableRuleRequest(params)
2121//
2122//    err := req.Send()
2123//    if err == nil { // resp is now filled
2124//        fmt.Println(resp)
2125//    }
2126//
2127// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DisableRule
2128func (c *CloudWatchEvents) DisableRuleRequest(input *DisableRuleInput) (req *request.Request, output *DisableRuleOutput) {
2129	op := &request.Operation{
2130		Name:       opDisableRule,
2131		HTTPMethod: "POST",
2132		HTTPPath:   "/",
2133	}
2134
2135	if input == nil {
2136		input = &DisableRuleInput{}
2137	}
2138
2139	output = &DisableRuleOutput{}
2140	req = c.newRequest(op, input, output)
2141	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2142	return
2143}
2144
2145// DisableRule API operation for Amazon CloudWatch Events.
2146//
2147// Disables the specified rule. A disabled rule won't match any events, and
2148// won't self-trigger if it has a schedule expression.
2149//
2150// When you disable a rule, incoming events might continue to match to the disabled
2151// rule. Allow a short period of time for changes to take effect.
2152//
2153// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2154// with awserr.Error's Code and Message methods to get detailed information about
2155// the error.
2156//
2157// See the AWS API reference guide for Amazon CloudWatch Events's
2158// API operation DisableRule for usage and error information.
2159//
2160// Returned Error Types:
2161//   * ResourceNotFoundException
2162//   An entity that you specified does not exist.
2163//
2164//   * ConcurrentModificationException
2165//   There is concurrent modification on a rule, target, archive, or replay.
2166//
2167//   * ManagedRuleException
2168//   This rule was created by an AWS service on behalf of your account. It is
2169//   managed by that service. If you see this error in response to DeleteRule
2170//   or RemoveTargets, you can use the Force parameter in those calls to delete
2171//   the rule or remove targets from the rule. You cannot modify these managed
2172//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
2173//   or UntagResource.
2174//
2175//   * InternalException
2176//   This exception occurs due to unexpected causes.
2177//
2178// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DisableRule
2179func (c *CloudWatchEvents) DisableRule(input *DisableRuleInput) (*DisableRuleOutput, error) {
2180	req, out := c.DisableRuleRequest(input)
2181	return out, req.Send()
2182}
2183
2184// DisableRuleWithContext is the same as DisableRule with the addition of
2185// the ability to pass a context and additional request options.
2186//
2187// See DisableRule for details on how to use this API operation.
2188//
2189// The context must be non-nil and will be used for request cancellation. If
2190// the context is nil a panic will occur. In the future the SDK may create
2191// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2192// for more information on using Contexts.
2193func (c *CloudWatchEvents) DisableRuleWithContext(ctx aws.Context, input *DisableRuleInput, opts ...request.Option) (*DisableRuleOutput, error) {
2194	req, out := c.DisableRuleRequest(input)
2195	req.SetContext(ctx)
2196	req.ApplyOptions(opts...)
2197	return out, req.Send()
2198}
2199
2200const opEnableRule = "EnableRule"
2201
2202// EnableRuleRequest generates a "aws/request.Request" representing the
2203// client's request for the EnableRule operation. The "output" return
2204// value will be populated with the request's response once the request completes
2205// successfully.
2206//
2207// Use "Send" method on the returned Request to send the API call to the service.
2208// the "output" return value is not valid until after Send returns without error.
2209//
2210// See EnableRule for more information on using the EnableRule
2211// API call, and error handling.
2212//
2213// This method is useful when you want to inject custom logic or configuration
2214// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2215//
2216//
2217//    // Example sending a request using the EnableRuleRequest method.
2218//    req, resp := client.EnableRuleRequest(params)
2219//
2220//    err := req.Send()
2221//    if err == nil { // resp is now filled
2222//        fmt.Println(resp)
2223//    }
2224//
2225// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/EnableRule
2226func (c *CloudWatchEvents) EnableRuleRequest(input *EnableRuleInput) (req *request.Request, output *EnableRuleOutput) {
2227	op := &request.Operation{
2228		Name:       opEnableRule,
2229		HTTPMethod: "POST",
2230		HTTPPath:   "/",
2231	}
2232
2233	if input == nil {
2234		input = &EnableRuleInput{}
2235	}
2236
2237	output = &EnableRuleOutput{}
2238	req = c.newRequest(op, input, output)
2239	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2240	return
2241}
2242
2243// EnableRule API operation for Amazon CloudWatch Events.
2244//
2245// Enables the specified rule. If the rule does not exist, the operation fails.
2246//
2247// When you enable a rule, incoming events might not immediately start matching
2248// to a newly enabled rule. Allow a short period of time for changes to take
2249// effect.
2250//
2251// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2252// with awserr.Error's Code and Message methods to get detailed information about
2253// the error.
2254//
2255// See the AWS API reference guide for Amazon CloudWatch Events's
2256// API operation EnableRule for usage and error information.
2257//
2258// Returned Error Types:
2259//   * ResourceNotFoundException
2260//   An entity that you specified does not exist.
2261//
2262//   * ConcurrentModificationException
2263//   There is concurrent modification on a rule, target, archive, or replay.
2264//
2265//   * ManagedRuleException
2266//   This rule was created by an AWS service on behalf of your account. It is
2267//   managed by that service. If you see this error in response to DeleteRule
2268//   or RemoveTargets, you can use the Force parameter in those calls to delete
2269//   the rule or remove targets from the rule. You cannot modify these managed
2270//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
2271//   or UntagResource.
2272//
2273//   * InternalException
2274//   This exception occurs due to unexpected causes.
2275//
2276// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/EnableRule
2277func (c *CloudWatchEvents) EnableRule(input *EnableRuleInput) (*EnableRuleOutput, error) {
2278	req, out := c.EnableRuleRequest(input)
2279	return out, req.Send()
2280}
2281
2282// EnableRuleWithContext is the same as EnableRule with the addition of
2283// the ability to pass a context and additional request options.
2284//
2285// See EnableRule for details on how to use this API operation.
2286//
2287// The context must be non-nil and will be used for request cancellation. If
2288// the context is nil a panic will occur. In the future the SDK may create
2289// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2290// for more information on using Contexts.
2291func (c *CloudWatchEvents) EnableRuleWithContext(ctx aws.Context, input *EnableRuleInput, opts ...request.Option) (*EnableRuleOutput, error) {
2292	req, out := c.EnableRuleRequest(input)
2293	req.SetContext(ctx)
2294	req.ApplyOptions(opts...)
2295	return out, req.Send()
2296}
2297
2298const opListApiDestinations = "ListApiDestinations"
2299
2300// ListApiDestinationsRequest generates a "aws/request.Request" representing the
2301// client's request for the ListApiDestinations operation. The "output" return
2302// value will be populated with the request's response once the request completes
2303// successfully.
2304//
2305// Use "Send" method on the returned Request to send the API call to the service.
2306// the "output" return value is not valid until after Send returns without error.
2307//
2308// See ListApiDestinations for more information on using the ListApiDestinations
2309// API call, and error handling.
2310//
2311// This method is useful when you want to inject custom logic or configuration
2312// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2313//
2314//
2315//    // Example sending a request using the ListApiDestinationsRequest method.
2316//    req, resp := client.ListApiDestinationsRequest(params)
2317//
2318//    err := req.Send()
2319//    if err == nil { // resp is now filled
2320//        fmt.Println(resp)
2321//    }
2322//
2323// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListApiDestinations
2324func (c *CloudWatchEvents) ListApiDestinationsRequest(input *ListApiDestinationsInput) (req *request.Request, output *ListApiDestinationsOutput) {
2325	op := &request.Operation{
2326		Name:       opListApiDestinations,
2327		HTTPMethod: "POST",
2328		HTTPPath:   "/",
2329	}
2330
2331	if input == nil {
2332		input = &ListApiDestinationsInput{}
2333	}
2334
2335	output = &ListApiDestinationsOutput{}
2336	req = c.newRequest(op, input, output)
2337	return
2338}
2339
2340// ListApiDestinations API operation for Amazon CloudWatch Events.
2341//
2342// Retrieves a list of API destination in the account in the current Region.
2343//
2344// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2345// with awserr.Error's Code and Message methods to get detailed information about
2346// the error.
2347//
2348// See the AWS API reference guide for Amazon CloudWatch Events's
2349// API operation ListApiDestinations for usage and error information.
2350//
2351// Returned Error Types:
2352//   * InternalException
2353//   This exception occurs due to unexpected causes.
2354//
2355// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListApiDestinations
2356func (c *CloudWatchEvents) ListApiDestinations(input *ListApiDestinationsInput) (*ListApiDestinationsOutput, error) {
2357	req, out := c.ListApiDestinationsRequest(input)
2358	return out, req.Send()
2359}
2360
2361// ListApiDestinationsWithContext is the same as ListApiDestinations with the addition of
2362// the ability to pass a context and additional request options.
2363//
2364// See ListApiDestinations for details on how to use this API operation.
2365//
2366// The context must be non-nil and will be used for request cancellation. If
2367// the context is nil a panic will occur. In the future the SDK may create
2368// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2369// for more information on using Contexts.
2370func (c *CloudWatchEvents) ListApiDestinationsWithContext(ctx aws.Context, input *ListApiDestinationsInput, opts ...request.Option) (*ListApiDestinationsOutput, error) {
2371	req, out := c.ListApiDestinationsRequest(input)
2372	req.SetContext(ctx)
2373	req.ApplyOptions(opts...)
2374	return out, req.Send()
2375}
2376
2377const opListArchives = "ListArchives"
2378
2379// ListArchivesRequest generates a "aws/request.Request" representing the
2380// client's request for the ListArchives operation. The "output" return
2381// value will be populated with the request's response once the request completes
2382// successfully.
2383//
2384// Use "Send" method on the returned Request to send the API call to the service.
2385// the "output" return value is not valid until after Send returns without error.
2386//
2387// See ListArchives for more information on using the ListArchives
2388// API call, and error handling.
2389//
2390// This method is useful when you want to inject custom logic or configuration
2391// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2392//
2393//
2394//    // Example sending a request using the ListArchivesRequest method.
2395//    req, resp := client.ListArchivesRequest(params)
2396//
2397//    err := req.Send()
2398//    if err == nil { // resp is now filled
2399//        fmt.Println(resp)
2400//    }
2401//
2402// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListArchives
2403func (c *CloudWatchEvents) ListArchivesRequest(input *ListArchivesInput) (req *request.Request, output *ListArchivesOutput) {
2404	op := &request.Operation{
2405		Name:       opListArchives,
2406		HTTPMethod: "POST",
2407		HTTPPath:   "/",
2408	}
2409
2410	if input == nil {
2411		input = &ListArchivesInput{}
2412	}
2413
2414	output = &ListArchivesOutput{}
2415	req = c.newRequest(op, input, output)
2416	return
2417}
2418
2419// ListArchives API operation for Amazon CloudWatch Events.
2420//
2421// Lists your archives. You can either list all the archives or you can provide
2422// a prefix to match to the archive names. Filter parameters are exclusive.
2423//
2424// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2425// with awserr.Error's Code and Message methods to get detailed information about
2426// the error.
2427//
2428// See the AWS API reference guide for Amazon CloudWatch Events's
2429// API operation ListArchives for usage and error information.
2430//
2431// Returned Error Types:
2432//   * ResourceNotFoundException
2433//   An entity that you specified does not exist.
2434//
2435//   * InternalException
2436//   This exception occurs due to unexpected causes.
2437//
2438// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListArchives
2439func (c *CloudWatchEvents) ListArchives(input *ListArchivesInput) (*ListArchivesOutput, error) {
2440	req, out := c.ListArchivesRequest(input)
2441	return out, req.Send()
2442}
2443
2444// ListArchivesWithContext is the same as ListArchives with the addition of
2445// the ability to pass a context and additional request options.
2446//
2447// See ListArchives for details on how to use this API operation.
2448//
2449// The context must be non-nil and will be used for request cancellation. If
2450// the context is nil a panic will occur. In the future the SDK may create
2451// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2452// for more information on using Contexts.
2453func (c *CloudWatchEvents) ListArchivesWithContext(ctx aws.Context, input *ListArchivesInput, opts ...request.Option) (*ListArchivesOutput, error) {
2454	req, out := c.ListArchivesRequest(input)
2455	req.SetContext(ctx)
2456	req.ApplyOptions(opts...)
2457	return out, req.Send()
2458}
2459
2460const opListConnections = "ListConnections"
2461
2462// ListConnectionsRequest generates a "aws/request.Request" representing the
2463// client's request for the ListConnections operation. The "output" return
2464// value will be populated with the request's response once the request completes
2465// successfully.
2466//
2467// Use "Send" method on the returned Request to send the API call to the service.
2468// the "output" return value is not valid until after Send returns without error.
2469//
2470// See ListConnections for more information on using the ListConnections
2471// API call, and error handling.
2472//
2473// This method is useful when you want to inject custom logic or configuration
2474// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2475//
2476//
2477//    // Example sending a request using the ListConnectionsRequest method.
2478//    req, resp := client.ListConnectionsRequest(params)
2479//
2480//    err := req.Send()
2481//    if err == nil { // resp is now filled
2482//        fmt.Println(resp)
2483//    }
2484//
2485// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListConnections
2486func (c *CloudWatchEvents) ListConnectionsRequest(input *ListConnectionsInput) (req *request.Request, output *ListConnectionsOutput) {
2487	op := &request.Operation{
2488		Name:       opListConnections,
2489		HTTPMethod: "POST",
2490		HTTPPath:   "/",
2491	}
2492
2493	if input == nil {
2494		input = &ListConnectionsInput{}
2495	}
2496
2497	output = &ListConnectionsOutput{}
2498	req = c.newRequest(op, input, output)
2499	return
2500}
2501
2502// ListConnections API operation for Amazon CloudWatch Events.
2503//
2504// Retrieves a list of connections from the account.
2505//
2506// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2507// with awserr.Error's Code and Message methods to get detailed information about
2508// the error.
2509//
2510// See the AWS API reference guide for Amazon CloudWatch Events's
2511// API operation ListConnections for usage and error information.
2512//
2513// Returned Error Types:
2514//   * InternalException
2515//   This exception occurs due to unexpected causes.
2516//
2517// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListConnections
2518func (c *CloudWatchEvents) ListConnections(input *ListConnectionsInput) (*ListConnectionsOutput, error) {
2519	req, out := c.ListConnectionsRequest(input)
2520	return out, req.Send()
2521}
2522
2523// ListConnectionsWithContext is the same as ListConnections with the addition of
2524// the ability to pass a context and additional request options.
2525//
2526// See ListConnections for details on how to use this API operation.
2527//
2528// The context must be non-nil and will be used for request cancellation. If
2529// the context is nil a panic will occur. In the future the SDK may create
2530// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2531// for more information on using Contexts.
2532func (c *CloudWatchEvents) ListConnectionsWithContext(ctx aws.Context, input *ListConnectionsInput, opts ...request.Option) (*ListConnectionsOutput, error) {
2533	req, out := c.ListConnectionsRequest(input)
2534	req.SetContext(ctx)
2535	req.ApplyOptions(opts...)
2536	return out, req.Send()
2537}
2538
2539const opListEventBuses = "ListEventBuses"
2540
2541// ListEventBusesRequest generates a "aws/request.Request" representing the
2542// client's request for the ListEventBuses operation. The "output" return
2543// value will be populated with the request's response once the request completes
2544// successfully.
2545//
2546// Use "Send" method on the returned Request to send the API call to the service.
2547// the "output" return value is not valid until after Send returns without error.
2548//
2549// See ListEventBuses for more information on using the ListEventBuses
2550// API call, and error handling.
2551//
2552// This method is useful when you want to inject custom logic or configuration
2553// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2554//
2555//
2556//    // Example sending a request using the ListEventBusesRequest method.
2557//    req, resp := client.ListEventBusesRequest(params)
2558//
2559//    err := req.Send()
2560//    if err == nil { // resp is now filled
2561//        fmt.Println(resp)
2562//    }
2563//
2564// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListEventBuses
2565func (c *CloudWatchEvents) ListEventBusesRequest(input *ListEventBusesInput) (req *request.Request, output *ListEventBusesOutput) {
2566	op := &request.Operation{
2567		Name:       opListEventBuses,
2568		HTTPMethod: "POST",
2569		HTTPPath:   "/",
2570	}
2571
2572	if input == nil {
2573		input = &ListEventBusesInput{}
2574	}
2575
2576	output = &ListEventBusesOutput{}
2577	req = c.newRequest(op, input, output)
2578	return
2579}
2580
2581// ListEventBuses API operation for Amazon CloudWatch Events.
2582//
2583// Lists all the event buses in your account, including the default event bus,
2584// custom event buses, and partner event buses.
2585//
2586// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2587// with awserr.Error's Code and Message methods to get detailed information about
2588// the error.
2589//
2590// See the AWS API reference guide for Amazon CloudWatch Events's
2591// API operation ListEventBuses for usage and error information.
2592//
2593// Returned Error Types:
2594//   * InternalException
2595//   This exception occurs due to unexpected causes.
2596//
2597// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListEventBuses
2598func (c *CloudWatchEvents) ListEventBuses(input *ListEventBusesInput) (*ListEventBusesOutput, error) {
2599	req, out := c.ListEventBusesRequest(input)
2600	return out, req.Send()
2601}
2602
2603// ListEventBusesWithContext is the same as ListEventBuses with the addition of
2604// the ability to pass a context and additional request options.
2605//
2606// See ListEventBuses for details on how to use this API operation.
2607//
2608// The context must be non-nil and will be used for request cancellation. If
2609// the context is nil a panic will occur. In the future the SDK may create
2610// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2611// for more information on using Contexts.
2612func (c *CloudWatchEvents) ListEventBusesWithContext(ctx aws.Context, input *ListEventBusesInput, opts ...request.Option) (*ListEventBusesOutput, error) {
2613	req, out := c.ListEventBusesRequest(input)
2614	req.SetContext(ctx)
2615	req.ApplyOptions(opts...)
2616	return out, req.Send()
2617}
2618
2619const opListEventSources = "ListEventSources"
2620
2621// ListEventSourcesRequest generates a "aws/request.Request" representing the
2622// client's request for the ListEventSources operation. The "output" return
2623// value will be populated with the request's response once the request completes
2624// successfully.
2625//
2626// Use "Send" method on the returned Request to send the API call to the service.
2627// the "output" return value is not valid until after Send returns without error.
2628//
2629// See ListEventSources for more information on using the ListEventSources
2630// API call, and error handling.
2631//
2632// This method is useful when you want to inject custom logic or configuration
2633// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2634//
2635//
2636//    // Example sending a request using the ListEventSourcesRequest method.
2637//    req, resp := client.ListEventSourcesRequest(params)
2638//
2639//    err := req.Send()
2640//    if err == nil { // resp is now filled
2641//        fmt.Println(resp)
2642//    }
2643//
2644// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListEventSources
2645func (c *CloudWatchEvents) ListEventSourcesRequest(input *ListEventSourcesInput) (req *request.Request, output *ListEventSourcesOutput) {
2646	op := &request.Operation{
2647		Name:       opListEventSources,
2648		HTTPMethod: "POST",
2649		HTTPPath:   "/",
2650	}
2651
2652	if input == nil {
2653		input = &ListEventSourcesInput{}
2654	}
2655
2656	output = &ListEventSourcesOutput{}
2657	req = c.newRequest(op, input, output)
2658	return
2659}
2660
2661// ListEventSources API operation for Amazon CloudWatch Events.
2662//
2663// You can use this to see all the partner event sources that have been shared
2664// with your AWS account. For more information about partner event sources,
2665// see CreateEventBus.
2666//
2667// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2668// with awserr.Error's Code and Message methods to get detailed information about
2669// the error.
2670//
2671// See the AWS API reference guide for Amazon CloudWatch Events's
2672// API operation ListEventSources for usage and error information.
2673//
2674// Returned Error Types:
2675//   * InternalException
2676//   This exception occurs due to unexpected causes.
2677//
2678//   * OperationDisabledException
2679//   The operation you are attempting is not available in this region.
2680//
2681// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListEventSources
2682func (c *CloudWatchEvents) ListEventSources(input *ListEventSourcesInput) (*ListEventSourcesOutput, error) {
2683	req, out := c.ListEventSourcesRequest(input)
2684	return out, req.Send()
2685}
2686
2687// ListEventSourcesWithContext is the same as ListEventSources with the addition of
2688// the ability to pass a context and additional request options.
2689//
2690// See ListEventSources for details on how to use this API operation.
2691//
2692// The context must be non-nil and will be used for request cancellation. If
2693// the context is nil a panic will occur. In the future the SDK may create
2694// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2695// for more information on using Contexts.
2696func (c *CloudWatchEvents) ListEventSourcesWithContext(ctx aws.Context, input *ListEventSourcesInput, opts ...request.Option) (*ListEventSourcesOutput, error) {
2697	req, out := c.ListEventSourcesRequest(input)
2698	req.SetContext(ctx)
2699	req.ApplyOptions(opts...)
2700	return out, req.Send()
2701}
2702
2703const opListPartnerEventSourceAccounts = "ListPartnerEventSourceAccounts"
2704
2705// ListPartnerEventSourceAccountsRequest generates a "aws/request.Request" representing the
2706// client's request for the ListPartnerEventSourceAccounts operation. The "output" return
2707// value will be populated with the request's response once the request completes
2708// successfully.
2709//
2710// Use "Send" method on the returned Request to send the API call to the service.
2711// the "output" return value is not valid until after Send returns without error.
2712//
2713// See ListPartnerEventSourceAccounts for more information on using the ListPartnerEventSourceAccounts
2714// API call, and error handling.
2715//
2716// This method is useful when you want to inject custom logic or configuration
2717// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2718//
2719//
2720//    // Example sending a request using the ListPartnerEventSourceAccountsRequest method.
2721//    req, resp := client.ListPartnerEventSourceAccountsRequest(params)
2722//
2723//    err := req.Send()
2724//    if err == nil { // resp is now filled
2725//        fmt.Println(resp)
2726//    }
2727//
2728// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListPartnerEventSourceAccounts
2729func (c *CloudWatchEvents) ListPartnerEventSourceAccountsRequest(input *ListPartnerEventSourceAccountsInput) (req *request.Request, output *ListPartnerEventSourceAccountsOutput) {
2730	op := &request.Operation{
2731		Name:       opListPartnerEventSourceAccounts,
2732		HTTPMethod: "POST",
2733		HTTPPath:   "/",
2734	}
2735
2736	if input == nil {
2737		input = &ListPartnerEventSourceAccountsInput{}
2738	}
2739
2740	output = &ListPartnerEventSourceAccountsOutput{}
2741	req = c.newRequest(op, input, output)
2742	return
2743}
2744
2745// ListPartnerEventSourceAccounts API operation for Amazon CloudWatch Events.
2746//
2747// An SaaS partner can use this operation to display the AWS account ID that
2748// a particular partner event source name is associated with. This operation
2749// is not used by AWS customers.
2750//
2751// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2752// with awserr.Error's Code and Message methods to get detailed information about
2753// the error.
2754//
2755// See the AWS API reference guide for Amazon CloudWatch Events's
2756// API operation ListPartnerEventSourceAccounts for usage and error information.
2757//
2758// Returned Error Types:
2759//   * ResourceNotFoundException
2760//   An entity that you specified does not exist.
2761//
2762//   * InternalException
2763//   This exception occurs due to unexpected causes.
2764//
2765//   * OperationDisabledException
2766//   The operation you are attempting is not available in this region.
2767//
2768// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListPartnerEventSourceAccounts
2769func (c *CloudWatchEvents) ListPartnerEventSourceAccounts(input *ListPartnerEventSourceAccountsInput) (*ListPartnerEventSourceAccountsOutput, error) {
2770	req, out := c.ListPartnerEventSourceAccountsRequest(input)
2771	return out, req.Send()
2772}
2773
2774// ListPartnerEventSourceAccountsWithContext is the same as ListPartnerEventSourceAccounts with the addition of
2775// the ability to pass a context and additional request options.
2776//
2777// See ListPartnerEventSourceAccounts for details on how to use this API operation.
2778//
2779// The context must be non-nil and will be used for request cancellation. If
2780// the context is nil a panic will occur. In the future the SDK may create
2781// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2782// for more information on using Contexts.
2783func (c *CloudWatchEvents) ListPartnerEventSourceAccountsWithContext(ctx aws.Context, input *ListPartnerEventSourceAccountsInput, opts ...request.Option) (*ListPartnerEventSourceAccountsOutput, error) {
2784	req, out := c.ListPartnerEventSourceAccountsRequest(input)
2785	req.SetContext(ctx)
2786	req.ApplyOptions(opts...)
2787	return out, req.Send()
2788}
2789
2790const opListPartnerEventSources = "ListPartnerEventSources"
2791
2792// ListPartnerEventSourcesRequest generates a "aws/request.Request" representing the
2793// client's request for the ListPartnerEventSources operation. The "output" return
2794// value will be populated with the request's response once the request completes
2795// successfully.
2796//
2797// Use "Send" method on the returned Request to send the API call to the service.
2798// the "output" return value is not valid until after Send returns without error.
2799//
2800// See ListPartnerEventSources for more information on using the ListPartnerEventSources
2801// API call, and error handling.
2802//
2803// This method is useful when you want to inject custom logic or configuration
2804// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2805//
2806//
2807//    // Example sending a request using the ListPartnerEventSourcesRequest method.
2808//    req, resp := client.ListPartnerEventSourcesRequest(params)
2809//
2810//    err := req.Send()
2811//    if err == nil { // resp is now filled
2812//        fmt.Println(resp)
2813//    }
2814//
2815// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListPartnerEventSources
2816func (c *CloudWatchEvents) ListPartnerEventSourcesRequest(input *ListPartnerEventSourcesInput) (req *request.Request, output *ListPartnerEventSourcesOutput) {
2817	op := &request.Operation{
2818		Name:       opListPartnerEventSources,
2819		HTTPMethod: "POST",
2820		HTTPPath:   "/",
2821	}
2822
2823	if input == nil {
2824		input = &ListPartnerEventSourcesInput{}
2825	}
2826
2827	output = &ListPartnerEventSourcesOutput{}
2828	req = c.newRequest(op, input, output)
2829	return
2830}
2831
2832// ListPartnerEventSources API operation for Amazon CloudWatch Events.
2833//
2834// An SaaS partner can use this operation to list all the partner event source
2835// names that they have created. This operation is not used by AWS customers.
2836//
2837// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2838// with awserr.Error's Code and Message methods to get detailed information about
2839// the error.
2840//
2841// See the AWS API reference guide for Amazon CloudWatch Events's
2842// API operation ListPartnerEventSources for usage and error information.
2843//
2844// Returned Error Types:
2845//   * InternalException
2846//   This exception occurs due to unexpected causes.
2847//
2848//   * OperationDisabledException
2849//   The operation you are attempting is not available in this region.
2850//
2851// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListPartnerEventSources
2852func (c *CloudWatchEvents) ListPartnerEventSources(input *ListPartnerEventSourcesInput) (*ListPartnerEventSourcesOutput, error) {
2853	req, out := c.ListPartnerEventSourcesRequest(input)
2854	return out, req.Send()
2855}
2856
2857// ListPartnerEventSourcesWithContext is the same as ListPartnerEventSources with the addition of
2858// the ability to pass a context and additional request options.
2859//
2860// See ListPartnerEventSources for details on how to use this API operation.
2861//
2862// The context must be non-nil and will be used for request cancellation. If
2863// the context is nil a panic will occur. In the future the SDK may create
2864// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2865// for more information on using Contexts.
2866func (c *CloudWatchEvents) ListPartnerEventSourcesWithContext(ctx aws.Context, input *ListPartnerEventSourcesInput, opts ...request.Option) (*ListPartnerEventSourcesOutput, error) {
2867	req, out := c.ListPartnerEventSourcesRequest(input)
2868	req.SetContext(ctx)
2869	req.ApplyOptions(opts...)
2870	return out, req.Send()
2871}
2872
2873const opListReplays = "ListReplays"
2874
2875// ListReplaysRequest generates a "aws/request.Request" representing the
2876// client's request for the ListReplays operation. The "output" return
2877// value will be populated with the request's response once the request completes
2878// successfully.
2879//
2880// Use "Send" method on the returned Request to send the API call to the service.
2881// the "output" return value is not valid until after Send returns without error.
2882//
2883// See ListReplays for more information on using the ListReplays
2884// API call, and error handling.
2885//
2886// This method is useful when you want to inject custom logic or configuration
2887// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2888//
2889//
2890//    // Example sending a request using the ListReplaysRequest method.
2891//    req, resp := client.ListReplaysRequest(params)
2892//
2893//    err := req.Send()
2894//    if err == nil { // resp is now filled
2895//        fmt.Println(resp)
2896//    }
2897//
2898// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListReplays
2899func (c *CloudWatchEvents) ListReplaysRequest(input *ListReplaysInput) (req *request.Request, output *ListReplaysOutput) {
2900	op := &request.Operation{
2901		Name:       opListReplays,
2902		HTTPMethod: "POST",
2903		HTTPPath:   "/",
2904	}
2905
2906	if input == nil {
2907		input = &ListReplaysInput{}
2908	}
2909
2910	output = &ListReplaysOutput{}
2911	req = c.newRequest(op, input, output)
2912	return
2913}
2914
2915// ListReplays API operation for Amazon CloudWatch Events.
2916//
2917// Lists your replays. You can either list all the replays or you can provide
2918// a prefix to match to the replay names. Filter parameters are exclusive.
2919//
2920// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2921// with awserr.Error's Code and Message methods to get detailed information about
2922// the error.
2923//
2924// See the AWS API reference guide for Amazon CloudWatch Events's
2925// API operation ListReplays for usage and error information.
2926//
2927// Returned Error Types:
2928//   * InternalException
2929//   This exception occurs due to unexpected causes.
2930//
2931// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListReplays
2932func (c *CloudWatchEvents) ListReplays(input *ListReplaysInput) (*ListReplaysOutput, error) {
2933	req, out := c.ListReplaysRequest(input)
2934	return out, req.Send()
2935}
2936
2937// ListReplaysWithContext is the same as ListReplays with the addition of
2938// the ability to pass a context and additional request options.
2939//
2940// See ListReplays for details on how to use this API operation.
2941//
2942// The context must be non-nil and will be used for request cancellation. If
2943// the context is nil a panic will occur. In the future the SDK may create
2944// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2945// for more information on using Contexts.
2946func (c *CloudWatchEvents) ListReplaysWithContext(ctx aws.Context, input *ListReplaysInput, opts ...request.Option) (*ListReplaysOutput, error) {
2947	req, out := c.ListReplaysRequest(input)
2948	req.SetContext(ctx)
2949	req.ApplyOptions(opts...)
2950	return out, req.Send()
2951}
2952
2953const opListRuleNamesByTarget = "ListRuleNamesByTarget"
2954
2955// ListRuleNamesByTargetRequest generates a "aws/request.Request" representing the
2956// client's request for the ListRuleNamesByTarget operation. The "output" return
2957// value will be populated with the request's response once the request completes
2958// successfully.
2959//
2960// Use "Send" method on the returned Request to send the API call to the service.
2961// the "output" return value is not valid until after Send returns without error.
2962//
2963// See ListRuleNamesByTarget for more information on using the ListRuleNamesByTarget
2964// API call, and error handling.
2965//
2966// This method is useful when you want to inject custom logic or configuration
2967// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2968//
2969//
2970//    // Example sending a request using the ListRuleNamesByTargetRequest method.
2971//    req, resp := client.ListRuleNamesByTargetRequest(params)
2972//
2973//    err := req.Send()
2974//    if err == nil { // resp is now filled
2975//        fmt.Println(resp)
2976//    }
2977//
2978// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListRuleNamesByTarget
2979func (c *CloudWatchEvents) ListRuleNamesByTargetRequest(input *ListRuleNamesByTargetInput) (req *request.Request, output *ListRuleNamesByTargetOutput) {
2980	op := &request.Operation{
2981		Name:       opListRuleNamesByTarget,
2982		HTTPMethod: "POST",
2983		HTTPPath:   "/",
2984	}
2985
2986	if input == nil {
2987		input = &ListRuleNamesByTargetInput{}
2988	}
2989
2990	output = &ListRuleNamesByTargetOutput{}
2991	req = c.newRequest(op, input, output)
2992	return
2993}
2994
2995// ListRuleNamesByTarget API operation for Amazon CloudWatch Events.
2996//
2997// Lists the rules for the specified target. You can see which of the rules
2998// in Amazon EventBridge can invoke a specific target in your account.
2999//
3000// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3001// with awserr.Error's Code and Message methods to get detailed information about
3002// the error.
3003//
3004// See the AWS API reference guide for Amazon CloudWatch Events's
3005// API operation ListRuleNamesByTarget for usage and error information.
3006//
3007// Returned Error Types:
3008//   * InternalException
3009//   This exception occurs due to unexpected causes.
3010//
3011//   * ResourceNotFoundException
3012//   An entity that you specified does not exist.
3013//
3014// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListRuleNamesByTarget
3015func (c *CloudWatchEvents) ListRuleNamesByTarget(input *ListRuleNamesByTargetInput) (*ListRuleNamesByTargetOutput, error) {
3016	req, out := c.ListRuleNamesByTargetRequest(input)
3017	return out, req.Send()
3018}
3019
3020// ListRuleNamesByTargetWithContext is the same as ListRuleNamesByTarget with the addition of
3021// the ability to pass a context and additional request options.
3022//
3023// See ListRuleNamesByTarget for details on how to use this API operation.
3024//
3025// The context must be non-nil and will be used for request cancellation. If
3026// the context is nil a panic will occur. In the future the SDK may create
3027// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3028// for more information on using Contexts.
3029func (c *CloudWatchEvents) ListRuleNamesByTargetWithContext(ctx aws.Context, input *ListRuleNamesByTargetInput, opts ...request.Option) (*ListRuleNamesByTargetOutput, error) {
3030	req, out := c.ListRuleNamesByTargetRequest(input)
3031	req.SetContext(ctx)
3032	req.ApplyOptions(opts...)
3033	return out, req.Send()
3034}
3035
3036const opListRules = "ListRules"
3037
3038// ListRulesRequest generates a "aws/request.Request" representing the
3039// client's request for the ListRules operation. The "output" return
3040// value will be populated with the request's response once the request completes
3041// successfully.
3042//
3043// Use "Send" method on the returned Request to send the API call to the service.
3044// the "output" return value is not valid until after Send returns without error.
3045//
3046// See ListRules for more information on using the ListRules
3047// API call, and error handling.
3048//
3049// This method is useful when you want to inject custom logic or configuration
3050// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3051//
3052//
3053//    // Example sending a request using the ListRulesRequest method.
3054//    req, resp := client.ListRulesRequest(params)
3055//
3056//    err := req.Send()
3057//    if err == nil { // resp is now filled
3058//        fmt.Println(resp)
3059//    }
3060//
3061// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListRules
3062func (c *CloudWatchEvents) ListRulesRequest(input *ListRulesInput) (req *request.Request, output *ListRulesOutput) {
3063	op := &request.Operation{
3064		Name:       opListRules,
3065		HTTPMethod: "POST",
3066		HTTPPath:   "/",
3067	}
3068
3069	if input == nil {
3070		input = &ListRulesInput{}
3071	}
3072
3073	output = &ListRulesOutput{}
3074	req = c.newRequest(op, input, output)
3075	return
3076}
3077
3078// ListRules API operation for Amazon CloudWatch Events.
3079//
3080// Lists your Amazon EventBridge rules. You can either list all the rules or
3081// you can provide a prefix to match to the rule names.
3082//
3083// ListRules does not list the targets of a rule. To see the targets associated
3084// with a rule, use ListTargetsByRule.
3085//
3086// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3087// with awserr.Error's Code and Message methods to get detailed information about
3088// the error.
3089//
3090// See the AWS API reference guide for Amazon CloudWatch Events's
3091// API operation ListRules for usage and error information.
3092//
3093// Returned Error Types:
3094//   * InternalException
3095//   This exception occurs due to unexpected causes.
3096//
3097//   * ResourceNotFoundException
3098//   An entity that you specified does not exist.
3099//
3100// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListRules
3101func (c *CloudWatchEvents) ListRules(input *ListRulesInput) (*ListRulesOutput, error) {
3102	req, out := c.ListRulesRequest(input)
3103	return out, req.Send()
3104}
3105
3106// ListRulesWithContext is the same as ListRules with the addition of
3107// the ability to pass a context and additional request options.
3108//
3109// See ListRules for details on how to use this API operation.
3110//
3111// The context must be non-nil and will be used for request cancellation. If
3112// the context is nil a panic will occur. In the future the SDK may create
3113// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3114// for more information on using Contexts.
3115func (c *CloudWatchEvents) ListRulesWithContext(ctx aws.Context, input *ListRulesInput, opts ...request.Option) (*ListRulesOutput, error) {
3116	req, out := c.ListRulesRequest(input)
3117	req.SetContext(ctx)
3118	req.ApplyOptions(opts...)
3119	return out, req.Send()
3120}
3121
3122const opListTagsForResource = "ListTagsForResource"
3123
3124// ListTagsForResourceRequest generates a "aws/request.Request" representing the
3125// client's request for the ListTagsForResource operation. The "output" return
3126// value will be populated with the request's response once the request completes
3127// successfully.
3128//
3129// Use "Send" method on the returned Request to send the API call to the service.
3130// the "output" return value is not valid until after Send returns without error.
3131//
3132// See ListTagsForResource for more information on using the ListTagsForResource
3133// API call, and error handling.
3134//
3135// This method is useful when you want to inject custom logic or configuration
3136// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3137//
3138//
3139//    // Example sending a request using the ListTagsForResourceRequest method.
3140//    req, resp := client.ListTagsForResourceRequest(params)
3141//
3142//    err := req.Send()
3143//    if err == nil { // resp is now filled
3144//        fmt.Println(resp)
3145//    }
3146//
3147// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListTagsForResource
3148func (c *CloudWatchEvents) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
3149	op := &request.Operation{
3150		Name:       opListTagsForResource,
3151		HTTPMethod: "POST",
3152		HTTPPath:   "/",
3153	}
3154
3155	if input == nil {
3156		input = &ListTagsForResourceInput{}
3157	}
3158
3159	output = &ListTagsForResourceOutput{}
3160	req = c.newRequest(op, input, output)
3161	return
3162}
3163
3164// ListTagsForResource API operation for Amazon CloudWatch Events.
3165//
3166// Displays the tags associated with an EventBridge resource. In EventBridge,
3167// rules and event buses can be tagged.
3168//
3169// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3170// with awserr.Error's Code and Message methods to get detailed information about
3171// the error.
3172//
3173// See the AWS API reference guide for Amazon CloudWatch Events's
3174// API operation ListTagsForResource for usage and error information.
3175//
3176// Returned Error Types:
3177//   * ResourceNotFoundException
3178//   An entity that you specified does not exist.
3179//
3180//   * InternalException
3181//   This exception occurs due to unexpected causes.
3182//
3183// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListTagsForResource
3184func (c *CloudWatchEvents) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
3185	req, out := c.ListTagsForResourceRequest(input)
3186	return out, req.Send()
3187}
3188
3189// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
3190// the ability to pass a context and additional request options.
3191//
3192// See ListTagsForResource for details on how to use this API operation.
3193//
3194// The context must be non-nil and will be used for request cancellation. If
3195// the context is nil a panic will occur. In the future the SDK may create
3196// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3197// for more information on using Contexts.
3198func (c *CloudWatchEvents) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
3199	req, out := c.ListTagsForResourceRequest(input)
3200	req.SetContext(ctx)
3201	req.ApplyOptions(opts...)
3202	return out, req.Send()
3203}
3204
3205const opListTargetsByRule = "ListTargetsByRule"
3206
3207// ListTargetsByRuleRequest generates a "aws/request.Request" representing the
3208// client's request for the ListTargetsByRule operation. The "output" return
3209// value will be populated with the request's response once the request completes
3210// successfully.
3211//
3212// Use "Send" method on the returned Request to send the API call to the service.
3213// the "output" return value is not valid until after Send returns without error.
3214//
3215// See ListTargetsByRule for more information on using the ListTargetsByRule
3216// API call, and error handling.
3217//
3218// This method is useful when you want to inject custom logic or configuration
3219// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3220//
3221//
3222//    // Example sending a request using the ListTargetsByRuleRequest method.
3223//    req, resp := client.ListTargetsByRuleRequest(params)
3224//
3225//    err := req.Send()
3226//    if err == nil { // resp is now filled
3227//        fmt.Println(resp)
3228//    }
3229//
3230// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListTargetsByRule
3231func (c *CloudWatchEvents) ListTargetsByRuleRequest(input *ListTargetsByRuleInput) (req *request.Request, output *ListTargetsByRuleOutput) {
3232	op := &request.Operation{
3233		Name:       opListTargetsByRule,
3234		HTTPMethod: "POST",
3235		HTTPPath:   "/",
3236	}
3237
3238	if input == nil {
3239		input = &ListTargetsByRuleInput{}
3240	}
3241
3242	output = &ListTargetsByRuleOutput{}
3243	req = c.newRequest(op, input, output)
3244	return
3245}
3246
3247// ListTargetsByRule API operation for Amazon CloudWatch Events.
3248//
3249// Lists the targets assigned to the specified rule.
3250//
3251// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3252// with awserr.Error's Code and Message methods to get detailed information about
3253// the error.
3254//
3255// See the AWS API reference guide for Amazon CloudWatch Events's
3256// API operation ListTargetsByRule for usage and error information.
3257//
3258// Returned Error Types:
3259//   * ResourceNotFoundException
3260//   An entity that you specified does not exist.
3261//
3262//   * InternalException
3263//   This exception occurs due to unexpected causes.
3264//
3265// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListTargetsByRule
3266func (c *CloudWatchEvents) ListTargetsByRule(input *ListTargetsByRuleInput) (*ListTargetsByRuleOutput, error) {
3267	req, out := c.ListTargetsByRuleRequest(input)
3268	return out, req.Send()
3269}
3270
3271// ListTargetsByRuleWithContext is the same as ListTargetsByRule with the addition of
3272// the ability to pass a context and additional request options.
3273//
3274// See ListTargetsByRule for details on how to use this API operation.
3275//
3276// The context must be non-nil and will be used for request cancellation. If
3277// the context is nil a panic will occur. In the future the SDK may create
3278// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3279// for more information on using Contexts.
3280func (c *CloudWatchEvents) ListTargetsByRuleWithContext(ctx aws.Context, input *ListTargetsByRuleInput, opts ...request.Option) (*ListTargetsByRuleOutput, error) {
3281	req, out := c.ListTargetsByRuleRequest(input)
3282	req.SetContext(ctx)
3283	req.ApplyOptions(opts...)
3284	return out, req.Send()
3285}
3286
3287const opPutEvents = "PutEvents"
3288
3289// PutEventsRequest generates a "aws/request.Request" representing the
3290// client's request for the PutEvents operation. The "output" return
3291// value will be populated with the request's response once the request completes
3292// successfully.
3293//
3294// Use "Send" method on the returned Request to send the API call to the service.
3295// the "output" return value is not valid until after Send returns without error.
3296//
3297// See PutEvents for more information on using the PutEvents
3298// API call, and error handling.
3299//
3300// This method is useful when you want to inject custom logic or configuration
3301// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3302//
3303//
3304//    // Example sending a request using the PutEventsRequest method.
3305//    req, resp := client.PutEventsRequest(params)
3306//
3307//    err := req.Send()
3308//    if err == nil { // resp is now filled
3309//        fmt.Println(resp)
3310//    }
3311//
3312// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutEvents
3313func (c *CloudWatchEvents) PutEventsRequest(input *PutEventsInput) (req *request.Request, output *PutEventsOutput) {
3314	op := &request.Operation{
3315		Name:       opPutEvents,
3316		HTTPMethod: "POST",
3317		HTTPPath:   "/",
3318	}
3319
3320	if input == nil {
3321		input = &PutEventsInput{}
3322	}
3323
3324	output = &PutEventsOutput{}
3325	req = c.newRequest(op, input, output)
3326	return
3327}
3328
3329// PutEvents API operation for Amazon CloudWatch Events.
3330//
3331// Sends custom events to Amazon EventBridge so that they can be matched to
3332// rules.
3333//
3334// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3335// with awserr.Error's Code and Message methods to get detailed information about
3336// the error.
3337//
3338// See the AWS API reference guide for Amazon CloudWatch Events's
3339// API operation PutEvents for usage and error information.
3340//
3341// Returned Error Types:
3342//   * InternalException
3343//   This exception occurs due to unexpected causes.
3344//
3345// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutEvents
3346func (c *CloudWatchEvents) PutEvents(input *PutEventsInput) (*PutEventsOutput, error) {
3347	req, out := c.PutEventsRequest(input)
3348	return out, req.Send()
3349}
3350
3351// PutEventsWithContext is the same as PutEvents with the addition of
3352// the ability to pass a context and additional request options.
3353//
3354// See PutEvents for details on how to use this API operation.
3355//
3356// The context must be non-nil and will be used for request cancellation. If
3357// the context is nil a panic will occur. In the future the SDK may create
3358// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3359// for more information on using Contexts.
3360func (c *CloudWatchEvents) PutEventsWithContext(ctx aws.Context, input *PutEventsInput, opts ...request.Option) (*PutEventsOutput, error) {
3361	req, out := c.PutEventsRequest(input)
3362	req.SetContext(ctx)
3363	req.ApplyOptions(opts...)
3364	return out, req.Send()
3365}
3366
3367const opPutPartnerEvents = "PutPartnerEvents"
3368
3369// PutPartnerEventsRequest generates a "aws/request.Request" representing the
3370// client's request for the PutPartnerEvents operation. The "output" return
3371// value will be populated with the request's response once the request completes
3372// successfully.
3373//
3374// Use "Send" method on the returned Request to send the API call to the service.
3375// the "output" return value is not valid until after Send returns without error.
3376//
3377// See PutPartnerEvents for more information on using the PutPartnerEvents
3378// API call, and error handling.
3379//
3380// This method is useful when you want to inject custom logic or configuration
3381// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3382//
3383//
3384//    // Example sending a request using the PutPartnerEventsRequest method.
3385//    req, resp := client.PutPartnerEventsRequest(params)
3386//
3387//    err := req.Send()
3388//    if err == nil { // resp is now filled
3389//        fmt.Println(resp)
3390//    }
3391//
3392// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutPartnerEvents
3393func (c *CloudWatchEvents) PutPartnerEventsRequest(input *PutPartnerEventsInput) (req *request.Request, output *PutPartnerEventsOutput) {
3394	op := &request.Operation{
3395		Name:       opPutPartnerEvents,
3396		HTTPMethod: "POST",
3397		HTTPPath:   "/",
3398	}
3399
3400	if input == nil {
3401		input = &PutPartnerEventsInput{}
3402	}
3403
3404	output = &PutPartnerEventsOutput{}
3405	req = c.newRequest(op, input, output)
3406	return
3407}
3408
3409// PutPartnerEvents API operation for Amazon CloudWatch Events.
3410//
3411// This is used by SaaS partners to write events to a customer's partner event
3412// bus. AWS customers do not use this operation.
3413//
3414// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3415// with awserr.Error's Code and Message methods to get detailed information about
3416// the error.
3417//
3418// See the AWS API reference guide for Amazon CloudWatch Events's
3419// API operation PutPartnerEvents for usage and error information.
3420//
3421// Returned Error Types:
3422//   * InternalException
3423//   This exception occurs due to unexpected causes.
3424//
3425//   * OperationDisabledException
3426//   The operation you are attempting is not available in this region.
3427//
3428// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutPartnerEvents
3429func (c *CloudWatchEvents) PutPartnerEvents(input *PutPartnerEventsInput) (*PutPartnerEventsOutput, error) {
3430	req, out := c.PutPartnerEventsRequest(input)
3431	return out, req.Send()
3432}
3433
3434// PutPartnerEventsWithContext is the same as PutPartnerEvents with the addition of
3435// the ability to pass a context and additional request options.
3436//
3437// See PutPartnerEvents for details on how to use this API operation.
3438//
3439// The context must be non-nil and will be used for request cancellation. If
3440// the context is nil a panic will occur. In the future the SDK may create
3441// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3442// for more information on using Contexts.
3443func (c *CloudWatchEvents) PutPartnerEventsWithContext(ctx aws.Context, input *PutPartnerEventsInput, opts ...request.Option) (*PutPartnerEventsOutput, error) {
3444	req, out := c.PutPartnerEventsRequest(input)
3445	req.SetContext(ctx)
3446	req.ApplyOptions(opts...)
3447	return out, req.Send()
3448}
3449
3450const opPutPermission = "PutPermission"
3451
3452// PutPermissionRequest generates a "aws/request.Request" representing the
3453// client's request for the PutPermission operation. The "output" return
3454// value will be populated with the request's response once the request completes
3455// successfully.
3456//
3457// Use "Send" method on the returned Request to send the API call to the service.
3458// the "output" return value is not valid until after Send returns without error.
3459//
3460// See PutPermission for more information on using the PutPermission
3461// API call, and error handling.
3462//
3463// This method is useful when you want to inject custom logic or configuration
3464// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3465//
3466//
3467//    // Example sending a request using the PutPermissionRequest method.
3468//    req, resp := client.PutPermissionRequest(params)
3469//
3470//    err := req.Send()
3471//    if err == nil { // resp is now filled
3472//        fmt.Println(resp)
3473//    }
3474//
3475// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutPermission
3476func (c *CloudWatchEvents) PutPermissionRequest(input *PutPermissionInput) (req *request.Request, output *PutPermissionOutput) {
3477	op := &request.Operation{
3478		Name:       opPutPermission,
3479		HTTPMethod: "POST",
3480		HTTPPath:   "/",
3481	}
3482
3483	if input == nil {
3484		input = &PutPermissionInput{}
3485	}
3486
3487	output = &PutPermissionOutput{}
3488	req = c.newRequest(op, input, output)
3489	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3490	return
3491}
3492
3493// PutPermission API operation for Amazon CloudWatch Events.
3494//
3495// Running PutPermission permits the specified AWS account or AWS organization
3496// to put events to the specified event bus. Amazon EventBridge (CloudWatch
3497// Events) rules in your account are triggered by these events arriving to an
3498// event bus in your account.
3499//
3500// For another account to send events to your account, that external account
3501// must have an EventBridge rule with your account's event bus as a target.
3502//
3503// To enable multiple AWS accounts to put events to your event bus, run PutPermission
3504// once for each of these accounts. Or, if all the accounts are members of the
3505// same AWS organization, you can run PutPermission once specifying Principal
3506// as "*" and specifying the AWS organization ID in Condition, to grant permissions
3507// to all accounts in that organization.
3508//
3509// If you grant permissions using an organization, then accounts in that organization
3510// must specify a RoleArn with proper permissions when they use PutTarget to
3511// add your account's event bus as a target. For more information, see Sending
3512// and Receiving Events Between AWS Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html)
3513// in the Amazon EventBridge User Guide.
3514//
3515// The permission policy on the default event bus cannot exceed 10 KB in size.
3516//
3517// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3518// with awserr.Error's Code and Message methods to get detailed information about
3519// the error.
3520//
3521// See the AWS API reference guide for Amazon CloudWatch Events's
3522// API operation PutPermission for usage and error information.
3523//
3524// Returned Error Types:
3525//   * ResourceNotFoundException
3526//   An entity that you specified does not exist.
3527//
3528//   * PolicyLengthExceededException
3529//   The event bus policy is too long. For more information, see the limits.
3530//
3531//   * InternalException
3532//   This exception occurs due to unexpected causes.
3533//
3534//   * ConcurrentModificationException
3535//   There is concurrent modification on a rule, target, archive, or replay.
3536//
3537//   * OperationDisabledException
3538//   The operation you are attempting is not available in this region.
3539//
3540// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutPermission
3541func (c *CloudWatchEvents) PutPermission(input *PutPermissionInput) (*PutPermissionOutput, error) {
3542	req, out := c.PutPermissionRequest(input)
3543	return out, req.Send()
3544}
3545
3546// PutPermissionWithContext is the same as PutPermission with the addition of
3547// the ability to pass a context and additional request options.
3548//
3549// See PutPermission for details on how to use this API operation.
3550//
3551// The context must be non-nil and will be used for request cancellation. If
3552// the context is nil a panic will occur. In the future the SDK may create
3553// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3554// for more information on using Contexts.
3555func (c *CloudWatchEvents) PutPermissionWithContext(ctx aws.Context, input *PutPermissionInput, opts ...request.Option) (*PutPermissionOutput, error) {
3556	req, out := c.PutPermissionRequest(input)
3557	req.SetContext(ctx)
3558	req.ApplyOptions(opts...)
3559	return out, req.Send()
3560}
3561
3562const opPutRule = "PutRule"
3563
3564// PutRuleRequest generates a "aws/request.Request" representing the
3565// client's request for the PutRule operation. The "output" return
3566// value will be populated with the request's response once the request completes
3567// successfully.
3568//
3569// Use "Send" method on the returned Request to send the API call to the service.
3570// the "output" return value is not valid until after Send returns without error.
3571//
3572// See PutRule for more information on using the PutRule
3573// API call, and error handling.
3574//
3575// This method is useful when you want to inject custom logic or configuration
3576// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3577//
3578//
3579//    // Example sending a request using the PutRuleRequest method.
3580//    req, resp := client.PutRuleRequest(params)
3581//
3582//    err := req.Send()
3583//    if err == nil { // resp is now filled
3584//        fmt.Println(resp)
3585//    }
3586//
3587// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutRule
3588func (c *CloudWatchEvents) PutRuleRequest(input *PutRuleInput) (req *request.Request, output *PutRuleOutput) {
3589	op := &request.Operation{
3590		Name:       opPutRule,
3591		HTTPMethod: "POST",
3592		HTTPPath:   "/",
3593	}
3594
3595	if input == nil {
3596		input = &PutRuleInput{}
3597	}
3598
3599	output = &PutRuleOutput{}
3600	req = c.newRequest(op, input, output)
3601	return
3602}
3603
3604// PutRule API operation for Amazon CloudWatch Events.
3605//
3606// Creates or updates the specified rule. Rules are enabled by default, or based
3607// on value of the state. You can disable a rule using DisableRule.
3608//
3609// A single rule watches for events from a single event bus. Events generated
3610// by AWS services go to your account's default event bus. Events generated
3611// by SaaS partner services or applications go to the matching partner event
3612// bus. If you have custom applications or services, you can specify whether
3613// their events go to your default event bus or a custom event bus that you
3614// have created. For more information, see CreateEventBus.
3615//
3616// If you are updating an existing rule, the rule is replaced with what you
3617// specify in this PutRule command. If you omit arguments in PutRule, the old
3618// values for those arguments are not kept. Instead, they are replaced with
3619// null values.
3620//
3621// When you create or update a rule, incoming events might not immediately start
3622// matching to new or updated rules. Allow a short period of time for changes
3623// to take effect.
3624//
3625// A rule must contain at least an EventPattern or ScheduleExpression. Rules
3626// with EventPatterns are triggered when a matching event is observed. Rules
3627// with ScheduleExpressions self-trigger based on the given schedule. A rule
3628// can have both an EventPattern and a ScheduleExpression, in which case the
3629// rule triggers on matching events as well as on a schedule.
3630//
3631// When you initially create a rule, you can optionally assign one or more tags
3632// to the rule. Tags can help you organize and categorize your resources. You
3633// can also use them to scope user permissions, by granting a user permission
3634// to access or change only rules with certain tag values. To use the PutRule
3635// operation and assign tags, you must have both the events:PutRule and events:TagResource
3636// permissions.
3637//
3638// If you are updating an existing rule, any tags you specify in the PutRule
3639// operation are ignored. To update the tags of an existing rule, use TagResource
3640// and UntagResource.
3641//
3642// Most services in AWS treat : or / as the same character in Amazon Resource
3643// Names (ARNs). However, EventBridge uses an exact match in event patterns
3644// and rules. Be sure to use the correct ARN characters when creating event
3645// patterns so that they match the ARN syntax in the event you want to match.
3646//
3647// In EventBridge, it is possible to create rules that lead to infinite loops,
3648// where a rule is fired repeatedly. For example, a rule might detect that ACLs
3649// have changed on an S3 bucket, and trigger software to change them to the
3650// desired state. If the rule is not written carefully, the subsequent change
3651// to the ACLs fires the rule again, creating an infinite loop.
3652//
3653// To prevent this, write the rules so that the triggered actions do not re-fire
3654// the same rule. For example, your rule could fire only if ACLs are found to
3655// be in a bad state, instead of after any change.
3656//
3657// An infinite loop can quickly cause higher than expected charges. We recommend
3658// that you use budgeting, which alerts you when charges exceed your specified
3659// limit. For more information, see Managing Your Costs with Budgets (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html).
3660//
3661// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3662// with awserr.Error's Code and Message methods to get detailed information about
3663// the error.
3664//
3665// See the AWS API reference guide for Amazon CloudWatch Events's
3666// API operation PutRule for usage and error information.
3667//
3668// Returned Error Types:
3669//   * InvalidEventPatternException
3670//   The event pattern is not valid.
3671//
3672//   * LimitExceededException
3673//   The request failed because it attempted to create resource beyond the allowed
3674//   service quota.
3675//
3676//   * ConcurrentModificationException
3677//   There is concurrent modification on a rule, target, archive, or replay.
3678//
3679//   * ManagedRuleException
3680//   This rule was created by an AWS service on behalf of your account. It is
3681//   managed by that service. If you see this error in response to DeleteRule
3682//   or RemoveTargets, you can use the Force parameter in those calls to delete
3683//   the rule or remove targets from the rule. You cannot modify these managed
3684//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
3685//   or UntagResource.
3686//
3687//   * InternalException
3688//   This exception occurs due to unexpected causes.
3689//
3690//   * ResourceNotFoundException
3691//   An entity that you specified does not exist.
3692//
3693// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutRule
3694func (c *CloudWatchEvents) PutRule(input *PutRuleInput) (*PutRuleOutput, error) {
3695	req, out := c.PutRuleRequest(input)
3696	return out, req.Send()
3697}
3698
3699// PutRuleWithContext is the same as PutRule with the addition of
3700// the ability to pass a context and additional request options.
3701//
3702// See PutRule for details on how to use this API operation.
3703//
3704// The context must be non-nil and will be used for request cancellation. If
3705// the context is nil a panic will occur. In the future the SDK may create
3706// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3707// for more information on using Contexts.
3708func (c *CloudWatchEvents) PutRuleWithContext(ctx aws.Context, input *PutRuleInput, opts ...request.Option) (*PutRuleOutput, error) {
3709	req, out := c.PutRuleRequest(input)
3710	req.SetContext(ctx)
3711	req.ApplyOptions(opts...)
3712	return out, req.Send()
3713}
3714
3715const opPutTargets = "PutTargets"
3716
3717// PutTargetsRequest generates a "aws/request.Request" representing the
3718// client's request for the PutTargets operation. The "output" return
3719// value will be populated with the request's response once the request completes
3720// successfully.
3721//
3722// Use "Send" method on the returned Request to send the API call to the service.
3723// the "output" return value is not valid until after Send returns without error.
3724//
3725// See PutTargets for more information on using the PutTargets
3726// API call, and error handling.
3727//
3728// This method is useful when you want to inject custom logic or configuration
3729// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3730//
3731//
3732//    // Example sending a request using the PutTargetsRequest method.
3733//    req, resp := client.PutTargetsRequest(params)
3734//
3735//    err := req.Send()
3736//    if err == nil { // resp is now filled
3737//        fmt.Println(resp)
3738//    }
3739//
3740// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutTargets
3741func (c *CloudWatchEvents) PutTargetsRequest(input *PutTargetsInput) (req *request.Request, output *PutTargetsOutput) {
3742	op := &request.Operation{
3743		Name:       opPutTargets,
3744		HTTPMethod: "POST",
3745		HTTPPath:   "/",
3746	}
3747
3748	if input == nil {
3749		input = &PutTargetsInput{}
3750	}
3751
3752	output = &PutTargetsOutput{}
3753	req = c.newRequest(op, input, output)
3754	return
3755}
3756
3757// PutTargets API operation for Amazon CloudWatch Events.
3758//
3759// Adds the specified targets to the specified rule, or updates the targets
3760// if they are already associated with the rule.
3761//
3762// Targets are the resources that are invoked when a rule is triggered.
3763//
3764// You can configure the following as targets for Events:
3765//
3766//    * EC2 instances
3767//
3768//    * SSM Run Command
3769//
3770//    * SSM Automation
3771//
3772//    * AWS Lambda functions
3773//
3774//    * Data streams in Amazon Kinesis Data Streams
3775//
3776//    * Data delivery streams in Amazon Kinesis Data Firehose
3777//
3778//    * Amazon ECS tasks
3779//
3780//    * AWS Step Functions state machines
3781//
3782//    * AWS Batch jobs
3783//
3784//    * AWS CodeBuild projects
3785//
3786//    * Pipelines in AWS CodePipeline
3787//
3788//    * Amazon Inspector assessment templates
3789//
3790//    * Amazon SNS topics
3791//
3792//    * Amazon SQS queues, including FIFO queues
3793//
3794//    * The default event bus of another AWS account
3795//
3796//    * Amazon API Gateway REST APIs
3797//
3798//    * Redshift Clusters to invoke Data API ExecuteStatement on
3799//
3800//    * Custom/SaaS HTTPS APIs via EventBridge API Destinations
3801//
3802//    * Amazon SageMaker Model Building Pipelines
3803//
3804// Creating rules with built-in targets is supported only in the AWS Management
3805// Console. The built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances
3806// API call, EC2 StopInstances API call, and EC2 TerminateInstances API call.
3807//
3808// For some target types, PutTargets provides target-specific parameters. If
3809// the target is a Kinesis data stream, you can optionally specify which shard
3810// the event goes to by using the KinesisParameters argument. To invoke a command
3811// on multiple EC2 instances with one rule, you can use the RunCommandParameters
3812// field.
3813//
3814// To be able to make API calls against the resources that you own, Amazon EventBridge
3815// (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and
3816// Amazon SNS resources, EventBridge relies on resource-based policies. For
3817// EC2 instances, Kinesis data streams, AWS Step Functions state machines and
3818// API Gateway REST APIs, EventBridge relies on IAM roles that you specify in
3819// the RoleARN argument in PutTargets. For more information, see Authentication
3820// and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html)
3821// in the Amazon EventBridge User Guide.
3822//
3823// If another AWS account is in the same region and has granted you permission
3824// (using PutPermission), you can send events to that account. Set that account's
3825// event bus as a target of the rules in your account. To send the matched events
3826// to the other account, specify that account's event bus as the Arn value when
3827// you run PutTargets. If your account sends events to another account, your
3828// account is charged for each sent event. Each event sent to another account
3829// is charged as a custom event. The account receiving the event is not charged.
3830// For more information, see Amazon EventBridge (CloudWatch Events) Pricing
3831// (https://aws.amazon.com/eventbridge/pricing/).
3832//
3833// Input, InputPath, and InputTransformer are not available with PutTarget if
3834// the target is an event bus of a different AWS account.
3835//
3836// If you are setting the event bus of another account as the target, and that
3837// account granted permission to your account through an organization instead
3838// of directly by the account ID, then you must specify a RoleArn with proper
3839// permissions in the Target structure. For more information, see Sending and
3840// Receiving Events Between AWS Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html)
3841// in the Amazon EventBridge User Guide.
3842//
3843// For more information about enabling cross-account events, see PutPermission.
3844//
3845// Input, InputPath, and InputTransformer are mutually exclusive and optional
3846// parameters of a target. When a rule is triggered due to a matched event:
3847//
3848//    * If none of the following arguments are specified for a target, then
3849//    the entire event is passed to the target in JSON format (unless the target
3850//    is Amazon EC2 Run Command or Amazon ECS task, in which case nothing from
3851//    the event is passed to the target).
3852//
3853//    * If Input is specified in the form of valid JSON, then the matched event
3854//    is overridden with this constant.
3855//
3856//    * If InputPath is specified in the form of JSONPath (for example, $.detail),
3857//    then only the part of the event specified in the path is passed to the
3858//    target (for example, only the detail part of the event is passed).
3859//
3860//    * If InputTransformer is specified, then one or more specified JSONPaths
3861//    are extracted from the event and used as values in a template that you
3862//    specify as the input to the target.
3863//
3864// When you specify InputPath or InputTransformer, you must use JSON dot notation,
3865// not bracket notation.
3866//
3867// When you add targets to a rule and the associated rule triggers soon after,
3868// new or updated targets might not be immediately invoked. Allow a short period
3869// of time for changes to take effect.
3870//
3871// This action can partially fail if too many requests are made at the same
3872// time. If that happens, FailedEntryCount is non-zero in the response and each
3873// entry in FailedEntries provides the ID of the failed target and the error
3874// code.
3875//
3876// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3877// with awserr.Error's Code and Message methods to get detailed information about
3878// the error.
3879//
3880// See the AWS API reference guide for Amazon CloudWatch Events's
3881// API operation PutTargets for usage and error information.
3882//
3883// Returned Error Types:
3884//   * ResourceNotFoundException
3885//   An entity that you specified does not exist.
3886//
3887//   * ConcurrentModificationException
3888//   There is concurrent modification on a rule, target, archive, or replay.
3889//
3890//   * LimitExceededException
3891//   The request failed because it attempted to create resource beyond the allowed
3892//   service quota.
3893//
3894//   * ManagedRuleException
3895//   This rule was created by an AWS service on behalf of your account. It is
3896//   managed by that service. If you see this error in response to DeleteRule
3897//   or RemoveTargets, you can use the Force parameter in those calls to delete
3898//   the rule or remove targets from the rule. You cannot modify these managed
3899//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
3900//   or UntagResource.
3901//
3902//   * InternalException
3903//   This exception occurs due to unexpected causes.
3904//
3905// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutTargets
3906func (c *CloudWatchEvents) PutTargets(input *PutTargetsInput) (*PutTargetsOutput, error) {
3907	req, out := c.PutTargetsRequest(input)
3908	return out, req.Send()
3909}
3910
3911// PutTargetsWithContext is the same as PutTargets with the addition of
3912// the ability to pass a context and additional request options.
3913//
3914// See PutTargets for details on how to use this API operation.
3915//
3916// The context must be non-nil and will be used for request cancellation. If
3917// the context is nil a panic will occur. In the future the SDK may create
3918// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3919// for more information on using Contexts.
3920func (c *CloudWatchEvents) PutTargetsWithContext(ctx aws.Context, input *PutTargetsInput, opts ...request.Option) (*PutTargetsOutput, error) {
3921	req, out := c.PutTargetsRequest(input)
3922	req.SetContext(ctx)
3923	req.ApplyOptions(opts...)
3924	return out, req.Send()
3925}
3926
3927const opRemovePermission = "RemovePermission"
3928
3929// RemovePermissionRequest generates a "aws/request.Request" representing the
3930// client's request for the RemovePermission operation. The "output" return
3931// value will be populated with the request's response once the request completes
3932// successfully.
3933//
3934// Use "Send" method on the returned Request to send the API call to the service.
3935// the "output" return value is not valid until after Send returns without error.
3936//
3937// See RemovePermission for more information on using the RemovePermission
3938// API call, and error handling.
3939//
3940// This method is useful when you want to inject custom logic or configuration
3941// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3942//
3943//
3944//    // Example sending a request using the RemovePermissionRequest method.
3945//    req, resp := client.RemovePermissionRequest(params)
3946//
3947//    err := req.Send()
3948//    if err == nil { // resp is now filled
3949//        fmt.Println(resp)
3950//    }
3951//
3952// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/RemovePermission
3953func (c *CloudWatchEvents) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) {
3954	op := &request.Operation{
3955		Name:       opRemovePermission,
3956		HTTPMethod: "POST",
3957		HTTPPath:   "/",
3958	}
3959
3960	if input == nil {
3961		input = &RemovePermissionInput{}
3962	}
3963
3964	output = &RemovePermissionOutput{}
3965	req = c.newRequest(op, input, output)
3966	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3967	return
3968}
3969
3970// RemovePermission API operation for Amazon CloudWatch Events.
3971//
3972// Revokes the permission of another AWS account to be able to put events to
3973// the specified event bus. Specify the account to revoke by the StatementId
3974// value that you associated with the account when you granted it permission
3975// with PutPermission. You can find the StatementId by using DescribeEventBus.
3976//
3977// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3978// with awserr.Error's Code and Message methods to get detailed information about
3979// the error.
3980//
3981// See the AWS API reference guide for Amazon CloudWatch Events's
3982// API operation RemovePermission for usage and error information.
3983//
3984// Returned Error Types:
3985//   * ResourceNotFoundException
3986//   An entity that you specified does not exist.
3987//
3988//   * InternalException
3989//   This exception occurs due to unexpected causes.
3990//
3991//   * ConcurrentModificationException
3992//   There is concurrent modification on a rule, target, archive, or replay.
3993//
3994//   * OperationDisabledException
3995//   The operation you are attempting is not available in this region.
3996//
3997// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/RemovePermission
3998func (c *CloudWatchEvents) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) {
3999	req, out := c.RemovePermissionRequest(input)
4000	return out, req.Send()
4001}
4002
4003// RemovePermissionWithContext is the same as RemovePermission with the addition of
4004// the ability to pass a context and additional request options.
4005//
4006// See RemovePermission for details on how to use this API operation.
4007//
4008// The context must be non-nil and will be used for request cancellation. If
4009// the context is nil a panic will occur. In the future the SDK may create
4010// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4011// for more information on using Contexts.
4012func (c *CloudWatchEvents) RemovePermissionWithContext(ctx aws.Context, input *RemovePermissionInput, opts ...request.Option) (*RemovePermissionOutput, error) {
4013	req, out := c.RemovePermissionRequest(input)
4014	req.SetContext(ctx)
4015	req.ApplyOptions(opts...)
4016	return out, req.Send()
4017}
4018
4019const opRemoveTargets = "RemoveTargets"
4020
4021// RemoveTargetsRequest generates a "aws/request.Request" representing the
4022// client's request for the RemoveTargets operation. The "output" return
4023// value will be populated with the request's response once the request completes
4024// successfully.
4025//
4026// Use "Send" method on the returned Request to send the API call to the service.
4027// the "output" return value is not valid until after Send returns without error.
4028//
4029// See RemoveTargets for more information on using the RemoveTargets
4030// API call, and error handling.
4031//
4032// This method is useful when you want to inject custom logic or configuration
4033// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4034//
4035//
4036//    // Example sending a request using the RemoveTargetsRequest method.
4037//    req, resp := client.RemoveTargetsRequest(params)
4038//
4039//    err := req.Send()
4040//    if err == nil { // resp is now filled
4041//        fmt.Println(resp)
4042//    }
4043//
4044// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/RemoveTargets
4045func (c *CloudWatchEvents) RemoveTargetsRequest(input *RemoveTargetsInput) (req *request.Request, output *RemoveTargetsOutput) {
4046	op := &request.Operation{
4047		Name:       opRemoveTargets,
4048		HTTPMethod: "POST",
4049		HTTPPath:   "/",
4050	}
4051
4052	if input == nil {
4053		input = &RemoveTargetsInput{}
4054	}
4055
4056	output = &RemoveTargetsOutput{}
4057	req = c.newRequest(op, input, output)
4058	return
4059}
4060
4061// RemoveTargets API operation for Amazon CloudWatch Events.
4062//
4063// Removes the specified targets from the specified rule. When the rule is triggered,
4064// those targets are no longer be invoked.
4065//
4066// When you remove a target, when the associated rule triggers, removed targets
4067// might continue to be invoked. Allow a short period of time for changes to
4068// take effect.
4069//
4070// This action can partially fail if too many requests are made at the same
4071// time. If that happens, FailedEntryCount is non-zero in the response and each
4072// entry in FailedEntries provides the ID of the failed target and the error
4073// code.
4074//
4075// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4076// with awserr.Error's Code and Message methods to get detailed information about
4077// the error.
4078//
4079// See the AWS API reference guide for Amazon CloudWatch Events's
4080// API operation RemoveTargets for usage and error information.
4081//
4082// Returned Error Types:
4083//   * ResourceNotFoundException
4084//   An entity that you specified does not exist.
4085//
4086//   * ConcurrentModificationException
4087//   There is concurrent modification on a rule, target, archive, or replay.
4088//
4089//   * ManagedRuleException
4090//   This rule was created by an AWS service on behalf of your account. It is
4091//   managed by that service. If you see this error in response to DeleteRule
4092//   or RemoveTargets, you can use the Force parameter in those calls to delete
4093//   the rule or remove targets from the rule. You cannot modify these managed
4094//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
4095//   or UntagResource.
4096//
4097//   * InternalException
4098//   This exception occurs due to unexpected causes.
4099//
4100// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/RemoveTargets
4101func (c *CloudWatchEvents) RemoveTargets(input *RemoveTargetsInput) (*RemoveTargetsOutput, error) {
4102	req, out := c.RemoveTargetsRequest(input)
4103	return out, req.Send()
4104}
4105
4106// RemoveTargetsWithContext is the same as RemoveTargets with the addition of
4107// the ability to pass a context and additional request options.
4108//
4109// See RemoveTargets for details on how to use this API operation.
4110//
4111// The context must be non-nil and will be used for request cancellation. If
4112// the context is nil a panic will occur. In the future the SDK may create
4113// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4114// for more information on using Contexts.
4115func (c *CloudWatchEvents) RemoveTargetsWithContext(ctx aws.Context, input *RemoveTargetsInput, opts ...request.Option) (*RemoveTargetsOutput, error) {
4116	req, out := c.RemoveTargetsRequest(input)
4117	req.SetContext(ctx)
4118	req.ApplyOptions(opts...)
4119	return out, req.Send()
4120}
4121
4122const opStartReplay = "StartReplay"
4123
4124// StartReplayRequest generates a "aws/request.Request" representing the
4125// client's request for the StartReplay operation. The "output" return
4126// value will be populated with the request's response once the request completes
4127// successfully.
4128//
4129// Use "Send" method on the returned Request to send the API call to the service.
4130// the "output" return value is not valid until after Send returns without error.
4131//
4132// See StartReplay for more information on using the StartReplay
4133// API call, and error handling.
4134//
4135// This method is useful when you want to inject custom logic or configuration
4136// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4137//
4138//
4139//    // Example sending a request using the StartReplayRequest method.
4140//    req, resp := client.StartReplayRequest(params)
4141//
4142//    err := req.Send()
4143//    if err == nil { // resp is now filled
4144//        fmt.Println(resp)
4145//    }
4146//
4147// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/StartReplay
4148func (c *CloudWatchEvents) StartReplayRequest(input *StartReplayInput) (req *request.Request, output *StartReplayOutput) {
4149	op := &request.Operation{
4150		Name:       opStartReplay,
4151		HTTPMethod: "POST",
4152		HTTPPath:   "/",
4153	}
4154
4155	if input == nil {
4156		input = &StartReplayInput{}
4157	}
4158
4159	output = &StartReplayOutput{}
4160	req = c.newRequest(op, input, output)
4161	return
4162}
4163
4164// StartReplay API operation for Amazon CloudWatch Events.
4165//
4166// Starts the specified replay. Events are not necessarily replayed in the exact
4167// same order that they were added to the archive. A replay processes events
4168// to replay based on the time in the event, and replays them using 1 minute
4169// intervals. If you specify an EventStartTime and an EventEndTime that covers
4170// a 20 minute time range, the events are replayed from the first minute of
4171// that 20 minute range first. Then the events from the second minute are replayed.
4172// You can use DescribeReplay to determine the progress of a replay. The value
4173// returned for EventLastReplayedTime indicates the time within the specified
4174// time range associated with the last event replayed.
4175//
4176// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4177// with awserr.Error's Code and Message methods to get detailed information about
4178// the error.
4179//
4180// See the AWS API reference guide for Amazon CloudWatch Events's
4181// API operation StartReplay for usage and error information.
4182//
4183// Returned Error Types:
4184//   * ResourceNotFoundException
4185//   An entity that you specified does not exist.
4186//
4187//   * ResourceAlreadyExistsException
4188//   The resource you are trying to create already exists.
4189//
4190//   * InvalidEventPatternException
4191//   The event pattern is not valid.
4192//
4193//   * LimitExceededException
4194//   The request failed because it attempted to create resource beyond the allowed
4195//   service quota.
4196//
4197//   * InternalException
4198//   This exception occurs due to unexpected causes.
4199//
4200// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/StartReplay
4201func (c *CloudWatchEvents) StartReplay(input *StartReplayInput) (*StartReplayOutput, error) {
4202	req, out := c.StartReplayRequest(input)
4203	return out, req.Send()
4204}
4205
4206// StartReplayWithContext is the same as StartReplay with the addition of
4207// the ability to pass a context and additional request options.
4208//
4209// See StartReplay for details on how to use this API operation.
4210//
4211// The context must be non-nil and will be used for request cancellation. If
4212// the context is nil a panic will occur. In the future the SDK may create
4213// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4214// for more information on using Contexts.
4215func (c *CloudWatchEvents) StartReplayWithContext(ctx aws.Context, input *StartReplayInput, opts ...request.Option) (*StartReplayOutput, error) {
4216	req, out := c.StartReplayRequest(input)
4217	req.SetContext(ctx)
4218	req.ApplyOptions(opts...)
4219	return out, req.Send()
4220}
4221
4222const opTagResource = "TagResource"
4223
4224// TagResourceRequest generates a "aws/request.Request" representing the
4225// client's request for the TagResource operation. The "output" return
4226// value will be populated with the request's response once the request completes
4227// successfully.
4228//
4229// Use "Send" method on the returned Request to send the API call to the service.
4230// the "output" return value is not valid until after Send returns without error.
4231//
4232// See TagResource for more information on using the TagResource
4233// API call, and error handling.
4234//
4235// This method is useful when you want to inject custom logic or configuration
4236// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4237//
4238//
4239//    // Example sending a request using the TagResourceRequest method.
4240//    req, resp := client.TagResourceRequest(params)
4241//
4242//    err := req.Send()
4243//    if err == nil { // resp is now filled
4244//        fmt.Println(resp)
4245//    }
4246//
4247// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/TagResource
4248func (c *CloudWatchEvents) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
4249	op := &request.Operation{
4250		Name:       opTagResource,
4251		HTTPMethod: "POST",
4252		HTTPPath:   "/",
4253	}
4254
4255	if input == nil {
4256		input = &TagResourceInput{}
4257	}
4258
4259	output = &TagResourceOutput{}
4260	req = c.newRequest(op, input, output)
4261	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4262	return
4263}
4264
4265// TagResource API operation for Amazon CloudWatch Events.
4266//
4267// Assigns one or more tags (key-value pairs) to the specified EventBridge resource.
4268// Tags can help you organize and categorize your resources. You can also use
4269// them to scope user permissions by granting a user permission to access or
4270// change only resources with certain tag values. In EventBridge, rules and
4271// event buses can be tagged.
4272//
4273// Tags don't have any semantic meaning to AWS and are interpreted strictly
4274// as strings of characters.
4275//
4276// You can use the TagResource action with a resource that already has tags.
4277// If you specify a new tag key, this tag is appended to the list of tags associated
4278// with the resource. If you specify a tag key that is already associated with
4279// the resource, the new tag value that you specify replaces the previous value
4280// for that tag.
4281//
4282// You can associate as many as 50 tags with a resource.
4283//
4284// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4285// with awserr.Error's Code and Message methods to get detailed information about
4286// the error.
4287//
4288// See the AWS API reference guide for Amazon CloudWatch Events's
4289// API operation TagResource for usage and error information.
4290//
4291// Returned Error Types:
4292//   * ResourceNotFoundException
4293//   An entity that you specified does not exist.
4294//
4295//   * ConcurrentModificationException
4296//   There is concurrent modification on a rule, target, archive, or replay.
4297//
4298//   * InternalException
4299//   This exception occurs due to unexpected causes.
4300//
4301//   * ManagedRuleException
4302//   This rule was created by an AWS service on behalf of your account. It is
4303//   managed by that service. If you see this error in response to DeleteRule
4304//   or RemoveTargets, you can use the Force parameter in those calls to delete
4305//   the rule or remove targets from the rule. You cannot modify these managed
4306//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
4307//   or UntagResource.
4308//
4309// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/TagResource
4310func (c *CloudWatchEvents) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
4311	req, out := c.TagResourceRequest(input)
4312	return out, req.Send()
4313}
4314
4315// TagResourceWithContext is the same as TagResource with the addition of
4316// the ability to pass a context and additional request options.
4317//
4318// See TagResource for details on how to use this API operation.
4319//
4320// The context must be non-nil and will be used for request cancellation. If
4321// the context is nil a panic will occur. In the future the SDK may create
4322// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4323// for more information on using Contexts.
4324func (c *CloudWatchEvents) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
4325	req, out := c.TagResourceRequest(input)
4326	req.SetContext(ctx)
4327	req.ApplyOptions(opts...)
4328	return out, req.Send()
4329}
4330
4331const opTestEventPattern = "TestEventPattern"
4332
4333// TestEventPatternRequest generates a "aws/request.Request" representing the
4334// client's request for the TestEventPattern operation. The "output" return
4335// value will be populated with the request's response once the request completes
4336// successfully.
4337//
4338// Use "Send" method on the returned Request to send the API call to the service.
4339// the "output" return value is not valid until after Send returns without error.
4340//
4341// See TestEventPattern for more information on using the TestEventPattern
4342// API call, and error handling.
4343//
4344// This method is useful when you want to inject custom logic or configuration
4345// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4346//
4347//
4348//    // Example sending a request using the TestEventPatternRequest method.
4349//    req, resp := client.TestEventPatternRequest(params)
4350//
4351//    err := req.Send()
4352//    if err == nil { // resp is now filled
4353//        fmt.Println(resp)
4354//    }
4355//
4356// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/TestEventPattern
4357func (c *CloudWatchEvents) TestEventPatternRequest(input *TestEventPatternInput) (req *request.Request, output *TestEventPatternOutput) {
4358	op := &request.Operation{
4359		Name:       opTestEventPattern,
4360		HTTPMethod: "POST",
4361		HTTPPath:   "/",
4362	}
4363
4364	if input == nil {
4365		input = &TestEventPatternInput{}
4366	}
4367
4368	output = &TestEventPatternOutput{}
4369	req = c.newRequest(op, input, output)
4370	return
4371}
4372
4373// TestEventPattern API operation for Amazon CloudWatch Events.
4374//
4375// Tests whether the specified event pattern matches the provided event.
4376//
4377// Most services in AWS treat : or / as the same character in Amazon Resource
4378// Names (ARNs). However, EventBridge uses an exact match in event patterns
4379// and rules. Be sure to use the correct ARN characters when creating event
4380// patterns so that they match the ARN syntax in the event you want to match.
4381//
4382// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4383// with awserr.Error's Code and Message methods to get detailed information about
4384// the error.
4385//
4386// See the AWS API reference guide for Amazon CloudWatch Events's
4387// API operation TestEventPattern for usage and error information.
4388//
4389// Returned Error Types:
4390//   * InvalidEventPatternException
4391//   The event pattern is not valid.
4392//
4393//   * InternalException
4394//   This exception occurs due to unexpected causes.
4395//
4396// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/TestEventPattern
4397func (c *CloudWatchEvents) TestEventPattern(input *TestEventPatternInput) (*TestEventPatternOutput, error) {
4398	req, out := c.TestEventPatternRequest(input)
4399	return out, req.Send()
4400}
4401
4402// TestEventPatternWithContext is the same as TestEventPattern with the addition of
4403// the ability to pass a context and additional request options.
4404//
4405// See TestEventPattern for details on how to use this API operation.
4406//
4407// The context must be non-nil and will be used for request cancellation. If
4408// the context is nil a panic will occur. In the future the SDK may create
4409// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4410// for more information on using Contexts.
4411func (c *CloudWatchEvents) TestEventPatternWithContext(ctx aws.Context, input *TestEventPatternInput, opts ...request.Option) (*TestEventPatternOutput, error) {
4412	req, out := c.TestEventPatternRequest(input)
4413	req.SetContext(ctx)
4414	req.ApplyOptions(opts...)
4415	return out, req.Send()
4416}
4417
4418const opUntagResource = "UntagResource"
4419
4420// UntagResourceRequest generates a "aws/request.Request" representing the
4421// client's request for the UntagResource operation. The "output" return
4422// value will be populated with the request's response once the request completes
4423// successfully.
4424//
4425// Use "Send" method on the returned Request to send the API call to the service.
4426// the "output" return value is not valid until after Send returns without error.
4427//
4428// See UntagResource for more information on using the UntagResource
4429// API call, and error handling.
4430//
4431// This method is useful when you want to inject custom logic or configuration
4432// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4433//
4434//
4435//    // Example sending a request using the UntagResourceRequest method.
4436//    req, resp := client.UntagResourceRequest(params)
4437//
4438//    err := req.Send()
4439//    if err == nil { // resp is now filled
4440//        fmt.Println(resp)
4441//    }
4442//
4443// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UntagResource
4444func (c *CloudWatchEvents) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
4445	op := &request.Operation{
4446		Name:       opUntagResource,
4447		HTTPMethod: "POST",
4448		HTTPPath:   "/",
4449	}
4450
4451	if input == nil {
4452		input = &UntagResourceInput{}
4453	}
4454
4455	output = &UntagResourceOutput{}
4456	req = c.newRequest(op, input, output)
4457	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4458	return
4459}
4460
4461// UntagResource API operation for Amazon CloudWatch Events.
4462//
4463// Removes one or more tags from the specified EventBridge resource. In Amazon
4464// EventBridge (CloudWatch Events, rules and event buses can be tagged.
4465//
4466// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4467// with awserr.Error's Code and Message methods to get detailed information about
4468// the error.
4469//
4470// See the AWS API reference guide for Amazon CloudWatch Events's
4471// API operation UntagResource for usage and error information.
4472//
4473// Returned Error Types:
4474//   * ResourceNotFoundException
4475//   An entity that you specified does not exist.
4476//
4477//   * InternalException
4478//   This exception occurs due to unexpected causes.
4479//
4480//   * ConcurrentModificationException
4481//   There is concurrent modification on a rule, target, archive, or replay.
4482//
4483//   * ManagedRuleException
4484//   This rule was created by an AWS service on behalf of your account. It is
4485//   managed by that service. If you see this error in response to DeleteRule
4486//   or RemoveTargets, you can use the Force parameter in those calls to delete
4487//   the rule or remove targets from the rule. You cannot modify these managed
4488//   rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
4489//   or UntagResource.
4490//
4491// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UntagResource
4492func (c *CloudWatchEvents) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
4493	req, out := c.UntagResourceRequest(input)
4494	return out, req.Send()
4495}
4496
4497// UntagResourceWithContext is the same as UntagResource with the addition of
4498// the ability to pass a context and additional request options.
4499//
4500// See UntagResource for details on how to use this API operation.
4501//
4502// The context must be non-nil and will be used for request cancellation. If
4503// the context is nil a panic will occur. In the future the SDK may create
4504// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4505// for more information on using Contexts.
4506func (c *CloudWatchEvents) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
4507	req, out := c.UntagResourceRequest(input)
4508	req.SetContext(ctx)
4509	req.ApplyOptions(opts...)
4510	return out, req.Send()
4511}
4512
4513const opUpdateApiDestination = "UpdateApiDestination"
4514
4515// UpdateApiDestinationRequest generates a "aws/request.Request" representing the
4516// client's request for the UpdateApiDestination operation. The "output" return
4517// value will be populated with the request's response once the request completes
4518// successfully.
4519//
4520// Use "Send" method on the returned Request to send the API call to the service.
4521// the "output" return value is not valid until after Send returns without error.
4522//
4523// See UpdateApiDestination for more information on using the UpdateApiDestination
4524// API call, and error handling.
4525//
4526// This method is useful when you want to inject custom logic or configuration
4527// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4528//
4529//
4530//    // Example sending a request using the UpdateApiDestinationRequest method.
4531//    req, resp := client.UpdateApiDestinationRequest(params)
4532//
4533//    err := req.Send()
4534//    if err == nil { // resp is now filled
4535//        fmt.Println(resp)
4536//    }
4537//
4538// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UpdateApiDestination
4539func (c *CloudWatchEvents) UpdateApiDestinationRequest(input *UpdateApiDestinationInput) (req *request.Request, output *UpdateApiDestinationOutput) {
4540	op := &request.Operation{
4541		Name:       opUpdateApiDestination,
4542		HTTPMethod: "POST",
4543		HTTPPath:   "/",
4544	}
4545
4546	if input == nil {
4547		input = &UpdateApiDestinationInput{}
4548	}
4549
4550	output = &UpdateApiDestinationOutput{}
4551	req = c.newRequest(op, input, output)
4552	return
4553}
4554
4555// UpdateApiDestination API operation for Amazon CloudWatch Events.
4556//
4557// Updates an API destination.
4558//
4559// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4560// with awserr.Error's Code and Message methods to get detailed information about
4561// the error.
4562//
4563// See the AWS API reference guide for Amazon CloudWatch Events's
4564// API operation UpdateApiDestination for usage and error information.
4565//
4566// Returned Error Types:
4567//   * ConcurrentModificationException
4568//   There is concurrent modification on a rule, target, archive, or replay.
4569//
4570//   * ResourceNotFoundException
4571//   An entity that you specified does not exist.
4572//
4573//   * InternalException
4574//   This exception occurs due to unexpected causes.
4575//
4576//   * LimitExceededException
4577//   The request failed because it attempted to create resource beyond the allowed
4578//   service quota.
4579//
4580// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UpdateApiDestination
4581func (c *CloudWatchEvents) UpdateApiDestination(input *UpdateApiDestinationInput) (*UpdateApiDestinationOutput, error) {
4582	req, out := c.UpdateApiDestinationRequest(input)
4583	return out, req.Send()
4584}
4585
4586// UpdateApiDestinationWithContext is the same as UpdateApiDestination with the addition of
4587// the ability to pass a context and additional request options.
4588//
4589// See UpdateApiDestination for details on how to use this API operation.
4590//
4591// The context must be non-nil and will be used for request cancellation. If
4592// the context is nil a panic will occur. In the future the SDK may create
4593// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4594// for more information on using Contexts.
4595func (c *CloudWatchEvents) UpdateApiDestinationWithContext(ctx aws.Context, input *UpdateApiDestinationInput, opts ...request.Option) (*UpdateApiDestinationOutput, error) {
4596	req, out := c.UpdateApiDestinationRequest(input)
4597	req.SetContext(ctx)
4598	req.ApplyOptions(opts...)
4599	return out, req.Send()
4600}
4601
4602const opUpdateArchive = "UpdateArchive"
4603
4604// UpdateArchiveRequest generates a "aws/request.Request" representing the
4605// client's request for the UpdateArchive operation. The "output" return
4606// value will be populated with the request's response once the request completes
4607// successfully.
4608//
4609// Use "Send" method on the returned Request to send the API call to the service.
4610// the "output" return value is not valid until after Send returns without error.
4611//
4612// See UpdateArchive for more information on using the UpdateArchive
4613// API call, and error handling.
4614//
4615// This method is useful when you want to inject custom logic or configuration
4616// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4617//
4618//
4619//    // Example sending a request using the UpdateArchiveRequest method.
4620//    req, resp := client.UpdateArchiveRequest(params)
4621//
4622//    err := req.Send()
4623//    if err == nil { // resp is now filled
4624//        fmt.Println(resp)
4625//    }
4626//
4627// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UpdateArchive
4628func (c *CloudWatchEvents) UpdateArchiveRequest(input *UpdateArchiveInput) (req *request.Request, output *UpdateArchiveOutput) {
4629	op := &request.Operation{
4630		Name:       opUpdateArchive,
4631		HTTPMethod: "POST",
4632		HTTPPath:   "/",
4633	}
4634
4635	if input == nil {
4636		input = &UpdateArchiveInput{}
4637	}
4638
4639	output = &UpdateArchiveOutput{}
4640	req = c.newRequest(op, input, output)
4641	return
4642}
4643
4644// UpdateArchive API operation for Amazon CloudWatch Events.
4645//
4646// Updates the specified archive.
4647//
4648// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4649// with awserr.Error's Code and Message methods to get detailed information about
4650// the error.
4651//
4652// See the AWS API reference guide for Amazon CloudWatch Events's
4653// API operation UpdateArchive for usage and error information.
4654//
4655// Returned Error Types:
4656//   * ConcurrentModificationException
4657//   There is concurrent modification on a rule, target, archive, or replay.
4658//
4659//   * ResourceNotFoundException
4660//   An entity that you specified does not exist.
4661//
4662//   * InternalException
4663//   This exception occurs due to unexpected causes.
4664//
4665//   * LimitExceededException
4666//   The request failed because it attempted to create resource beyond the allowed
4667//   service quota.
4668//
4669//   * InvalidEventPatternException
4670//   The event pattern is not valid.
4671//
4672// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UpdateArchive
4673func (c *CloudWatchEvents) UpdateArchive(input *UpdateArchiveInput) (*UpdateArchiveOutput, error) {
4674	req, out := c.UpdateArchiveRequest(input)
4675	return out, req.Send()
4676}
4677
4678// UpdateArchiveWithContext is the same as UpdateArchive with the addition of
4679// the ability to pass a context and additional request options.
4680//
4681// See UpdateArchive for details on how to use this API operation.
4682//
4683// The context must be non-nil and will be used for request cancellation. If
4684// the context is nil a panic will occur. In the future the SDK may create
4685// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4686// for more information on using Contexts.
4687func (c *CloudWatchEvents) UpdateArchiveWithContext(ctx aws.Context, input *UpdateArchiveInput, opts ...request.Option) (*UpdateArchiveOutput, error) {
4688	req, out := c.UpdateArchiveRequest(input)
4689	req.SetContext(ctx)
4690	req.ApplyOptions(opts...)
4691	return out, req.Send()
4692}
4693
4694const opUpdateConnection = "UpdateConnection"
4695
4696// UpdateConnectionRequest generates a "aws/request.Request" representing the
4697// client's request for the UpdateConnection operation. The "output" return
4698// value will be populated with the request's response once the request completes
4699// successfully.
4700//
4701// Use "Send" method on the returned Request to send the API call to the service.
4702// the "output" return value is not valid until after Send returns without error.
4703//
4704// See UpdateConnection for more information on using the UpdateConnection
4705// API call, and error handling.
4706//
4707// This method is useful when you want to inject custom logic or configuration
4708// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4709//
4710//
4711//    // Example sending a request using the UpdateConnectionRequest method.
4712//    req, resp := client.UpdateConnectionRequest(params)
4713//
4714//    err := req.Send()
4715//    if err == nil { // resp is now filled
4716//        fmt.Println(resp)
4717//    }
4718//
4719// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UpdateConnection
4720func (c *CloudWatchEvents) UpdateConnectionRequest(input *UpdateConnectionInput) (req *request.Request, output *UpdateConnectionOutput) {
4721	op := &request.Operation{
4722		Name:       opUpdateConnection,
4723		HTTPMethod: "POST",
4724		HTTPPath:   "/",
4725	}
4726
4727	if input == nil {
4728		input = &UpdateConnectionInput{}
4729	}
4730
4731	output = &UpdateConnectionOutput{}
4732	req = c.newRequest(op, input, output)
4733	return
4734}
4735
4736// UpdateConnection API operation for Amazon CloudWatch Events.
4737//
4738// Updates settings for a connection.
4739//
4740// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4741// with awserr.Error's Code and Message methods to get detailed information about
4742// the error.
4743//
4744// See the AWS API reference guide for Amazon CloudWatch Events's
4745// API operation UpdateConnection for usage and error information.
4746//
4747// Returned Error Types:
4748//   * ConcurrentModificationException
4749//   There is concurrent modification on a rule, target, archive, or replay.
4750//
4751//   * ResourceNotFoundException
4752//   An entity that you specified does not exist.
4753//
4754//   * InternalException
4755//   This exception occurs due to unexpected causes.
4756//
4757//   * LimitExceededException
4758//   The request failed because it attempted to create resource beyond the allowed
4759//   service quota.
4760//
4761// See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/UpdateConnection
4762func (c *CloudWatchEvents) UpdateConnection(input *UpdateConnectionInput) (*UpdateConnectionOutput, error) {
4763	req, out := c.UpdateConnectionRequest(input)
4764	return out, req.Send()
4765}
4766
4767// UpdateConnectionWithContext is the same as UpdateConnection with the addition of
4768// the ability to pass a context and additional request options.
4769//
4770// See UpdateConnection for details on how to use this API operation.
4771//
4772// The context must be non-nil and will be used for request cancellation. If
4773// the context is nil a panic will occur. In the future the SDK may create
4774// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4775// for more information on using Contexts.
4776func (c *CloudWatchEvents) UpdateConnectionWithContext(ctx aws.Context, input *UpdateConnectionInput, opts ...request.Option) (*UpdateConnectionOutput, error) {
4777	req, out := c.UpdateConnectionRequest(input)
4778	req.SetContext(ctx)
4779	req.ApplyOptions(opts...)
4780	return out, req.Send()
4781}
4782
4783type ActivateEventSourceInput struct {
4784	_ struct{} `type:"structure"`
4785
4786	// The name of the partner event source to activate.
4787	//
4788	// Name is a required field
4789	Name *string `min:"1" type:"string" required:"true"`
4790}
4791
4792// String returns the string representation
4793func (s ActivateEventSourceInput) String() string {
4794	return awsutil.Prettify(s)
4795}
4796
4797// GoString returns the string representation
4798func (s ActivateEventSourceInput) GoString() string {
4799	return s.String()
4800}
4801
4802// Validate inspects the fields of the type to determine if they are valid.
4803func (s *ActivateEventSourceInput) Validate() error {
4804	invalidParams := request.ErrInvalidParams{Context: "ActivateEventSourceInput"}
4805	if s.Name == nil {
4806		invalidParams.Add(request.NewErrParamRequired("Name"))
4807	}
4808	if s.Name != nil && len(*s.Name) < 1 {
4809		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
4810	}
4811
4812	if invalidParams.Len() > 0 {
4813		return invalidParams
4814	}
4815	return nil
4816}
4817
4818// SetName sets the Name field's value.
4819func (s *ActivateEventSourceInput) SetName(v string) *ActivateEventSourceInput {
4820	s.Name = &v
4821	return s
4822}
4823
4824type ActivateEventSourceOutput struct {
4825	_ struct{} `type:"structure"`
4826}
4827
4828// String returns the string representation
4829func (s ActivateEventSourceOutput) String() string {
4830	return awsutil.Prettify(s)
4831}
4832
4833// GoString returns the string representation
4834func (s ActivateEventSourceOutput) GoString() string {
4835	return s.String()
4836}
4837
4838// Contains details about an API destination.
4839type ApiDestination struct {
4840	_ struct{} `type:"structure"`
4841
4842	// The ARN of the API destination.
4843	ApiDestinationArn *string `min:"1" type:"string"`
4844
4845	// The state of the API destination.
4846	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
4847
4848	// The ARN of the connection specified for the API destination.
4849	ConnectionArn *string `min:"1" type:"string"`
4850
4851	// A time stamp for the time that the API destination was created.
4852	CreationTime *time.Time `type:"timestamp"`
4853
4854	// The method to use to connect to the HTTP endpoint.
4855	HttpMethod *string `type:"string" enum:"ApiDestinationHttpMethod"`
4856
4857	// The URL to the endpoint for the API destination.
4858	InvocationEndpoint *string `min:"1" type:"string"`
4859
4860	// The maximum number of invocations per second to send to the HTTP endpoint.
4861	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
4862
4863	// A time stamp for the time that the API destination was last modified.
4864	LastModifiedTime *time.Time `type:"timestamp"`
4865
4866	// The name of the API destination.
4867	Name *string `min:"1" type:"string"`
4868}
4869
4870// String returns the string representation
4871func (s ApiDestination) String() string {
4872	return awsutil.Prettify(s)
4873}
4874
4875// GoString returns the string representation
4876func (s ApiDestination) GoString() string {
4877	return s.String()
4878}
4879
4880// SetApiDestinationArn sets the ApiDestinationArn field's value.
4881func (s *ApiDestination) SetApiDestinationArn(v string) *ApiDestination {
4882	s.ApiDestinationArn = &v
4883	return s
4884}
4885
4886// SetApiDestinationState sets the ApiDestinationState field's value.
4887func (s *ApiDestination) SetApiDestinationState(v string) *ApiDestination {
4888	s.ApiDestinationState = &v
4889	return s
4890}
4891
4892// SetConnectionArn sets the ConnectionArn field's value.
4893func (s *ApiDestination) SetConnectionArn(v string) *ApiDestination {
4894	s.ConnectionArn = &v
4895	return s
4896}
4897
4898// SetCreationTime sets the CreationTime field's value.
4899func (s *ApiDestination) SetCreationTime(v time.Time) *ApiDestination {
4900	s.CreationTime = &v
4901	return s
4902}
4903
4904// SetHttpMethod sets the HttpMethod field's value.
4905func (s *ApiDestination) SetHttpMethod(v string) *ApiDestination {
4906	s.HttpMethod = &v
4907	return s
4908}
4909
4910// SetInvocationEndpoint sets the InvocationEndpoint field's value.
4911func (s *ApiDestination) SetInvocationEndpoint(v string) *ApiDestination {
4912	s.InvocationEndpoint = &v
4913	return s
4914}
4915
4916// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
4917func (s *ApiDestination) SetInvocationRateLimitPerSecond(v int64) *ApiDestination {
4918	s.InvocationRateLimitPerSecond = &v
4919	return s
4920}
4921
4922// SetLastModifiedTime sets the LastModifiedTime field's value.
4923func (s *ApiDestination) SetLastModifiedTime(v time.Time) *ApiDestination {
4924	s.LastModifiedTime = &v
4925	return s
4926}
4927
4928// SetName sets the Name field's value.
4929func (s *ApiDestination) SetName(v string) *ApiDestination {
4930	s.Name = &v
4931	return s
4932}
4933
4934// An Archive object that contains details about an archive.
4935type Archive struct {
4936	_ struct{} `type:"structure"`
4937
4938	// The name of the archive.
4939	ArchiveName *string `min:"1" type:"string"`
4940
4941	// The time stamp for the time that the archive was created.
4942	CreationTime *time.Time `type:"timestamp"`
4943
4944	// The number of events in the archive.
4945	EventCount *int64 `type:"long"`
4946
4947	// The ARN of the event bus associated with the archive. Only events from this
4948	// event bus are sent to the archive.
4949	EventSourceArn *string `min:"1" type:"string"`
4950
4951	// The number of days to retain events in the archive before they are deleted.
4952	RetentionDays *int64 `type:"integer"`
4953
4954	// The size of the archive, in bytes.
4955	SizeBytes *int64 `type:"long"`
4956
4957	// The current state of the archive.
4958	State *string `type:"string" enum:"ArchiveState"`
4959
4960	// A description for the reason that the archive is in the current state.
4961	StateReason *string `type:"string"`
4962}
4963
4964// String returns the string representation
4965func (s Archive) String() string {
4966	return awsutil.Prettify(s)
4967}
4968
4969// GoString returns the string representation
4970func (s Archive) GoString() string {
4971	return s.String()
4972}
4973
4974// SetArchiveName sets the ArchiveName field's value.
4975func (s *Archive) SetArchiveName(v string) *Archive {
4976	s.ArchiveName = &v
4977	return s
4978}
4979
4980// SetCreationTime sets the CreationTime field's value.
4981func (s *Archive) SetCreationTime(v time.Time) *Archive {
4982	s.CreationTime = &v
4983	return s
4984}
4985
4986// SetEventCount sets the EventCount field's value.
4987func (s *Archive) SetEventCount(v int64) *Archive {
4988	s.EventCount = &v
4989	return s
4990}
4991
4992// SetEventSourceArn sets the EventSourceArn field's value.
4993func (s *Archive) SetEventSourceArn(v string) *Archive {
4994	s.EventSourceArn = &v
4995	return s
4996}
4997
4998// SetRetentionDays sets the RetentionDays field's value.
4999func (s *Archive) SetRetentionDays(v int64) *Archive {
5000	s.RetentionDays = &v
5001	return s
5002}
5003
5004// SetSizeBytes sets the SizeBytes field's value.
5005func (s *Archive) SetSizeBytes(v int64) *Archive {
5006	s.SizeBytes = &v
5007	return s
5008}
5009
5010// SetState sets the State field's value.
5011func (s *Archive) SetState(v string) *Archive {
5012	s.State = &v
5013	return s
5014}
5015
5016// SetStateReason sets the StateReason field's value.
5017func (s *Archive) SetStateReason(v string) *Archive {
5018	s.StateReason = &v
5019	return s
5020}
5021
5022// This structure specifies the VPC subnets and security groups for the task,
5023// and whether a public IP address is to be used. This structure is relevant
5024// only for ECS tasks that use the awsvpc network mode.
5025type AwsVpcConfiguration struct {
5026	_ struct{} `type:"structure"`
5027
5028	// Specifies whether the task's elastic network interface receives a public
5029	// IP address. You can specify ENABLED only when LaunchType in EcsParameters
5030	// is set to FARGATE.
5031	AssignPublicIp *string `type:"string" enum:"AssignPublicIp"`
5032
5033	// Specifies the security groups associated with the task. These security groups
5034	// must all be in the same VPC. You can specify as many as five security groups.
5035	// If you do not specify a security group, the default security group for the
5036	// VPC is used.
5037	SecurityGroups []*string `type:"list"`
5038
5039	// Specifies the subnets associated with the task. These subnets must all be
5040	// in the same VPC. You can specify as many as 16 subnets.
5041	//
5042	// Subnets is a required field
5043	Subnets []*string `type:"list" required:"true"`
5044}
5045
5046// String returns the string representation
5047func (s AwsVpcConfiguration) String() string {
5048	return awsutil.Prettify(s)
5049}
5050
5051// GoString returns the string representation
5052func (s AwsVpcConfiguration) GoString() string {
5053	return s.String()
5054}
5055
5056// Validate inspects the fields of the type to determine if they are valid.
5057func (s *AwsVpcConfiguration) Validate() error {
5058	invalidParams := request.ErrInvalidParams{Context: "AwsVpcConfiguration"}
5059	if s.Subnets == nil {
5060		invalidParams.Add(request.NewErrParamRequired("Subnets"))
5061	}
5062
5063	if invalidParams.Len() > 0 {
5064		return invalidParams
5065	}
5066	return nil
5067}
5068
5069// SetAssignPublicIp sets the AssignPublicIp field's value.
5070func (s *AwsVpcConfiguration) SetAssignPublicIp(v string) *AwsVpcConfiguration {
5071	s.AssignPublicIp = &v
5072	return s
5073}
5074
5075// SetSecurityGroups sets the SecurityGroups field's value.
5076func (s *AwsVpcConfiguration) SetSecurityGroups(v []*string) *AwsVpcConfiguration {
5077	s.SecurityGroups = v
5078	return s
5079}
5080
5081// SetSubnets sets the Subnets field's value.
5082func (s *AwsVpcConfiguration) SetSubnets(v []*string) *AwsVpcConfiguration {
5083	s.Subnets = v
5084	return s
5085}
5086
5087// The array properties for the submitted job, such as the size of the array.
5088// The array size can be between 2 and 10,000. If you specify array properties
5089// for a job, it becomes an array job. This parameter is used only if the target
5090// is an AWS Batch job.
5091type BatchArrayProperties struct {
5092	_ struct{} `type:"structure"`
5093
5094	// The size of the array, if this is an array batch job. Valid values are integers
5095	// between 2 and 10,000.
5096	Size *int64 `type:"integer"`
5097}
5098
5099// String returns the string representation
5100func (s BatchArrayProperties) String() string {
5101	return awsutil.Prettify(s)
5102}
5103
5104// GoString returns the string representation
5105func (s BatchArrayProperties) GoString() string {
5106	return s.String()
5107}
5108
5109// SetSize sets the Size field's value.
5110func (s *BatchArrayProperties) SetSize(v int64) *BatchArrayProperties {
5111	s.Size = &v
5112	return s
5113}
5114
5115// The custom parameters to be used when the target is an AWS Batch job.
5116type BatchParameters struct {
5117	_ struct{} `type:"structure"`
5118
5119	// The array properties for the submitted job, such as the size of the array.
5120	// The array size can be between 2 and 10,000. If you specify array properties
5121	// for a job, it becomes an array job. This parameter is used only if the target
5122	// is an AWS Batch job.
5123	ArrayProperties *BatchArrayProperties `type:"structure"`
5124
5125	// The ARN or name of the job definition to use if the event target is an AWS
5126	// Batch job. This job definition must already exist.
5127	//
5128	// JobDefinition is a required field
5129	JobDefinition *string `type:"string" required:"true"`
5130
5131	// The name to use for this execution of the job, if the target is an AWS Batch
5132	// job.
5133	//
5134	// JobName is a required field
5135	JobName *string `type:"string" required:"true"`
5136
5137	// The retry strategy to use for failed jobs, if the target is an AWS Batch
5138	// job. The retry strategy is the number of times to retry the failed job execution.
5139	// Valid values are 1–10. When you specify a retry strategy here, it overrides
5140	// the retry strategy defined in the job definition.
5141	RetryStrategy *BatchRetryStrategy `type:"structure"`
5142}
5143
5144// String returns the string representation
5145func (s BatchParameters) String() string {
5146	return awsutil.Prettify(s)
5147}
5148
5149// GoString returns the string representation
5150func (s BatchParameters) GoString() string {
5151	return s.String()
5152}
5153
5154// Validate inspects the fields of the type to determine if they are valid.
5155func (s *BatchParameters) Validate() error {
5156	invalidParams := request.ErrInvalidParams{Context: "BatchParameters"}
5157	if s.JobDefinition == nil {
5158		invalidParams.Add(request.NewErrParamRequired("JobDefinition"))
5159	}
5160	if s.JobName == nil {
5161		invalidParams.Add(request.NewErrParamRequired("JobName"))
5162	}
5163
5164	if invalidParams.Len() > 0 {
5165		return invalidParams
5166	}
5167	return nil
5168}
5169
5170// SetArrayProperties sets the ArrayProperties field's value.
5171func (s *BatchParameters) SetArrayProperties(v *BatchArrayProperties) *BatchParameters {
5172	s.ArrayProperties = v
5173	return s
5174}
5175
5176// SetJobDefinition sets the JobDefinition field's value.
5177func (s *BatchParameters) SetJobDefinition(v string) *BatchParameters {
5178	s.JobDefinition = &v
5179	return s
5180}
5181
5182// SetJobName sets the JobName field's value.
5183func (s *BatchParameters) SetJobName(v string) *BatchParameters {
5184	s.JobName = &v
5185	return s
5186}
5187
5188// SetRetryStrategy sets the RetryStrategy field's value.
5189func (s *BatchParameters) SetRetryStrategy(v *BatchRetryStrategy) *BatchParameters {
5190	s.RetryStrategy = v
5191	return s
5192}
5193
5194// The retry strategy to use for failed jobs, if the target is an AWS Batch
5195// job. If you specify a retry strategy here, it overrides the retry strategy
5196// defined in the job definition.
5197type BatchRetryStrategy struct {
5198	_ struct{} `type:"structure"`
5199
5200	// The number of times to attempt to retry, if the job fails. Valid values are
5201	// 1–10.
5202	Attempts *int64 `type:"integer"`
5203}
5204
5205// String returns the string representation
5206func (s BatchRetryStrategy) String() string {
5207	return awsutil.Prettify(s)
5208}
5209
5210// GoString returns the string representation
5211func (s BatchRetryStrategy) GoString() string {
5212	return s.String()
5213}
5214
5215// SetAttempts sets the Attempts field's value.
5216func (s *BatchRetryStrategy) SetAttempts(v int64) *BatchRetryStrategy {
5217	s.Attempts = &v
5218	return s
5219}
5220
5221type CancelReplayInput struct {
5222	_ struct{} `type:"structure"`
5223
5224	// The name of the replay to cancel.
5225	//
5226	// ReplayName is a required field
5227	ReplayName *string `min:"1" type:"string" required:"true"`
5228}
5229
5230// String returns the string representation
5231func (s CancelReplayInput) String() string {
5232	return awsutil.Prettify(s)
5233}
5234
5235// GoString returns the string representation
5236func (s CancelReplayInput) GoString() string {
5237	return s.String()
5238}
5239
5240// Validate inspects the fields of the type to determine if they are valid.
5241func (s *CancelReplayInput) Validate() error {
5242	invalidParams := request.ErrInvalidParams{Context: "CancelReplayInput"}
5243	if s.ReplayName == nil {
5244		invalidParams.Add(request.NewErrParamRequired("ReplayName"))
5245	}
5246	if s.ReplayName != nil && len(*s.ReplayName) < 1 {
5247		invalidParams.Add(request.NewErrParamMinLen("ReplayName", 1))
5248	}
5249
5250	if invalidParams.Len() > 0 {
5251		return invalidParams
5252	}
5253	return nil
5254}
5255
5256// SetReplayName sets the ReplayName field's value.
5257func (s *CancelReplayInput) SetReplayName(v string) *CancelReplayInput {
5258	s.ReplayName = &v
5259	return s
5260}
5261
5262type CancelReplayOutput struct {
5263	_ struct{} `type:"structure"`
5264
5265	// The ARN of the replay to cancel.
5266	ReplayArn *string `min:"1" type:"string"`
5267
5268	// The current state of the replay.
5269	State *string `type:"string" enum:"ReplayState"`
5270
5271	// The reason that the replay is in the current state.
5272	StateReason *string `type:"string"`
5273}
5274
5275// String returns the string representation
5276func (s CancelReplayOutput) String() string {
5277	return awsutil.Prettify(s)
5278}
5279
5280// GoString returns the string representation
5281func (s CancelReplayOutput) GoString() string {
5282	return s.String()
5283}
5284
5285// SetReplayArn sets the ReplayArn field's value.
5286func (s *CancelReplayOutput) SetReplayArn(v string) *CancelReplayOutput {
5287	s.ReplayArn = &v
5288	return s
5289}
5290
5291// SetState sets the State field's value.
5292func (s *CancelReplayOutput) SetState(v string) *CancelReplayOutput {
5293	s.State = &v
5294	return s
5295}
5296
5297// SetStateReason sets the StateReason field's value.
5298func (s *CancelReplayOutput) SetStateReason(v string) *CancelReplayOutput {
5299	s.StateReason = &v
5300	return s
5301}
5302
5303// There is concurrent modification on a rule, target, archive, or replay.
5304type ConcurrentModificationException struct {
5305	_            struct{}                  `type:"structure"`
5306	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5307
5308	Message_ *string `locationName:"message" type:"string"`
5309}
5310
5311// String returns the string representation
5312func (s ConcurrentModificationException) String() string {
5313	return awsutil.Prettify(s)
5314}
5315
5316// GoString returns the string representation
5317func (s ConcurrentModificationException) GoString() string {
5318	return s.String()
5319}
5320
5321func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
5322	return &ConcurrentModificationException{
5323		RespMetadata: v,
5324	}
5325}
5326
5327// Code returns the exception type name.
5328func (s *ConcurrentModificationException) Code() string {
5329	return "ConcurrentModificationException"
5330}
5331
5332// Message returns the exception's message.
5333func (s *ConcurrentModificationException) Message() string {
5334	if s.Message_ != nil {
5335		return *s.Message_
5336	}
5337	return ""
5338}
5339
5340// OrigErr always returns nil, satisfies awserr.Error interface.
5341func (s *ConcurrentModificationException) OrigErr() error {
5342	return nil
5343}
5344
5345func (s *ConcurrentModificationException) Error() string {
5346	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5347}
5348
5349// Status code returns the HTTP status code for the request's response error.
5350func (s *ConcurrentModificationException) StatusCode() int {
5351	return s.RespMetadata.StatusCode
5352}
5353
5354// RequestID returns the service's response RequestID for request.
5355func (s *ConcurrentModificationException) RequestID() string {
5356	return s.RespMetadata.RequestID
5357}
5358
5359// A JSON string which you can use to limit the event bus permissions you are
5360// granting to only accounts that fulfill the condition. Currently, the only
5361// supported condition is membership in a certain AWS organization. The string
5362// must contain Type, Key, and Value fields. The Value field specifies the ID
5363// of the AWS organization. Following is an example value for Condition:
5364//
5365// '{"Type" : "StringEquals", "Key": "aws:PrincipalOrgID", "Value": "o-1234567890"}'
5366type Condition struct {
5367	_ struct{} `type:"structure"`
5368
5369	// Specifies the key for the condition. Currently the only supported key is
5370	// aws:PrincipalOrgID.
5371	//
5372	// Key is a required field
5373	Key *string `type:"string" required:"true"`
5374
5375	// Specifies the type of condition. Currently the only supported value is StringEquals.
5376	//
5377	// Type is a required field
5378	Type *string `type:"string" required:"true"`
5379
5380	// Specifies the value for the key. Currently, this must be the ID of the organization.
5381	//
5382	// Value is a required field
5383	Value *string `type:"string" required:"true"`
5384}
5385
5386// String returns the string representation
5387func (s Condition) String() string {
5388	return awsutil.Prettify(s)
5389}
5390
5391// GoString returns the string representation
5392func (s Condition) GoString() string {
5393	return s.String()
5394}
5395
5396// Validate inspects the fields of the type to determine if they are valid.
5397func (s *Condition) Validate() error {
5398	invalidParams := request.ErrInvalidParams{Context: "Condition"}
5399	if s.Key == nil {
5400		invalidParams.Add(request.NewErrParamRequired("Key"))
5401	}
5402	if s.Type == nil {
5403		invalidParams.Add(request.NewErrParamRequired("Type"))
5404	}
5405	if s.Value == nil {
5406		invalidParams.Add(request.NewErrParamRequired("Value"))
5407	}
5408
5409	if invalidParams.Len() > 0 {
5410		return invalidParams
5411	}
5412	return nil
5413}
5414
5415// SetKey sets the Key field's value.
5416func (s *Condition) SetKey(v string) *Condition {
5417	s.Key = &v
5418	return s
5419}
5420
5421// SetType sets the Type field's value.
5422func (s *Condition) SetType(v string) *Condition {
5423	s.Type = &v
5424	return s
5425}
5426
5427// SetValue sets the Value field's value.
5428func (s *Condition) SetValue(v string) *Condition {
5429	s.Value = &v
5430	return s
5431}
5432
5433// Contains information about a connection.
5434type Connection struct {
5435	_ struct{} `type:"structure"`
5436
5437	// The authorization type specified for the connection.
5438	AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"`
5439
5440	// The ARN of the connection.
5441	ConnectionArn *string `min:"1" type:"string"`
5442
5443	// The state of the connection.
5444	ConnectionState *string `type:"string" enum:"ConnectionState"`
5445
5446	// A time stamp for the time that the connection was created.
5447	CreationTime *time.Time `type:"timestamp"`
5448
5449	// A time stamp for the time that the connection was last authorized.
5450	LastAuthorizedTime *time.Time `type:"timestamp"`
5451
5452	// A time stamp for the time that the connection was last modified.
5453	LastModifiedTime *time.Time `type:"timestamp"`
5454
5455	// The name of the connection.
5456	Name *string `min:"1" type:"string"`
5457
5458	// The reason that the connection is in the connection state.
5459	StateReason *string `type:"string"`
5460}
5461
5462// String returns the string representation
5463func (s Connection) String() string {
5464	return awsutil.Prettify(s)
5465}
5466
5467// GoString returns the string representation
5468func (s Connection) GoString() string {
5469	return s.String()
5470}
5471
5472// SetAuthorizationType sets the AuthorizationType field's value.
5473func (s *Connection) SetAuthorizationType(v string) *Connection {
5474	s.AuthorizationType = &v
5475	return s
5476}
5477
5478// SetConnectionArn sets the ConnectionArn field's value.
5479func (s *Connection) SetConnectionArn(v string) *Connection {
5480	s.ConnectionArn = &v
5481	return s
5482}
5483
5484// SetConnectionState sets the ConnectionState field's value.
5485func (s *Connection) SetConnectionState(v string) *Connection {
5486	s.ConnectionState = &v
5487	return s
5488}
5489
5490// SetCreationTime sets the CreationTime field's value.
5491func (s *Connection) SetCreationTime(v time.Time) *Connection {
5492	s.CreationTime = &v
5493	return s
5494}
5495
5496// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
5497func (s *Connection) SetLastAuthorizedTime(v time.Time) *Connection {
5498	s.LastAuthorizedTime = &v
5499	return s
5500}
5501
5502// SetLastModifiedTime sets the LastModifiedTime field's value.
5503func (s *Connection) SetLastModifiedTime(v time.Time) *Connection {
5504	s.LastModifiedTime = &v
5505	return s
5506}
5507
5508// SetName sets the Name field's value.
5509func (s *Connection) SetName(v string) *Connection {
5510	s.Name = &v
5511	return s
5512}
5513
5514// SetStateReason sets the StateReason field's value.
5515func (s *Connection) SetStateReason(v string) *Connection {
5516	s.StateReason = &v
5517	return s
5518}
5519
5520// Contains the authorization parameters for the connection if API Key is specified
5521// as the authorization type.
5522type ConnectionApiKeyAuthResponseParameters struct {
5523	_ struct{} `type:"structure"`
5524
5525	// The name of the header to use for the APIKeyValue used for authorization.
5526	ApiKeyName *string `min:"1" type:"string"`
5527}
5528
5529// String returns the string representation
5530func (s ConnectionApiKeyAuthResponseParameters) String() string {
5531	return awsutil.Prettify(s)
5532}
5533
5534// GoString returns the string representation
5535func (s ConnectionApiKeyAuthResponseParameters) GoString() string {
5536	return s.String()
5537}
5538
5539// SetApiKeyName sets the ApiKeyName field's value.
5540func (s *ConnectionApiKeyAuthResponseParameters) SetApiKeyName(v string) *ConnectionApiKeyAuthResponseParameters {
5541	s.ApiKeyName = &v
5542	return s
5543}
5544
5545// Contains the authorization parameters to use for the connection.
5546type ConnectionAuthResponseParameters struct {
5547	_ struct{} `type:"structure"`
5548
5549	// The API Key parameters to use for authorization.
5550	ApiKeyAuthParameters *ConnectionApiKeyAuthResponseParameters `type:"structure"`
5551
5552	// The authorization parameters for Basic authorization.
5553	BasicAuthParameters *ConnectionBasicAuthResponseParameters `type:"structure"`
5554
5555	// Additional parameters for the connection that are passed through with every
5556	// invocation to the HTTP endpoint.
5557	InvocationHttpParameters *ConnectionHttpParameters `type:"structure"`
5558
5559	// The OAuth parameters to use for authorization.
5560	OAuthParameters *ConnectionOAuthResponseParameters `type:"structure"`
5561}
5562
5563// String returns the string representation
5564func (s ConnectionAuthResponseParameters) String() string {
5565	return awsutil.Prettify(s)
5566}
5567
5568// GoString returns the string representation
5569func (s ConnectionAuthResponseParameters) GoString() string {
5570	return s.String()
5571}
5572
5573// SetApiKeyAuthParameters sets the ApiKeyAuthParameters field's value.
5574func (s *ConnectionAuthResponseParameters) SetApiKeyAuthParameters(v *ConnectionApiKeyAuthResponseParameters) *ConnectionAuthResponseParameters {
5575	s.ApiKeyAuthParameters = v
5576	return s
5577}
5578
5579// SetBasicAuthParameters sets the BasicAuthParameters field's value.
5580func (s *ConnectionAuthResponseParameters) SetBasicAuthParameters(v *ConnectionBasicAuthResponseParameters) *ConnectionAuthResponseParameters {
5581	s.BasicAuthParameters = v
5582	return s
5583}
5584
5585// SetInvocationHttpParameters sets the InvocationHttpParameters field's value.
5586func (s *ConnectionAuthResponseParameters) SetInvocationHttpParameters(v *ConnectionHttpParameters) *ConnectionAuthResponseParameters {
5587	s.InvocationHttpParameters = v
5588	return s
5589}
5590
5591// SetOAuthParameters sets the OAuthParameters field's value.
5592func (s *ConnectionAuthResponseParameters) SetOAuthParameters(v *ConnectionOAuthResponseParameters) *ConnectionAuthResponseParameters {
5593	s.OAuthParameters = v
5594	return s
5595}
5596
5597// Contains the authorization parameters for the connection if Basic is specified
5598// as the authorization type.
5599type ConnectionBasicAuthResponseParameters struct {
5600	_ struct{} `type:"structure"`
5601
5602	// The user name to use for Basic authorization.
5603	Username *string `min:"1" type:"string"`
5604}
5605
5606// String returns the string representation
5607func (s ConnectionBasicAuthResponseParameters) String() string {
5608	return awsutil.Prettify(s)
5609}
5610
5611// GoString returns the string representation
5612func (s ConnectionBasicAuthResponseParameters) GoString() string {
5613	return s.String()
5614}
5615
5616// SetUsername sets the Username field's value.
5617func (s *ConnectionBasicAuthResponseParameters) SetUsername(v string) *ConnectionBasicAuthResponseParameters {
5618	s.Username = &v
5619	return s
5620}
5621
5622// Additional parameter included in the body. You can include up to 100 additional
5623// body parameters per request. An event payload cannot exceed 64 KB.
5624type ConnectionBodyParameter struct {
5625	_ struct{} `type:"structure"`
5626
5627	// Specified whether the value is secret.
5628	IsValueSecret *bool `type:"boolean"`
5629
5630	// The key for the parameter.
5631	Key *string `type:"string"`
5632
5633	// The value associated with the key.
5634	Value *string `type:"string"`
5635}
5636
5637// String returns the string representation
5638func (s ConnectionBodyParameter) String() string {
5639	return awsutil.Prettify(s)
5640}
5641
5642// GoString returns the string representation
5643func (s ConnectionBodyParameter) GoString() string {
5644	return s.String()
5645}
5646
5647// SetIsValueSecret sets the IsValueSecret field's value.
5648func (s *ConnectionBodyParameter) SetIsValueSecret(v bool) *ConnectionBodyParameter {
5649	s.IsValueSecret = &v
5650	return s
5651}
5652
5653// SetKey sets the Key field's value.
5654func (s *ConnectionBodyParameter) SetKey(v string) *ConnectionBodyParameter {
5655	s.Key = &v
5656	return s
5657}
5658
5659// SetValue sets the Value field's value.
5660func (s *ConnectionBodyParameter) SetValue(v string) *ConnectionBodyParameter {
5661	s.Value = &v
5662	return s
5663}
5664
5665// Additional parameter included in the header. You can include up to 100 additional
5666// header parameters per request. An event payload cannot exceed 64 KB.
5667type ConnectionHeaderParameter struct {
5668	_ struct{} `type:"structure"`
5669
5670	// Specified whether the value is a secret.
5671	IsValueSecret *bool `type:"boolean"`
5672
5673	// The key for the parameter.
5674	Key *string `type:"string"`
5675
5676	// The value associated with the key.
5677	Value *string `type:"string"`
5678}
5679
5680// String returns the string representation
5681func (s ConnectionHeaderParameter) String() string {
5682	return awsutil.Prettify(s)
5683}
5684
5685// GoString returns the string representation
5686func (s ConnectionHeaderParameter) GoString() string {
5687	return s.String()
5688}
5689
5690// SetIsValueSecret sets the IsValueSecret field's value.
5691func (s *ConnectionHeaderParameter) SetIsValueSecret(v bool) *ConnectionHeaderParameter {
5692	s.IsValueSecret = &v
5693	return s
5694}
5695
5696// SetKey sets the Key field's value.
5697func (s *ConnectionHeaderParameter) SetKey(v string) *ConnectionHeaderParameter {
5698	s.Key = &v
5699	return s
5700}
5701
5702// SetValue sets the Value field's value.
5703func (s *ConnectionHeaderParameter) SetValue(v string) *ConnectionHeaderParameter {
5704	s.Value = &v
5705	return s
5706}
5707
5708// Contains additional parameters for the connection.
5709type ConnectionHttpParameters struct {
5710	_ struct{} `type:"structure"`
5711
5712	// Contains additional body string parameters for the connection.
5713	BodyParameters []*ConnectionBodyParameter `type:"list"`
5714
5715	// Contains additional header parameters for the connection.
5716	HeaderParameters []*ConnectionHeaderParameter `type:"list"`
5717
5718	// Contains additional query string parameters for the connection.
5719	QueryStringParameters []*ConnectionQueryStringParameter `type:"list"`
5720}
5721
5722// String returns the string representation
5723func (s ConnectionHttpParameters) String() string {
5724	return awsutil.Prettify(s)
5725}
5726
5727// GoString returns the string representation
5728func (s ConnectionHttpParameters) GoString() string {
5729	return s.String()
5730}
5731
5732// SetBodyParameters sets the BodyParameters field's value.
5733func (s *ConnectionHttpParameters) SetBodyParameters(v []*ConnectionBodyParameter) *ConnectionHttpParameters {
5734	s.BodyParameters = v
5735	return s
5736}
5737
5738// SetHeaderParameters sets the HeaderParameters field's value.
5739func (s *ConnectionHttpParameters) SetHeaderParameters(v []*ConnectionHeaderParameter) *ConnectionHttpParameters {
5740	s.HeaderParameters = v
5741	return s
5742}
5743
5744// SetQueryStringParameters sets the QueryStringParameters field's value.
5745func (s *ConnectionHttpParameters) SetQueryStringParameters(v []*ConnectionQueryStringParameter) *ConnectionHttpParameters {
5746	s.QueryStringParameters = v
5747	return s
5748}
5749
5750// Contains the client response parameters for the connection when OAuth is
5751// specified as the authorization type.
5752type ConnectionOAuthClientResponseParameters struct {
5753	_ struct{} `type:"structure"`
5754
5755	// The client ID associated with the response to the connection request.
5756	ClientID *string `min:"1" type:"string"`
5757}
5758
5759// String returns the string representation
5760func (s ConnectionOAuthClientResponseParameters) String() string {
5761	return awsutil.Prettify(s)
5762}
5763
5764// GoString returns the string representation
5765func (s ConnectionOAuthClientResponseParameters) GoString() string {
5766	return s.String()
5767}
5768
5769// SetClientID sets the ClientID field's value.
5770func (s *ConnectionOAuthClientResponseParameters) SetClientID(v string) *ConnectionOAuthClientResponseParameters {
5771	s.ClientID = &v
5772	return s
5773}
5774
5775// Contains the response parameters when OAuth is specified as the authorization
5776// type.
5777type ConnectionOAuthResponseParameters struct {
5778	_ struct{} `type:"structure"`
5779
5780	// The URL to the HTTP endpoint that authorized the request.
5781	AuthorizationEndpoint *string `min:"1" type:"string"`
5782
5783	// A ConnectionOAuthClientResponseParameters object that contains details about
5784	// the client parameters returned when OAuth is specified as the authorization
5785	// type.
5786	ClientParameters *ConnectionOAuthClientResponseParameters `type:"structure"`
5787
5788	// The method used to connect to the HTTP endpoint.
5789	HttpMethod *string `type:"string" enum:"ConnectionOAuthHttpMethod"`
5790
5791	// The additional HTTP parameters used for the OAuth authorization request.
5792	OAuthHttpParameters *ConnectionHttpParameters `type:"structure"`
5793}
5794
5795// String returns the string representation
5796func (s ConnectionOAuthResponseParameters) String() string {
5797	return awsutil.Prettify(s)
5798}
5799
5800// GoString returns the string representation
5801func (s ConnectionOAuthResponseParameters) GoString() string {
5802	return s.String()
5803}
5804
5805// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
5806func (s *ConnectionOAuthResponseParameters) SetAuthorizationEndpoint(v string) *ConnectionOAuthResponseParameters {
5807	s.AuthorizationEndpoint = &v
5808	return s
5809}
5810
5811// SetClientParameters sets the ClientParameters field's value.
5812func (s *ConnectionOAuthResponseParameters) SetClientParameters(v *ConnectionOAuthClientResponseParameters) *ConnectionOAuthResponseParameters {
5813	s.ClientParameters = v
5814	return s
5815}
5816
5817// SetHttpMethod sets the HttpMethod field's value.
5818func (s *ConnectionOAuthResponseParameters) SetHttpMethod(v string) *ConnectionOAuthResponseParameters {
5819	s.HttpMethod = &v
5820	return s
5821}
5822
5823// SetOAuthHttpParameters sets the OAuthHttpParameters field's value.
5824func (s *ConnectionOAuthResponseParameters) SetOAuthHttpParameters(v *ConnectionHttpParameters) *ConnectionOAuthResponseParameters {
5825	s.OAuthHttpParameters = v
5826	return s
5827}
5828
5829// Additional query string parameter for the connection. You can include up
5830// to 100 additional query string parameters per request. Each additional parameter
5831// counts towards the event payload size, which cannot exceed 64 KB.
5832type ConnectionQueryStringParameter struct {
5833	_ struct{} `type:"structure"`
5834
5835	// Specifies whether the value is secret.
5836	IsValueSecret *bool `type:"boolean"`
5837
5838	// The key for a query string parameter.
5839	Key *string `type:"string"`
5840
5841	// The value associated with the key for the query string parameter.
5842	Value *string `type:"string"`
5843}
5844
5845// String returns the string representation
5846func (s ConnectionQueryStringParameter) String() string {
5847	return awsutil.Prettify(s)
5848}
5849
5850// GoString returns the string representation
5851func (s ConnectionQueryStringParameter) GoString() string {
5852	return s.String()
5853}
5854
5855// SetIsValueSecret sets the IsValueSecret field's value.
5856func (s *ConnectionQueryStringParameter) SetIsValueSecret(v bool) *ConnectionQueryStringParameter {
5857	s.IsValueSecret = &v
5858	return s
5859}
5860
5861// SetKey sets the Key field's value.
5862func (s *ConnectionQueryStringParameter) SetKey(v string) *ConnectionQueryStringParameter {
5863	s.Key = &v
5864	return s
5865}
5866
5867// SetValue sets the Value field's value.
5868func (s *ConnectionQueryStringParameter) SetValue(v string) *ConnectionQueryStringParameter {
5869	s.Value = &v
5870	return s
5871}
5872
5873type CreateApiDestinationInput struct {
5874	_ struct{} `type:"structure"`
5875
5876	// The ARN of the connection to use for the API destination. The destination
5877	// endpoint must support the authorization type specified for the connection.
5878	//
5879	// ConnectionArn is a required field
5880	ConnectionArn *string `min:"1" type:"string" required:"true"`
5881
5882	// A description for the API destination to create.
5883	Description *string `type:"string"`
5884
5885	// The method to use for the request to the HTTP invocation endpoint.
5886	//
5887	// HttpMethod is a required field
5888	HttpMethod *string `type:"string" required:"true" enum:"ApiDestinationHttpMethod"`
5889
5890	// The URL to the HTTP invocation endpoint for the API destination.
5891	//
5892	// InvocationEndpoint is a required field
5893	InvocationEndpoint *string `min:"1" type:"string" required:"true"`
5894
5895	// The maximum number of requests per second to send to the HTTP invocation
5896	// endpoint.
5897	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
5898
5899	// The name for the API destination to create.
5900	//
5901	// Name is a required field
5902	Name *string `min:"1" type:"string" required:"true"`
5903}
5904
5905// String returns the string representation
5906func (s CreateApiDestinationInput) String() string {
5907	return awsutil.Prettify(s)
5908}
5909
5910// GoString returns the string representation
5911func (s CreateApiDestinationInput) GoString() string {
5912	return s.String()
5913}
5914
5915// Validate inspects the fields of the type to determine if they are valid.
5916func (s *CreateApiDestinationInput) Validate() error {
5917	invalidParams := request.ErrInvalidParams{Context: "CreateApiDestinationInput"}
5918	if s.ConnectionArn == nil {
5919		invalidParams.Add(request.NewErrParamRequired("ConnectionArn"))
5920	}
5921	if s.ConnectionArn != nil && len(*s.ConnectionArn) < 1 {
5922		invalidParams.Add(request.NewErrParamMinLen("ConnectionArn", 1))
5923	}
5924	if s.HttpMethod == nil {
5925		invalidParams.Add(request.NewErrParamRequired("HttpMethod"))
5926	}
5927	if s.InvocationEndpoint == nil {
5928		invalidParams.Add(request.NewErrParamRequired("InvocationEndpoint"))
5929	}
5930	if s.InvocationEndpoint != nil && len(*s.InvocationEndpoint) < 1 {
5931		invalidParams.Add(request.NewErrParamMinLen("InvocationEndpoint", 1))
5932	}
5933	if s.InvocationRateLimitPerSecond != nil && *s.InvocationRateLimitPerSecond < 1 {
5934		invalidParams.Add(request.NewErrParamMinValue("InvocationRateLimitPerSecond", 1))
5935	}
5936	if s.Name == nil {
5937		invalidParams.Add(request.NewErrParamRequired("Name"))
5938	}
5939	if s.Name != nil && len(*s.Name) < 1 {
5940		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5941	}
5942
5943	if invalidParams.Len() > 0 {
5944		return invalidParams
5945	}
5946	return nil
5947}
5948
5949// SetConnectionArn sets the ConnectionArn field's value.
5950func (s *CreateApiDestinationInput) SetConnectionArn(v string) *CreateApiDestinationInput {
5951	s.ConnectionArn = &v
5952	return s
5953}
5954
5955// SetDescription sets the Description field's value.
5956func (s *CreateApiDestinationInput) SetDescription(v string) *CreateApiDestinationInput {
5957	s.Description = &v
5958	return s
5959}
5960
5961// SetHttpMethod sets the HttpMethod field's value.
5962func (s *CreateApiDestinationInput) SetHttpMethod(v string) *CreateApiDestinationInput {
5963	s.HttpMethod = &v
5964	return s
5965}
5966
5967// SetInvocationEndpoint sets the InvocationEndpoint field's value.
5968func (s *CreateApiDestinationInput) SetInvocationEndpoint(v string) *CreateApiDestinationInput {
5969	s.InvocationEndpoint = &v
5970	return s
5971}
5972
5973// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
5974func (s *CreateApiDestinationInput) SetInvocationRateLimitPerSecond(v int64) *CreateApiDestinationInput {
5975	s.InvocationRateLimitPerSecond = &v
5976	return s
5977}
5978
5979// SetName sets the Name field's value.
5980func (s *CreateApiDestinationInput) SetName(v string) *CreateApiDestinationInput {
5981	s.Name = &v
5982	return s
5983}
5984
5985type CreateApiDestinationOutput struct {
5986	_ struct{} `type:"structure"`
5987
5988	// The ARN of the API destination that was created by the request.
5989	ApiDestinationArn *string `min:"1" type:"string"`
5990
5991	// The state of the API destination that was created by the request.
5992	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
5993
5994	// A time stamp indicating the time that the API destination was created.
5995	CreationTime *time.Time `type:"timestamp"`
5996
5997	// A time stamp indicating the time that the API destination was last modified.
5998	LastModifiedTime *time.Time `type:"timestamp"`
5999}
6000
6001// String returns the string representation
6002func (s CreateApiDestinationOutput) String() string {
6003	return awsutil.Prettify(s)
6004}
6005
6006// GoString returns the string representation
6007func (s CreateApiDestinationOutput) GoString() string {
6008	return s.String()
6009}
6010
6011// SetApiDestinationArn sets the ApiDestinationArn field's value.
6012func (s *CreateApiDestinationOutput) SetApiDestinationArn(v string) *CreateApiDestinationOutput {
6013	s.ApiDestinationArn = &v
6014	return s
6015}
6016
6017// SetApiDestinationState sets the ApiDestinationState field's value.
6018func (s *CreateApiDestinationOutput) SetApiDestinationState(v string) *CreateApiDestinationOutput {
6019	s.ApiDestinationState = &v
6020	return s
6021}
6022
6023// SetCreationTime sets the CreationTime field's value.
6024func (s *CreateApiDestinationOutput) SetCreationTime(v time.Time) *CreateApiDestinationOutput {
6025	s.CreationTime = &v
6026	return s
6027}
6028
6029// SetLastModifiedTime sets the LastModifiedTime field's value.
6030func (s *CreateApiDestinationOutput) SetLastModifiedTime(v time.Time) *CreateApiDestinationOutput {
6031	s.LastModifiedTime = &v
6032	return s
6033}
6034
6035type CreateArchiveInput struct {
6036	_ struct{} `type:"structure"`
6037
6038	// The name for the archive to create.
6039	//
6040	// ArchiveName is a required field
6041	ArchiveName *string `min:"1" type:"string" required:"true"`
6042
6043	// A description for the archive.
6044	Description *string `type:"string"`
6045
6046	// An event pattern to use to filter events sent to the archive.
6047	EventPattern *string `type:"string"`
6048
6049	// The ARN of the event source associated with the archive.
6050	//
6051	// EventSourceArn is a required field
6052	EventSourceArn *string `min:"1" type:"string" required:"true"`
6053
6054	// The number of days to retain events for. Default value is 0. If set to 0,
6055	// events are retained indefinitely
6056	RetentionDays *int64 `type:"integer"`
6057}
6058
6059// String returns the string representation
6060func (s CreateArchiveInput) String() string {
6061	return awsutil.Prettify(s)
6062}
6063
6064// GoString returns the string representation
6065func (s CreateArchiveInput) GoString() string {
6066	return s.String()
6067}
6068
6069// Validate inspects the fields of the type to determine if they are valid.
6070func (s *CreateArchiveInput) Validate() error {
6071	invalidParams := request.ErrInvalidParams{Context: "CreateArchiveInput"}
6072	if s.ArchiveName == nil {
6073		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
6074	}
6075	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
6076		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
6077	}
6078	if s.EventSourceArn == nil {
6079		invalidParams.Add(request.NewErrParamRequired("EventSourceArn"))
6080	}
6081	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
6082		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
6083	}
6084
6085	if invalidParams.Len() > 0 {
6086		return invalidParams
6087	}
6088	return nil
6089}
6090
6091// SetArchiveName sets the ArchiveName field's value.
6092func (s *CreateArchiveInput) SetArchiveName(v string) *CreateArchiveInput {
6093	s.ArchiveName = &v
6094	return s
6095}
6096
6097// SetDescription sets the Description field's value.
6098func (s *CreateArchiveInput) SetDescription(v string) *CreateArchiveInput {
6099	s.Description = &v
6100	return s
6101}
6102
6103// SetEventPattern sets the EventPattern field's value.
6104func (s *CreateArchiveInput) SetEventPattern(v string) *CreateArchiveInput {
6105	s.EventPattern = &v
6106	return s
6107}
6108
6109// SetEventSourceArn sets the EventSourceArn field's value.
6110func (s *CreateArchiveInput) SetEventSourceArn(v string) *CreateArchiveInput {
6111	s.EventSourceArn = &v
6112	return s
6113}
6114
6115// SetRetentionDays sets the RetentionDays field's value.
6116func (s *CreateArchiveInput) SetRetentionDays(v int64) *CreateArchiveInput {
6117	s.RetentionDays = &v
6118	return s
6119}
6120
6121type CreateArchiveOutput struct {
6122	_ struct{} `type:"structure"`
6123
6124	// The ARN of the archive that was created.
6125	ArchiveArn *string `min:"1" type:"string"`
6126
6127	// The time at which the archive was created.
6128	CreationTime *time.Time `type:"timestamp"`
6129
6130	// The state of the archive that was created.
6131	State *string `type:"string" enum:"ArchiveState"`
6132
6133	// The reason that the archive is in the state.
6134	StateReason *string `type:"string"`
6135}
6136
6137// String returns the string representation
6138func (s CreateArchiveOutput) String() string {
6139	return awsutil.Prettify(s)
6140}
6141
6142// GoString returns the string representation
6143func (s CreateArchiveOutput) GoString() string {
6144	return s.String()
6145}
6146
6147// SetArchiveArn sets the ArchiveArn field's value.
6148func (s *CreateArchiveOutput) SetArchiveArn(v string) *CreateArchiveOutput {
6149	s.ArchiveArn = &v
6150	return s
6151}
6152
6153// SetCreationTime sets the CreationTime field's value.
6154func (s *CreateArchiveOutput) SetCreationTime(v time.Time) *CreateArchiveOutput {
6155	s.CreationTime = &v
6156	return s
6157}
6158
6159// SetState sets the State field's value.
6160func (s *CreateArchiveOutput) SetState(v string) *CreateArchiveOutput {
6161	s.State = &v
6162	return s
6163}
6164
6165// SetStateReason sets the StateReason field's value.
6166func (s *CreateArchiveOutput) SetStateReason(v string) *CreateArchiveOutput {
6167	s.StateReason = &v
6168	return s
6169}
6170
6171// Contains the API key authorization parameters for the connection.
6172type CreateConnectionApiKeyAuthRequestParameters struct {
6173	_ struct{} `type:"structure"`
6174
6175	// The name of the API key to use for authorization.
6176	//
6177	// ApiKeyName is a required field
6178	ApiKeyName *string `min:"1" type:"string" required:"true"`
6179
6180	// The value for the API key to use for authorization.
6181	//
6182	// ApiKeyValue is a required field
6183	ApiKeyValue *string `min:"1" type:"string" required:"true"`
6184}
6185
6186// String returns the string representation
6187func (s CreateConnectionApiKeyAuthRequestParameters) String() string {
6188	return awsutil.Prettify(s)
6189}
6190
6191// GoString returns the string representation
6192func (s CreateConnectionApiKeyAuthRequestParameters) GoString() string {
6193	return s.String()
6194}
6195
6196// Validate inspects the fields of the type to determine if they are valid.
6197func (s *CreateConnectionApiKeyAuthRequestParameters) Validate() error {
6198	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionApiKeyAuthRequestParameters"}
6199	if s.ApiKeyName == nil {
6200		invalidParams.Add(request.NewErrParamRequired("ApiKeyName"))
6201	}
6202	if s.ApiKeyName != nil && len(*s.ApiKeyName) < 1 {
6203		invalidParams.Add(request.NewErrParamMinLen("ApiKeyName", 1))
6204	}
6205	if s.ApiKeyValue == nil {
6206		invalidParams.Add(request.NewErrParamRequired("ApiKeyValue"))
6207	}
6208	if s.ApiKeyValue != nil && len(*s.ApiKeyValue) < 1 {
6209		invalidParams.Add(request.NewErrParamMinLen("ApiKeyValue", 1))
6210	}
6211
6212	if invalidParams.Len() > 0 {
6213		return invalidParams
6214	}
6215	return nil
6216}
6217
6218// SetApiKeyName sets the ApiKeyName field's value.
6219func (s *CreateConnectionApiKeyAuthRequestParameters) SetApiKeyName(v string) *CreateConnectionApiKeyAuthRequestParameters {
6220	s.ApiKeyName = &v
6221	return s
6222}
6223
6224// SetApiKeyValue sets the ApiKeyValue field's value.
6225func (s *CreateConnectionApiKeyAuthRequestParameters) SetApiKeyValue(v string) *CreateConnectionApiKeyAuthRequestParameters {
6226	s.ApiKeyValue = &v
6227	return s
6228}
6229
6230// Contains the authorization parameters for the connection.
6231type CreateConnectionAuthRequestParameters struct {
6232	_ struct{} `type:"structure"`
6233
6234	// A CreateConnectionApiKeyAuthRequestParameters object that contains the API
6235	// key authorization parameters to use for the connection.
6236	ApiKeyAuthParameters *CreateConnectionApiKeyAuthRequestParameters `type:"structure"`
6237
6238	// A CreateConnectionBasicAuthRequestParameters object that contains the Basic
6239	// authorization parameters to use for the connection.
6240	BasicAuthParameters *CreateConnectionBasicAuthRequestParameters `type:"structure"`
6241
6242	// A ConnectionHttpParameters object that contains the API key authorization
6243	// parameters to use for the connection. Note that if you include additional
6244	// parameters for the target of a rule via HttpParameters, including query strings,
6245	// the parameters added for the connection take precedence.
6246	InvocationHttpParameters *ConnectionHttpParameters `type:"structure"`
6247
6248	// A CreateConnectionOAuthRequestParameters object that contains the OAuth authorization
6249	// parameters to use for the connection.
6250	OAuthParameters *CreateConnectionOAuthRequestParameters `type:"structure"`
6251}
6252
6253// String returns the string representation
6254func (s CreateConnectionAuthRequestParameters) String() string {
6255	return awsutil.Prettify(s)
6256}
6257
6258// GoString returns the string representation
6259func (s CreateConnectionAuthRequestParameters) GoString() string {
6260	return s.String()
6261}
6262
6263// Validate inspects the fields of the type to determine if they are valid.
6264func (s *CreateConnectionAuthRequestParameters) Validate() error {
6265	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionAuthRequestParameters"}
6266	if s.ApiKeyAuthParameters != nil {
6267		if err := s.ApiKeyAuthParameters.Validate(); err != nil {
6268			invalidParams.AddNested("ApiKeyAuthParameters", err.(request.ErrInvalidParams))
6269		}
6270	}
6271	if s.BasicAuthParameters != nil {
6272		if err := s.BasicAuthParameters.Validate(); err != nil {
6273			invalidParams.AddNested("BasicAuthParameters", err.(request.ErrInvalidParams))
6274		}
6275	}
6276	if s.OAuthParameters != nil {
6277		if err := s.OAuthParameters.Validate(); err != nil {
6278			invalidParams.AddNested("OAuthParameters", err.(request.ErrInvalidParams))
6279		}
6280	}
6281
6282	if invalidParams.Len() > 0 {
6283		return invalidParams
6284	}
6285	return nil
6286}
6287
6288// SetApiKeyAuthParameters sets the ApiKeyAuthParameters field's value.
6289func (s *CreateConnectionAuthRequestParameters) SetApiKeyAuthParameters(v *CreateConnectionApiKeyAuthRequestParameters) *CreateConnectionAuthRequestParameters {
6290	s.ApiKeyAuthParameters = v
6291	return s
6292}
6293
6294// SetBasicAuthParameters sets the BasicAuthParameters field's value.
6295func (s *CreateConnectionAuthRequestParameters) SetBasicAuthParameters(v *CreateConnectionBasicAuthRequestParameters) *CreateConnectionAuthRequestParameters {
6296	s.BasicAuthParameters = v
6297	return s
6298}
6299
6300// SetInvocationHttpParameters sets the InvocationHttpParameters field's value.
6301func (s *CreateConnectionAuthRequestParameters) SetInvocationHttpParameters(v *ConnectionHttpParameters) *CreateConnectionAuthRequestParameters {
6302	s.InvocationHttpParameters = v
6303	return s
6304}
6305
6306// SetOAuthParameters sets the OAuthParameters field's value.
6307func (s *CreateConnectionAuthRequestParameters) SetOAuthParameters(v *CreateConnectionOAuthRequestParameters) *CreateConnectionAuthRequestParameters {
6308	s.OAuthParameters = v
6309	return s
6310}
6311
6312// Contains the Basic authorization parameters to use for the connection.
6313type CreateConnectionBasicAuthRequestParameters struct {
6314	_ struct{} `type:"structure"`
6315
6316	// The password associated with the user name to use for Basic authorization.
6317	//
6318	// Password is a required field
6319	Password *string `min:"1" type:"string" required:"true"`
6320
6321	// The user name to use for Basic authorization.
6322	//
6323	// Username is a required field
6324	Username *string `min:"1" type:"string" required:"true"`
6325}
6326
6327// String returns the string representation
6328func (s CreateConnectionBasicAuthRequestParameters) String() string {
6329	return awsutil.Prettify(s)
6330}
6331
6332// GoString returns the string representation
6333func (s CreateConnectionBasicAuthRequestParameters) GoString() string {
6334	return s.String()
6335}
6336
6337// Validate inspects the fields of the type to determine if they are valid.
6338func (s *CreateConnectionBasicAuthRequestParameters) Validate() error {
6339	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionBasicAuthRequestParameters"}
6340	if s.Password == nil {
6341		invalidParams.Add(request.NewErrParamRequired("Password"))
6342	}
6343	if s.Password != nil && len(*s.Password) < 1 {
6344		invalidParams.Add(request.NewErrParamMinLen("Password", 1))
6345	}
6346	if s.Username == nil {
6347		invalidParams.Add(request.NewErrParamRequired("Username"))
6348	}
6349	if s.Username != nil && len(*s.Username) < 1 {
6350		invalidParams.Add(request.NewErrParamMinLen("Username", 1))
6351	}
6352
6353	if invalidParams.Len() > 0 {
6354		return invalidParams
6355	}
6356	return nil
6357}
6358
6359// SetPassword sets the Password field's value.
6360func (s *CreateConnectionBasicAuthRequestParameters) SetPassword(v string) *CreateConnectionBasicAuthRequestParameters {
6361	s.Password = &v
6362	return s
6363}
6364
6365// SetUsername sets the Username field's value.
6366func (s *CreateConnectionBasicAuthRequestParameters) SetUsername(v string) *CreateConnectionBasicAuthRequestParameters {
6367	s.Username = &v
6368	return s
6369}
6370
6371type CreateConnectionInput struct {
6372	_ struct{} `type:"structure"`
6373
6374	// A CreateConnectionAuthRequestParameters object that contains the authorization
6375	// parameters to use to authorize with the endpoint.
6376	//
6377	// AuthParameters is a required field
6378	AuthParameters *CreateConnectionAuthRequestParameters `type:"structure" required:"true"`
6379
6380	// The type of authorization to use for the connection.
6381	//
6382	// AuthorizationType is a required field
6383	AuthorizationType *string `type:"string" required:"true" enum:"ConnectionAuthorizationType"`
6384
6385	// A description for the connection to create.
6386	Description *string `type:"string"`
6387
6388	// The name for the connection to create.
6389	//
6390	// Name is a required field
6391	Name *string `min:"1" type:"string" required:"true"`
6392}
6393
6394// String returns the string representation
6395func (s CreateConnectionInput) String() string {
6396	return awsutil.Prettify(s)
6397}
6398
6399// GoString returns the string representation
6400func (s CreateConnectionInput) GoString() string {
6401	return s.String()
6402}
6403
6404// Validate inspects the fields of the type to determine if they are valid.
6405func (s *CreateConnectionInput) Validate() error {
6406	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionInput"}
6407	if s.AuthParameters == nil {
6408		invalidParams.Add(request.NewErrParamRequired("AuthParameters"))
6409	}
6410	if s.AuthorizationType == nil {
6411		invalidParams.Add(request.NewErrParamRequired("AuthorizationType"))
6412	}
6413	if s.Name == nil {
6414		invalidParams.Add(request.NewErrParamRequired("Name"))
6415	}
6416	if s.Name != nil && len(*s.Name) < 1 {
6417		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6418	}
6419	if s.AuthParameters != nil {
6420		if err := s.AuthParameters.Validate(); err != nil {
6421			invalidParams.AddNested("AuthParameters", err.(request.ErrInvalidParams))
6422		}
6423	}
6424
6425	if invalidParams.Len() > 0 {
6426		return invalidParams
6427	}
6428	return nil
6429}
6430
6431// SetAuthParameters sets the AuthParameters field's value.
6432func (s *CreateConnectionInput) SetAuthParameters(v *CreateConnectionAuthRequestParameters) *CreateConnectionInput {
6433	s.AuthParameters = v
6434	return s
6435}
6436
6437// SetAuthorizationType sets the AuthorizationType field's value.
6438func (s *CreateConnectionInput) SetAuthorizationType(v string) *CreateConnectionInput {
6439	s.AuthorizationType = &v
6440	return s
6441}
6442
6443// SetDescription sets the Description field's value.
6444func (s *CreateConnectionInput) SetDescription(v string) *CreateConnectionInput {
6445	s.Description = &v
6446	return s
6447}
6448
6449// SetName sets the Name field's value.
6450func (s *CreateConnectionInput) SetName(v string) *CreateConnectionInput {
6451	s.Name = &v
6452	return s
6453}
6454
6455// Contains the Basic authorization parameters to use for the connection.
6456type CreateConnectionOAuthClientRequestParameters struct {
6457	_ struct{} `type:"structure"`
6458
6459	// The client ID to use for OAuth authorization for the connection.
6460	//
6461	// ClientID is a required field
6462	ClientID *string `min:"1" type:"string" required:"true"`
6463
6464	// The client secret associated with the client ID to use for OAuth authorization
6465	// for the connection.
6466	//
6467	// ClientSecret is a required field
6468	ClientSecret *string `min:"1" type:"string" required:"true"`
6469}
6470
6471// String returns the string representation
6472func (s CreateConnectionOAuthClientRequestParameters) String() string {
6473	return awsutil.Prettify(s)
6474}
6475
6476// GoString returns the string representation
6477func (s CreateConnectionOAuthClientRequestParameters) GoString() string {
6478	return s.String()
6479}
6480
6481// Validate inspects the fields of the type to determine if they are valid.
6482func (s *CreateConnectionOAuthClientRequestParameters) Validate() error {
6483	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionOAuthClientRequestParameters"}
6484	if s.ClientID == nil {
6485		invalidParams.Add(request.NewErrParamRequired("ClientID"))
6486	}
6487	if s.ClientID != nil && len(*s.ClientID) < 1 {
6488		invalidParams.Add(request.NewErrParamMinLen("ClientID", 1))
6489	}
6490	if s.ClientSecret == nil {
6491		invalidParams.Add(request.NewErrParamRequired("ClientSecret"))
6492	}
6493	if s.ClientSecret != nil && len(*s.ClientSecret) < 1 {
6494		invalidParams.Add(request.NewErrParamMinLen("ClientSecret", 1))
6495	}
6496
6497	if invalidParams.Len() > 0 {
6498		return invalidParams
6499	}
6500	return nil
6501}
6502
6503// SetClientID sets the ClientID field's value.
6504func (s *CreateConnectionOAuthClientRequestParameters) SetClientID(v string) *CreateConnectionOAuthClientRequestParameters {
6505	s.ClientID = &v
6506	return s
6507}
6508
6509// SetClientSecret sets the ClientSecret field's value.
6510func (s *CreateConnectionOAuthClientRequestParameters) SetClientSecret(v string) *CreateConnectionOAuthClientRequestParameters {
6511	s.ClientSecret = &v
6512	return s
6513}
6514
6515// Contains the OAuth authorization parameters to use for the connection.
6516type CreateConnectionOAuthRequestParameters struct {
6517	_ struct{} `type:"structure"`
6518
6519	// The URL to the authorization endpoint when OAuth is specified as the authorization
6520	// type.
6521	//
6522	// AuthorizationEndpoint is a required field
6523	AuthorizationEndpoint *string `min:"1" type:"string" required:"true"`
6524
6525	// A CreateConnectionOAuthClientRequestParameters object that contains the client
6526	// parameters for OAuth authorization.
6527	//
6528	// ClientParameters is a required field
6529	ClientParameters *CreateConnectionOAuthClientRequestParameters `type:"structure" required:"true"`
6530
6531	// The method to use for the authorization request.
6532	//
6533	// HttpMethod is a required field
6534	HttpMethod *string `type:"string" required:"true" enum:"ConnectionOAuthHttpMethod"`
6535
6536	// A ConnectionHttpParameters object that contains details about the additional
6537	// parameters to use for the connection.
6538	OAuthHttpParameters *ConnectionHttpParameters `type:"structure"`
6539}
6540
6541// String returns the string representation
6542func (s CreateConnectionOAuthRequestParameters) String() string {
6543	return awsutil.Prettify(s)
6544}
6545
6546// GoString returns the string representation
6547func (s CreateConnectionOAuthRequestParameters) GoString() string {
6548	return s.String()
6549}
6550
6551// Validate inspects the fields of the type to determine if they are valid.
6552func (s *CreateConnectionOAuthRequestParameters) Validate() error {
6553	invalidParams := request.ErrInvalidParams{Context: "CreateConnectionOAuthRequestParameters"}
6554	if s.AuthorizationEndpoint == nil {
6555		invalidParams.Add(request.NewErrParamRequired("AuthorizationEndpoint"))
6556	}
6557	if s.AuthorizationEndpoint != nil && len(*s.AuthorizationEndpoint) < 1 {
6558		invalidParams.Add(request.NewErrParamMinLen("AuthorizationEndpoint", 1))
6559	}
6560	if s.ClientParameters == nil {
6561		invalidParams.Add(request.NewErrParamRequired("ClientParameters"))
6562	}
6563	if s.HttpMethod == nil {
6564		invalidParams.Add(request.NewErrParamRequired("HttpMethod"))
6565	}
6566	if s.ClientParameters != nil {
6567		if err := s.ClientParameters.Validate(); err != nil {
6568			invalidParams.AddNested("ClientParameters", err.(request.ErrInvalidParams))
6569		}
6570	}
6571
6572	if invalidParams.Len() > 0 {
6573		return invalidParams
6574	}
6575	return nil
6576}
6577
6578// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
6579func (s *CreateConnectionOAuthRequestParameters) SetAuthorizationEndpoint(v string) *CreateConnectionOAuthRequestParameters {
6580	s.AuthorizationEndpoint = &v
6581	return s
6582}
6583
6584// SetClientParameters sets the ClientParameters field's value.
6585func (s *CreateConnectionOAuthRequestParameters) SetClientParameters(v *CreateConnectionOAuthClientRequestParameters) *CreateConnectionOAuthRequestParameters {
6586	s.ClientParameters = v
6587	return s
6588}
6589
6590// SetHttpMethod sets the HttpMethod field's value.
6591func (s *CreateConnectionOAuthRequestParameters) SetHttpMethod(v string) *CreateConnectionOAuthRequestParameters {
6592	s.HttpMethod = &v
6593	return s
6594}
6595
6596// SetOAuthHttpParameters sets the OAuthHttpParameters field's value.
6597func (s *CreateConnectionOAuthRequestParameters) SetOAuthHttpParameters(v *ConnectionHttpParameters) *CreateConnectionOAuthRequestParameters {
6598	s.OAuthHttpParameters = v
6599	return s
6600}
6601
6602type CreateConnectionOutput struct {
6603	_ struct{} `type:"structure"`
6604
6605	// The ARN of the connection that was created by the request.
6606	ConnectionArn *string `min:"1" type:"string"`
6607
6608	// The state of the connection that was created by the request.
6609	ConnectionState *string `type:"string" enum:"ConnectionState"`
6610
6611	// A time stamp for the time that the connection was created.
6612	CreationTime *time.Time `type:"timestamp"`
6613
6614	// A time stamp for the time that the connection was last updated.
6615	LastModifiedTime *time.Time `type:"timestamp"`
6616}
6617
6618// String returns the string representation
6619func (s CreateConnectionOutput) String() string {
6620	return awsutil.Prettify(s)
6621}
6622
6623// GoString returns the string representation
6624func (s CreateConnectionOutput) GoString() string {
6625	return s.String()
6626}
6627
6628// SetConnectionArn sets the ConnectionArn field's value.
6629func (s *CreateConnectionOutput) SetConnectionArn(v string) *CreateConnectionOutput {
6630	s.ConnectionArn = &v
6631	return s
6632}
6633
6634// SetConnectionState sets the ConnectionState field's value.
6635func (s *CreateConnectionOutput) SetConnectionState(v string) *CreateConnectionOutput {
6636	s.ConnectionState = &v
6637	return s
6638}
6639
6640// SetCreationTime sets the CreationTime field's value.
6641func (s *CreateConnectionOutput) SetCreationTime(v time.Time) *CreateConnectionOutput {
6642	s.CreationTime = &v
6643	return s
6644}
6645
6646// SetLastModifiedTime sets the LastModifiedTime field's value.
6647func (s *CreateConnectionOutput) SetLastModifiedTime(v time.Time) *CreateConnectionOutput {
6648	s.LastModifiedTime = &v
6649	return s
6650}
6651
6652type CreateEventBusInput struct {
6653	_ struct{} `type:"structure"`
6654
6655	// If you are creating a partner event bus, this specifies the partner event
6656	// source that the new event bus will be matched with.
6657	EventSourceName *string `min:"1" type:"string"`
6658
6659	// The name of the new event bus.
6660	//
6661	// Event bus names cannot contain the / character. You can't use the name default
6662	// for a custom event bus, as this name is already used for your account's default
6663	// event bus.
6664	//
6665	// If this is a partner event bus, the name must exactly match the name of the
6666	// partner event source that this event bus is matched to.
6667	//
6668	// Name is a required field
6669	Name *string `min:"1" type:"string" required:"true"`
6670
6671	// Tags to associate with the event bus.
6672	Tags []*Tag `type:"list"`
6673}
6674
6675// String returns the string representation
6676func (s CreateEventBusInput) String() string {
6677	return awsutil.Prettify(s)
6678}
6679
6680// GoString returns the string representation
6681func (s CreateEventBusInput) GoString() string {
6682	return s.String()
6683}
6684
6685// Validate inspects the fields of the type to determine if they are valid.
6686func (s *CreateEventBusInput) Validate() error {
6687	invalidParams := request.ErrInvalidParams{Context: "CreateEventBusInput"}
6688	if s.EventSourceName != nil && len(*s.EventSourceName) < 1 {
6689		invalidParams.Add(request.NewErrParamMinLen("EventSourceName", 1))
6690	}
6691	if s.Name == nil {
6692		invalidParams.Add(request.NewErrParamRequired("Name"))
6693	}
6694	if s.Name != nil && len(*s.Name) < 1 {
6695		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6696	}
6697	if s.Tags != nil {
6698		for i, v := range s.Tags {
6699			if v == nil {
6700				continue
6701			}
6702			if err := v.Validate(); err != nil {
6703				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6704			}
6705		}
6706	}
6707
6708	if invalidParams.Len() > 0 {
6709		return invalidParams
6710	}
6711	return nil
6712}
6713
6714// SetEventSourceName sets the EventSourceName field's value.
6715func (s *CreateEventBusInput) SetEventSourceName(v string) *CreateEventBusInput {
6716	s.EventSourceName = &v
6717	return s
6718}
6719
6720// SetName sets the Name field's value.
6721func (s *CreateEventBusInput) SetName(v string) *CreateEventBusInput {
6722	s.Name = &v
6723	return s
6724}
6725
6726// SetTags sets the Tags field's value.
6727func (s *CreateEventBusInput) SetTags(v []*Tag) *CreateEventBusInput {
6728	s.Tags = v
6729	return s
6730}
6731
6732type CreateEventBusOutput struct {
6733	_ struct{} `type:"structure"`
6734
6735	// The ARN of the new event bus.
6736	EventBusArn *string `type:"string"`
6737}
6738
6739// String returns the string representation
6740func (s CreateEventBusOutput) String() string {
6741	return awsutil.Prettify(s)
6742}
6743
6744// GoString returns the string representation
6745func (s CreateEventBusOutput) GoString() string {
6746	return s.String()
6747}
6748
6749// SetEventBusArn sets the EventBusArn field's value.
6750func (s *CreateEventBusOutput) SetEventBusArn(v string) *CreateEventBusOutput {
6751	s.EventBusArn = &v
6752	return s
6753}
6754
6755type CreatePartnerEventSourceInput struct {
6756	_ struct{} `type:"structure"`
6757
6758	// The AWS account ID that is permitted to create a matching partner event bus
6759	// for this partner event source.
6760	//
6761	// Account is a required field
6762	Account *string `min:"12" type:"string" required:"true"`
6763
6764	// The name of the partner event source. This name must be unique and must be
6765	// in the format partner_name/event_namespace/event_name . The AWS account that
6766	// wants to use this partner event source must create a partner event bus with
6767	// a name that matches the name of the partner event source.
6768	//
6769	// Name is a required field
6770	Name *string `min:"1" type:"string" required:"true"`
6771}
6772
6773// String returns the string representation
6774func (s CreatePartnerEventSourceInput) String() string {
6775	return awsutil.Prettify(s)
6776}
6777
6778// GoString returns the string representation
6779func (s CreatePartnerEventSourceInput) GoString() string {
6780	return s.String()
6781}
6782
6783// Validate inspects the fields of the type to determine if they are valid.
6784func (s *CreatePartnerEventSourceInput) Validate() error {
6785	invalidParams := request.ErrInvalidParams{Context: "CreatePartnerEventSourceInput"}
6786	if s.Account == nil {
6787		invalidParams.Add(request.NewErrParamRequired("Account"))
6788	}
6789	if s.Account != nil && len(*s.Account) < 12 {
6790		invalidParams.Add(request.NewErrParamMinLen("Account", 12))
6791	}
6792	if s.Name == nil {
6793		invalidParams.Add(request.NewErrParamRequired("Name"))
6794	}
6795	if s.Name != nil && len(*s.Name) < 1 {
6796		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6797	}
6798
6799	if invalidParams.Len() > 0 {
6800		return invalidParams
6801	}
6802	return nil
6803}
6804
6805// SetAccount sets the Account field's value.
6806func (s *CreatePartnerEventSourceInput) SetAccount(v string) *CreatePartnerEventSourceInput {
6807	s.Account = &v
6808	return s
6809}
6810
6811// SetName sets the Name field's value.
6812func (s *CreatePartnerEventSourceInput) SetName(v string) *CreatePartnerEventSourceInput {
6813	s.Name = &v
6814	return s
6815}
6816
6817type CreatePartnerEventSourceOutput struct {
6818	_ struct{} `type:"structure"`
6819
6820	// The ARN of the partner event source.
6821	EventSourceArn *string `type:"string"`
6822}
6823
6824// String returns the string representation
6825func (s CreatePartnerEventSourceOutput) String() string {
6826	return awsutil.Prettify(s)
6827}
6828
6829// GoString returns the string representation
6830func (s CreatePartnerEventSourceOutput) GoString() string {
6831	return s.String()
6832}
6833
6834// SetEventSourceArn sets the EventSourceArn field's value.
6835func (s *CreatePartnerEventSourceOutput) SetEventSourceArn(v string) *CreatePartnerEventSourceOutput {
6836	s.EventSourceArn = &v
6837	return s
6838}
6839
6840type DeactivateEventSourceInput struct {
6841	_ struct{} `type:"structure"`
6842
6843	// The name of the partner event source to deactivate.
6844	//
6845	// Name is a required field
6846	Name *string `min:"1" type:"string" required:"true"`
6847}
6848
6849// String returns the string representation
6850func (s DeactivateEventSourceInput) String() string {
6851	return awsutil.Prettify(s)
6852}
6853
6854// GoString returns the string representation
6855func (s DeactivateEventSourceInput) GoString() string {
6856	return s.String()
6857}
6858
6859// Validate inspects the fields of the type to determine if they are valid.
6860func (s *DeactivateEventSourceInput) Validate() error {
6861	invalidParams := request.ErrInvalidParams{Context: "DeactivateEventSourceInput"}
6862	if s.Name == nil {
6863		invalidParams.Add(request.NewErrParamRequired("Name"))
6864	}
6865	if s.Name != nil && len(*s.Name) < 1 {
6866		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6867	}
6868
6869	if invalidParams.Len() > 0 {
6870		return invalidParams
6871	}
6872	return nil
6873}
6874
6875// SetName sets the Name field's value.
6876func (s *DeactivateEventSourceInput) SetName(v string) *DeactivateEventSourceInput {
6877	s.Name = &v
6878	return s
6879}
6880
6881type DeactivateEventSourceOutput struct {
6882	_ struct{} `type:"structure"`
6883}
6884
6885// String returns the string representation
6886func (s DeactivateEventSourceOutput) String() string {
6887	return awsutil.Prettify(s)
6888}
6889
6890// GoString returns the string representation
6891func (s DeactivateEventSourceOutput) GoString() string {
6892	return s.String()
6893}
6894
6895// A DeadLetterConfig object that contains information about a dead-letter queue
6896// configuration.
6897type DeadLetterConfig struct {
6898	_ struct{} `type:"structure"`
6899
6900	// The ARN of the SQS queue specified as the target for the dead-letter queue.
6901	Arn *string `min:"1" type:"string"`
6902}
6903
6904// String returns the string representation
6905func (s DeadLetterConfig) String() string {
6906	return awsutil.Prettify(s)
6907}
6908
6909// GoString returns the string representation
6910func (s DeadLetterConfig) GoString() string {
6911	return s.String()
6912}
6913
6914// Validate inspects the fields of the type to determine if they are valid.
6915func (s *DeadLetterConfig) Validate() error {
6916	invalidParams := request.ErrInvalidParams{Context: "DeadLetterConfig"}
6917	if s.Arn != nil && len(*s.Arn) < 1 {
6918		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
6919	}
6920
6921	if invalidParams.Len() > 0 {
6922		return invalidParams
6923	}
6924	return nil
6925}
6926
6927// SetArn sets the Arn field's value.
6928func (s *DeadLetterConfig) SetArn(v string) *DeadLetterConfig {
6929	s.Arn = &v
6930	return s
6931}
6932
6933type DeauthorizeConnectionInput struct {
6934	_ struct{} `type:"structure"`
6935
6936	// The name of the connection to remove authorization from.
6937	//
6938	// Name is a required field
6939	Name *string `min:"1" type:"string" required:"true"`
6940}
6941
6942// String returns the string representation
6943func (s DeauthorizeConnectionInput) String() string {
6944	return awsutil.Prettify(s)
6945}
6946
6947// GoString returns the string representation
6948func (s DeauthorizeConnectionInput) GoString() string {
6949	return s.String()
6950}
6951
6952// Validate inspects the fields of the type to determine if they are valid.
6953func (s *DeauthorizeConnectionInput) Validate() error {
6954	invalidParams := request.ErrInvalidParams{Context: "DeauthorizeConnectionInput"}
6955	if s.Name == nil {
6956		invalidParams.Add(request.NewErrParamRequired("Name"))
6957	}
6958	if s.Name != nil && len(*s.Name) < 1 {
6959		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6960	}
6961
6962	if invalidParams.Len() > 0 {
6963		return invalidParams
6964	}
6965	return nil
6966}
6967
6968// SetName sets the Name field's value.
6969func (s *DeauthorizeConnectionInput) SetName(v string) *DeauthorizeConnectionInput {
6970	s.Name = &v
6971	return s
6972}
6973
6974type DeauthorizeConnectionOutput struct {
6975	_ struct{} `type:"structure"`
6976
6977	// The ARN of the connection that authorization was removed from.
6978	ConnectionArn *string `min:"1" type:"string"`
6979
6980	// The state of the connection.
6981	ConnectionState *string `type:"string" enum:"ConnectionState"`
6982
6983	// A time stamp for the time that the connection was created.
6984	CreationTime *time.Time `type:"timestamp"`
6985
6986	// A time stamp for the time that the connection was last authorized.
6987	LastAuthorizedTime *time.Time `type:"timestamp"`
6988
6989	// A time stamp for the time that the connection was last updated.
6990	LastModifiedTime *time.Time `type:"timestamp"`
6991}
6992
6993// String returns the string representation
6994func (s DeauthorizeConnectionOutput) String() string {
6995	return awsutil.Prettify(s)
6996}
6997
6998// GoString returns the string representation
6999func (s DeauthorizeConnectionOutput) GoString() string {
7000	return s.String()
7001}
7002
7003// SetConnectionArn sets the ConnectionArn field's value.
7004func (s *DeauthorizeConnectionOutput) SetConnectionArn(v string) *DeauthorizeConnectionOutput {
7005	s.ConnectionArn = &v
7006	return s
7007}
7008
7009// SetConnectionState sets the ConnectionState field's value.
7010func (s *DeauthorizeConnectionOutput) SetConnectionState(v string) *DeauthorizeConnectionOutput {
7011	s.ConnectionState = &v
7012	return s
7013}
7014
7015// SetCreationTime sets the CreationTime field's value.
7016func (s *DeauthorizeConnectionOutput) SetCreationTime(v time.Time) *DeauthorizeConnectionOutput {
7017	s.CreationTime = &v
7018	return s
7019}
7020
7021// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
7022func (s *DeauthorizeConnectionOutput) SetLastAuthorizedTime(v time.Time) *DeauthorizeConnectionOutput {
7023	s.LastAuthorizedTime = &v
7024	return s
7025}
7026
7027// SetLastModifiedTime sets the LastModifiedTime field's value.
7028func (s *DeauthorizeConnectionOutput) SetLastModifiedTime(v time.Time) *DeauthorizeConnectionOutput {
7029	s.LastModifiedTime = &v
7030	return s
7031}
7032
7033type DeleteApiDestinationInput struct {
7034	_ struct{} `type:"structure"`
7035
7036	// The name of the destination to delete.
7037	//
7038	// Name is a required field
7039	Name *string `min:"1" type:"string" required:"true"`
7040}
7041
7042// String returns the string representation
7043func (s DeleteApiDestinationInput) String() string {
7044	return awsutil.Prettify(s)
7045}
7046
7047// GoString returns the string representation
7048func (s DeleteApiDestinationInput) GoString() string {
7049	return s.String()
7050}
7051
7052// Validate inspects the fields of the type to determine if they are valid.
7053func (s *DeleteApiDestinationInput) Validate() error {
7054	invalidParams := request.ErrInvalidParams{Context: "DeleteApiDestinationInput"}
7055	if s.Name == nil {
7056		invalidParams.Add(request.NewErrParamRequired("Name"))
7057	}
7058	if s.Name != nil && len(*s.Name) < 1 {
7059		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7060	}
7061
7062	if invalidParams.Len() > 0 {
7063		return invalidParams
7064	}
7065	return nil
7066}
7067
7068// SetName sets the Name field's value.
7069func (s *DeleteApiDestinationInput) SetName(v string) *DeleteApiDestinationInput {
7070	s.Name = &v
7071	return s
7072}
7073
7074type DeleteApiDestinationOutput struct {
7075	_ struct{} `type:"structure"`
7076}
7077
7078// String returns the string representation
7079func (s DeleteApiDestinationOutput) String() string {
7080	return awsutil.Prettify(s)
7081}
7082
7083// GoString returns the string representation
7084func (s DeleteApiDestinationOutput) GoString() string {
7085	return s.String()
7086}
7087
7088type DeleteArchiveInput struct {
7089	_ struct{} `type:"structure"`
7090
7091	// The name of the archive to delete.
7092	//
7093	// ArchiveName is a required field
7094	ArchiveName *string `min:"1" type:"string" required:"true"`
7095}
7096
7097// String returns the string representation
7098func (s DeleteArchiveInput) String() string {
7099	return awsutil.Prettify(s)
7100}
7101
7102// GoString returns the string representation
7103func (s DeleteArchiveInput) GoString() string {
7104	return s.String()
7105}
7106
7107// Validate inspects the fields of the type to determine if they are valid.
7108func (s *DeleteArchiveInput) Validate() error {
7109	invalidParams := request.ErrInvalidParams{Context: "DeleteArchiveInput"}
7110	if s.ArchiveName == nil {
7111		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
7112	}
7113	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
7114		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
7115	}
7116
7117	if invalidParams.Len() > 0 {
7118		return invalidParams
7119	}
7120	return nil
7121}
7122
7123// SetArchiveName sets the ArchiveName field's value.
7124func (s *DeleteArchiveInput) SetArchiveName(v string) *DeleteArchiveInput {
7125	s.ArchiveName = &v
7126	return s
7127}
7128
7129type DeleteArchiveOutput struct {
7130	_ struct{} `type:"structure"`
7131}
7132
7133// String returns the string representation
7134func (s DeleteArchiveOutput) String() string {
7135	return awsutil.Prettify(s)
7136}
7137
7138// GoString returns the string representation
7139func (s DeleteArchiveOutput) GoString() string {
7140	return s.String()
7141}
7142
7143type DeleteConnectionInput struct {
7144	_ struct{} `type:"structure"`
7145
7146	// The name of the connection to delete.
7147	//
7148	// Name is a required field
7149	Name *string `min:"1" type:"string" required:"true"`
7150}
7151
7152// String returns the string representation
7153func (s DeleteConnectionInput) String() string {
7154	return awsutil.Prettify(s)
7155}
7156
7157// GoString returns the string representation
7158func (s DeleteConnectionInput) GoString() string {
7159	return s.String()
7160}
7161
7162// Validate inspects the fields of the type to determine if they are valid.
7163func (s *DeleteConnectionInput) Validate() error {
7164	invalidParams := request.ErrInvalidParams{Context: "DeleteConnectionInput"}
7165	if s.Name == nil {
7166		invalidParams.Add(request.NewErrParamRequired("Name"))
7167	}
7168	if s.Name != nil && len(*s.Name) < 1 {
7169		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7170	}
7171
7172	if invalidParams.Len() > 0 {
7173		return invalidParams
7174	}
7175	return nil
7176}
7177
7178// SetName sets the Name field's value.
7179func (s *DeleteConnectionInput) SetName(v string) *DeleteConnectionInput {
7180	s.Name = &v
7181	return s
7182}
7183
7184type DeleteConnectionOutput struct {
7185	_ struct{} `type:"structure"`
7186
7187	// The ARN of the connection that was deleted.
7188	ConnectionArn *string `min:"1" type:"string"`
7189
7190	// The state of the connection before it was deleted.
7191	ConnectionState *string `type:"string" enum:"ConnectionState"`
7192
7193	// A time stamp for the time that the connection was created.
7194	CreationTime *time.Time `type:"timestamp"`
7195
7196	// A time stamp for the time that the connection was last authorized before
7197	// it wa deleted.
7198	LastAuthorizedTime *time.Time `type:"timestamp"`
7199
7200	// A time stamp for the time that the connection was last modified before it
7201	// was deleted.
7202	LastModifiedTime *time.Time `type:"timestamp"`
7203}
7204
7205// String returns the string representation
7206func (s DeleteConnectionOutput) String() string {
7207	return awsutil.Prettify(s)
7208}
7209
7210// GoString returns the string representation
7211func (s DeleteConnectionOutput) GoString() string {
7212	return s.String()
7213}
7214
7215// SetConnectionArn sets the ConnectionArn field's value.
7216func (s *DeleteConnectionOutput) SetConnectionArn(v string) *DeleteConnectionOutput {
7217	s.ConnectionArn = &v
7218	return s
7219}
7220
7221// SetConnectionState sets the ConnectionState field's value.
7222func (s *DeleteConnectionOutput) SetConnectionState(v string) *DeleteConnectionOutput {
7223	s.ConnectionState = &v
7224	return s
7225}
7226
7227// SetCreationTime sets the CreationTime field's value.
7228func (s *DeleteConnectionOutput) SetCreationTime(v time.Time) *DeleteConnectionOutput {
7229	s.CreationTime = &v
7230	return s
7231}
7232
7233// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
7234func (s *DeleteConnectionOutput) SetLastAuthorizedTime(v time.Time) *DeleteConnectionOutput {
7235	s.LastAuthorizedTime = &v
7236	return s
7237}
7238
7239// SetLastModifiedTime sets the LastModifiedTime field's value.
7240func (s *DeleteConnectionOutput) SetLastModifiedTime(v time.Time) *DeleteConnectionOutput {
7241	s.LastModifiedTime = &v
7242	return s
7243}
7244
7245type DeleteEventBusInput struct {
7246	_ struct{} `type:"structure"`
7247
7248	// The name of the event bus to delete.
7249	//
7250	// Name is a required field
7251	Name *string `min:"1" type:"string" required:"true"`
7252}
7253
7254// String returns the string representation
7255func (s DeleteEventBusInput) String() string {
7256	return awsutil.Prettify(s)
7257}
7258
7259// GoString returns the string representation
7260func (s DeleteEventBusInput) GoString() string {
7261	return s.String()
7262}
7263
7264// Validate inspects the fields of the type to determine if they are valid.
7265func (s *DeleteEventBusInput) Validate() error {
7266	invalidParams := request.ErrInvalidParams{Context: "DeleteEventBusInput"}
7267	if s.Name == nil {
7268		invalidParams.Add(request.NewErrParamRequired("Name"))
7269	}
7270	if s.Name != nil && len(*s.Name) < 1 {
7271		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7272	}
7273
7274	if invalidParams.Len() > 0 {
7275		return invalidParams
7276	}
7277	return nil
7278}
7279
7280// SetName sets the Name field's value.
7281func (s *DeleteEventBusInput) SetName(v string) *DeleteEventBusInput {
7282	s.Name = &v
7283	return s
7284}
7285
7286type DeleteEventBusOutput struct {
7287	_ struct{} `type:"structure"`
7288}
7289
7290// String returns the string representation
7291func (s DeleteEventBusOutput) String() string {
7292	return awsutil.Prettify(s)
7293}
7294
7295// GoString returns the string representation
7296func (s DeleteEventBusOutput) GoString() string {
7297	return s.String()
7298}
7299
7300type DeletePartnerEventSourceInput struct {
7301	_ struct{} `type:"structure"`
7302
7303	// The AWS account ID of the AWS customer that the event source was created
7304	// for.
7305	//
7306	// Account is a required field
7307	Account *string `min:"12" type:"string" required:"true"`
7308
7309	// The name of the event source to delete.
7310	//
7311	// Name is a required field
7312	Name *string `min:"1" type:"string" required:"true"`
7313}
7314
7315// String returns the string representation
7316func (s DeletePartnerEventSourceInput) String() string {
7317	return awsutil.Prettify(s)
7318}
7319
7320// GoString returns the string representation
7321func (s DeletePartnerEventSourceInput) GoString() string {
7322	return s.String()
7323}
7324
7325// Validate inspects the fields of the type to determine if they are valid.
7326func (s *DeletePartnerEventSourceInput) Validate() error {
7327	invalidParams := request.ErrInvalidParams{Context: "DeletePartnerEventSourceInput"}
7328	if s.Account == nil {
7329		invalidParams.Add(request.NewErrParamRequired("Account"))
7330	}
7331	if s.Account != nil && len(*s.Account) < 12 {
7332		invalidParams.Add(request.NewErrParamMinLen("Account", 12))
7333	}
7334	if s.Name == nil {
7335		invalidParams.Add(request.NewErrParamRequired("Name"))
7336	}
7337	if s.Name != nil && len(*s.Name) < 1 {
7338		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7339	}
7340
7341	if invalidParams.Len() > 0 {
7342		return invalidParams
7343	}
7344	return nil
7345}
7346
7347// SetAccount sets the Account field's value.
7348func (s *DeletePartnerEventSourceInput) SetAccount(v string) *DeletePartnerEventSourceInput {
7349	s.Account = &v
7350	return s
7351}
7352
7353// SetName sets the Name field's value.
7354func (s *DeletePartnerEventSourceInput) SetName(v string) *DeletePartnerEventSourceInput {
7355	s.Name = &v
7356	return s
7357}
7358
7359type DeletePartnerEventSourceOutput struct {
7360	_ struct{} `type:"structure"`
7361}
7362
7363// String returns the string representation
7364func (s DeletePartnerEventSourceOutput) String() string {
7365	return awsutil.Prettify(s)
7366}
7367
7368// GoString returns the string representation
7369func (s DeletePartnerEventSourceOutput) GoString() string {
7370	return s.String()
7371}
7372
7373type DeleteRuleInput struct {
7374	_ struct{} `type:"structure"`
7375
7376	// The name or ARN of the event bus associated with the rule. If you omit this,
7377	// the default event bus is used.
7378	EventBusName *string `min:"1" type:"string"`
7379
7380	// If this is a managed rule, created by an AWS service on your behalf, you
7381	// must specify Force as True to delete the rule. This parameter is ignored
7382	// for rules that are not managed rules. You can check whether a rule is a managed
7383	// rule by using DescribeRule or ListRules and checking the ManagedBy field
7384	// of the response.
7385	Force *bool `type:"boolean"`
7386
7387	// The name of the rule.
7388	//
7389	// Name is a required field
7390	Name *string `min:"1" type:"string" required:"true"`
7391}
7392
7393// String returns the string representation
7394func (s DeleteRuleInput) String() string {
7395	return awsutil.Prettify(s)
7396}
7397
7398// GoString returns the string representation
7399func (s DeleteRuleInput) GoString() string {
7400	return s.String()
7401}
7402
7403// Validate inspects the fields of the type to determine if they are valid.
7404func (s *DeleteRuleInput) Validate() error {
7405	invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"}
7406	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
7407		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
7408	}
7409	if s.Name == nil {
7410		invalidParams.Add(request.NewErrParamRequired("Name"))
7411	}
7412	if s.Name != nil && len(*s.Name) < 1 {
7413		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7414	}
7415
7416	if invalidParams.Len() > 0 {
7417		return invalidParams
7418	}
7419	return nil
7420}
7421
7422// SetEventBusName sets the EventBusName field's value.
7423func (s *DeleteRuleInput) SetEventBusName(v string) *DeleteRuleInput {
7424	s.EventBusName = &v
7425	return s
7426}
7427
7428// SetForce sets the Force field's value.
7429func (s *DeleteRuleInput) SetForce(v bool) *DeleteRuleInput {
7430	s.Force = &v
7431	return s
7432}
7433
7434// SetName sets the Name field's value.
7435func (s *DeleteRuleInput) SetName(v string) *DeleteRuleInput {
7436	s.Name = &v
7437	return s
7438}
7439
7440type DeleteRuleOutput struct {
7441	_ struct{} `type:"structure"`
7442}
7443
7444// String returns the string representation
7445func (s DeleteRuleOutput) String() string {
7446	return awsutil.Prettify(s)
7447}
7448
7449// GoString returns the string representation
7450func (s DeleteRuleOutput) GoString() string {
7451	return s.String()
7452}
7453
7454type DescribeApiDestinationInput struct {
7455	_ struct{} `type:"structure"`
7456
7457	// The name of the API destination to retrieve.
7458	//
7459	// Name is a required field
7460	Name *string `min:"1" type:"string" required:"true"`
7461}
7462
7463// String returns the string representation
7464func (s DescribeApiDestinationInput) String() string {
7465	return awsutil.Prettify(s)
7466}
7467
7468// GoString returns the string representation
7469func (s DescribeApiDestinationInput) GoString() string {
7470	return s.String()
7471}
7472
7473// Validate inspects the fields of the type to determine if they are valid.
7474func (s *DescribeApiDestinationInput) Validate() error {
7475	invalidParams := request.ErrInvalidParams{Context: "DescribeApiDestinationInput"}
7476	if s.Name == nil {
7477		invalidParams.Add(request.NewErrParamRequired("Name"))
7478	}
7479	if s.Name != nil && len(*s.Name) < 1 {
7480		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7481	}
7482
7483	if invalidParams.Len() > 0 {
7484		return invalidParams
7485	}
7486	return nil
7487}
7488
7489// SetName sets the Name field's value.
7490func (s *DescribeApiDestinationInput) SetName(v string) *DescribeApiDestinationInput {
7491	s.Name = &v
7492	return s
7493}
7494
7495type DescribeApiDestinationOutput struct {
7496	_ struct{} `type:"structure"`
7497
7498	// The ARN of the API destination retrieved.
7499	ApiDestinationArn *string `min:"1" type:"string"`
7500
7501	// The state of the API destination retrieved.
7502	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
7503
7504	// The ARN of the connection specified for the API destination retrieved.
7505	ConnectionArn *string `min:"1" type:"string"`
7506
7507	// A time stamp for the time that the API destination was created.
7508	CreationTime *time.Time `type:"timestamp"`
7509
7510	// The description for the API destination retrieved.
7511	Description *string `type:"string"`
7512
7513	// The method to use to connect to the HTTP endpoint.
7514	HttpMethod *string `type:"string" enum:"ApiDestinationHttpMethod"`
7515
7516	// The URL to use to connect to the HTTP endpoint.
7517	InvocationEndpoint *string `min:"1" type:"string"`
7518
7519	// The maximum number of invocations per second to specified for the API destination.
7520	// Note that if you set the invocation rate maximum to a value lower the rate
7521	// necessary to send all events received on to the destination HTTP endpoint,
7522	// some events may not be delivered within the 24-hour retry window. If you
7523	// plan to set the rate lower than the rate necessary to deliver all events,
7524	// consider using a dead-letter queue to catch events that are not delivered
7525	// within 24 hours.
7526	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
7527
7528	// A time stamp for the time that the API destination was last modified.
7529	LastModifiedTime *time.Time `type:"timestamp"`
7530
7531	// The name of the API destination retrieved.
7532	Name *string `min:"1" type:"string"`
7533}
7534
7535// String returns the string representation
7536func (s DescribeApiDestinationOutput) String() string {
7537	return awsutil.Prettify(s)
7538}
7539
7540// GoString returns the string representation
7541func (s DescribeApiDestinationOutput) GoString() string {
7542	return s.String()
7543}
7544
7545// SetApiDestinationArn sets the ApiDestinationArn field's value.
7546func (s *DescribeApiDestinationOutput) SetApiDestinationArn(v string) *DescribeApiDestinationOutput {
7547	s.ApiDestinationArn = &v
7548	return s
7549}
7550
7551// SetApiDestinationState sets the ApiDestinationState field's value.
7552func (s *DescribeApiDestinationOutput) SetApiDestinationState(v string) *DescribeApiDestinationOutput {
7553	s.ApiDestinationState = &v
7554	return s
7555}
7556
7557// SetConnectionArn sets the ConnectionArn field's value.
7558func (s *DescribeApiDestinationOutput) SetConnectionArn(v string) *DescribeApiDestinationOutput {
7559	s.ConnectionArn = &v
7560	return s
7561}
7562
7563// SetCreationTime sets the CreationTime field's value.
7564func (s *DescribeApiDestinationOutput) SetCreationTime(v time.Time) *DescribeApiDestinationOutput {
7565	s.CreationTime = &v
7566	return s
7567}
7568
7569// SetDescription sets the Description field's value.
7570func (s *DescribeApiDestinationOutput) SetDescription(v string) *DescribeApiDestinationOutput {
7571	s.Description = &v
7572	return s
7573}
7574
7575// SetHttpMethod sets the HttpMethod field's value.
7576func (s *DescribeApiDestinationOutput) SetHttpMethod(v string) *DescribeApiDestinationOutput {
7577	s.HttpMethod = &v
7578	return s
7579}
7580
7581// SetInvocationEndpoint sets the InvocationEndpoint field's value.
7582func (s *DescribeApiDestinationOutput) SetInvocationEndpoint(v string) *DescribeApiDestinationOutput {
7583	s.InvocationEndpoint = &v
7584	return s
7585}
7586
7587// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
7588func (s *DescribeApiDestinationOutput) SetInvocationRateLimitPerSecond(v int64) *DescribeApiDestinationOutput {
7589	s.InvocationRateLimitPerSecond = &v
7590	return s
7591}
7592
7593// SetLastModifiedTime sets the LastModifiedTime field's value.
7594func (s *DescribeApiDestinationOutput) SetLastModifiedTime(v time.Time) *DescribeApiDestinationOutput {
7595	s.LastModifiedTime = &v
7596	return s
7597}
7598
7599// SetName sets the Name field's value.
7600func (s *DescribeApiDestinationOutput) SetName(v string) *DescribeApiDestinationOutput {
7601	s.Name = &v
7602	return s
7603}
7604
7605type DescribeArchiveInput struct {
7606	_ struct{} `type:"structure"`
7607
7608	// The name of the archive to retrieve.
7609	//
7610	// ArchiveName is a required field
7611	ArchiveName *string `min:"1" type:"string" required:"true"`
7612}
7613
7614// String returns the string representation
7615func (s DescribeArchiveInput) String() string {
7616	return awsutil.Prettify(s)
7617}
7618
7619// GoString returns the string representation
7620func (s DescribeArchiveInput) GoString() string {
7621	return s.String()
7622}
7623
7624// Validate inspects the fields of the type to determine if they are valid.
7625func (s *DescribeArchiveInput) Validate() error {
7626	invalidParams := request.ErrInvalidParams{Context: "DescribeArchiveInput"}
7627	if s.ArchiveName == nil {
7628		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
7629	}
7630	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
7631		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
7632	}
7633
7634	if invalidParams.Len() > 0 {
7635		return invalidParams
7636	}
7637	return nil
7638}
7639
7640// SetArchiveName sets the ArchiveName field's value.
7641func (s *DescribeArchiveInput) SetArchiveName(v string) *DescribeArchiveInput {
7642	s.ArchiveName = &v
7643	return s
7644}
7645
7646type DescribeArchiveOutput struct {
7647	_ struct{} `type:"structure"`
7648
7649	// The ARN of the archive.
7650	ArchiveArn *string `min:"1" type:"string"`
7651
7652	// The name of the archive.
7653	ArchiveName *string `min:"1" type:"string"`
7654
7655	// The time at which the archive was created.
7656	CreationTime *time.Time `type:"timestamp"`
7657
7658	// The description of the archive.
7659	Description *string `type:"string"`
7660
7661	// The number of events in the archive.
7662	EventCount *int64 `type:"long"`
7663
7664	// The event pattern used to filter events sent to the archive.
7665	EventPattern *string `type:"string"`
7666
7667	// The ARN of the event source associated with the archive.
7668	EventSourceArn *string `min:"1" type:"string"`
7669
7670	// The number of days to retain events for in the archive.
7671	RetentionDays *int64 `type:"integer"`
7672
7673	// The size of the archive in bytes.
7674	SizeBytes *int64 `type:"long"`
7675
7676	// The state of the archive.
7677	State *string `type:"string" enum:"ArchiveState"`
7678
7679	// The reason that the archive is in the state.
7680	StateReason *string `type:"string"`
7681}
7682
7683// String returns the string representation
7684func (s DescribeArchiveOutput) String() string {
7685	return awsutil.Prettify(s)
7686}
7687
7688// GoString returns the string representation
7689func (s DescribeArchiveOutput) GoString() string {
7690	return s.String()
7691}
7692
7693// SetArchiveArn sets the ArchiveArn field's value.
7694func (s *DescribeArchiveOutput) SetArchiveArn(v string) *DescribeArchiveOutput {
7695	s.ArchiveArn = &v
7696	return s
7697}
7698
7699// SetArchiveName sets the ArchiveName field's value.
7700func (s *DescribeArchiveOutput) SetArchiveName(v string) *DescribeArchiveOutput {
7701	s.ArchiveName = &v
7702	return s
7703}
7704
7705// SetCreationTime sets the CreationTime field's value.
7706func (s *DescribeArchiveOutput) SetCreationTime(v time.Time) *DescribeArchiveOutput {
7707	s.CreationTime = &v
7708	return s
7709}
7710
7711// SetDescription sets the Description field's value.
7712func (s *DescribeArchiveOutput) SetDescription(v string) *DescribeArchiveOutput {
7713	s.Description = &v
7714	return s
7715}
7716
7717// SetEventCount sets the EventCount field's value.
7718func (s *DescribeArchiveOutput) SetEventCount(v int64) *DescribeArchiveOutput {
7719	s.EventCount = &v
7720	return s
7721}
7722
7723// SetEventPattern sets the EventPattern field's value.
7724func (s *DescribeArchiveOutput) SetEventPattern(v string) *DescribeArchiveOutput {
7725	s.EventPattern = &v
7726	return s
7727}
7728
7729// SetEventSourceArn sets the EventSourceArn field's value.
7730func (s *DescribeArchiveOutput) SetEventSourceArn(v string) *DescribeArchiveOutput {
7731	s.EventSourceArn = &v
7732	return s
7733}
7734
7735// SetRetentionDays sets the RetentionDays field's value.
7736func (s *DescribeArchiveOutput) SetRetentionDays(v int64) *DescribeArchiveOutput {
7737	s.RetentionDays = &v
7738	return s
7739}
7740
7741// SetSizeBytes sets the SizeBytes field's value.
7742func (s *DescribeArchiveOutput) SetSizeBytes(v int64) *DescribeArchiveOutput {
7743	s.SizeBytes = &v
7744	return s
7745}
7746
7747// SetState sets the State field's value.
7748func (s *DescribeArchiveOutput) SetState(v string) *DescribeArchiveOutput {
7749	s.State = &v
7750	return s
7751}
7752
7753// SetStateReason sets the StateReason field's value.
7754func (s *DescribeArchiveOutput) SetStateReason(v string) *DescribeArchiveOutput {
7755	s.StateReason = &v
7756	return s
7757}
7758
7759type DescribeConnectionInput struct {
7760	_ struct{} `type:"structure"`
7761
7762	// The name of the connection to retrieve.
7763	//
7764	// Name is a required field
7765	Name *string `min:"1" type:"string" required:"true"`
7766}
7767
7768// String returns the string representation
7769func (s DescribeConnectionInput) String() string {
7770	return awsutil.Prettify(s)
7771}
7772
7773// GoString returns the string representation
7774func (s DescribeConnectionInput) GoString() string {
7775	return s.String()
7776}
7777
7778// Validate inspects the fields of the type to determine if they are valid.
7779func (s *DescribeConnectionInput) Validate() error {
7780	invalidParams := request.ErrInvalidParams{Context: "DescribeConnectionInput"}
7781	if s.Name == nil {
7782		invalidParams.Add(request.NewErrParamRequired("Name"))
7783	}
7784	if s.Name != nil && len(*s.Name) < 1 {
7785		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7786	}
7787
7788	if invalidParams.Len() > 0 {
7789		return invalidParams
7790	}
7791	return nil
7792}
7793
7794// SetName sets the Name field's value.
7795func (s *DescribeConnectionInput) SetName(v string) *DescribeConnectionInput {
7796	s.Name = &v
7797	return s
7798}
7799
7800type DescribeConnectionOutput struct {
7801	_ struct{} `type:"structure"`
7802
7803	// The parameters to use for authorization for the connection.
7804	AuthParameters *ConnectionAuthResponseParameters `type:"structure"`
7805
7806	// The type of authorization specified for the connection.
7807	AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"`
7808
7809	// The ARN of the connection retrieved.
7810	ConnectionArn *string `min:"1" type:"string"`
7811
7812	// The state of the connection retrieved.
7813	ConnectionState *string `type:"string" enum:"ConnectionState"`
7814
7815	// A time stamp for the time that the connection was created.
7816	CreationTime *time.Time `type:"timestamp"`
7817
7818	// The description for the connection retrieved.
7819	Description *string `type:"string"`
7820
7821	// A time stamp for the time that the connection was last authorized.
7822	LastAuthorizedTime *time.Time `type:"timestamp"`
7823
7824	// A time stamp for the time that the connection was last modified.
7825	LastModifiedTime *time.Time `type:"timestamp"`
7826
7827	// The name of the connection retrieved.
7828	Name *string `min:"1" type:"string"`
7829
7830	// The ARN of the secret created from the authorization parameters specified
7831	// for the connection.
7832	SecretArn *string `min:"20" type:"string"`
7833
7834	// The reason that the connection is in the current connection state.
7835	StateReason *string `type:"string"`
7836}
7837
7838// String returns the string representation
7839func (s DescribeConnectionOutput) String() string {
7840	return awsutil.Prettify(s)
7841}
7842
7843// GoString returns the string representation
7844func (s DescribeConnectionOutput) GoString() string {
7845	return s.String()
7846}
7847
7848// SetAuthParameters sets the AuthParameters field's value.
7849func (s *DescribeConnectionOutput) SetAuthParameters(v *ConnectionAuthResponseParameters) *DescribeConnectionOutput {
7850	s.AuthParameters = v
7851	return s
7852}
7853
7854// SetAuthorizationType sets the AuthorizationType field's value.
7855func (s *DescribeConnectionOutput) SetAuthorizationType(v string) *DescribeConnectionOutput {
7856	s.AuthorizationType = &v
7857	return s
7858}
7859
7860// SetConnectionArn sets the ConnectionArn field's value.
7861func (s *DescribeConnectionOutput) SetConnectionArn(v string) *DescribeConnectionOutput {
7862	s.ConnectionArn = &v
7863	return s
7864}
7865
7866// SetConnectionState sets the ConnectionState field's value.
7867func (s *DescribeConnectionOutput) SetConnectionState(v string) *DescribeConnectionOutput {
7868	s.ConnectionState = &v
7869	return s
7870}
7871
7872// SetCreationTime sets the CreationTime field's value.
7873func (s *DescribeConnectionOutput) SetCreationTime(v time.Time) *DescribeConnectionOutput {
7874	s.CreationTime = &v
7875	return s
7876}
7877
7878// SetDescription sets the Description field's value.
7879func (s *DescribeConnectionOutput) SetDescription(v string) *DescribeConnectionOutput {
7880	s.Description = &v
7881	return s
7882}
7883
7884// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
7885func (s *DescribeConnectionOutput) SetLastAuthorizedTime(v time.Time) *DescribeConnectionOutput {
7886	s.LastAuthorizedTime = &v
7887	return s
7888}
7889
7890// SetLastModifiedTime sets the LastModifiedTime field's value.
7891func (s *DescribeConnectionOutput) SetLastModifiedTime(v time.Time) *DescribeConnectionOutput {
7892	s.LastModifiedTime = &v
7893	return s
7894}
7895
7896// SetName sets the Name field's value.
7897func (s *DescribeConnectionOutput) SetName(v string) *DescribeConnectionOutput {
7898	s.Name = &v
7899	return s
7900}
7901
7902// SetSecretArn sets the SecretArn field's value.
7903func (s *DescribeConnectionOutput) SetSecretArn(v string) *DescribeConnectionOutput {
7904	s.SecretArn = &v
7905	return s
7906}
7907
7908// SetStateReason sets the StateReason field's value.
7909func (s *DescribeConnectionOutput) SetStateReason(v string) *DescribeConnectionOutput {
7910	s.StateReason = &v
7911	return s
7912}
7913
7914type DescribeEventBusInput struct {
7915	_ struct{} `type:"structure"`
7916
7917	// The name or ARN of the event bus to show details for. If you omit this, the
7918	// default event bus is displayed.
7919	Name *string `min:"1" type:"string"`
7920}
7921
7922// String returns the string representation
7923func (s DescribeEventBusInput) String() string {
7924	return awsutil.Prettify(s)
7925}
7926
7927// GoString returns the string representation
7928func (s DescribeEventBusInput) GoString() string {
7929	return s.String()
7930}
7931
7932// Validate inspects the fields of the type to determine if they are valid.
7933func (s *DescribeEventBusInput) Validate() error {
7934	invalidParams := request.ErrInvalidParams{Context: "DescribeEventBusInput"}
7935	if s.Name != nil && len(*s.Name) < 1 {
7936		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7937	}
7938
7939	if invalidParams.Len() > 0 {
7940		return invalidParams
7941	}
7942	return nil
7943}
7944
7945// SetName sets the Name field's value.
7946func (s *DescribeEventBusInput) SetName(v string) *DescribeEventBusInput {
7947	s.Name = &v
7948	return s
7949}
7950
7951type DescribeEventBusOutput struct {
7952	_ struct{} `type:"structure"`
7953
7954	// The Amazon Resource Name (ARN) of the account permitted to write events to
7955	// the current account.
7956	Arn *string `type:"string"`
7957
7958	// The name of the event bus. Currently, this is always default.
7959	Name *string `type:"string"`
7960
7961	// The policy that enables the external account to send events to your account.
7962	Policy *string `type:"string"`
7963}
7964
7965// String returns the string representation
7966func (s DescribeEventBusOutput) String() string {
7967	return awsutil.Prettify(s)
7968}
7969
7970// GoString returns the string representation
7971func (s DescribeEventBusOutput) GoString() string {
7972	return s.String()
7973}
7974
7975// SetArn sets the Arn field's value.
7976func (s *DescribeEventBusOutput) SetArn(v string) *DescribeEventBusOutput {
7977	s.Arn = &v
7978	return s
7979}
7980
7981// SetName sets the Name field's value.
7982func (s *DescribeEventBusOutput) SetName(v string) *DescribeEventBusOutput {
7983	s.Name = &v
7984	return s
7985}
7986
7987// SetPolicy sets the Policy field's value.
7988func (s *DescribeEventBusOutput) SetPolicy(v string) *DescribeEventBusOutput {
7989	s.Policy = &v
7990	return s
7991}
7992
7993type DescribeEventSourceInput struct {
7994	_ struct{} `type:"structure"`
7995
7996	// The name of the partner event source to display the details of.
7997	//
7998	// Name is a required field
7999	Name *string `min:"1" type:"string" required:"true"`
8000}
8001
8002// String returns the string representation
8003func (s DescribeEventSourceInput) String() string {
8004	return awsutil.Prettify(s)
8005}
8006
8007// GoString returns the string representation
8008func (s DescribeEventSourceInput) GoString() string {
8009	return s.String()
8010}
8011
8012// Validate inspects the fields of the type to determine if they are valid.
8013func (s *DescribeEventSourceInput) Validate() error {
8014	invalidParams := request.ErrInvalidParams{Context: "DescribeEventSourceInput"}
8015	if s.Name == nil {
8016		invalidParams.Add(request.NewErrParamRequired("Name"))
8017	}
8018	if s.Name != nil && len(*s.Name) < 1 {
8019		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8020	}
8021
8022	if invalidParams.Len() > 0 {
8023		return invalidParams
8024	}
8025	return nil
8026}
8027
8028// SetName sets the Name field's value.
8029func (s *DescribeEventSourceInput) SetName(v string) *DescribeEventSourceInput {
8030	s.Name = &v
8031	return s
8032}
8033
8034type DescribeEventSourceOutput struct {
8035	_ struct{} `type:"structure"`
8036
8037	// The ARN of the partner event source.
8038	Arn *string `type:"string"`
8039
8040	// The name of the SaaS partner that created the event source.
8041	CreatedBy *string `type:"string"`
8042
8043	// The date and time that the event source was created.
8044	CreationTime *time.Time `type:"timestamp"`
8045
8046	// The date and time that the event source will expire if you do not create
8047	// a matching event bus.
8048	ExpirationTime *time.Time `type:"timestamp"`
8049
8050	// The name of the partner event source.
8051	Name *string `type:"string"`
8052
8053	// The state of the event source. If it is ACTIVE, you have already created
8054	// a matching event bus for this event source, and that event bus is active.
8055	// If it is PENDING, either you haven't yet created a matching event bus, or
8056	// that event bus is deactivated. If it is DELETED, you have created a matching
8057	// event bus, but the event source has since been deleted.
8058	State *string `type:"string" enum:"EventSourceState"`
8059}
8060
8061// String returns the string representation
8062func (s DescribeEventSourceOutput) String() string {
8063	return awsutil.Prettify(s)
8064}
8065
8066// GoString returns the string representation
8067func (s DescribeEventSourceOutput) GoString() string {
8068	return s.String()
8069}
8070
8071// SetArn sets the Arn field's value.
8072func (s *DescribeEventSourceOutput) SetArn(v string) *DescribeEventSourceOutput {
8073	s.Arn = &v
8074	return s
8075}
8076
8077// SetCreatedBy sets the CreatedBy field's value.
8078func (s *DescribeEventSourceOutput) SetCreatedBy(v string) *DescribeEventSourceOutput {
8079	s.CreatedBy = &v
8080	return s
8081}
8082
8083// SetCreationTime sets the CreationTime field's value.
8084func (s *DescribeEventSourceOutput) SetCreationTime(v time.Time) *DescribeEventSourceOutput {
8085	s.CreationTime = &v
8086	return s
8087}
8088
8089// SetExpirationTime sets the ExpirationTime field's value.
8090func (s *DescribeEventSourceOutput) SetExpirationTime(v time.Time) *DescribeEventSourceOutput {
8091	s.ExpirationTime = &v
8092	return s
8093}
8094
8095// SetName sets the Name field's value.
8096func (s *DescribeEventSourceOutput) SetName(v string) *DescribeEventSourceOutput {
8097	s.Name = &v
8098	return s
8099}
8100
8101// SetState sets the State field's value.
8102func (s *DescribeEventSourceOutput) SetState(v string) *DescribeEventSourceOutput {
8103	s.State = &v
8104	return s
8105}
8106
8107type DescribePartnerEventSourceInput struct {
8108	_ struct{} `type:"structure"`
8109
8110	// The name of the event source to display.
8111	//
8112	// Name is a required field
8113	Name *string `min:"1" type:"string" required:"true"`
8114}
8115
8116// String returns the string representation
8117func (s DescribePartnerEventSourceInput) String() string {
8118	return awsutil.Prettify(s)
8119}
8120
8121// GoString returns the string representation
8122func (s DescribePartnerEventSourceInput) GoString() string {
8123	return s.String()
8124}
8125
8126// Validate inspects the fields of the type to determine if they are valid.
8127func (s *DescribePartnerEventSourceInput) Validate() error {
8128	invalidParams := request.ErrInvalidParams{Context: "DescribePartnerEventSourceInput"}
8129	if s.Name == nil {
8130		invalidParams.Add(request.NewErrParamRequired("Name"))
8131	}
8132	if s.Name != nil && len(*s.Name) < 1 {
8133		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8134	}
8135
8136	if invalidParams.Len() > 0 {
8137		return invalidParams
8138	}
8139	return nil
8140}
8141
8142// SetName sets the Name field's value.
8143func (s *DescribePartnerEventSourceInput) SetName(v string) *DescribePartnerEventSourceInput {
8144	s.Name = &v
8145	return s
8146}
8147
8148type DescribePartnerEventSourceOutput struct {
8149	_ struct{} `type:"structure"`
8150
8151	// The ARN of the event source.
8152	Arn *string `type:"string"`
8153
8154	// The name of the event source.
8155	Name *string `type:"string"`
8156}
8157
8158// String returns the string representation
8159func (s DescribePartnerEventSourceOutput) String() string {
8160	return awsutil.Prettify(s)
8161}
8162
8163// GoString returns the string representation
8164func (s DescribePartnerEventSourceOutput) GoString() string {
8165	return s.String()
8166}
8167
8168// SetArn sets the Arn field's value.
8169func (s *DescribePartnerEventSourceOutput) SetArn(v string) *DescribePartnerEventSourceOutput {
8170	s.Arn = &v
8171	return s
8172}
8173
8174// SetName sets the Name field's value.
8175func (s *DescribePartnerEventSourceOutput) SetName(v string) *DescribePartnerEventSourceOutput {
8176	s.Name = &v
8177	return s
8178}
8179
8180type DescribeReplayInput struct {
8181	_ struct{} `type:"structure"`
8182
8183	// The name of the replay to retrieve.
8184	//
8185	// ReplayName is a required field
8186	ReplayName *string `min:"1" type:"string" required:"true"`
8187}
8188
8189// String returns the string representation
8190func (s DescribeReplayInput) String() string {
8191	return awsutil.Prettify(s)
8192}
8193
8194// GoString returns the string representation
8195func (s DescribeReplayInput) GoString() string {
8196	return s.String()
8197}
8198
8199// Validate inspects the fields of the type to determine if they are valid.
8200func (s *DescribeReplayInput) Validate() error {
8201	invalidParams := request.ErrInvalidParams{Context: "DescribeReplayInput"}
8202	if s.ReplayName == nil {
8203		invalidParams.Add(request.NewErrParamRequired("ReplayName"))
8204	}
8205	if s.ReplayName != nil && len(*s.ReplayName) < 1 {
8206		invalidParams.Add(request.NewErrParamMinLen("ReplayName", 1))
8207	}
8208
8209	if invalidParams.Len() > 0 {
8210		return invalidParams
8211	}
8212	return nil
8213}
8214
8215// SetReplayName sets the ReplayName field's value.
8216func (s *DescribeReplayInput) SetReplayName(v string) *DescribeReplayInput {
8217	s.ReplayName = &v
8218	return s
8219}
8220
8221type DescribeReplayOutput struct {
8222	_ struct{} `type:"structure"`
8223
8224	// The description of the replay.
8225	Description *string `type:"string"`
8226
8227	// A ReplayDestination object that contains details about the replay.
8228	Destination *ReplayDestination `type:"structure"`
8229
8230	// The time stamp for the last event that was replayed from the archive.
8231	EventEndTime *time.Time `type:"timestamp"`
8232
8233	// The time that the event was last replayed.
8234	EventLastReplayedTime *time.Time `type:"timestamp"`
8235
8236	// The ARN of the archive events were replayed from.
8237	EventSourceArn *string `min:"1" type:"string"`
8238
8239	// The time stamp of the first event that was last replayed from the archive.
8240	EventStartTime *time.Time `type:"timestamp"`
8241
8242	// The ARN of the replay.
8243	ReplayArn *string `min:"1" type:"string"`
8244
8245	// A time stamp for the time that the replay stopped.
8246	ReplayEndTime *time.Time `type:"timestamp"`
8247
8248	// The name of the replay.
8249	ReplayName *string `min:"1" type:"string"`
8250
8251	// A time stamp for the time that the replay started.
8252	ReplayStartTime *time.Time `type:"timestamp"`
8253
8254	// The current state of the replay.
8255	State *string `type:"string" enum:"ReplayState"`
8256
8257	// The reason that the replay is in the current state.
8258	StateReason *string `type:"string"`
8259}
8260
8261// String returns the string representation
8262func (s DescribeReplayOutput) String() string {
8263	return awsutil.Prettify(s)
8264}
8265
8266// GoString returns the string representation
8267func (s DescribeReplayOutput) GoString() string {
8268	return s.String()
8269}
8270
8271// SetDescription sets the Description field's value.
8272func (s *DescribeReplayOutput) SetDescription(v string) *DescribeReplayOutput {
8273	s.Description = &v
8274	return s
8275}
8276
8277// SetDestination sets the Destination field's value.
8278func (s *DescribeReplayOutput) SetDestination(v *ReplayDestination) *DescribeReplayOutput {
8279	s.Destination = v
8280	return s
8281}
8282
8283// SetEventEndTime sets the EventEndTime field's value.
8284func (s *DescribeReplayOutput) SetEventEndTime(v time.Time) *DescribeReplayOutput {
8285	s.EventEndTime = &v
8286	return s
8287}
8288
8289// SetEventLastReplayedTime sets the EventLastReplayedTime field's value.
8290func (s *DescribeReplayOutput) SetEventLastReplayedTime(v time.Time) *DescribeReplayOutput {
8291	s.EventLastReplayedTime = &v
8292	return s
8293}
8294
8295// SetEventSourceArn sets the EventSourceArn field's value.
8296func (s *DescribeReplayOutput) SetEventSourceArn(v string) *DescribeReplayOutput {
8297	s.EventSourceArn = &v
8298	return s
8299}
8300
8301// SetEventStartTime sets the EventStartTime field's value.
8302func (s *DescribeReplayOutput) SetEventStartTime(v time.Time) *DescribeReplayOutput {
8303	s.EventStartTime = &v
8304	return s
8305}
8306
8307// SetReplayArn sets the ReplayArn field's value.
8308func (s *DescribeReplayOutput) SetReplayArn(v string) *DescribeReplayOutput {
8309	s.ReplayArn = &v
8310	return s
8311}
8312
8313// SetReplayEndTime sets the ReplayEndTime field's value.
8314func (s *DescribeReplayOutput) SetReplayEndTime(v time.Time) *DescribeReplayOutput {
8315	s.ReplayEndTime = &v
8316	return s
8317}
8318
8319// SetReplayName sets the ReplayName field's value.
8320func (s *DescribeReplayOutput) SetReplayName(v string) *DescribeReplayOutput {
8321	s.ReplayName = &v
8322	return s
8323}
8324
8325// SetReplayStartTime sets the ReplayStartTime field's value.
8326func (s *DescribeReplayOutput) SetReplayStartTime(v time.Time) *DescribeReplayOutput {
8327	s.ReplayStartTime = &v
8328	return s
8329}
8330
8331// SetState sets the State field's value.
8332func (s *DescribeReplayOutput) SetState(v string) *DescribeReplayOutput {
8333	s.State = &v
8334	return s
8335}
8336
8337// SetStateReason sets the StateReason field's value.
8338func (s *DescribeReplayOutput) SetStateReason(v string) *DescribeReplayOutput {
8339	s.StateReason = &v
8340	return s
8341}
8342
8343type DescribeRuleInput struct {
8344	_ struct{} `type:"structure"`
8345
8346	// The name or ARN of the event bus associated with the rule. If you omit this,
8347	// the default event bus is used.
8348	EventBusName *string `min:"1" type:"string"`
8349
8350	// The name of the rule.
8351	//
8352	// Name is a required field
8353	Name *string `min:"1" type:"string" required:"true"`
8354}
8355
8356// String returns the string representation
8357func (s DescribeRuleInput) String() string {
8358	return awsutil.Prettify(s)
8359}
8360
8361// GoString returns the string representation
8362func (s DescribeRuleInput) GoString() string {
8363	return s.String()
8364}
8365
8366// Validate inspects the fields of the type to determine if they are valid.
8367func (s *DescribeRuleInput) Validate() error {
8368	invalidParams := request.ErrInvalidParams{Context: "DescribeRuleInput"}
8369	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
8370		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
8371	}
8372	if s.Name == nil {
8373		invalidParams.Add(request.NewErrParamRequired("Name"))
8374	}
8375	if s.Name != nil && len(*s.Name) < 1 {
8376		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8377	}
8378
8379	if invalidParams.Len() > 0 {
8380		return invalidParams
8381	}
8382	return nil
8383}
8384
8385// SetEventBusName sets the EventBusName field's value.
8386func (s *DescribeRuleInput) SetEventBusName(v string) *DescribeRuleInput {
8387	s.EventBusName = &v
8388	return s
8389}
8390
8391// SetName sets the Name field's value.
8392func (s *DescribeRuleInput) SetName(v string) *DescribeRuleInput {
8393	s.Name = &v
8394	return s
8395}
8396
8397type DescribeRuleOutput struct {
8398	_ struct{} `type:"structure"`
8399
8400	// The Amazon Resource Name (ARN) of the rule.
8401	Arn *string `min:"1" type:"string"`
8402
8403	// The account ID of the user that created the rule. If you use PutRule to put
8404	// a rule on an event bus in another account, the other account is the owner
8405	// of the rule, and the rule ARN includes the account ID for that account. However,
8406	// the value for CreatedBy is the account ID as the account that created the
8407	// rule in the other account.
8408	CreatedBy *string `min:"1" type:"string"`
8409
8410	// The description of the rule.
8411	Description *string `type:"string"`
8412
8413	// The name of the event bus associated with the rule.
8414	EventBusName *string `min:"1" type:"string"`
8415
8416	// The event pattern. For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
8417	// in the Amazon EventBridge User Guide.
8418	EventPattern *string `type:"string"`
8419
8420	// If this is a managed rule, created by an AWS service on your behalf, this
8421	// field displays the principal name of the AWS service that created the rule.
8422	ManagedBy *string `min:"1" type:"string"`
8423
8424	// The name of the rule.
8425	Name *string `min:"1" type:"string"`
8426
8427	// The Amazon Resource Name (ARN) of the IAM role associated with the rule.
8428	RoleArn *string `min:"1" type:"string"`
8429
8430	// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)".
8431	ScheduleExpression *string `type:"string"`
8432
8433	// Specifies whether the rule is enabled or disabled.
8434	State *string `type:"string" enum:"RuleState"`
8435}
8436
8437// String returns the string representation
8438func (s DescribeRuleOutput) String() string {
8439	return awsutil.Prettify(s)
8440}
8441
8442// GoString returns the string representation
8443func (s DescribeRuleOutput) GoString() string {
8444	return s.String()
8445}
8446
8447// SetArn sets the Arn field's value.
8448func (s *DescribeRuleOutput) SetArn(v string) *DescribeRuleOutput {
8449	s.Arn = &v
8450	return s
8451}
8452
8453// SetCreatedBy sets the CreatedBy field's value.
8454func (s *DescribeRuleOutput) SetCreatedBy(v string) *DescribeRuleOutput {
8455	s.CreatedBy = &v
8456	return s
8457}
8458
8459// SetDescription sets the Description field's value.
8460func (s *DescribeRuleOutput) SetDescription(v string) *DescribeRuleOutput {
8461	s.Description = &v
8462	return s
8463}
8464
8465// SetEventBusName sets the EventBusName field's value.
8466func (s *DescribeRuleOutput) SetEventBusName(v string) *DescribeRuleOutput {
8467	s.EventBusName = &v
8468	return s
8469}
8470
8471// SetEventPattern sets the EventPattern field's value.
8472func (s *DescribeRuleOutput) SetEventPattern(v string) *DescribeRuleOutput {
8473	s.EventPattern = &v
8474	return s
8475}
8476
8477// SetManagedBy sets the ManagedBy field's value.
8478func (s *DescribeRuleOutput) SetManagedBy(v string) *DescribeRuleOutput {
8479	s.ManagedBy = &v
8480	return s
8481}
8482
8483// SetName sets the Name field's value.
8484func (s *DescribeRuleOutput) SetName(v string) *DescribeRuleOutput {
8485	s.Name = &v
8486	return s
8487}
8488
8489// SetRoleArn sets the RoleArn field's value.
8490func (s *DescribeRuleOutput) SetRoleArn(v string) *DescribeRuleOutput {
8491	s.RoleArn = &v
8492	return s
8493}
8494
8495// SetScheduleExpression sets the ScheduleExpression field's value.
8496func (s *DescribeRuleOutput) SetScheduleExpression(v string) *DescribeRuleOutput {
8497	s.ScheduleExpression = &v
8498	return s
8499}
8500
8501// SetState sets the State field's value.
8502func (s *DescribeRuleOutput) SetState(v string) *DescribeRuleOutput {
8503	s.State = &v
8504	return s
8505}
8506
8507type DisableRuleInput struct {
8508	_ struct{} `type:"structure"`
8509
8510	// The name or ARN of the event bus associated with the rule. If you omit this,
8511	// the default event bus is used.
8512	EventBusName *string `min:"1" type:"string"`
8513
8514	// The name of the rule.
8515	//
8516	// Name is a required field
8517	Name *string `min:"1" type:"string" required:"true"`
8518}
8519
8520// String returns the string representation
8521func (s DisableRuleInput) String() string {
8522	return awsutil.Prettify(s)
8523}
8524
8525// GoString returns the string representation
8526func (s DisableRuleInput) GoString() string {
8527	return s.String()
8528}
8529
8530// Validate inspects the fields of the type to determine if they are valid.
8531func (s *DisableRuleInput) Validate() error {
8532	invalidParams := request.ErrInvalidParams{Context: "DisableRuleInput"}
8533	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
8534		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
8535	}
8536	if s.Name == nil {
8537		invalidParams.Add(request.NewErrParamRequired("Name"))
8538	}
8539	if s.Name != nil && len(*s.Name) < 1 {
8540		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8541	}
8542
8543	if invalidParams.Len() > 0 {
8544		return invalidParams
8545	}
8546	return nil
8547}
8548
8549// SetEventBusName sets the EventBusName field's value.
8550func (s *DisableRuleInput) SetEventBusName(v string) *DisableRuleInput {
8551	s.EventBusName = &v
8552	return s
8553}
8554
8555// SetName sets the Name field's value.
8556func (s *DisableRuleInput) SetName(v string) *DisableRuleInput {
8557	s.Name = &v
8558	return s
8559}
8560
8561type DisableRuleOutput struct {
8562	_ struct{} `type:"structure"`
8563}
8564
8565// String returns the string representation
8566func (s DisableRuleOutput) String() string {
8567	return awsutil.Prettify(s)
8568}
8569
8570// GoString returns the string representation
8571func (s DisableRuleOutput) GoString() string {
8572	return s.String()
8573}
8574
8575// The custom parameters to be used when the target is an Amazon ECS task.
8576type EcsParameters struct {
8577	_ struct{} `type:"structure"`
8578
8579	// Specifies an ECS task group for the task. The maximum length is 255 characters.
8580	Group *string `type:"string"`
8581
8582	// Specifies the launch type on which your task is running. The launch type
8583	// that you specify here must match one of the launch type (compatibilities)
8584	// of the target task. The FARGATE value is supported only in the Regions where
8585	// AWS Fargate with Amazon ECS is supported. For more information, see AWS Fargate
8586	// on Amazon ECS (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS-Fargate.html)
8587	// in the Amazon Elastic Container Service Developer Guide.
8588	LaunchType *string `type:"string" enum:"LaunchType"`
8589
8590	// Use this structure if the ECS task uses the awsvpc network mode. This structure
8591	// specifies the VPC subnets and security groups associated with the task, and
8592	// whether a public IP address is to be used. This structure is required if
8593	// LaunchType is FARGATE because the awsvpc mode is required for Fargate tasks.
8594	//
8595	// If you specify NetworkConfiguration when the target ECS task does not use
8596	// the awsvpc network mode, the task fails.
8597	NetworkConfiguration *NetworkConfiguration `type:"structure"`
8598
8599	// Specifies the platform version for the task. Specify only the numeric portion
8600	// of the platform version, such as 1.1.0.
8601	//
8602	// This structure is used only if LaunchType is FARGATE. For more information
8603	// about valid platform versions, see AWS Fargate Platform Versions (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html)
8604	// in the Amazon Elastic Container Service Developer Guide.
8605	PlatformVersion *string `type:"string"`
8606
8607	// The number of tasks to create based on TaskDefinition. The default is 1.
8608	TaskCount *int64 `min:"1" type:"integer"`
8609
8610	// The ARN of the task definition to use if the event target is an Amazon ECS
8611	// task.
8612	//
8613	// TaskDefinitionArn is a required field
8614	TaskDefinitionArn *string `min:"1" type:"string" required:"true"`
8615}
8616
8617// String returns the string representation
8618func (s EcsParameters) String() string {
8619	return awsutil.Prettify(s)
8620}
8621
8622// GoString returns the string representation
8623func (s EcsParameters) GoString() string {
8624	return s.String()
8625}
8626
8627// Validate inspects the fields of the type to determine if they are valid.
8628func (s *EcsParameters) Validate() error {
8629	invalidParams := request.ErrInvalidParams{Context: "EcsParameters"}
8630	if s.TaskCount != nil && *s.TaskCount < 1 {
8631		invalidParams.Add(request.NewErrParamMinValue("TaskCount", 1))
8632	}
8633	if s.TaskDefinitionArn == nil {
8634		invalidParams.Add(request.NewErrParamRequired("TaskDefinitionArn"))
8635	}
8636	if s.TaskDefinitionArn != nil && len(*s.TaskDefinitionArn) < 1 {
8637		invalidParams.Add(request.NewErrParamMinLen("TaskDefinitionArn", 1))
8638	}
8639	if s.NetworkConfiguration != nil {
8640		if err := s.NetworkConfiguration.Validate(); err != nil {
8641			invalidParams.AddNested("NetworkConfiguration", err.(request.ErrInvalidParams))
8642		}
8643	}
8644
8645	if invalidParams.Len() > 0 {
8646		return invalidParams
8647	}
8648	return nil
8649}
8650
8651// SetGroup sets the Group field's value.
8652func (s *EcsParameters) SetGroup(v string) *EcsParameters {
8653	s.Group = &v
8654	return s
8655}
8656
8657// SetLaunchType sets the LaunchType field's value.
8658func (s *EcsParameters) SetLaunchType(v string) *EcsParameters {
8659	s.LaunchType = &v
8660	return s
8661}
8662
8663// SetNetworkConfiguration sets the NetworkConfiguration field's value.
8664func (s *EcsParameters) SetNetworkConfiguration(v *NetworkConfiguration) *EcsParameters {
8665	s.NetworkConfiguration = v
8666	return s
8667}
8668
8669// SetPlatformVersion sets the PlatformVersion field's value.
8670func (s *EcsParameters) SetPlatformVersion(v string) *EcsParameters {
8671	s.PlatformVersion = &v
8672	return s
8673}
8674
8675// SetTaskCount sets the TaskCount field's value.
8676func (s *EcsParameters) SetTaskCount(v int64) *EcsParameters {
8677	s.TaskCount = &v
8678	return s
8679}
8680
8681// SetTaskDefinitionArn sets the TaskDefinitionArn field's value.
8682func (s *EcsParameters) SetTaskDefinitionArn(v string) *EcsParameters {
8683	s.TaskDefinitionArn = &v
8684	return s
8685}
8686
8687type EnableRuleInput struct {
8688	_ struct{} `type:"structure"`
8689
8690	// The name or ARN of the event bus associated with the rule. If you omit this,
8691	// the default event bus is used.
8692	EventBusName *string `min:"1" type:"string"`
8693
8694	// The name of the rule.
8695	//
8696	// Name is a required field
8697	Name *string `min:"1" type:"string" required:"true"`
8698}
8699
8700// String returns the string representation
8701func (s EnableRuleInput) String() string {
8702	return awsutil.Prettify(s)
8703}
8704
8705// GoString returns the string representation
8706func (s EnableRuleInput) GoString() string {
8707	return s.String()
8708}
8709
8710// Validate inspects the fields of the type to determine if they are valid.
8711func (s *EnableRuleInput) Validate() error {
8712	invalidParams := request.ErrInvalidParams{Context: "EnableRuleInput"}
8713	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
8714		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
8715	}
8716	if s.Name == nil {
8717		invalidParams.Add(request.NewErrParamRequired("Name"))
8718	}
8719	if s.Name != nil && len(*s.Name) < 1 {
8720		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8721	}
8722
8723	if invalidParams.Len() > 0 {
8724		return invalidParams
8725	}
8726	return nil
8727}
8728
8729// SetEventBusName sets the EventBusName field's value.
8730func (s *EnableRuleInput) SetEventBusName(v string) *EnableRuleInput {
8731	s.EventBusName = &v
8732	return s
8733}
8734
8735// SetName sets the Name field's value.
8736func (s *EnableRuleInput) SetName(v string) *EnableRuleInput {
8737	s.Name = &v
8738	return s
8739}
8740
8741type EnableRuleOutput struct {
8742	_ struct{} `type:"structure"`
8743}
8744
8745// String returns the string representation
8746func (s EnableRuleOutput) String() string {
8747	return awsutil.Prettify(s)
8748}
8749
8750// GoString returns the string representation
8751func (s EnableRuleOutput) GoString() string {
8752	return s.String()
8753}
8754
8755// An event bus receives events from a source and routes them to rules associated
8756// with that event bus. Your account's default event bus receives rules from
8757// AWS services. A custom event bus can receive rules from AWS services as well
8758// as your custom applications and services. A partner event bus receives events
8759// from an event source created by an SaaS partner. These events come from the
8760// partners services or applications.
8761type EventBus struct {
8762	_ struct{} `type:"structure"`
8763
8764	// The ARN of the event bus.
8765	Arn *string `type:"string"`
8766
8767	// The name of the event bus.
8768	Name *string `type:"string"`
8769
8770	// The permissions policy of the event bus, describing which other AWS accounts
8771	// can write events to this event bus.
8772	Policy *string `type:"string"`
8773}
8774
8775// String returns the string representation
8776func (s EventBus) String() string {
8777	return awsutil.Prettify(s)
8778}
8779
8780// GoString returns the string representation
8781func (s EventBus) GoString() string {
8782	return s.String()
8783}
8784
8785// SetArn sets the Arn field's value.
8786func (s *EventBus) SetArn(v string) *EventBus {
8787	s.Arn = &v
8788	return s
8789}
8790
8791// SetName sets the Name field's value.
8792func (s *EventBus) SetName(v string) *EventBus {
8793	s.Name = &v
8794	return s
8795}
8796
8797// SetPolicy sets the Policy field's value.
8798func (s *EventBus) SetPolicy(v string) *EventBus {
8799	s.Policy = &v
8800	return s
8801}
8802
8803// A partner event source is created by an SaaS partner. If a customer creates
8804// a partner event bus that matches this event source, that AWS account can
8805// receive events from the partner's applications or services.
8806type EventSource struct {
8807	_ struct{} `type:"structure"`
8808
8809	// The ARN of the event source.
8810	Arn *string `type:"string"`
8811
8812	// The name of the partner that created the event source.
8813	CreatedBy *string `type:"string"`
8814
8815	// The date and time the event source was created.
8816	CreationTime *time.Time `type:"timestamp"`
8817
8818	// The date and time that the event source will expire, if the AWS account doesn't
8819	// create a matching event bus for it.
8820	ExpirationTime *time.Time `type:"timestamp"`
8821
8822	// The name of the event source.
8823	Name *string `type:"string"`
8824
8825	// The state of the event source. If it is ACTIVE, you have already created
8826	// a matching event bus for this event source, and that event bus is active.
8827	// If it is PENDING, either you haven't yet created a matching event bus, or
8828	// that event bus is deactivated. If it is DELETED, you have created a matching
8829	// event bus, but the event source has since been deleted.
8830	State *string `type:"string" enum:"EventSourceState"`
8831}
8832
8833// String returns the string representation
8834func (s EventSource) String() string {
8835	return awsutil.Prettify(s)
8836}
8837
8838// GoString returns the string representation
8839func (s EventSource) GoString() string {
8840	return s.String()
8841}
8842
8843// SetArn sets the Arn field's value.
8844func (s *EventSource) SetArn(v string) *EventSource {
8845	s.Arn = &v
8846	return s
8847}
8848
8849// SetCreatedBy sets the CreatedBy field's value.
8850func (s *EventSource) SetCreatedBy(v string) *EventSource {
8851	s.CreatedBy = &v
8852	return s
8853}
8854
8855// SetCreationTime sets the CreationTime field's value.
8856func (s *EventSource) SetCreationTime(v time.Time) *EventSource {
8857	s.CreationTime = &v
8858	return s
8859}
8860
8861// SetExpirationTime sets the ExpirationTime field's value.
8862func (s *EventSource) SetExpirationTime(v time.Time) *EventSource {
8863	s.ExpirationTime = &v
8864	return s
8865}
8866
8867// SetName sets the Name field's value.
8868func (s *EventSource) SetName(v string) *EventSource {
8869	s.Name = &v
8870	return s
8871}
8872
8873// SetState sets the State field's value.
8874func (s *EventSource) SetState(v string) *EventSource {
8875	s.State = &v
8876	return s
8877}
8878
8879// These are custom parameter to be used when the target is an API Gateway REST
8880// APIs or EventBridge ApiDestinations. In the latter case, these are merged
8881// with any InvocationParameters specified on the Connection, with any values
8882// from the Connection taking precedence.
8883type HttpParameters struct {
8884	_ struct{} `type:"structure"`
8885
8886	// The headers that need to be sent as part of request invoking the API Gateway
8887	// REST API or EventBridge ApiDestination.
8888	HeaderParameters map[string]*string `type:"map"`
8889
8890	// The path parameter values to be used to populate API Gateway REST API or
8891	// EventBridge ApiDestination path wildcards ("*").
8892	PathParameterValues []*string `type:"list"`
8893
8894	// The query string keys/values that need to be sent as part of request invoking
8895	// the API Gateway REST API or EventBridge ApiDestination.
8896	QueryStringParameters map[string]*string `type:"map"`
8897}
8898
8899// String returns the string representation
8900func (s HttpParameters) String() string {
8901	return awsutil.Prettify(s)
8902}
8903
8904// GoString returns the string representation
8905func (s HttpParameters) GoString() string {
8906	return s.String()
8907}
8908
8909// SetHeaderParameters sets the HeaderParameters field's value.
8910func (s *HttpParameters) SetHeaderParameters(v map[string]*string) *HttpParameters {
8911	s.HeaderParameters = v
8912	return s
8913}
8914
8915// SetPathParameterValues sets the PathParameterValues field's value.
8916func (s *HttpParameters) SetPathParameterValues(v []*string) *HttpParameters {
8917	s.PathParameterValues = v
8918	return s
8919}
8920
8921// SetQueryStringParameters sets the QueryStringParameters field's value.
8922func (s *HttpParameters) SetQueryStringParameters(v map[string]*string) *HttpParameters {
8923	s.QueryStringParameters = v
8924	return s
8925}
8926
8927// An error occurred because a replay can be canceled only when the state is
8928// Running or Starting.
8929type IllegalStatusException struct {
8930	_            struct{}                  `type:"structure"`
8931	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8932
8933	Message_ *string `locationName:"message" type:"string"`
8934}
8935
8936// String returns the string representation
8937func (s IllegalStatusException) String() string {
8938	return awsutil.Prettify(s)
8939}
8940
8941// GoString returns the string representation
8942func (s IllegalStatusException) GoString() string {
8943	return s.String()
8944}
8945
8946func newErrorIllegalStatusException(v protocol.ResponseMetadata) error {
8947	return &IllegalStatusException{
8948		RespMetadata: v,
8949	}
8950}
8951
8952// Code returns the exception type name.
8953func (s *IllegalStatusException) Code() string {
8954	return "IllegalStatusException"
8955}
8956
8957// Message returns the exception's message.
8958func (s *IllegalStatusException) Message() string {
8959	if s.Message_ != nil {
8960		return *s.Message_
8961	}
8962	return ""
8963}
8964
8965// OrigErr always returns nil, satisfies awserr.Error interface.
8966func (s *IllegalStatusException) OrigErr() error {
8967	return nil
8968}
8969
8970func (s *IllegalStatusException) Error() string {
8971	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8972}
8973
8974// Status code returns the HTTP status code for the request's response error.
8975func (s *IllegalStatusException) StatusCode() int {
8976	return s.RespMetadata.StatusCode
8977}
8978
8979// RequestID returns the service's response RequestID for request.
8980func (s *IllegalStatusException) RequestID() string {
8981	return s.RespMetadata.RequestID
8982}
8983
8984// Contains the parameters needed for you to provide custom input to a target
8985// based on one or more pieces of data extracted from the event.
8986type InputTransformer struct {
8987	_ struct{} `type:"structure"`
8988
8989	// Map of JSON paths to be extracted from the event. You can then insert these
8990	// in the template in InputTemplate to produce the output you want to be sent
8991	// to the target.
8992	//
8993	// InputPathsMap is an array key-value pairs, where each value is a valid JSON
8994	// path. You can have as many as 100 key-value pairs. You must use JSON dot
8995	// notation, not bracket notation.
8996	//
8997	// The keys cannot start with "AWS."
8998	InputPathsMap map[string]*string `type:"map"`
8999
9000	// Input template where you specify placeholders that will be filled with the
9001	// values of the keys from InputPathsMap to customize the data sent to the target.
9002	// Enclose each InputPathsMaps value in brackets: <value> The InputTemplate
9003	// must be valid JSON.
9004	//
9005	// If InputTemplate is a JSON object (surrounded by curly braces), the following
9006	// restrictions apply:
9007	//
9008	//    * The placeholder cannot be used as an object key.
9009	//
9010	// The following example shows the syntax for using InputPathsMap and InputTemplate.
9011	//
9012	// "InputTransformer":
9013	//
9014	// {
9015	//
9016	// "InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},
9017	//
9018	// "InputTemplate": "<instance> is in state <status>"
9019	//
9020	// }
9021	//
9022	// To have the InputTemplate include quote marks within a JSON string, escape
9023	// each quote marks with a slash, as in the following example:
9024	//
9025	// "InputTransformer":
9026	//
9027	// {
9028	//
9029	// "InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},
9030	//
9031	// "InputTemplate": "<instance> is in state \"<status>\""
9032	//
9033	// }
9034	//
9035	// The InputTemplate can also be valid JSON with varibles in quotes or out,
9036	// as in the following example:
9037	//
9038	// "InputTransformer":
9039	//
9040	// {
9041	//
9042	// "InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},
9043	//
9044	// "InputTemplate": '{"myInstance": <instance>,"myStatus": "<instance> is in
9045	// state \"<status>\""}'
9046	//
9047	// }
9048	//
9049	// InputTemplate is a required field
9050	InputTemplate *string `min:"1" type:"string" required:"true"`
9051}
9052
9053// String returns the string representation
9054func (s InputTransformer) String() string {
9055	return awsutil.Prettify(s)
9056}
9057
9058// GoString returns the string representation
9059func (s InputTransformer) GoString() string {
9060	return s.String()
9061}
9062
9063// Validate inspects the fields of the type to determine if they are valid.
9064func (s *InputTransformer) Validate() error {
9065	invalidParams := request.ErrInvalidParams{Context: "InputTransformer"}
9066	if s.InputTemplate == nil {
9067		invalidParams.Add(request.NewErrParamRequired("InputTemplate"))
9068	}
9069	if s.InputTemplate != nil && len(*s.InputTemplate) < 1 {
9070		invalidParams.Add(request.NewErrParamMinLen("InputTemplate", 1))
9071	}
9072
9073	if invalidParams.Len() > 0 {
9074		return invalidParams
9075	}
9076	return nil
9077}
9078
9079// SetInputPathsMap sets the InputPathsMap field's value.
9080func (s *InputTransformer) SetInputPathsMap(v map[string]*string) *InputTransformer {
9081	s.InputPathsMap = v
9082	return s
9083}
9084
9085// SetInputTemplate sets the InputTemplate field's value.
9086func (s *InputTransformer) SetInputTemplate(v string) *InputTransformer {
9087	s.InputTemplate = &v
9088	return s
9089}
9090
9091// This exception occurs due to unexpected causes.
9092type InternalException struct {
9093	_            struct{}                  `type:"structure"`
9094	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9095
9096	Message_ *string `locationName:"message" type:"string"`
9097}
9098
9099// String returns the string representation
9100func (s InternalException) String() string {
9101	return awsutil.Prettify(s)
9102}
9103
9104// GoString returns the string representation
9105func (s InternalException) GoString() string {
9106	return s.String()
9107}
9108
9109func newErrorInternalException(v protocol.ResponseMetadata) error {
9110	return &InternalException{
9111		RespMetadata: v,
9112	}
9113}
9114
9115// Code returns the exception type name.
9116func (s *InternalException) Code() string {
9117	return "InternalException"
9118}
9119
9120// Message returns the exception's message.
9121func (s *InternalException) Message() string {
9122	if s.Message_ != nil {
9123		return *s.Message_
9124	}
9125	return ""
9126}
9127
9128// OrigErr always returns nil, satisfies awserr.Error interface.
9129func (s *InternalException) OrigErr() error {
9130	return nil
9131}
9132
9133func (s *InternalException) Error() string {
9134	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9135}
9136
9137// Status code returns the HTTP status code for the request's response error.
9138func (s *InternalException) StatusCode() int {
9139	return s.RespMetadata.StatusCode
9140}
9141
9142// RequestID returns the service's response RequestID for request.
9143func (s *InternalException) RequestID() string {
9144	return s.RespMetadata.RequestID
9145}
9146
9147// The event pattern is not valid.
9148type InvalidEventPatternException struct {
9149	_            struct{}                  `type:"structure"`
9150	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9151
9152	Message_ *string `locationName:"message" type:"string"`
9153}
9154
9155// String returns the string representation
9156func (s InvalidEventPatternException) String() string {
9157	return awsutil.Prettify(s)
9158}
9159
9160// GoString returns the string representation
9161func (s InvalidEventPatternException) GoString() string {
9162	return s.String()
9163}
9164
9165func newErrorInvalidEventPatternException(v protocol.ResponseMetadata) error {
9166	return &InvalidEventPatternException{
9167		RespMetadata: v,
9168	}
9169}
9170
9171// Code returns the exception type name.
9172func (s *InvalidEventPatternException) Code() string {
9173	return "InvalidEventPatternException"
9174}
9175
9176// Message returns the exception's message.
9177func (s *InvalidEventPatternException) Message() string {
9178	if s.Message_ != nil {
9179		return *s.Message_
9180	}
9181	return ""
9182}
9183
9184// OrigErr always returns nil, satisfies awserr.Error interface.
9185func (s *InvalidEventPatternException) OrigErr() error {
9186	return nil
9187}
9188
9189func (s *InvalidEventPatternException) Error() string {
9190	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9191}
9192
9193// Status code returns the HTTP status code for the request's response error.
9194func (s *InvalidEventPatternException) StatusCode() int {
9195	return s.RespMetadata.StatusCode
9196}
9197
9198// RequestID returns the service's response RequestID for request.
9199func (s *InvalidEventPatternException) RequestID() string {
9200	return s.RespMetadata.RequestID
9201}
9202
9203// The specified state is not a valid state for an event source.
9204type InvalidStateException struct {
9205	_            struct{}                  `type:"structure"`
9206	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9207
9208	Message_ *string `locationName:"message" type:"string"`
9209}
9210
9211// String returns the string representation
9212func (s InvalidStateException) String() string {
9213	return awsutil.Prettify(s)
9214}
9215
9216// GoString returns the string representation
9217func (s InvalidStateException) GoString() string {
9218	return s.String()
9219}
9220
9221func newErrorInvalidStateException(v protocol.ResponseMetadata) error {
9222	return &InvalidStateException{
9223		RespMetadata: v,
9224	}
9225}
9226
9227// Code returns the exception type name.
9228func (s *InvalidStateException) Code() string {
9229	return "InvalidStateException"
9230}
9231
9232// Message returns the exception's message.
9233func (s *InvalidStateException) Message() string {
9234	if s.Message_ != nil {
9235		return *s.Message_
9236	}
9237	return ""
9238}
9239
9240// OrigErr always returns nil, satisfies awserr.Error interface.
9241func (s *InvalidStateException) OrigErr() error {
9242	return nil
9243}
9244
9245func (s *InvalidStateException) Error() string {
9246	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9247}
9248
9249// Status code returns the HTTP status code for the request's response error.
9250func (s *InvalidStateException) StatusCode() int {
9251	return s.RespMetadata.StatusCode
9252}
9253
9254// RequestID returns the service's response RequestID for request.
9255func (s *InvalidStateException) RequestID() string {
9256	return s.RespMetadata.RequestID
9257}
9258
9259// This object enables you to specify a JSON path to extract from the event
9260// and use as the partition key for the Amazon Kinesis data stream, so that
9261// you can control the shard to which the event goes. If you do not include
9262// this parameter, the default is to use the eventId as the partition key.
9263type KinesisParameters struct {
9264	_ struct{} `type:"structure"`
9265
9266	// The JSON path to be extracted from the event and used as the partition key.
9267	// For more information, see Amazon Kinesis Streams Key Concepts (https://docs.aws.amazon.com/streams/latest/dev/key-concepts.html#partition-key)
9268	// in the Amazon Kinesis Streams Developer Guide.
9269	//
9270	// PartitionKeyPath is a required field
9271	PartitionKeyPath *string `type:"string" required:"true"`
9272}
9273
9274// String returns the string representation
9275func (s KinesisParameters) String() string {
9276	return awsutil.Prettify(s)
9277}
9278
9279// GoString returns the string representation
9280func (s KinesisParameters) GoString() string {
9281	return s.String()
9282}
9283
9284// Validate inspects the fields of the type to determine if they are valid.
9285func (s *KinesisParameters) Validate() error {
9286	invalidParams := request.ErrInvalidParams{Context: "KinesisParameters"}
9287	if s.PartitionKeyPath == nil {
9288		invalidParams.Add(request.NewErrParamRequired("PartitionKeyPath"))
9289	}
9290
9291	if invalidParams.Len() > 0 {
9292		return invalidParams
9293	}
9294	return nil
9295}
9296
9297// SetPartitionKeyPath sets the PartitionKeyPath field's value.
9298func (s *KinesisParameters) SetPartitionKeyPath(v string) *KinesisParameters {
9299	s.PartitionKeyPath = &v
9300	return s
9301}
9302
9303// The request failed because it attempted to create resource beyond the allowed
9304// service quota.
9305type LimitExceededException struct {
9306	_            struct{}                  `type:"structure"`
9307	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9308
9309	Message_ *string `locationName:"message" type:"string"`
9310}
9311
9312// String returns the string representation
9313func (s LimitExceededException) String() string {
9314	return awsutil.Prettify(s)
9315}
9316
9317// GoString returns the string representation
9318func (s LimitExceededException) GoString() string {
9319	return s.String()
9320}
9321
9322func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
9323	return &LimitExceededException{
9324		RespMetadata: v,
9325	}
9326}
9327
9328// Code returns the exception type name.
9329func (s *LimitExceededException) Code() string {
9330	return "LimitExceededException"
9331}
9332
9333// Message returns the exception's message.
9334func (s *LimitExceededException) Message() string {
9335	if s.Message_ != nil {
9336		return *s.Message_
9337	}
9338	return ""
9339}
9340
9341// OrigErr always returns nil, satisfies awserr.Error interface.
9342func (s *LimitExceededException) OrigErr() error {
9343	return nil
9344}
9345
9346func (s *LimitExceededException) Error() string {
9347	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9348}
9349
9350// Status code returns the HTTP status code for the request's response error.
9351func (s *LimitExceededException) StatusCode() int {
9352	return s.RespMetadata.StatusCode
9353}
9354
9355// RequestID returns the service's response RequestID for request.
9356func (s *LimitExceededException) RequestID() string {
9357	return s.RespMetadata.RequestID
9358}
9359
9360type ListApiDestinationsInput struct {
9361	_ struct{} `type:"structure"`
9362
9363	// The ARN of the connection specified for the API destination.
9364	ConnectionArn *string `min:"1" type:"string"`
9365
9366	// The maximum number of API destinations to include in the response.
9367	Limit *int64 `min:"1" type:"integer"`
9368
9369	// A name prefix to filter results returned. Only API destinations with a name
9370	// that starts with the prefix are returned.
9371	NamePrefix *string `min:"1" type:"string"`
9372
9373	// The token returned by a previous call to retrieve the next set of results.
9374	NextToken *string `min:"1" type:"string"`
9375}
9376
9377// String returns the string representation
9378func (s ListApiDestinationsInput) String() string {
9379	return awsutil.Prettify(s)
9380}
9381
9382// GoString returns the string representation
9383func (s ListApiDestinationsInput) GoString() string {
9384	return s.String()
9385}
9386
9387// Validate inspects the fields of the type to determine if they are valid.
9388func (s *ListApiDestinationsInput) Validate() error {
9389	invalidParams := request.ErrInvalidParams{Context: "ListApiDestinationsInput"}
9390	if s.ConnectionArn != nil && len(*s.ConnectionArn) < 1 {
9391		invalidParams.Add(request.NewErrParamMinLen("ConnectionArn", 1))
9392	}
9393	if s.Limit != nil && *s.Limit < 1 {
9394		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9395	}
9396	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9397		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9398	}
9399	if s.NextToken != nil && len(*s.NextToken) < 1 {
9400		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9401	}
9402
9403	if invalidParams.Len() > 0 {
9404		return invalidParams
9405	}
9406	return nil
9407}
9408
9409// SetConnectionArn sets the ConnectionArn field's value.
9410func (s *ListApiDestinationsInput) SetConnectionArn(v string) *ListApiDestinationsInput {
9411	s.ConnectionArn = &v
9412	return s
9413}
9414
9415// SetLimit sets the Limit field's value.
9416func (s *ListApiDestinationsInput) SetLimit(v int64) *ListApiDestinationsInput {
9417	s.Limit = &v
9418	return s
9419}
9420
9421// SetNamePrefix sets the NamePrefix field's value.
9422func (s *ListApiDestinationsInput) SetNamePrefix(v string) *ListApiDestinationsInput {
9423	s.NamePrefix = &v
9424	return s
9425}
9426
9427// SetNextToken sets the NextToken field's value.
9428func (s *ListApiDestinationsInput) SetNextToken(v string) *ListApiDestinationsInput {
9429	s.NextToken = &v
9430	return s
9431}
9432
9433type ListApiDestinationsOutput struct {
9434	_ struct{} `type:"structure"`
9435
9436	// An array of ApiDestination objects that include information about an API
9437	// destination.
9438	ApiDestinations []*ApiDestination `type:"list"`
9439
9440	// A token you can use in a subsequent request to retrieve the next set of results.
9441	NextToken *string `min:"1" type:"string"`
9442}
9443
9444// String returns the string representation
9445func (s ListApiDestinationsOutput) String() string {
9446	return awsutil.Prettify(s)
9447}
9448
9449// GoString returns the string representation
9450func (s ListApiDestinationsOutput) GoString() string {
9451	return s.String()
9452}
9453
9454// SetApiDestinations sets the ApiDestinations field's value.
9455func (s *ListApiDestinationsOutput) SetApiDestinations(v []*ApiDestination) *ListApiDestinationsOutput {
9456	s.ApiDestinations = v
9457	return s
9458}
9459
9460// SetNextToken sets the NextToken field's value.
9461func (s *ListApiDestinationsOutput) SetNextToken(v string) *ListApiDestinationsOutput {
9462	s.NextToken = &v
9463	return s
9464}
9465
9466type ListArchivesInput struct {
9467	_ struct{} `type:"structure"`
9468
9469	// The ARN of the event source associated with the archive.
9470	EventSourceArn *string `min:"1" type:"string"`
9471
9472	// The maximum number of results to return.
9473	Limit *int64 `min:"1" type:"integer"`
9474
9475	// A name prefix to filter the archives returned. Only archives with name that
9476	// match the prefix are returned.
9477	NamePrefix *string `min:"1" type:"string"`
9478
9479	// The token returned by a previous call to retrieve the next set of results.
9480	NextToken *string `min:"1" type:"string"`
9481
9482	// The state of the archive.
9483	State *string `type:"string" enum:"ArchiveState"`
9484}
9485
9486// String returns the string representation
9487func (s ListArchivesInput) String() string {
9488	return awsutil.Prettify(s)
9489}
9490
9491// GoString returns the string representation
9492func (s ListArchivesInput) GoString() string {
9493	return s.String()
9494}
9495
9496// Validate inspects the fields of the type to determine if they are valid.
9497func (s *ListArchivesInput) Validate() error {
9498	invalidParams := request.ErrInvalidParams{Context: "ListArchivesInput"}
9499	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
9500		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
9501	}
9502	if s.Limit != nil && *s.Limit < 1 {
9503		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9504	}
9505	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9506		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9507	}
9508	if s.NextToken != nil && len(*s.NextToken) < 1 {
9509		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9510	}
9511
9512	if invalidParams.Len() > 0 {
9513		return invalidParams
9514	}
9515	return nil
9516}
9517
9518// SetEventSourceArn sets the EventSourceArn field's value.
9519func (s *ListArchivesInput) SetEventSourceArn(v string) *ListArchivesInput {
9520	s.EventSourceArn = &v
9521	return s
9522}
9523
9524// SetLimit sets the Limit field's value.
9525func (s *ListArchivesInput) SetLimit(v int64) *ListArchivesInput {
9526	s.Limit = &v
9527	return s
9528}
9529
9530// SetNamePrefix sets the NamePrefix field's value.
9531func (s *ListArchivesInput) SetNamePrefix(v string) *ListArchivesInput {
9532	s.NamePrefix = &v
9533	return s
9534}
9535
9536// SetNextToken sets the NextToken field's value.
9537func (s *ListArchivesInput) SetNextToken(v string) *ListArchivesInput {
9538	s.NextToken = &v
9539	return s
9540}
9541
9542// SetState sets the State field's value.
9543func (s *ListArchivesInput) SetState(v string) *ListArchivesInput {
9544	s.State = &v
9545	return s
9546}
9547
9548type ListArchivesOutput struct {
9549	_ struct{} `type:"structure"`
9550
9551	// An array of Archive objects that include details about an archive.
9552	Archives []*Archive `type:"list"`
9553
9554	// The token returned by a previous call to retrieve the next set of results.
9555	NextToken *string `min:"1" type:"string"`
9556}
9557
9558// String returns the string representation
9559func (s ListArchivesOutput) String() string {
9560	return awsutil.Prettify(s)
9561}
9562
9563// GoString returns the string representation
9564func (s ListArchivesOutput) GoString() string {
9565	return s.String()
9566}
9567
9568// SetArchives sets the Archives field's value.
9569func (s *ListArchivesOutput) SetArchives(v []*Archive) *ListArchivesOutput {
9570	s.Archives = v
9571	return s
9572}
9573
9574// SetNextToken sets the NextToken field's value.
9575func (s *ListArchivesOutput) SetNextToken(v string) *ListArchivesOutput {
9576	s.NextToken = &v
9577	return s
9578}
9579
9580type ListConnectionsInput struct {
9581	_ struct{} `type:"structure"`
9582
9583	// The state of the connection.
9584	ConnectionState *string `type:"string" enum:"ConnectionState"`
9585
9586	// The maximum number of connections to return.
9587	Limit *int64 `min:"1" type:"integer"`
9588
9589	// A name prefix to filter results returned. Only connections with a name that
9590	// starts with the prefix are returned.
9591	NamePrefix *string `min:"1" type:"string"`
9592
9593	// The token returned by a previous call to retrieve the next set of results.
9594	NextToken *string `min:"1" type:"string"`
9595}
9596
9597// String returns the string representation
9598func (s ListConnectionsInput) String() string {
9599	return awsutil.Prettify(s)
9600}
9601
9602// GoString returns the string representation
9603func (s ListConnectionsInput) GoString() string {
9604	return s.String()
9605}
9606
9607// Validate inspects the fields of the type to determine if they are valid.
9608func (s *ListConnectionsInput) Validate() error {
9609	invalidParams := request.ErrInvalidParams{Context: "ListConnectionsInput"}
9610	if s.Limit != nil && *s.Limit < 1 {
9611		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9612	}
9613	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9614		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9615	}
9616	if s.NextToken != nil && len(*s.NextToken) < 1 {
9617		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9618	}
9619
9620	if invalidParams.Len() > 0 {
9621		return invalidParams
9622	}
9623	return nil
9624}
9625
9626// SetConnectionState sets the ConnectionState field's value.
9627func (s *ListConnectionsInput) SetConnectionState(v string) *ListConnectionsInput {
9628	s.ConnectionState = &v
9629	return s
9630}
9631
9632// SetLimit sets the Limit field's value.
9633func (s *ListConnectionsInput) SetLimit(v int64) *ListConnectionsInput {
9634	s.Limit = &v
9635	return s
9636}
9637
9638// SetNamePrefix sets the NamePrefix field's value.
9639func (s *ListConnectionsInput) SetNamePrefix(v string) *ListConnectionsInput {
9640	s.NamePrefix = &v
9641	return s
9642}
9643
9644// SetNextToken sets the NextToken field's value.
9645func (s *ListConnectionsInput) SetNextToken(v string) *ListConnectionsInput {
9646	s.NextToken = &v
9647	return s
9648}
9649
9650type ListConnectionsOutput struct {
9651	_ struct{} `type:"structure"`
9652
9653	// An array of connections objects that include details about the connections.
9654	Connections []*Connection `type:"list"`
9655
9656	// A token you can use in a subsequent request to retrieve the next set of results.
9657	NextToken *string `min:"1" type:"string"`
9658}
9659
9660// String returns the string representation
9661func (s ListConnectionsOutput) String() string {
9662	return awsutil.Prettify(s)
9663}
9664
9665// GoString returns the string representation
9666func (s ListConnectionsOutput) GoString() string {
9667	return s.String()
9668}
9669
9670// SetConnections sets the Connections field's value.
9671func (s *ListConnectionsOutput) SetConnections(v []*Connection) *ListConnectionsOutput {
9672	s.Connections = v
9673	return s
9674}
9675
9676// SetNextToken sets the NextToken field's value.
9677func (s *ListConnectionsOutput) SetNextToken(v string) *ListConnectionsOutput {
9678	s.NextToken = &v
9679	return s
9680}
9681
9682type ListEventBusesInput struct {
9683	_ struct{} `type:"structure"`
9684
9685	// Specifying this limits the number of results returned by this operation.
9686	// The operation also returns a NextToken which you can use in a subsequent
9687	// operation to retrieve the next set of results.
9688	Limit *int64 `min:"1" type:"integer"`
9689
9690	// Specifying this limits the results to only those event buses with names that
9691	// start with the specified prefix.
9692	NamePrefix *string `min:"1" type:"string"`
9693
9694	// The token returned by a previous call to retrieve the next set of results.
9695	NextToken *string `min:"1" type:"string"`
9696}
9697
9698// String returns the string representation
9699func (s ListEventBusesInput) String() string {
9700	return awsutil.Prettify(s)
9701}
9702
9703// GoString returns the string representation
9704func (s ListEventBusesInput) GoString() string {
9705	return s.String()
9706}
9707
9708// Validate inspects the fields of the type to determine if they are valid.
9709func (s *ListEventBusesInput) Validate() error {
9710	invalidParams := request.ErrInvalidParams{Context: "ListEventBusesInput"}
9711	if s.Limit != nil && *s.Limit < 1 {
9712		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9713	}
9714	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9715		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9716	}
9717	if s.NextToken != nil && len(*s.NextToken) < 1 {
9718		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9719	}
9720
9721	if invalidParams.Len() > 0 {
9722		return invalidParams
9723	}
9724	return nil
9725}
9726
9727// SetLimit sets the Limit field's value.
9728func (s *ListEventBusesInput) SetLimit(v int64) *ListEventBusesInput {
9729	s.Limit = &v
9730	return s
9731}
9732
9733// SetNamePrefix sets the NamePrefix field's value.
9734func (s *ListEventBusesInput) SetNamePrefix(v string) *ListEventBusesInput {
9735	s.NamePrefix = &v
9736	return s
9737}
9738
9739// SetNextToken sets the NextToken field's value.
9740func (s *ListEventBusesInput) SetNextToken(v string) *ListEventBusesInput {
9741	s.NextToken = &v
9742	return s
9743}
9744
9745type ListEventBusesOutput struct {
9746	_ struct{} `type:"structure"`
9747
9748	// This list of event buses.
9749	EventBuses []*EventBus `type:"list"`
9750
9751	// A token you can use in a subsequent operation to retrieve the next set of
9752	// results.
9753	NextToken *string `min:"1" type:"string"`
9754}
9755
9756// String returns the string representation
9757func (s ListEventBusesOutput) String() string {
9758	return awsutil.Prettify(s)
9759}
9760
9761// GoString returns the string representation
9762func (s ListEventBusesOutput) GoString() string {
9763	return s.String()
9764}
9765
9766// SetEventBuses sets the EventBuses field's value.
9767func (s *ListEventBusesOutput) SetEventBuses(v []*EventBus) *ListEventBusesOutput {
9768	s.EventBuses = v
9769	return s
9770}
9771
9772// SetNextToken sets the NextToken field's value.
9773func (s *ListEventBusesOutput) SetNextToken(v string) *ListEventBusesOutput {
9774	s.NextToken = &v
9775	return s
9776}
9777
9778type ListEventSourcesInput struct {
9779	_ struct{} `type:"structure"`
9780
9781	// Specifying this limits the number of results returned by this operation.
9782	// The operation also returns a NextToken which you can use in a subsequent
9783	// operation to retrieve the next set of results.
9784	Limit *int64 `min:"1" type:"integer"`
9785
9786	// Specifying this limits the results to only those partner event sources with
9787	// names that start with the specified prefix.
9788	NamePrefix *string `min:"1" type:"string"`
9789
9790	// The token returned by a previous call to retrieve the next set of results.
9791	NextToken *string `min:"1" type:"string"`
9792}
9793
9794// String returns the string representation
9795func (s ListEventSourcesInput) String() string {
9796	return awsutil.Prettify(s)
9797}
9798
9799// GoString returns the string representation
9800func (s ListEventSourcesInput) GoString() string {
9801	return s.String()
9802}
9803
9804// Validate inspects the fields of the type to determine if they are valid.
9805func (s *ListEventSourcesInput) Validate() error {
9806	invalidParams := request.ErrInvalidParams{Context: "ListEventSourcesInput"}
9807	if s.Limit != nil && *s.Limit < 1 {
9808		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9809	}
9810	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
9811		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
9812	}
9813	if s.NextToken != nil && len(*s.NextToken) < 1 {
9814		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9815	}
9816
9817	if invalidParams.Len() > 0 {
9818		return invalidParams
9819	}
9820	return nil
9821}
9822
9823// SetLimit sets the Limit field's value.
9824func (s *ListEventSourcesInput) SetLimit(v int64) *ListEventSourcesInput {
9825	s.Limit = &v
9826	return s
9827}
9828
9829// SetNamePrefix sets the NamePrefix field's value.
9830func (s *ListEventSourcesInput) SetNamePrefix(v string) *ListEventSourcesInput {
9831	s.NamePrefix = &v
9832	return s
9833}
9834
9835// SetNextToken sets the NextToken field's value.
9836func (s *ListEventSourcesInput) SetNextToken(v string) *ListEventSourcesInput {
9837	s.NextToken = &v
9838	return s
9839}
9840
9841type ListEventSourcesOutput struct {
9842	_ struct{} `type:"structure"`
9843
9844	// The list of event sources.
9845	EventSources []*EventSource `type:"list"`
9846
9847	// A token you can use in a subsequent operation to retrieve the next set of
9848	// results.
9849	NextToken *string `min:"1" type:"string"`
9850}
9851
9852// String returns the string representation
9853func (s ListEventSourcesOutput) String() string {
9854	return awsutil.Prettify(s)
9855}
9856
9857// GoString returns the string representation
9858func (s ListEventSourcesOutput) GoString() string {
9859	return s.String()
9860}
9861
9862// SetEventSources sets the EventSources field's value.
9863func (s *ListEventSourcesOutput) SetEventSources(v []*EventSource) *ListEventSourcesOutput {
9864	s.EventSources = v
9865	return s
9866}
9867
9868// SetNextToken sets the NextToken field's value.
9869func (s *ListEventSourcesOutput) SetNextToken(v string) *ListEventSourcesOutput {
9870	s.NextToken = &v
9871	return s
9872}
9873
9874type ListPartnerEventSourceAccountsInput struct {
9875	_ struct{} `type:"structure"`
9876
9877	// The name of the partner event source to display account information about.
9878	//
9879	// EventSourceName is a required field
9880	EventSourceName *string `min:"1" type:"string" required:"true"`
9881
9882	// Specifying this limits the number of results returned by this operation.
9883	// The operation also returns a NextToken which you can use in a subsequent
9884	// operation to retrieve the next set of results.
9885	Limit *int64 `min:"1" type:"integer"`
9886
9887	// The token returned by a previous call to this operation. Specifying this
9888	// retrieves the next set of results.
9889	NextToken *string `min:"1" type:"string"`
9890}
9891
9892// String returns the string representation
9893func (s ListPartnerEventSourceAccountsInput) String() string {
9894	return awsutil.Prettify(s)
9895}
9896
9897// GoString returns the string representation
9898func (s ListPartnerEventSourceAccountsInput) GoString() string {
9899	return s.String()
9900}
9901
9902// Validate inspects the fields of the type to determine if they are valid.
9903func (s *ListPartnerEventSourceAccountsInput) Validate() error {
9904	invalidParams := request.ErrInvalidParams{Context: "ListPartnerEventSourceAccountsInput"}
9905	if s.EventSourceName == nil {
9906		invalidParams.Add(request.NewErrParamRequired("EventSourceName"))
9907	}
9908	if s.EventSourceName != nil && len(*s.EventSourceName) < 1 {
9909		invalidParams.Add(request.NewErrParamMinLen("EventSourceName", 1))
9910	}
9911	if s.Limit != nil && *s.Limit < 1 {
9912		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
9913	}
9914	if s.NextToken != nil && len(*s.NextToken) < 1 {
9915		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9916	}
9917
9918	if invalidParams.Len() > 0 {
9919		return invalidParams
9920	}
9921	return nil
9922}
9923
9924// SetEventSourceName sets the EventSourceName field's value.
9925func (s *ListPartnerEventSourceAccountsInput) SetEventSourceName(v string) *ListPartnerEventSourceAccountsInput {
9926	s.EventSourceName = &v
9927	return s
9928}
9929
9930// SetLimit sets the Limit field's value.
9931func (s *ListPartnerEventSourceAccountsInput) SetLimit(v int64) *ListPartnerEventSourceAccountsInput {
9932	s.Limit = &v
9933	return s
9934}
9935
9936// SetNextToken sets the NextToken field's value.
9937func (s *ListPartnerEventSourceAccountsInput) SetNextToken(v string) *ListPartnerEventSourceAccountsInput {
9938	s.NextToken = &v
9939	return s
9940}
9941
9942type ListPartnerEventSourceAccountsOutput struct {
9943	_ struct{} `type:"structure"`
9944
9945	// A token you can use in a subsequent operation to retrieve the next set of
9946	// results.
9947	NextToken *string `min:"1" type:"string"`
9948
9949	// The list of partner event sources returned by the operation.
9950	PartnerEventSourceAccounts []*PartnerEventSourceAccount `type:"list"`
9951}
9952
9953// String returns the string representation
9954func (s ListPartnerEventSourceAccountsOutput) String() string {
9955	return awsutil.Prettify(s)
9956}
9957
9958// GoString returns the string representation
9959func (s ListPartnerEventSourceAccountsOutput) GoString() string {
9960	return s.String()
9961}
9962
9963// SetNextToken sets the NextToken field's value.
9964func (s *ListPartnerEventSourceAccountsOutput) SetNextToken(v string) *ListPartnerEventSourceAccountsOutput {
9965	s.NextToken = &v
9966	return s
9967}
9968
9969// SetPartnerEventSourceAccounts sets the PartnerEventSourceAccounts field's value.
9970func (s *ListPartnerEventSourceAccountsOutput) SetPartnerEventSourceAccounts(v []*PartnerEventSourceAccount) *ListPartnerEventSourceAccountsOutput {
9971	s.PartnerEventSourceAccounts = v
9972	return s
9973}
9974
9975type ListPartnerEventSourcesInput struct {
9976	_ struct{} `type:"structure"`
9977
9978	// pecifying this limits the number of results returned by this operation. The
9979	// operation also returns a NextToken which you can use in a subsequent operation
9980	// to retrieve the next set of results.
9981	Limit *int64 `min:"1" type:"integer"`
9982
9983	// If you specify this, the results are limited to only those partner event
9984	// sources that start with the string you specify.
9985	//
9986	// NamePrefix is a required field
9987	NamePrefix *string `min:"1" type:"string" required:"true"`
9988
9989	// The token returned by a previous call to this operation. Specifying this
9990	// retrieves the next set of results.
9991	NextToken *string `min:"1" type:"string"`
9992}
9993
9994// String returns the string representation
9995func (s ListPartnerEventSourcesInput) String() string {
9996	return awsutil.Prettify(s)
9997}
9998
9999// GoString returns the string representation
10000func (s ListPartnerEventSourcesInput) GoString() string {
10001	return s.String()
10002}
10003
10004// Validate inspects the fields of the type to determine if they are valid.
10005func (s *ListPartnerEventSourcesInput) Validate() error {
10006	invalidParams := request.ErrInvalidParams{Context: "ListPartnerEventSourcesInput"}
10007	if s.Limit != nil && *s.Limit < 1 {
10008		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10009	}
10010	if s.NamePrefix == nil {
10011		invalidParams.Add(request.NewErrParamRequired("NamePrefix"))
10012	}
10013	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10014		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10015	}
10016	if s.NextToken != nil && len(*s.NextToken) < 1 {
10017		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10018	}
10019
10020	if invalidParams.Len() > 0 {
10021		return invalidParams
10022	}
10023	return nil
10024}
10025
10026// SetLimit sets the Limit field's value.
10027func (s *ListPartnerEventSourcesInput) SetLimit(v int64) *ListPartnerEventSourcesInput {
10028	s.Limit = &v
10029	return s
10030}
10031
10032// SetNamePrefix sets the NamePrefix field's value.
10033func (s *ListPartnerEventSourcesInput) SetNamePrefix(v string) *ListPartnerEventSourcesInput {
10034	s.NamePrefix = &v
10035	return s
10036}
10037
10038// SetNextToken sets the NextToken field's value.
10039func (s *ListPartnerEventSourcesInput) SetNextToken(v string) *ListPartnerEventSourcesInput {
10040	s.NextToken = &v
10041	return s
10042}
10043
10044type ListPartnerEventSourcesOutput struct {
10045	_ struct{} `type:"structure"`
10046
10047	// A token you can use in a subsequent operation to retrieve the next set of
10048	// results.
10049	NextToken *string `min:"1" type:"string"`
10050
10051	// The list of partner event sources returned by the operation.
10052	PartnerEventSources []*PartnerEventSource `type:"list"`
10053}
10054
10055// String returns the string representation
10056func (s ListPartnerEventSourcesOutput) String() string {
10057	return awsutil.Prettify(s)
10058}
10059
10060// GoString returns the string representation
10061func (s ListPartnerEventSourcesOutput) GoString() string {
10062	return s.String()
10063}
10064
10065// SetNextToken sets the NextToken field's value.
10066func (s *ListPartnerEventSourcesOutput) SetNextToken(v string) *ListPartnerEventSourcesOutput {
10067	s.NextToken = &v
10068	return s
10069}
10070
10071// SetPartnerEventSources sets the PartnerEventSources field's value.
10072func (s *ListPartnerEventSourcesOutput) SetPartnerEventSources(v []*PartnerEventSource) *ListPartnerEventSourcesOutput {
10073	s.PartnerEventSources = v
10074	return s
10075}
10076
10077type ListReplaysInput struct {
10078	_ struct{} `type:"structure"`
10079
10080	// The ARN of the event source associated with the replay.
10081	EventSourceArn *string `min:"1" type:"string"`
10082
10083	// The maximum number of replays to retrieve.
10084	Limit *int64 `min:"1" type:"integer"`
10085
10086	// A name prefix to filter the replays returned. Only replays with name that
10087	// match the prefix are returned.
10088	NamePrefix *string `min:"1" type:"string"`
10089
10090	// The token returned by a previous call to retrieve the next set of results.
10091	NextToken *string `min:"1" type:"string"`
10092
10093	// The state of the replay.
10094	State *string `type:"string" enum:"ReplayState"`
10095}
10096
10097// String returns the string representation
10098func (s ListReplaysInput) String() string {
10099	return awsutil.Prettify(s)
10100}
10101
10102// GoString returns the string representation
10103func (s ListReplaysInput) GoString() string {
10104	return s.String()
10105}
10106
10107// Validate inspects the fields of the type to determine if they are valid.
10108func (s *ListReplaysInput) Validate() error {
10109	invalidParams := request.ErrInvalidParams{Context: "ListReplaysInput"}
10110	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
10111		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
10112	}
10113	if s.Limit != nil && *s.Limit < 1 {
10114		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10115	}
10116	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10117		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10118	}
10119	if s.NextToken != nil && len(*s.NextToken) < 1 {
10120		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10121	}
10122
10123	if invalidParams.Len() > 0 {
10124		return invalidParams
10125	}
10126	return nil
10127}
10128
10129// SetEventSourceArn sets the EventSourceArn field's value.
10130func (s *ListReplaysInput) SetEventSourceArn(v string) *ListReplaysInput {
10131	s.EventSourceArn = &v
10132	return s
10133}
10134
10135// SetLimit sets the Limit field's value.
10136func (s *ListReplaysInput) SetLimit(v int64) *ListReplaysInput {
10137	s.Limit = &v
10138	return s
10139}
10140
10141// SetNamePrefix sets the NamePrefix field's value.
10142func (s *ListReplaysInput) SetNamePrefix(v string) *ListReplaysInput {
10143	s.NamePrefix = &v
10144	return s
10145}
10146
10147// SetNextToken sets the NextToken field's value.
10148func (s *ListReplaysInput) SetNextToken(v string) *ListReplaysInput {
10149	s.NextToken = &v
10150	return s
10151}
10152
10153// SetState sets the State field's value.
10154func (s *ListReplaysInput) SetState(v string) *ListReplaysInput {
10155	s.State = &v
10156	return s
10157}
10158
10159type ListReplaysOutput struct {
10160	_ struct{} `type:"structure"`
10161
10162	// The token returned by a previous call to retrieve the next set of results.
10163	NextToken *string `min:"1" type:"string"`
10164
10165	// An array of Replay objects that contain information about the replay.
10166	Replays []*Replay `type:"list"`
10167}
10168
10169// String returns the string representation
10170func (s ListReplaysOutput) String() string {
10171	return awsutil.Prettify(s)
10172}
10173
10174// GoString returns the string representation
10175func (s ListReplaysOutput) GoString() string {
10176	return s.String()
10177}
10178
10179// SetNextToken sets the NextToken field's value.
10180func (s *ListReplaysOutput) SetNextToken(v string) *ListReplaysOutput {
10181	s.NextToken = &v
10182	return s
10183}
10184
10185// SetReplays sets the Replays field's value.
10186func (s *ListReplaysOutput) SetReplays(v []*Replay) *ListReplaysOutput {
10187	s.Replays = v
10188	return s
10189}
10190
10191type ListRuleNamesByTargetInput struct {
10192	_ struct{} `type:"structure"`
10193
10194	// The name or ARN of the event bus to list rules for. If you omit this, the
10195	// default event bus is used.
10196	EventBusName *string `min:"1" type:"string"`
10197
10198	// The maximum number of results to return.
10199	Limit *int64 `min:"1" type:"integer"`
10200
10201	// The token returned by a previous call to retrieve the next set of results.
10202	NextToken *string `min:"1" type:"string"`
10203
10204	// The Amazon Resource Name (ARN) of the target resource.
10205	//
10206	// TargetArn is a required field
10207	TargetArn *string `min:"1" type:"string" required:"true"`
10208}
10209
10210// String returns the string representation
10211func (s ListRuleNamesByTargetInput) String() string {
10212	return awsutil.Prettify(s)
10213}
10214
10215// GoString returns the string representation
10216func (s ListRuleNamesByTargetInput) GoString() string {
10217	return s.String()
10218}
10219
10220// Validate inspects the fields of the type to determine if they are valid.
10221func (s *ListRuleNamesByTargetInput) Validate() error {
10222	invalidParams := request.ErrInvalidParams{Context: "ListRuleNamesByTargetInput"}
10223	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
10224		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
10225	}
10226	if s.Limit != nil && *s.Limit < 1 {
10227		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10228	}
10229	if s.NextToken != nil && len(*s.NextToken) < 1 {
10230		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10231	}
10232	if s.TargetArn == nil {
10233		invalidParams.Add(request.NewErrParamRequired("TargetArn"))
10234	}
10235	if s.TargetArn != nil && len(*s.TargetArn) < 1 {
10236		invalidParams.Add(request.NewErrParamMinLen("TargetArn", 1))
10237	}
10238
10239	if invalidParams.Len() > 0 {
10240		return invalidParams
10241	}
10242	return nil
10243}
10244
10245// SetEventBusName sets the EventBusName field's value.
10246func (s *ListRuleNamesByTargetInput) SetEventBusName(v string) *ListRuleNamesByTargetInput {
10247	s.EventBusName = &v
10248	return s
10249}
10250
10251// SetLimit sets the Limit field's value.
10252func (s *ListRuleNamesByTargetInput) SetLimit(v int64) *ListRuleNamesByTargetInput {
10253	s.Limit = &v
10254	return s
10255}
10256
10257// SetNextToken sets the NextToken field's value.
10258func (s *ListRuleNamesByTargetInput) SetNextToken(v string) *ListRuleNamesByTargetInput {
10259	s.NextToken = &v
10260	return s
10261}
10262
10263// SetTargetArn sets the TargetArn field's value.
10264func (s *ListRuleNamesByTargetInput) SetTargetArn(v string) *ListRuleNamesByTargetInput {
10265	s.TargetArn = &v
10266	return s
10267}
10268
10269type ListRuleNamesByTargetOutput struct {
10270	_ struct{} `type:"structure"`
10271
10272	// Indicates whether there are additional results to retrieve. If there are
10273	// no more results, the value is null.
10274	NextToken *string `min:"1" type:"string"`
10275
10276	// The names of the rules that can invoke the given target.
10277	RuleNames []*string `type:"list"`
10278}
10279
10280// String returns the string representation
10281func (s ListRuleNamesByTargetOutput) String() string {
10282	return awsutil.Prettify(s)
10283}
10284
10285// GoString returns the string representation
10286func (s ListRuleNamesByTargetOutput) GoString() string {
10287	return s.String()
10288}
10289
10290// SetNextToken sets the NextToken field's value.
10291func (s *ListRuleNamesByTargetOutput) SetNextToken(v string) *ListRuleNamesByTargetOutput {
10292	s.NextToken = &v
10293	return s
10294}
10295
10296// SetRuleNames sets the RuleNames field's value.
10297func (s *ListRuleNamesByTargetOutput) SetRuleNames(v []*string) *ListRuleNamesByTargetOutput {
10298	s.RuleNames = v
10299	return s
10300}
10301
10302type ListRulesInput struct {
10303	_ struct{} `type:"structure"`
10304
10305	// The name or ARN of the event bus to list the rules for. If you omit this,
10306	// the default event bus is used.
10307	EventBusName *string `min:"1" type:"string"`
10308
10309	// The maximum number of results to return.
10310	Limit *int64 `min:"1" type:"integer"`
10311
10312	// The prefix matching the rule name.
10313	NamePrefix *string `min:"1" type:"string"`
10314
10315	// The token returned by a previous call to retrieve the next set of results.
10316	NextToken *string `min:"1" type:"string"`
10317}
10318
10319// String returns the string representation
10320func (s ListRulesInput) String() string {
10321	return awsutil.Prettify(s)
10322}
10323
10324// GoString returns the string representation
10325func (s ListRulesInput) GoString() string {
10326	return s.String()
10327}
10328
10329// Validate inspects the fields of the type to determine if they are valid.
10330func (s *ListRulesInput) Validate() error {
10331	invalidParams := request.ErrInvalidParams{Context: "ListRulesInput"}
10332	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
10333		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
10334	}
10335	if s.Limit != nil && *s.Limit < 1 {
10336		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10337	}
10338	if s.NamePrefix != nil && len(*s.NamePrefix) < 1 {
10339		invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1))
10340	}
10341	if s.NextToken != nil && len(*s.NextToken) < 1 {
10342		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10343	}
10344
10345	if invalidParams.Len() > 0 {
10346		return invalidParams
10347	}
10348	return nil
10349}
10350
10351// SetEventBusName sets the EventBusName field's value.
10352func (s *ListRulesInput) SetEventBusName(v string) *ListRulesInput {
10353	s.EventBusName = &v
10354	return s
10355}
10356
10357// SetLimit sets the Limit field's value.
10358func (s *ListRulesInput) SetLimit(v int64) *ListRulesInput {
10359	s.Limit = &v
10360	return s
10361}
10362
10363// SetNamePrefix sets the NamePrefix field's value.
10364func (s *ListRulesInput) SetNamePrefix(v string) *ListRulesInput {
10365	s.NamePrefix = &v
10366	return s
10367}
10368
10369// SetNextToken sets the NextToken field's value.
10370func (s *ListRulesInput) SetNextToken(v string) *ListRulesInput {
10371	s.NextToken = &v
10372	return s
10373}
10374
10375type ListRulesOutput struct {
10376	_ struct{} `type:"structure"`
10377
10378	// Indicates whether there are additional results to retrieve. If there are
10379	// no more results, the value is null.
10380	NextToken *string `min:"1" type:"string"`
10381
10382	// The rules that match the specified criteria.
10383	Rules []*Rule `type:"list"`
10384}
10385
10386// String returns the string representation
10387func (s ListRulesOutput) String() string {
10388	return awsutil.Prettify(s)
10389}
10390
10391// GoString returns the string representation
10392func (s ListRulesOutput) GoString() string {
10393	return s.String()
10394}
10395
10396// SetNextToken sets the NextToken field's value.
10397func (s *ListRulesOutput) SetNextToken(v string) *ListRulesOutput {
10398	s.NextToken = &v
10399	return s
10400}
10401
10402// SetRules sets the Rules field's value.
10403func (s *ListRulesOutput) SetRules(v []*Rule) *ListRulesOutput {
10404	s.Rules = v
10405	return s
10406}
10407
10408type ListTagsForResourceInput struct {
10409	_ struct{} `type:"structure"`
10410
10411	// The ARN of the EventBridge resource for which you want to view tags.
10412	//
10413	// ResourceARN is a required field
10414	ResourceARN *string `min:"1" type:"string" required:"true"`
10415}
10416
10417// String returns the string representation
10418func (s ListTagsForResourceInput) String() string {
10419	return awsutil.Prettify(s)
10420}
10421
10422// GoString returns the string representation
10423func (s ListTagsForResourceInput) GoString() string {
10424	return s.String()
10425}
10426
10427// Validate inspects the fields of the type to determine if they are valid.
10428func (s *ListTagsForResourceInput) Validate() error {
10429	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
10430	if s.ResourceARN == nil {
10431		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
10432	}
10433	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
10434		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
10435	}
10436
10437	if invalidParams.Len() > 0 {
10438		return invalidParams
10439	}
10440	return nil
10441}
10442
10443// SetResourceARN sets the ResourceARN field's value.
10444func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput {
10445	s.ResourceARN = &v
10446	return s
10447}
10448
10449type ListTagsForResourceOutput struct {
10450	_ struct{} `type:"structure"`
10451
10452	// The list of tag keys and values associated with the resource you specified
10453	Tags []*Tag `type:"list"`
10454}
10455
10456// String returns the string representation
10457func (s ListTagsForResourceOutput) String() string {
10458	return awsutil.Prettify(s)
10459}
10460
10461// GoString returns the string representation
10462func (s ListTagsForResourceOutput) GoString() string {
10463	return s.String()
10464}
10465
10466// SetTags sets the Tags field's value.
10467func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
10468	s.Tags = v
10469	return s
10470}
10471
10472type ListTargetsByRuleInput struct {
10473	_ struct{} `type:"structure"`
10474
10475	// The name or ARN of the event bus associated with the rule. If you omit this,
10476	// the default event bus is used.
10477	EventBusName *string `min:"1" type:"string"`
10478
10479	// The maximum number of results to return.
10480	Limit *int64 `min:"1" type:"integer"`
10481
10482	// The token returned by a previous call to retrieve the next set of results.
10483	NextToken *string `min:"1" type:"string"`
10484
10485	// The name of the rule.
10486	//
10487	// Rule is a required field
10488	Rule *string `min:"1" type:"string" required:"true"`
10489}
10490
10491// String returns the string representation
10492func (s ListTargetsByRuleInput) String() string {
10493	return awsutil.Prettify(s)
10494}
10495
10496// GoString returns the string representation
10497func (s ListTargetsByRuleInput) GoString() string {
10498	return s.String()
10499}
10500
10501// Validate inspects the fields of the type to determine if they are valid.
10502func (s *ListTargetsByRuleInput) Validate() error {
10503	invalidParams := request.ErrInvalidParams{Context: "ListTargetsByRuleInput"}
10504	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
10505		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
10506	}
10507	if s.Limit != nil && *s.Limit < 1 {
10508		invalidParams.Add(request.NewErrParamMinValue("Limit", 1))
10509	}
10510	if s.NextToken != nil && len(*s.NextToken) < 1 {
10511		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10512	}
10513	if s.Rule == nil {
10514		invalidParams.Add(request.NewErrParamRequired("Rule"))
10515	}
10516	if s.Rule != nil && len(*s.Rule) < 1 {
10517		invalidParams.Add(request.NewErrParamMinLen("Rule", 1))
10518	}
10519
10520	if invalidParams.Len() > 0 {
10521		return invalidParams
10522	}
10523	return nil
10524}
10525
10526// SetEventBusName sets the EventBusName field's value.
10527func (s *ListTargetsByRuleInput) SetEventBusName(v string) *ListTargetsByRuleInput {
10528	s.EventBusName = &v
10529	return s
10530}
10531
10532// SetLimit sets the Limit field's value.
10533func (s *ListTargetsByRuleInput) SetLimit(v int64) *ListTargetsByRuleInput {
10534	s.Limit = &v
10535	return s
10536}
10537
10538// SetNextToken sets the NextToken field's value.
10539func (s *ListTargetsByRuleInput) SetNextToken(v string) *ListTargetsByRuleInput {
10540	s.NextToken = &v
10541	return s
10542}
10543
10544// SetRule sets the Rule field's value.
10545func (s *ListTargetsByRuleInput) SetRule(v string) *ListTargetsByRuleInput {
10546	s.Rule = &v
10547	return s
10548}
10549
10550type ListTargetsByRuleOutput struct {
10551	_ struct{} `type:"structure"`
10552
10553	// Indicates whether there are additional results to retrieve. If there are
10554	// no more results, the value is null.
10555	NextToken *string `min:"1" type:"string"`
10556
10557	// The targets assigned to the rule.
10558	Targets []*Target `min:"1" type:"list"`
10559}
10560
10561// String returns the string representation
10562func (s ListTargetsByRuleOutput) String() string {
10563	return awsutil.Prettify(s)
10564}
10565
10566// GoString returns the string representation
10567func (s ListTargetsByRuleOutput) GoString() string {
10568	return s.String()
10569}
10570
10571// SetNextToken sets the NextToken field's value.
10572func (s *ListTargetsByRuleOutput) SetNextToken(v string) *ListTargetsByRuleOutput {
10573	s.NextToken = &v
10574	return s
10575}
10576
10577// SetTargets sets the Targets field's value.
10578func (s *ListTargetsByRuleOutput) SetTargets(v []*Target) *ListTargetsByRuleOutput {
10579	s.Targets = v
10580	return s
10581}
10582
10583// This rule was created by an AWS service on behalf of your account. It is
10584// managed by that service. If you see this error in response to DeleteRule
10585// or RemoveTargets, you can use the Force parameter in those calls to delete
10586// the rule or remove targets from the rule. You cannot modify these managed
10587// rules by using DisableRule, EnableRule, PutTargets, PutRule, TagResource,
10588// or UntagResource.
10589type ManagedRuleException struct {
10590	_            struct{}                  `type:"structure"`
10591	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10592
10593	Message_ *string `locationName:"message" type:"string"`
10594}
10595
10596// String returns the string representation
10597func (s ManagedRuleException) String() string {
10598	return awsutil.Prettify(s)
10599}
10600
10601// GoString returns the string representation
10602func (s ManagedRuleException) GoString() string {
10603	return s.String()
10604}
10605
10606func newErrorManagedRuleException(v protocol.ResponseMetadata) error {
10607	return &ManagedRuleException{
10608		RespMetadata: v,
10609	}
10610}
10611
10612// Code returns the exception type name.
10613func (s *ManagedRuleException) Code() string {
10614	return "ManagedRuleException"
10615}
10616
10617// Message returns the exception's message.
10618func (s *ManagedRuleException) Message() string {
10619	if s.Message_ != nil {
10620		return *s.Message_
10621	}
10622	return ""
10623}
10624
10625// OrigErr always returns nil, satisfies awserr.Error interface.
10626func (s *ManagedRuleException) OrigErr() error {
10627	return nil
10628}
10629
10630func (s *ManagedRuleException) Error() string {
10631	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10632}
10633
10634// Status code returns the HTTP status code for the request's response error.
10635func (s *ManagedRuleException) StatusCode() int {
10636	return s.RespMetadata.StatusCode
10637}
10638
10639// RequestID returns the service's response RequestID for request.
10640func (s *ManagedRuleException) RequestID() string {
10641	return s.RespMetadata.RequestID
10642}
10643
10644// This structure specifies the network configuration for an ECS task.
10645type NetworkConfiguration struct {
10646	_ struct{} `type:"structure"`
10647
10648	// Use this structure to specify the VPC subnets and security groups for the
10649	// task, and whether a public IP address is to be used. This structure is relevant
10650	// only for ECS tasks that use the awsvpc network mode.
10651	AwsvpcConfiguration *AwsVpcConfiguration `locationName:"awsvpcConfiguration" type:"structure"`
10652}
10653
10654// String returns the string representation
10655func (s NetworkConfiguration) String() string {
10656	return awsutil.Prettify(s)
10657}
10658
10659// GoString returns the string representation
10660func (s NetworkConfiguration) GoString() string {
10661	return s.String()
10662}
10663
10664// Validate inspects the fields of the type to determine if they are valid.
10665func (s *NetworkConfiguration) Validate() error {
10666	invalidParams := request.ErrInvalidParams{Context: "NetworkConfiguration"}
10667	if s.AwsvpcConfiguration != nil {
10668		if err := s.AwsvpcConfiguration.Validate(); err != nil {
10669			invalidParams.AddNested("AwsvpcConfiguration", err.(request.ErrInvalidParams))
10670		}
10671	}
10672
10673	if invalidParams.Len() > 0 {
10674		return invalidParams
10675	}
10676	return nil
10677}
10678
10679// SetAwsvpcConfiguration sets the AwsvpcConfiguration field's value.
10680func (s *NetworkConfiguration) SetAwsvpcConfiguration(v *AwsVpcConfiguration) *NetworkConfiguration {
10681	s.AwsvpcConfiguration = v
10682	return s
10683}
10684
10685// The operation you are attempting is not available in this region.
10686type OperationDisabledException struct {
10687	_            struct{}                  `type:"structure"`
10688	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10689
10690	Message_ *string `locationName:"message" type:"string"`
10691}
10692
10693// String returns the string representation
10694func (s OperationDisabledException) String() string {
10695	return awsutil.Prettify(s)
10696}
10697
10698// GoString returns the string representation
10699func (s OperationDisabledException) GoString() string {
10700	return s.String()
10701}
10702
10703func newErrorOperationDisabledException(v protocol.ResponseMetadata) error {
10704	return &OperationDisabledException{
10705		RespMetadata: v,
10706	}
10707}
10708
10709// Code returns the exception type name.
10710func (s *OperationDisabledException) Code() string {
10711	return "OperationDisabledException"
10712}
10713
10714// Message returns the exception's message.
10715func (s *OperationDisabledException) Message() string {
10716	if s.Message_ != nil {
10717		return *s.Message_
10718	}
10719	return ""
10720}
10721
10722// OrigErr always returns nil, satisfies awserr.Error interface.
10723func (s *OperationDisabledException) OrigErr() error {
10724	return nil
10725}
10726
10727func (s *OperationDisabledException) Error() string {
10728	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10729}
10730
10731// Status code returns the HTTP status code for the request's response error.
10732func (s *OperationDisabledException) StatusCode() int {
10733	return s.RespMetadata.StatusCode
10734}
10735
10736// RequestID returns the service's response RequestID for request.
10737func (s *OperationDisabledException) RequestID() string {
10738	return s.RespMetadata.RequestID
10739}
10740
10741// A partner event source is created by an SaaS partner. If a customer creates
10742// a partner event bus that matches this event source, that AWS account can
10743// receive events from the partner's applications or services.
10744type PartnerEventSource struct {
10745	_ struct{} `type:"structure"`
10746
10747	// The ARN of the partner event source.
10748	Arn *string `type:"string"`
10749
10750	// The name of the partner event source.
10751	Name *string `type:"string"`
10752}
10753
10754// String returns the string representation
10755func (s PartnerEventSource) String() string {
10756	return awsutil.Prettify(s)
10757}
10758
10759// GoString returns the string representation
10760func (s PartnerEventSource) GoString() string {
10761	return s.String()
10762}
10763
10764// SetArn sets the Arn field's value.
10765func (s *PartnerEventSource) SetArn(v string) *PartnerEventSource {
10766	s.Arn = &v
10767	return s
10768}
10769
10770// SetName sets the Name field's value.
10771func (s *PartnerEventSource) SetName(v string) *PartnerEventSource {
10772	s.Name = &v
10773	return s
10774}
10775
10776// The AWS account that a partner event source has been offered to.
10777type PartnerEventSourceAccount struct {
10778	_ struct{} `type:"structure"`
10779
10780	// The AWS account ID that the partner event source was offered to.
10781	Account *string `min:"12" type:"string"`
10782
10783	// The date and time the event source was created.
10784	CreationTime *time.Time `type:"timestamp"`
10785
10786	// The date and time that the event source will expire, if the AWS account doesn't
10787	// create a matching event bus for it.
10788	ExpirationTime *time.Time `type:"timestamp"`
10789
10790	// The state of the event source. If it is ACTIVE, you have already created
10791	// a matching event bus for this event source, and that event bus is active.
10792	// If it is PENDING, either you haven't yet created a matching event bus, or
10793	// that event bus is deactivated. If it is DELETED, you have created a matching
10794	// event bus, but the event source has since been deleted.
10795	State *string `type:"string" enum:"EventSourceState"`
10796}
10797
10798// String returns the string representation
10799func (s PartnerEventSourceAccount) String() string {
10800	return awsutil.Prettify(s)
10801}
10802
10803// GoString returns the string representation
10804func (s PartnerEventSourceAccount) GoString() string {
10805	return s.String()
10806}
10807
10808// SetAccount sets the Account field's value.
10809func (s *PartnerEventSourceAccount) SetAccount(v string) *PartnerEventSourceAccount {
10810	s.Account = &v
10811	return s
10812}
10813
10814// SetCreationTime sets the CreationTime field's value.
10815func (s *PartnerEventSourceAccount) SetCreationTime(v time.Time) *PartnerEventSourceAccount {
10816	s.CreationTime = &v
10817	return s
10818}
10819
10820// SetExpirationTime sets the ExpirationTime field's value.
10821func (s *PartnerEventSourceAccount) SetExpirationTime(v time.Time) *PartnerEventSourceAccount {
10822	s.ExpirationTime = &v
10823	return s
10824}
10825
10826// SetState sets the State field's value.
10827func (s *PartnerEventSourceAccount) SetState(v string) *PartnerEventSourceAccount {
10828	s.State = &v
10829	return s
10830}
10831
10832// The event bus policy is too long. For more information, see the limits.
10833type PolicyLengthExceededException struct {
10834	_            struct{}                  `type:"structure"`
10835	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10836
10837	Message_ *string `locationName:"message" type:"string"`
10838}
10839
10840// String returns the string representation
10841func (s PolicyLengthExceededException) String() string {
10842	return awsutil.Prettify(s)
10843}
10844
10845// GoString returns the string representation
10846func (s PolicyLengthExceededException) GoString() string {
10847	return s.String()
10848}
10849
10850func newErrorPolicyLengthExceededException(v protocol.ResponseMetadata) error {
10851	return &PolicyLengthExceededException{
10852		RespMetadata: v,
10853	}
10854}
10855
10856// Code returns the exception type name.
10857func (s *PolicyLengthExceededException) Code() string {
10858	return "PolicyLengthExceededException"
10859}
10860
10861// Message returns the exception's message.
10862func (s *PolicyLengthExceededException) Message() string {
10863	if s.Message_ != nil {
10864		return *s.Message_
10865	}
10866	return ""
10867}
10868
10869// OrigErr always returns nil, satisfies awserr.Error interface.
10870func (s *PolicyLengthExceededException) OrigErr() error {
10871	return nil
10872}
10873
10874func (s *PolicyLengthExceededException) Error() string {
10875	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10876}
10877
10878// Status code returns the HTTP status code for the request's response error.
10879func (s *PolicyLengthExceededException) StatusCode() int {
10880	return s.RespMetadata.StatusCode
10881}
10882
10883// RequestID returns the service's response RequestID for request.
10884func (s *PolicyLengthExceededException) RequestID() string {
10885	return s.RespMetadata.RequestID
10886}
10887
10888type PutEventsInput struct {
10889	_ struct{} `type:"structure"`
10890
10891	// The entry that defines an event in your system. You can specify several parameters
10892	// for the entry such as the source and type of the event, resources associated
10893	// with the event, and so on.
10894	//
10895	// Entries is a required field
10896	Entries []*PutEventsRequestEntry `min:"1" type:"list" required:"true"`
10897}
10898
10899// String returns the string representation
10900func (s PutEventsInput) String() string {
10901	return awsutil.Prettify(s)
10902}
10903
10904// GoString returns the string representation
10905func (s PutEventsInput) GoString() string {
10906	return s.String()
10907}
10908
10909// Validate inspects the fields of the type to determine if they are valid.
10910func (s *PutEventsInput) Validate() error {
10911	invalidParams := request.ErrInvalidParams{Context: "PutEventsInput"}
10912	if s.Entries == nil {
10913		invalidParams.Add(request.NewErrParamRequired("Entries"))
10914	}
10915	if s.Entries != nil && len(s.Entries) < 1 {
10916		invalidParams.Add(request.NewErrParamMinLen("Entries", 1))
10917	}
10918	if s.Entries != nil {
10919		for i, v := range s.Entries {
10920			if v == nil {
10921				continue
10922			}
10923			if err := v.Validate(); err != nil {
10924				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams))
10925			}
10926		}
10927	}
10928
10929	if invalidParams.Len() > 0 {
10930		return invalidParams
10931	}
10932	return nil
10933}
10934
10935// SetEntries sets the Entries field's value.
10936func (s *PutEventsInput) SetEntries(v []*PutEventsRequestEntry) *PutEventsInput {
10937	s.Entries = v
10938	return s
10939}
10940
10941type PutEventsOutput struct {
10942	_ struct{} `type:"structure"`
10943
10944	// The successfully and unsuccessfully ingested events results. If the ingestion
10945	// was successful, the entry has the event ID in it. Otherwise, you can use
10946	// the error code and error message to identify the problem with the entry.
10947	Entries []*PutEventsResultEntry `type:"list"`
10948
10949	// The number of failed entries.
10950	FailedEntryCount *int64 `type:"integer"`
10951}
10952
10953// String returns the string representation
10954func (s PutEventsOutput) String() string {
10955	return awsutil.Prettify(s)
10956}
10957
10958// GoString returns the string representation
10959func (s PutEventsOutput) GoString() string {
10960	return s.String()
10961}
10962
10963// SetEntries sets the Entries field's value.
10964func (s *PutEventsOutput) SetEntries(v []*PutEventsResultEntry) *PutEventsOutput {
10965	s.Entries = v
10966	return s
10967}
10968
10969// SetFailedEntryCount sets the FailedEntryCount field's value.
10970func (s *PutEventsOutput) SetFailedEntryCount(v int64) *PutEventsOutput {
10971	s.FailedEntryCount = &v
10972	return s
10973}
10974
10975// Represents an event to be submitted.
10976type PutEventsRequestEntry struct {
10977	_ struct{} `type:"structure"`
10978
10979	// A valid JSON string. There is no other schema imposed. The JSON string may
10980	// contain fields and nested subobjects.
10981	Detail *string `type:"string"`
10982
10983	// Free-form string used to decide what fields to expect in the event detail.
10984	DetailType *string `type:"string"`
10985
10986	// The name or ARN of the event bus to receive the event. Only the rules that
10987	// are associated with this event bus are used to match the event. If you omit
10988	// this, the default event bus is used.
10989	EventBusName *string `min:"1" type:"string"`
10990
10991	// AWS resources, identified by Amazon Resource Name (ARN), which the event
10992	// primarily concerns. Any number, including zero, may be present.
10993	Resources []*string `type:"list"`
10994
10995	// The source of the event.
10996	Source *string `type:"string"`
10997
10998	// The time stamp of the event, per RFC3339 (https://www.rfc-editor.org/rfc/rfc3339.txt).
10999	// If no time stamp is provided, the time stamp of the PutEvents call is used.
11000	Time *time.Time `type:"timestamp"`
11001
11002	// An AWS X-Ray trade header, which is an http header (X-Amzn-Trace-Id) that
11003	// contains the trace-id associated with the event.
11004	//
11005	// 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)
11006	// in the AWS X-Ray Developer Guide.
11007	TraceHeader *string `min:"1" type:"string"`
11008}
11009
11010// String returns the string representation
11011func (s PutEventsRequestEntry) String() string {
11012	return awsutil.Prettify(s)
11013}
11014
11015// GoString returns the string representation
11016func (s PutEventsRequestEntry) GoString() string {
11017	return s.String()
11018}
11019
11020// Validate inspects the fields of the type to determine if they are valid.
11021func (s *PutEventsRequestEntry) Validate() error {
11022	invalidParams := request.ErrInvalidParams{Context: "PutEventsRequestEntry"}
11023	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11024		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11025	}
11026	if s.TraceHeader != nil && len(*s.TraceHeader) < 1 {
11027		invalidParams.Add(request.NewErrParamMinLen("TraceHeader", 1))
11028	}
11029
11030	if invalidParams.Len() > 0 {
11031		return invalidParams
11032	}
11033	return nil
11034}
11035
11036// SetDetail sets the Detail field's value.
11037func (s *PutEventsRequestEntry) SetDetail(v string) *PutEventsRequestEntry {
11038	s.Detail = &v
11039	return s
11040}
11041
11042// SetDetailType sets the DetailType field's value.
11043func (s *PutEventsRequestEntry) SetDetailType(v string) *PutEventsRequestEntry {
11044	s.DetailType = &v
11045	return s
11046}
11047
11048// SetEventBusName sets the EventBusName field's value.
11049func (s *PutEventsRequestEntry) SetEventBusName(v string) *PutEventsRequestEntry {
11050	s.EventBusName = &v
11051	return s
11052}
11053
11054// SetResources sets the Resources field's value.
11055func (s *PutEventsRequestEntry) SetResources(v []*string) *PutEventsRequestEntry {
11056	s.Resources = v
11057	return s
11058}
11059
11060// SetSource sets the Source field's value.
11061func (s *PutEventsRequestEntry) SetSource(v string) *PutEventsRequestEntry {
11062	s.Source = &v
11063	return s
11064}
11065
11066// SetTime sets the Time field's value.
11067func (s *PutEventsRequestEntry) SetTime(v time.Time) *PutEventsRequestEntry {
11068	s.Time = &v
11069	return s
11070}
11071
11072// SetTraceHeader sets the TraceHeader field's value.
11073func (s *PutEventsRequestEntry) SetTraceHeader(v string) *PutEventsRequestEntry {
11074	s.TraceHeader = &v
11075	return s
11076}
11077
11078// Represents an event that failed to be submitted.
11079type PutEventsResultEntry struct {
11080	_ struct{} `type:"structure"`
11081
11082	// The error code that indicates why the event submission failed.
11083	ErrorCode *string `type:"string"`
11084
11085	// The error message that explains why the event submission failed.
11086	ErrorMessage *string `type:"string"`
11087
11088	// The ID of the event.
11089	EventId *string `type:"string"`
11090}
11091
11092// String returns the string representation
11093func (s PutEventsResultEntry) String() string {
11094	return awsutil.Prettify(s)
11095}
11096
11097// GoString returns the string representation
11098func (s PutEventsResultEntry) GoString() string {
11099	return s.String()
11100}
11101
11102// SetErrorCode sets the ErrorCode field's value.
11103func (s *PutEventsResultEntry) SetErrorCode(v string) *PutEventsResultEntry {
11104	s.ErrorCode = &v
11105	return s
11106}
11107
11108// SetErrorMessage sets the ErrorMessage field's value.
11109func (s *PutEventsResultEntry) SetErrorMessage(v string) *PutEventsResultEntry {
11110	s.ErrorMessage = &v
11111	return s
11112}
11113
11114// SetEventId sets the EventId field's value.
11115func (s *PutEventsResultEntry) SetEventId(v string) *PutEventsResultEntry {
11116	s.EventId = &v
11117	return s
11118}
11119
11120type PutPartnerEventsInput struct {
11121	_ struct{} `type:"structure"`
11122
11123	// The list of events to write to the event bus.
11124	//
11125	// Entries is a required field
11126	Entries []*PutPartnerEventsRequestEntry `min:"1" type:"list" required:"true"`
11127}
11128
11129// String returns the string representation
11130func (s PutPartnerEventsInput) String() string {
11131	return awsutil.Prettify(s)
11132}
11133
11134// GoString returns the string representation
11135func (s PutPartnerEventsInput) GoString() string {
11136	return s.String()
11137}
11138
11139// Validate inspects the fields of the type to determine if they are valid.
11140func (s *PutPartnerEventsInput) Validate() error {
11141	invalidParams := request.ErrInvalidParams{Context: "PutPartnerEventsInput"}
11142	if s.Entries == nil {
11143		invalidParams.Add(request.NewErrParamRequired("Entries"))
11144	}
11145	if s.Entries != nil && len(s.Entries) < 1 {
11146		invalidParams.Add(request.NewErrParamMinLen("Entries", 1))
11147	}
11148	if s.Entries != nil {
11149		for i, v := range s.Entries {
11150			if v == nil {
11151				continue
11152			}
11153			if err := v.Validate(); err != nil {
11154				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams))
11155			}
11156		}
11157	}
11158
11159	if invalidParams.Len() > 0 {
11160		return invalidParams
11161	}
11162	return nil
11163}
11164
11165// SetEntries sets the Entries field's value.
11166func (s *PutPartnerEventsInput) SetEntries(v []*PutPartnerEventsRequestEntry) *PutPartnerEventsInput {
11167	s.Entries = v
11168	return s
11169}
11170
11171type PutPartnerEventsOutput struct {
11172	_ struct{} `type:"structure"`
11173
11174	// The list of events from this operation that were successfully written to
11175	// the partner event bus.
11176	Entries []*PutPartnerEventsResultEntry `type:"list"`
11177
11178	// The number of events from this operation that could not be written to the
11179	// partner event bus.
11180	FailedEntryCount *int64 `type:"integer"`
11181}
11182
11183// String returns the string representation
11184func (s PutPartnerEventsOutput) String() string {
11185	return awsutil.Prettify(s)
11186}
11187
11188// GoString returns the string representation
11189func (s PutPartnerEventsOutput) GoString() string {
11190	return s.String()
11191}
11192
11193// SetEntries sets the Entries field's value.
11194func (s *PutPartnerEventsOutput) SetEntries(v []*PutPartnerEventsResultEntry) *PutPartnerEventsOutput {
11195	s.Entries = v
11196	return s
11197}
11198
11199// SetFailedEntryCount sets the FailedEntryCount field's value.
11200func (s *PutPartnerEventsOutput) SetFailedEntryCount(v int64) *PutPartnerEventsOutput {
11201	s.FailedEntryCount = &v
11202	return s
11203}
11204
11205// The details about an event generated by an SaaS partner.
11206type PutPartnerEventsRequestEntry struct {
11207	_ struct{} `type:"structure"`
11208
11209	// A valid JSON string. There is no other schema imposed. The JSON string may
11210	// contain fields and nested subobjects.
11211	Detail *string `type:"string"`
11212
11213	// A free-form string used to decide what fields to expect in the event detail.
11214	DetailType *string `type:"string"`
11215
11216	// AWS resources, identified by Amazon Resource Name (ARN), which the event
11217	// primarily concerns. Any number, including zero, may be present.
11218	Resources []*string `type:"list"`
11219
11220	// The event source that is generating the evntry.
11221	Source *string `min:"1" type:"string"`
11222
11223	// The date and time of the event.
11224	Time *time.Time `type:"timestamp"`
11225}
11226
11227// String returns the string representation
11228func (s PutPartnerEventsRequestEntry) String() string {
11229	return awsutil.Prettify(s)
11230}
11231
11232// GoString returns the string representation
11233func (s PutPartnerEventsRequestEntry) GoString() string {
11234	return s.String()
11235}
11236
11237// Validate inspects the fields of the type to determine if they are valid.
11238func (s *PutPartnerEventsRequestEntry) Validate() error {
11239	invalidParams := request.ErrInvalidParams{Context: "PutPartnerEventsRequestEntry"}
11240	if s.Source != nil && len(*s.Source) < 1 {
11241		invalidParams.Add(request.NewErrParamMinLen("Source", 1))
11242	}
11243
11244	if invalidParams.Len() > 0 {
11245		return invalidParams
11246	}
11247	return nil
11248}
11249
11250// SetDetail sets the Detail field's value.
11251func (s *PutPartnerEventsRequestEntry) SetDetail(v string) *PutPartnerEventsRequestEntry {
11252	s.Detail = &v
11253	return s
11254}
11255
11256// SetDetailType sets the DetailType field's value.
11257func (s *PutPartnerEventsRequestEntry) SetDetailType(v string) *PutPartnerEventsRequestEntry {
11258	s.DetailType = &v
11259	return s
11260}
11261
11262// SetResources sets the Resources field's value.
11263func (s *PutPartnerEventsRequestEntry) SetResources(v []*string) *PutPartnerEventsRequestEntry {
11264	s.Resources = v
11265	return s
11266}
11267
11268// SetSource sets the Source field's value.
11269func (s *PutPartnerEventsRequestEntry) SetSource(v string) *PutPartnerEventsRequestEntry {
11270	s.Source = &v
11271	return s
11272}
11273
11274// SetTime sets the Time field's value.
11275func (s *PutPartnerEventsRequestEntry) SetTime(v time.Time) *PutPartnerEventsRequestEntry {
11276	s.Time = &v
11277	return s
11278}
11279
11280// Represents an event that a partner tried to generate, but failed.
11281type PutPartnerEventsResultEntry struct {
11282	_ struct{} `type:"structure"`
11283
11284	// The error code that indicates why the event submission failed.
11285	ErrorCode *string `type:"string"`
11286
11287	// The error message that explains why the event submission failed.
11288	ErrorMessage *string `type:"string"`
11289
11290	// The ID of the event.
11291	EventId *string `type:"string"`
11292}
11293
11294// String returns the string representation
11295func (s PutPartnerEventsResultEntry) String() string {
11296	return awsutil.Prettify(s)
11297}
11298
11299// GoString returns the string representation
11300func (s PutPartnerEventsResultEntry) GoString() string {
11301	return s.String()
11302}
11303
11304// SetErrorCode sets the ErrorCode field's value.
11305func (s *PutPartnerEventsResultEntry) SetErrorCode(v string) *PutPartnerEventsResultEntry {
11306	s.ErrorCode = &v
11307	return s
11308}
11309
11310// SetErrorMessage sets the ErrorMessage field's value.
11311func (s *PutPartnerEventsResultEntry) SetErrorMessage(v string) *PutPartnerEventsResultEntry {
11312	s.ErrorMessage = &v
11313	return s
11314}
11315
11316// SetEventId sets the EventId field's value.
11317func (s *PutPartnerEventsResultEntry) SetEventId(v string) *PutPartnerEventsResultEntry {
11318	s.EventId = &v
11319	return s
11320}
11321
11322type PutPermissionInput struct {
11323	_ struct{} `type:"structure"`
11324
11325	// The action that you are enabling the other account to perform. Currently,
11326	// this must be events:PutEvents.
11327	Action *string `min:"1" type:"string"`
11328
11329	// This parameter enables you to limit the permission to accounts that fulfill
11330	// a certain condition, such as being a member of a certain AWS organization.
11331	// For more information about AWS Organizations, see What Is AWS Organizations
11332	// (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)
11333	// in the AWS Organizations User Guide.
11334	//
11335	// If you specify Condition with an AWS organization ID, and specify "*" as
11336	// the value for Principal, you grant permission to all the accounts in the
11337	// named organization.
11338	//
11339	// The Condition is a JSON string which must contain Type, Key, and Value fields.
11340	Condition *Condition `type:"structure"`
11341
11342	// The name of the event bus associated with the rule. If you omit this, the
11343	// default event bus is used.
11344	EventBusName *string `min:"1" type:"string"`
11345
11346	// A JSON string that describes the permission policy statement. You can include
11347	// a Policy parameter in the request instead of using the StatementId, Action,
11348	// Principal, or Condition parameters.
11349	Policy *string `type:"string"`
11350
11351	// The 12-digit AWS account ID that you are permitting to put events to your
11352	// default event bus. Specify "*" to permit any account to put events to your
11353	// default event bus.
11354	//
11355	// If you specify "*" without specifying Condition, avoid creating rules that
11356	// may match undesirable events. To create more secure rules, make sure that
11357	// the event pattern for each rule contains an account field with a specific
11358	// account ID from which to receive events. Rules with an account field do not
11359	// match any events sent from other accounts.
11360	Principal *string `min:"1" type:"string"`
11361
11362	// An identifier string for the external account that you are granting permissions
11363	// to. If you later want to revoke the permission for this external account,
11364	// specify this StatementId when you run RemovePermission.
11365	StatementId *string `min:"1" type:"string"`
11366}
11367
11368// String returns the string representation
11369func (s PutPermissionInput) String() string {
11370	return awsutil.Prettify(s)
11371}
11372
11373// GoString returns the string representation
11374func (s PutPermissionInput) GoString() string {
11375	return s.String()
11376}
11377
11378// Validate inspects the fields of the type to determine if they are valid.
11379func (s *PutPermissionInput) Validate() error {
11380	invalidParams := request.ErrInvalidParams{Context: "PutPermissionInput"}
11381	if s.Action != nil && len(*s.Action) < 1 {
11382		invalidParams.Add(request.NewErrParamMinLen("Action", 1))
11383	}
11384	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11385		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11386	}
11387	if s.Principal != nil && len(*s.Principal) < 1 {
11388		invalidParams.Add(request.NewErrParamMinLen("Principal", 1))
11389	}
11390	if s.StatementId != nil && len(*s.StatementId) < 1 {
11391		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
11392	}
11393	if s.Condition != nil {
11394		if err := s.Condition.Validate(); err != nil {
11395			invalidParams.AddNested("Condition", err.(request.ErrInvalidParams))
11396		}
11397	}
11398
11399	if invalidParams.Len() > 0 {
11400		return invalidParams
11401	}
11402	return nil
11403}
11404
11405// SetAction sets the Action field's value.
11406func (s *PutPermissionInput) SetAction(v string) *PutPermissionInput {
11407	s.Action = &v
11408	return s
11409}
11410
11411// SetCondition sets the Condition field's value.
11412func (s *PutPermissionInput) SetCondition(v *Condition) *PutPermissionInput {
11413	s.Condition = v
11414	return s
11415}
11416
11417// SetEventBusName sets the EventBusName field's value.
11418func (s *PutPermissionInput) SetEventBusName(v string) *PutPermissionInput {
11419	s.EventBusName = &v
11420	return s
11421}
11422
11423// SetPolicy sets the Policy field's value.
11424func (s *PutPermissionInput) SetPolicy(v string) *PutPermissionInput {
11425	s.Policy = &v
11426	return s
11427}
11428
11429// SetPrincipal sets the Principal field's value.
11430func (s *PutPermissionInput) SetPrincipal(v string) *PutPermissionInput {
11431	s.Principal = &v
11432	return s
11433}
11434
11435// SetStatementId sets the StatementId field's value.
11436func (s *PutPermissionInput) SetStatementId(v string) *PutPermissionInput {
11437	s.StatementId = &v
11438	return s
11439}
11440
11441type PutPermissionOutput struct {
11442	_ struct{} `type:"structure"`
11443}
11444
11445// String returns the string representation
11446func (s PutPermissionOutput) String() string {
11447	return awsutil.Prettify(s)
11448}
11449
11450// GoString returns the string representation
11451func (s PutPermissionOutput) GoString() string {
11452	return s.String()
11453}
11454
11455type PutRuleInput struct {
11456	_ struct{} `type:"structure"`
11457
11458	// A description of the rule.
11459	Description *string `type:"string"`
11460
11461	// The name or ARN of the event bus to associate with this rule. If you omit
11462	// this, the default event bus is used.
11463	EventBusName *string `min:"1" type:"string"`
11464
11465	// The event pattern. For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
11466	// in the Amazon EventBridge User Guide.
11467	EventPattern *string `type:"string"`
11468
11469	// The name of the rule that you are creating or updating.
11470	//
11471	// Name is a required field
11472	Name *string `min:"1" type:"string" required:"true"`
11473
11474	// The Amazon Resource Name (ARN) of the IAM role associated with the rule.
11475	RoleArn *string `min:"1" type:"string"`
11476
11477	// The scheduling expression. For example, "cron(0 20 * * ? *)" or "rate(5 minutes)".
11478	ScheduleExpression *string `type:"string"`
11479
11480	// Indicates whether the rule is enabled or disabled.
11481	State *string `type:"string" enum:"RuleState"`
11482
11483	// The list of key-value pairs to associate with the rule.
11484	Tags []*Tag `type:"list"`
11485}
11486
11487// String returns the string representation
11488func (s PutRuleInput) String() string {
11489	return awsutil.Prettify(s)
11490}
11491
11492// GoString returns the string representation
11493func (s PutRuleInput) GoString() string {
11494	return s.String()
11495}
11496
11497// Validate inspects the fields of the type to determine if they are valid.
11498func (s *PutRuleInput) Validate() error {
11499	invalidParams := request.ErrInvalidParams{Context: "PutRuleInput"}
11500	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11501		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11502	}
11503	if s.Name == nil {
11504		invalidParams.Add(request.NewErrParamRequired("Name"))
11505	}
11506	if s.Name != nil && len(*s.Name) < 1 {
11507		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
11508	}
11509	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
11510		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
11511	}
11512	if s.Tags != nil {
11513		for i, v := range s.Tags {
11514			if v == nil {
11515				continue
11516			}
11517			if err := v.Validate(); err != nil {
11518				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
11519			}
11520		}
11521	}
11522
11523	if invalidParams.Len() > 0 {
11524		return invalidParams
11525	}
11526	return nil
11527}
11528
11529// SetDescription sets the Description field's value.
11530func (s *PutRuleInput) SetDescription(v string) *PutRuleInput {
11531	s.Description = &v
11532	return s
11533}
11534
11535// SetEventBusName sets the EventBusName field's value.
11536func (s *PutRuleInput) SetEventBusName(v string) *PutRuleInput {
11537	s.EventBusName = &v
11538	return s
11539}
11540
11541// SetEventPattern sets the EventPattern field's value.
11542func (s *PutRuleInput) SetEventPattern(v string) *PutRuleInput {
11543	s.EventPattern = &v
11544	return s
11545}
11546
11547// SetName sets the Name field's value.
11548func (s *PutRuleInput) SetName(v string) *PutRuleInput {
11549	s.Name = &v
11550	return s
11551}
11552
11553// SetRoleArn sets the RoleArn field's value.
11554func (s *PutRuleInput) SetRoleArn(v string) *PutRuleInput {
11555	s.RoleArn = &v
11556	return s
11557}
11558
11559// SetScheduleExpression sets the ScheduleExpression field's value.
11560func (s *PutRuleInput) SetScheduleExpression(v string) *PutRuleInput {
11561	s.ScheduleExpression = &v
11562	return s
11563}
11564
11565// SetState sets the State field's value.
11566func (s *PutRuleInput) SetState(v string) *PutRuleInput {
11567	s.State = &v
11568	return s
11569}
11570
11571// SetTags sets the Tags field's value.
11572func (s *PutRuleInput) SetTags(v []*Tag) *PutRuleInput {
11573	s.Tags = v
11574	return s
11575}
11576
11577type PutRuleOutput struct {
11578	_ struct{} `type:"structure"`
11579
11580	// The Amazon Resource Name (ARN) of the rule.
11581	RuleArn *string `min:"1" type:"string"`
11582}
11583
11584// String returns the string representation
11585func (s PutRuleOutput) String() string {
11586	return awsutil.Prettify(s)
11587}
11588
11589// GoString returns the string representation
11590func (s PutRuleOutput) GoString() string {
11591	return s.String()
11592}
11593
11594// SetRuleArn sets the RuleArn field's value.
11595func (s *PutRuleOutput) SetRuleArn(v string) *PutRuleOutput {
11596	s.RuleArn = &v
11597	return s
11598}
11599
11600type PutTargetsInput struct {
11601	_ struct{} `type:"structure"`
11602
11603	// The name or ARN of the event bus associated with the rule. If you omit this,
11604	// the default event bus is used.
11605	EventBusName *string `min:"1" type:"string"`
11606
11607	// The name of the rule.
11608	//
11609	// Rule is a required field
11610	Rule *string `min:"1" type:"string" required:"true"`
11611
11612	// The targets to update or add to the rule.
11613	//
11614	// Targets is a required field
11615	Targets []*Target `min:"1" type:"list" required:"true"`
11616}
11617
11618// String returns the string representation
11619func (s PutTargetsInput) String() string {
11620	return awsutil.Prettify(s)
11621}
11622
11623// GoString returns the string representation
11624func (s PutTargetsInput) GoString() string {
11625	return s.String()
11626}
11627
11628// Validate inspects the fields of the type to determine if they are valid.
11629func (s *PutTargetsInput) Validate() error {
11630	invalidParams := request.ErrInvalidParams{Context: "PutTargetsInput"}
11631	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11632		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11633	}
11634	if s.Rule == nil {
11635		invalidParams.Add(request.NewErrParamRequired("Rule"))
11636	}
11637	if s.Rule != nil && len(*s.Rule) < 1 {
11638		invalidParams.Add(request.NewErrParamMinLen("Rule", 1))
11639	}
11640	if s.Targets == nil {
11641		invalidParams.Add(request.NewErrParamRequired("Targets"))
11642	}
11643	if s.Targets != nil && len(s.Targets) < 1 {
11644		invalidParams.Add(request.NewErrParamMinLen("Targets", 1))
11645	}
11646	if s.Targets != nil {
11647		for i, v := range s.Targets {
11648			if v == nil {
11649				continue
11650			}
11651			if err := v.Validate(); err != nil {
11652				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
11653			}
11654		}
11655	}
11656
11657	if invalidParams.Len() > 0 {
11658		return invalidParams
11659	}
11660	return nil
11661}
11662
11663// SetEventBusName sets the EventBusName field's value.
11664func (s *PutTargetsInput) SetEventBusName(v string) *PutTargetsInput {
11665	s.EventBusName = &v
11666	return s
11667}
11668
11669// SetRule sets the Rule field's value.
11670func (s *PutTargetsInput) SetRule(v string) *PutTargetsInput {
11671	s.Rule = &v
11672	return s
11673}
11674
11675// SetTargets sets the Targets field's value.
11676func (s *PutTargetsInput) SetTargets(v []*Target) *PutTargetsInput {
11677	s.Targets = v
11678	return s
11679}
11680
11681type PutTargetsOutput struct {
11682	_ struct{} `type:"structure"`
11683
11684	// The failed target entries.
11685	FailedEntries []*PutTargetsResultEntry `type:"list"`
11686
11687	// The number of failed entries.
11688	FailedEntryCount *int64 `type:"integer"`
11689}
11690
11691// String returns the string representation
11692func (s PutTargetsOutput) String() string {
11693	return awsutil.Prettify(s)
11694}
11695
11696// GoString returns the string representation
11697func (s PutTargetsOutput) GoString() string {
11698	return s.String()
11699}
11700
11701// SetFailedEntries sets the FailedEntries field's value.
11702func (s *PutTargetsOutput) SetFailedEntries(v []*PutTargetsResultEntry) *PutTargetsOutput {
11703	s.FailedEntries = v
11704	return s
11705}
11706
11707// SetFailedEntryCount sets the FailedEntryCount field's value.
11708func (s *PutTargetsOutput) SetFailedEntryCount(v int64) *PutTargetsOutput {
11709	s.FailedEntryCount = &v
11710	return s
11711}
11712
11713// Represents a target that failed to be added to a rule.
11714type PutTargetsResultEntry struct {
11715	_ struct{} `type:"structure"`
11716
11717	// The error code that indicates why the target addition failed. If the value
11718	// is ConcurrentModificationException, too many requests were made at the same
11719	// time.
11720	ErrorCode *string `type:"string"`
11721
11722	// The error message that explains why the target addition failed.
11723	ErrorMessage *string `type:"string"`
11724
11725	// The ID of the target.
11726	TargetId *string `min:"1" type:"string"`
11727}
11728
11729// String returns the string representation
11730func (s PutTargetsResultEntry) String() string {
11731	return awsutil.Prettify(s)
11732}
11733
11734// GoString returns the string representation
11735func (s PutTargetsResultEntry) GoString() string {
11736	return s.String()
11737}
11738
11739// SetErrorCode sets the ErrorCode field's value.
11740func (s *PutTargetsResultEntry) SetErrorCode(v string) *PutTargetsResultEntry {
11741	s.ErrorCode = &v
11742	return s
11743}
11744
11745// SetErrorMessage sets the ErrorMessage field's value.
11746func (s *PutTargetsResultEntry) SetErrorMessage(v string) *PutTargetsResultEntry {
11747	s.ErrorMessage = &v
11748	return s
11749}
11750
11751// SetTargetId sets the TargetId field's value.
11752func (s *PutTargetsResultEntry) SetTargetId(v string) *PutTargetsResultEntry {
11753	s.TargetId = &v
11754	return s
11755}
11756
11757// These are custom parameters to be used when the target is a Redshift cluster
11758// to invoke the Redshift Data API ExecuteStatement based on EventBridge events.
11759type RedshiftDataParameters struct {
11760	_ struct{} `type:"structure"`
11761
11762	// The name of the database. Required when authenticating using temporary credentials.
11763	//
11764	// Database is a required field
11765	Database *string `min:"1" type:"string" required:"true"`
11766
11767	// The database user name. Required when authenticating using temporary credentials.
11768	DbUser *string `min:"1" type:"string"`
11769
11770	// The name or ARN of the secret that enables access to the database. Required
11771	// when authenticating using AWS Secrets Manager.
11772	SecretManagerArn *string `min:"1" type:"string"`
11773
11774	// The SQL statement text to run.
11775	//
11776	// Sql is a required field
11777	Sql *string `min:"1" type:"string" required:"true"`
11778
11779	// The name of the SQL statement. You can name the SQL statement when you create
11780	// it to identify the query.
11781	StatementName *string `min:"1" type:"string"`
11782
11783	// Indicates whether to send an event back to EventBridge after the SQL statement
11784	// runs.
11785	WithEvent *bool `type:"boolean"`
11786}
11787
11788// String returns the string representation
11789func (s RedshiftDataParameters) String() string {
11790	return awsutil.Prettify(s)
11791}
11792
11793// GoString returns the string representation
11794func (s RedshiftDataParameters) GoString() string {
11795	return s.String()
11796}
11797
11798// Validate inspects the fields of the type to determine if they are valid.
11799func (s *RedshiftDataParameters) Validate() error {
11800	invalidParams := request.ErrInvalidParams{Context: "RedshiftDataParameters"}
11801	if s.Database == nil {
11802		invalidParams.Add(request.NewErrParamRequired("Database"))
11803	}
11804	if s.Database != nil && len(*s.Database) < 1 {
11805		invalidParams.Add(request.NewErrParamMinLen("Database", 1))
11806	}
11807	if s.DbUser != nil && len(*s.DbUser) < 1 {
11808		invalidParams.Add(request.NewErrParamMinLen("DbUser", 1))
11809	}
11810	if s.SecretManagerArn != nil && len(*s.SecretManagerArn) < 1 {
11811		invalidParams.Add(request.NewErrParamMinLen("SecretManagerArn", 1))
11812	}
11813	if s.Sql == nil {
11814		invalidParams.Add(request.NewErrParamRequired("Sql"))
11815	}
11816	if s.Sql != nil && len(*s.Sql) < 1 {
11817		invalidParams.Add(request.NewErrParamMinLen("Sql", 1))
11818	}
11819	if s.StatementName != nil && len(*s.StatementName) < 1 {
11820		invalidParams.Add(request.NewErrParamMinLen("StatementName", 1))
11821	}
11822
11823	if invalidParams.Len() > 0 {
11824		return invalidParams
11825	}
11826	return nil
11827}
11828
11829// SetDatabase sets the Database field's value.
11830func (s *RedshiftDataParameters) SetDatabase(v string) *RedshiftDataParameters {
11831	s.Database = &v
11832	return s
11833}
11834
11835// SetDbUser sets the DbUser field's value.
11836func (s *RedshiftDataParameters) SetDbUser(v string) *RedshiftDataParameters {
11837	s.DbUser = &v
11838	return s
11839}
11840
11841// SetSecretManagerArn sets the SecretManagerArn field's value.
11842func (s *RedshiftDataParameters) SetSecretManagerArn(v string) *RedshiftDataParameters {
11843	s.SecretManagerArn = &v
11844	return s
11845}
11846
11847// SetSql sets the Sql field's value.
11848func (s *RedshiftDataParameters) SetSql(v string) *RedshiftDataParameters {
11849	s.Sql = &v
11850	return s
11851}
11852
11853// SetStatementName sets the StatementName field's value.
11854func (s *RedshiftDataParameters) SetStatementName(v string) *RedshiftDataParameters {
11855	s.StatementName = &v
11856	return s
11857}
11858
11859// SetWithEvent sets the WithEvent field's value.
11860func (s *RedshiftDataParameters) SetWithEvent(v bool) *RedshiftDataParameters {
11861	s.WithEvent = &v
11862	return s
11863}
11864
11865type RemovePermissionInput struct {
11866	_ struct{} `type:"structure"`
11867
11868	// The name of the event bus to revoke permissions for. If you omit this, the
11869	// default event bus is used.
11870	EventBusName *string `min:"1" type:"string"`
11871
11872	// Specifies whether to remove all permissions.
11873	RemoveAllPermissions *bool `type:"boolean"`
11874
11875	// The statement ID corresponding to the account that is no longer allowed to
11876	// put events to the default event bus.
11877	StatementId *string `min:"1" type:"string"`
11878}
11879
11880// String returns the string representation
11881func (s RemovePermissionInput) String() string {
11882	return awsutil.Prettify(s)
11883}
11884
11885// GoString returns the string representation
11886func (s RemovePermissionInput) GoString() string {
11887	return s.String()
11888}
11889
11890// Validate inspects the fields of the type to determine if they are valid.
11891func (s *RemovePermissionInput) Validate() error {
11892	invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"}
11893	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11894		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11895	}
11896	if s.StatementId != nil && len(*s.StatementId) < 1 {
11897		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
11898	}
11899
11900	if invalidParams.Len() > 0 {
11901		return invalidParams
11902	}
11903	return nil
11904}
11905
11906// SetEventBusName sets the EventBusName field's value.
11907func (s *RemovePermissionInput) SetEventBusName(v string) *RemovePermissionInput {
11908	s.EventBusName = &v
11909	return s
11910}
11911
11912// SetRemoveAllPermissions sets the RemoveAllPermissions field's value.
11913func (s *RemovePermissionInput) SetRemoveAllPermissions(v bool) *RemovePermissionInput {
11914	s.RemoveAllPermissions = &v
11915	return s
11916}
11917
11918// SetStatementId sets the StatementId field's value.
11919func (s *RemovePermissionInput) SetStatementId(v string) *RemovePermissionInput {
11920	s.StatementId = &v
11921	return s
11922}
11923
11924type RemovePermissionOutput struct {
11925	_ struct{} `type:"structure"`
11926}
11927
11928// String returns the string representation
11929func (s RemovePermissionOutput) String() string {
11930	return awsutil.Prettify(s)
11931}
11932
11933// GoString returns the string representation
11934func (s RemovePermissionOutput) GoString() string {
11935	return s.String()
11936}
11937
11938type RemoveTargetsInput struct {
11939	_ struct{} `type:"structure"`
11940
11941	// The name or ARN of the event bus associated with the rule. If you omit this,
11942	// the default event bus is used.
11943	EventBusName *string `min:"1" type:"string"`
11944
11945	// If this is a managed rule, created by an AWS service on your behalf, you
11946	// must specify Force as True to remove targets. This parameter is ignored for
11947	// rules that are not managed rules. You can check whether a rule is a managed
11948	// rule by using DescribeRule or ListRules and checking the ManagedBy field
11949	// of the response.
11950	Force *bool `type:"boolean"`
11951
11952	// The IDs of the targets to remove from the rule.
11953	//
11954	// Ids is a required field
11955	Ids []*string `min:"1" type:"list" required:"true"`
11956
11957	// The name of the rule.
11958	//
11959	// Rule is a required field
11960	Rule *string `min:"1" type:"string" required:"true"`
11961}
11962
11963// String returns the string representation
11964func (s RemoveTargetsInput) String() string {
11965	return awsutil.Prettify(s)
11966}
11967
11968// GoString returns the string representation
11969func (s RemoveTargetsInput) GoString() string {
11970	return s.String()
11971}
11972
11973// Validate inspects the fields of the type to determine if they are valid.
11974func (s *RemoveTargetsInput) Validate() error {
11975	invalidParams := request.ErrInvalidParams{Context: "RemoveTargetsInput"}
11976	if s.EventBusName != nil && len(*s.EventBusName) < 1 {
11977		invalidParams.Add(request.NewErrParamMinLen("EventBusName", 1))
11978	}
11979	if s.Ids == nil {
11980		invalidParams.Add(request.NewErrParamRequired("Ids"))
11981	}
11982	if s.Ids != nil && len(s.Ids) < 1 {
11983		invalidParams.Add(request.NewErrParamMinLen("Ids", 1))
11984	}
11985	if s.Rule == nil {
11986		invalidParams.Add(request.NewErrParamRequired("Rule"))
11987	}
11988	if s.Rule != nil && len(*s.Rule) < 1 {
11989		invalidParams.Add(request.NewErrParamMinLen("Rule", 1))
11990	}
11991
11992	if invalidParams.Len() > 0 {
11993		return invalidParams
11994	}
11995	return nil
11996}
11997
11998// SetEventBusName sets the EventBusName field's value.
11999func (s *RemoveTargetsInput) SetEventBusName(v string) *RemoveTargetsInput {
12000	s.EventBusName = &v
12001	return s
12002}
12003
12004// SetForce sets the Force field's value.
12005func (s *RemoveTargetsInput) SetForce(v bool) *RemoveTargetsInput {
12006	s.Force = &v
12007	return s
12008}
12009
12010// SetIds sets the Ids field's value.
12011func (s *RemoveTargetsInput) SetIds(v []*string) *RemoveTargetsInput {
12012	s.Ids = v
12013	return s
12014}
12015
12016// SetRule sets the Rule field's value.
12017func (s *RemoveTargetsInput) SetRule(v string) *RemoveTargetsInput {
12018	s.Rule = &v
12019	return s
12020}
12021
12022type RemoveTargetsOutput struct {
12023	_ struct{} `type:"structure"`
12024
12025	// The failed target entries.
12026	FailedEntries []*RemoveTargetsResultEntry `type:"list"`
12027
12028	// The number of failed entries.
12029	FailedEntryCount *int64 `type:"integer"`
12030}
12031
12032// String returns the string representation
12033func (s RemoveTargetsOutput) String() string {
12034	return awsutil.Prettify(s)
12035}
12036
12037// GoString returns the string representation
12038func (s RemoveTargetsOutput) GoString() string {
12039	return s.String()
12040}
12041
12042// SetFailedEntries sets the FailedEntries field's value.
12043func (s *RemoveTargetsOutput) SetFailedEntries(v []*RemoveTargetsResultEntry) *RemoveTargetsOutput {
12044	s.FailedEntries = v
12045	return s
12046}
12047
12048// SetFailedEntryCount sets the FailedEntryCount field's value.
12049func (s *RemoveTargetsOutput) SetFailedEntryCount(v int64) *RemoveTargetsOutput {
12050	s.FailedEntryCount = &v
12051	return s
12052}
12053
12054// Represents a target that failed to be removed from a rule.
12055type RemoveTargetsResultEntry struct {
12056	_ struct{} `type:"structure"`
12057
12058	// The error code that indicates why the target removal failed. If the value
12059	// is ConcurrentModificationException, too many requests were made at the same
12060	// time.
12061	ErrorCode *string `type:"string"`
12062
12063	// The error message that explains why the target removal failed.
12064	ErrorMessage *string `type:"string"`
12065
12066	// The ID of the target.
12067	TargetId *string `min:"1" type:"string"`
12068}
12069
12070// String returns the string representation
12071func (s RemoveTargetsResultEntry) String() string {
12072	return awsutil.Prettify(s)
12073}
12074
12075// GoString returns the string representation
12076func (s RemoveTargetsResultEntry) GoString() string {
12077	return s.String()
12078}
12079
12080// SetErrorCode sets the ErrorCode field's value.
12081func (s *RemoveTargetsResultEntry) SetErrorCode(v string) *RemoveTargetsResultEntry {
12082	s.ErrorCode = &v
12083	return s
12084}
12085
12086// SetErrorMessage sets the ErrorMessage field's value.
12087func (s *RemoveTargetsResultEntry) SetErrorMessage(v string) *RemoveTargetsResultEntry {
12088	s.ErrorMessage = &v
12089	return s
12090}
12091
12092// SetTargetId sets the TargetId field's value.
12093func (s *RemoveTargetsResultEntry) SetTargetId(v string) *RemoveTargetsResultEntry {
12094	s.TargetId = &v
12095	return s
12096}
12097
12098// A Replay object that contains details about a replay.
12099type Replay struct {
12100	_ struct{} `type:"structure"`
12101
12102	// A time stamp for the time to start replaying events. Any event with a creation
12103	// time prior to the EventEndTime specified is replayed.
12104	EventEndTime *time.Time `type:"timestamp"`
12105
12106	// A time stamp for the time that the last event was replayed.
12107	EventLastReplayedTime *time.Time `type:"timestamp"`
12108
12109	// The ARN of the archive to replay event from.
12110	EventSourceArn *string `min:"1" type:"string"`
12111
12112	// A time stamp for the time to start replaying events. This is determined by
12113	// the time in the event as described in Time (https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEventsRequestEntry.html#eventbridge-Type-PutEventsRequestEntry-Time).
12114	EventStartTime *time.Time `type:"timestamp"`
12115
12116	// A time stamp for the time that the replay completed.
12117	ReplayEndTime *time.Time `type:"timestamp"`
12118
12119	// The name of the replay.
12120	ReplayName *string `min:"1" type:"string"`
12121
12122	// A time stamp for the time that the replay started.
12123	ReplayStartTime *time.Time `type:"timestamp"`
12124
12125	// The current state of the replay.
12126	State *string `type:"string" enum:"ReplayState"`
12127
12128	// A description of why the replay is in the current state.
12129	StateReason *string `type:"string"`
12130}
12131
12132// String returns the string representation
12133func (s Replay) String() string {
12134	return awsutil.Prettify(s)
12135}
12136
12137// GoString returns the string representation
12138func (s Replay) GoString() string {
12139	return s.String()
12140}
12141
12142// SetEventEndTime sets the EventEndTime field's value.
12143func (s *Replay) SetEventEndTime(v time.Time) *Replay {
12144	s.EventEndTime = &v
12145	return s
12146}
12147
12148// SetEventLastReplayedTime sets the EventLastReplayedTime field's value.
12149func (s *Replay) SetEventLastReplayedTime(v time.Time) *Replay {
12150	s.EventLastReplayedTime = &v
12151	return s
12152}
12153
12154// SetEventSourceArn sets the EventSourceArn field's value.
12155func (s *Replay) SetEventSourceArn(v string) *Replay {
12156	s.EventSourceArn = &v
12157	return s
12158}
12159
12160// SetEventStartTime sets the EventStartTime field's value.
12161func (s *Replay) SetEventStartTime(v time.Time) *Replay {
12162	s.EventStartTime = &v
12163	return s
12164}
12165
12166// SetReplayEndTime sets the ReplayEndTime field's value.
12167func (s *Replay) SetReplayEndTime(v time.Time) *Replay {
12168	s.ReplayEndTime = &v
12169	return s
12170}
12171
12172// SetReplayName sets the ReplayName field's value.
12173func (s *Replay) SetReplayName(v string) *Replay {
12174	s.ReplayName = &v
12175	return s
12176}
12177
12178// SetReplayStartTime sets the ReplayStartTime field's value.
12179func (s *Replay) SetReplayStartTime(v time.Time) *Replay {
12180	s.ReplayStartTime = &v
12181	return s
12182}
12183
12184// SetState sets the State field's value.
12185func (s *Replay) SetState(v string) *Replay {
12186	s.State = &v
12187	return s
12188}
12189
12190// SetStateReason sets the StateReason field's value.
12191func (s *Replay) SetStateReason(v string) *Replay {
12192	s.StateReason = &v
12193	return s
12194}
12195
12196// A ReplayDestination object that contains details about a replay.
12197type ReplayDestination struct {
12198	_ struct{} `type:"structure"`
12199
12200	// The ARN of the event bus to replay event to. You can replay events only to
12201	// the event bus specified to create the archive.
12202	//
12203	// Arn is a required field
12204	Arn *string `min:"1" type:"string" required:"true"`
12205
12206	// A list of ARNs for rules to replay events to.
12207	FilterArns []*string `type:"list"`
12208}
12209
12210// String returns the string representation
12211func (s ReplayDestination) String() string {
12212	return awsutil.Prettify(s)
12213}
12214
12215// GoString returns the string representation
12216func (s ReplayDestination) GoString() string {
12217	return s.String()
12218}
12219
12220// Validate inspects the fields of the type to determine if they are valid.
12221func (s *ReplayDestination) Validate() error {
12222	invalidParams := request.ErrInvalidParams{Context: "ReplayDestination"}
12223	if s.Arn == nil {
12224		invalidParams.Add(request.NewErrParamRequired("Arn"))
12225	}
12226	if s.Arn != nil && len(*s.Arn) < 1 {
12227		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
12228	}
12229
12230	if invalidParams.Len() > 0 {
12231		return invalidParams
12232	}
12233	return nil
12234}
12235
12236// SetArn sets the Arn field's value.
12237func (s *ReplayDestination) SetArn(v string) *ReplayDestination {
12238	s.Arn = &v
12239	return s
12240}
12241
12242// SetFilterArns sets the FilterArns field's value.
12243func (s *ReplayDestination) SetFilterArns(v []*string) *ReplayDestination {
12244	s.FilterArns = v
12245	return s
12246}
12247
12248// The resource you are trying to create already exists.
12249type ResourceAlreadyExistsException struct {
12250	_            struct{}                  `type:"structure"`
12251	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12252
12253	Message_ *string `locationName:"message" type:"string"`
12254}
12255
12256// String returns the string representation
12257func (s ResourceAlreadyExistsException) String() string {
12258	return awsutil.Prettify(s)
12259}
12260
12261// GoString returns the string representation
12262func (s ResourceAlreadyExistsException) GoString() string {
12263	return s.String()
12264}
12265
12266func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error {
12267	return &ResourceAlreadyExistsException{
12268		RespMetadata: v,
12269	}
12270}
12271
12272// Code returns the exception type name.
12273func (s *ResourceAlreadyExistsException) Code() string {
12274	return "ResourceAlreadyExistsException"
12275}
12276
12277// Message returns the exception's message.
12278func (s *ResourceAlreadyExistsException) Message() string {
12279	if s.Message_ != nil {
12280		return *s.Message_
12281	}
12282	return ""
12283}
12284
12285// OrigErr always returns nil, satisfies awserr.Error interface.
12286func (s *ResourceAlreadyExistsException) OrigErr() error {
12287	return nil
12288}
12289
12290func (s *ResourceAlreadyExistsException) Error() string {
12291	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12292}
12293
12294// Status code returns the HTTP status code for the request's response error.
12295func (s *ResourceAlreadyExistsException) StatusCode() int {
12296	return s.RespMetadata.StatusCode
12297}
12298
12299// RequestID returns the service's response RequestID for request.
12300func (s *ResourceAlreadyExistsException) RequestID() string {
12301	return s.RespMetadata.RequestID
12302}
12303
12304// An entity that you specified does not exist.
12305type ResourceNotFoundException struct {
12306	_            struct{}                  `type:"structure"`
12307	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12308
12309	Message_ *string `locationName:"message" type:"string"`
12310}
12311
12312// String returns the string representation
12313func (s ResourceNotFoundException) String() string {
12314	return awsutil.Prettify(s)
12315}
12316
12317// GoString returns the string representation
12318func (s ResourceNotFoundException) GoString() string {
12319	return s.String()
12320}
12321
12322func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
12323	return &ResourceNotFoundException{
12324		RespMetadata: v,
12325	}
12326}
12327
12328// Code returns the exception type name.
12329func (s *ResourceNotFoundException) Code() string {
12330	return "ResourceNotFoundException"
12331}
12332
12333// Message returns the exception's message.
12334func (s *ResourceNotFoundException) Message() string {
12335	if s.Message_ != nil {
12336		return *s.Message_
12337	}
12338	return ""
12339}
12340
12341// OrigErr always returns nil, satisfies awserr.Error interface.
12342func (s *ResourceNotFoundException) OrigErr() error {
12343	return nil
12344}
12345
12346func (s *ResourceNotFoundException) Error() string {
12347	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12348}
12349
12350// Status code returns the HTTP status code for the request's response error.
12351func (s *ResourceNotFoundException) StatusCode() int {
12352	return s.RespMetadata.StatusCode
12353}
12354
12355// RequestID returns the service's response RequestID for request.
12356func (s *ResourceNotFoundException) RequestID() string {
12357	return s.RespMetadata.RequestID
12358}
12359
12360// A RetryPolicy object that includes information about the retry policy settings.
12361type RetryPolicy struct {
12362	_ struct{} `type:"structure"`
12363
12364	// The maximum amount of time, in seconds, to continue to make retry attempts.
12365	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
12366
12367	// The maximum number of retry attempts to make before the request fails. Retry
12368	// attempts continue until either the maximum number of attempts is made or
12369	// until the duration of the MaximumEventAgeInSeconds is met.
12370	MaximumRetryAttempts *int64 `type:"integer"`
12371}
12372
12373// String returns the string representation
12374func (s RetryPolicy) String() string {
12375	return awsutil.Prettify(s)
12376}
12377
12378// GoString returns the string representation
12379func (s RetryPolicy) GoString() string {
12380	return s.String()
12381}
12382
12383// Validate inspects the fields of the type to determine if they are valid.
12384func (s *RetryPolicy) Validate() error {
12385	invalidParams := request.ErrInvalidParams{Context: "RetryPolicy"}
12386	if s.MaximumEventAgeInSeconds != nil && *s.MaximumEventAgeInSeconds < 60 {
12387		invalidParams.Add(request.NewErrParamMinValue("MaximumEventAgeInSeconds", 60))
12388	}
12389
12390	if invalidParams.Len() > 0 {
12391		return invalidParams
12392	}
12393	return nil
12394}
12395
12396// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
12397func (s *RetryPolicy) SetMaximumEventAgeInSeconds(v int64) *RetryPolicy {
12398	s.MaximumEventAgeInSeconds = &v
12399	return s
12400}
12401
12402// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
12403func (s *RetryPolicy) SetMaximumRetryAttempts(v int64) *RetryPolicy {
12404	s.MaximumRetryAttempts = &v
12405	return s
12406}
12407
12408// Contains information about a rule in Amazon EventBridge.
12409type Rule struct {
12410	_ struct{} `type:"structure"`
12411
12412	// The Amazon Resource Name (ARN) of the rule.
12413	Arn *string `min:"1" type:"string"`
12414
12415	// The description of the rule.
12416	Description *string `type:"string"`
12417
12418	// The name or ARN of the event bus associated with the rule. If you omit this,
12419	// the default event bus is used.
12420	EventBusName *string `min:"1" type:"string"`
12421
12422	// The event pattern of the rule. For more information, see Events and Event
12423	// Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
12424	// in the Amazon EventBridge User Guide.
12425	EventPattern *string `type:"string"`
12426
12427	// If the rule was created on behalf of your account by an AWS service, this
12428	// field displays the principal name of the service that created the rule.
12429	ManagedBy *string `min:"1" type:"string"`
12430
12431	// The name of the rule.
12432	Name *string `min:"1" type:"string"`
12433
12434	// The Amazon Resource Name (ARN) of the role that is used for target invocation.
12435	RoleArn *string `min:"1" type:"string"`
12436
12437	// The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)".
12438	ScheduleExpression *string `type:"string"`
12439
12440	// The state of the rule.
12441	State *string `type:"string" enum:"RuleState"`
12442}
12443
12444// String returns the string representation
12445func (s Rule) String() string {
12446	return awsutil.Prettify(s)
12447}
12448
12449// GoString returns the string representation
12450func (s Rule) GoString() string {
12451	return s.String()
12452}
12453
12454// SetArn sets the Arn field's value.
12455func (s *Rule) SetArn(v string) *Rule {
12456	s.Arn = &v
12457	return s
12458}
12459
12460// SetDescription sets the Description field's value.
12461func (s *Rule) SetDescription(v string) *Rule {
12462	s.Description = &v
12463	return s
12464}
12465
12466// SetEventBusName sets the EventBusName field's value.
12467func (s *Rule) SetEventBusName(v string) *Rule {
12468	s.EventBusName = &v
12469	return s
12470}
12471
12472// SetEventPattern sets the EventPattern field's value.
12473func (s *Rule) SetEventPattern(v string) *Rule {
12474	s.EventPattern = &v
12475	return s
12476}
12477
12478// SetManagedBy sets the ManagedBy field's value.
12479func (s *Rule) SetManagedBy(v string) *Rule {
12480	s.ManagedBy = &v
12481	return s
12482}
12483
12484// SetName sets the Name field's value.
12485func (s *Rule) SetName(v string) *Rule {
12486	s.Name = &v
12487	return s
12488}
12489
12490// SetRoleArn sets the RoleArn field's value.
12491func (s *Rule) SetRoleArn(v string) *Rule {
12492	s.RoleArn = &v
12493	return s
12494}
12495
12496// SetScheduleExpression sets the ScheduleExpression field's value.
12497func (s *Rule) SetScheduleExpression(v string) *Rule {
12498	s.ScheduleExpression = &v
12499	return s
12500}
12501
12502// SetState sets the State field's value.
12503func (s *Rule) SetState(v string) *Rule {
12504	s.State = &v
12505	return s
12506}
12507
12508// This parameter contains the criteria (either InstanceIds or a tag) used to
12509// specify which EC2 instances are to be sent the command.
12510type RunCommandParameters struct {
12511	_ struct{} `type:"structure"`
12512
12513	// Currently, we support including only one RunCommandTarget block, which specifies
12514	// either an array of InstanceIds or a tag.
12515	//
12516	// RunCommandTargets is a required field
12517	RunCommandTargets []*RunCommandTarget `min:"1" type:"list" required:"true"`
12518}
12519
12520// String returns the string representation
12521func (s RunCommandParameters) String() string {
12522	return awsutil.Prettify(s)
12523}
12524
12525// GoString returns the string representation
12526func (s RunCommandParameters) GoString() string {
12527	return s.String()
12528}
12529
12530// Validate inspects the fields of the type to determine if they are valid.
12531func (s *RunCommandParameters) Validate() error {
12532	invalidParams := request.ErrInvalidParams{Context: "RunCommandParameters"}
12533	if s.RunCommandTargets == nil {
12534		invalidParams.Add(request.NewErrParamRequired("RunCommandTargets"))
12535	}
12536	if s.RunCommandTargets != nil && len(s.RunCommandTargets) < 1 {
12537		invalidParams.Add(request.NewErrParamMinLen("RunCommandTargets", 1))
12538	}
12539	if s.RunCommandTargets != nil {
12540		for i, v := range s.RunCommandTargets {
12541			if v == nil {
12542				continue
12543			}
12544			if err := v.Validate(); err != nil {
12545				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RunCommandTargets", i), err.(request.ErrInvalidParams))
12546			}
12547		}
12548	}
12549
12550	if invalidParams.Len() > 0 {
12551		return invalidParams
12552	}
12553	return nil
12554}
12555
12556// SetRunCommandTargets sets the RunCommandTargets field's value.
12557func (s *RunCommandParameters) SetRunCommandTargets(v []*RunCommandTarget) *RunCommandParameters {
12558	s.RunCommandTargets = v
12559	return s
12560}
12561
12562// Information about the EC2 instances that are to be sent the command, specified
12563// as key-value pairs. Each RunCommandTarget block can include only one key,
12564// but this key may specify multiple values.
12565type RunCommandTarget struct {
12566	_ struct{} `type:"structure"`
12567
12568	// Can be either tag: tag-key or InstanceIds.
12569	//
12570	// Key is a required field
12571	Key *string `min:"1" type:"string" required:"true"`
12572
12573	// If Key is tag: tag-key, Values is a list of tag values. If Key is InstanceIds,
12574	// Values is a list of Amazon EC2 instance IDs.
12575	//
12576	// Values is a required field
12577	Values []*string `min:"1" type:"list" required:"true"`
12578}
12579
12580// String returns the string representation
12581func (s RunCommandTarget) String() string {
12582	return awsutil.Prettify(s)
12583}
12584
12585// GoString returns the string representation
12586func (s RunCommandTarget) GoString() string {
12587	return s.String()
12588}
12589
12590// Validate inspects the fields of the type to determine if they are valid.
12591func (s *RunCommandTarget) Validate() error {
12592	invalidParams := request.ErrInvalidParams{Context: "RunCommandTarget"}
12593	if s.Key == nil {
12594		invalidParams.Add(request.NewErrParamRequired("Key"))
12595	}
12596	if s.Key != nil && len(*s.Key) < 1 {
12597		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
12598	}
12599	if s.Values == nil {
12600		invalidParams.Add(request.NewErrParamRequired("Values"))
12601	}
12602	if s.Values != nil && len(s.Values) < 1 {
12603		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
12604	}
12605
12606	if invalidParams.Len() > 0 {
12607		return invalidParams
12608	}
12609	return nil
12610}
12611
12612// SetKey sets the Key field's value.
12613func (s *RunCommandTarget) SetKey(v string) *RunCommandTarget {
12614	s.Key = &v
12615	return s
12616}
12617
12618// SetValues sets the Values field's value.
12619func (s *RunCommandTarget) SetValues(v []*string) *RunCommandTarget {
12620	s.Values = v
12621	return s
12622}
12623
12624// Name/Value pair of a parameter to start execution of a SageMaker Model Building
12625// Pipeline.
12626type SageMakerPipelineParameter struct {
12627	_ struct{} `type:"structure"`
12628
12629	// Name of parameter to start execution of a SageMaker Model Building Pipeline.
12630	//
12631	// Name is a required field
12632	Name *string `min:"1" type:"string" required:"true"`
12633
12634	// Value of parameter to start execution of a SageMaker Model Building Pipeline.
12635	//
12636	// Value is a required field
12637	Value *string `type:"string" required:"true"`
12638}
12639
12640// String returns the string representation
12641func (s SageMakerPipelineParameter) String() string {
12642	return awsutil.Prettify(s)
12643}
12644
12645// GoString returns the string representation
12646func (s SageMakerPipelineParameter) GoString() string {
12647	return s.String()
12648}
12649
12650// Validate inspects the fields of the type to determine if they are valid.
12651func (s *SageMakerPipelineParameter) Validate() error {
12652	invalidParams := request.ErrInvalidParams{Context: "SageMakerPipelineParameter"}
12653	if s.Name == nil {
12654		invalidParams.Add(request.NewErrParamRequired("Name"))
12655	}
12656	if s.Name != nil && len(*s.Name) < 1 {
12657		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12658	}
12659	if s.Value == nil {
12660		invalidParams.Add(request.NewErrParamRequired("Value"))
12661	}
12662
12663	if invalidParams.Len() > 0 {
12664		return invalidParams
12665	}
12666	return nil
12667}
12668
12669// SetName sets the Name field's value.
12670func (s *SageMakerPipelineParameter) SetName(v string) *SageMakerPipelineParameter {
12671	s.Name = &v
12672	return s
12673}
12674
12675// SetValue sets the Value field's value.
12676func (s *SageMakerPipelineParameter) SetValue(v string) *SageMakerPipelineParameter {
12677	s.Value = &v
12678	return s
12679}
12680
12681// These are custom parameters to use when the target is a SageMaker Model Building
12682// Pipeline that starts based on EventBridge events.
12683type SageMakerPipelineParameters struct {
12684	_ struct{} `type:"structure"`
12685
12686	// List of Parameter names and values for SageMaker Model Building Pipeline
12687	// execution.
12688	PipelineParameterList []*SageMakerPipelineParameter `type:"list"`
12689}
12690
12691// String returns the string representation
12692func (s SageMakerPipelineParameters) String() string {
12693	return awsutil.Prettify(s)
12694}
12695
12696// GoString returns the string representation
12697func (s SageMakerPipelineParameters) GoString() string {
12698	return s.String()
12699}
12700
12701// Validate inspects the fields of the type to determine if they are valid.
12702func (s *SageMakerPipelineParameters) Validate() error {
12703	invalidParams := request.ErrInvalidParams{Context: "SageMakerPipelineParameters"}
12704	if s.PipelineParameterList != nil {
12705		for i, v := range s.PipelineParameterList {
12706			if v == nil {
12707				continue
12708			}
12709			if err := v.Validate(); err != nil {
12710				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PipelineParameterList", i), err.(request.ErrInvalidParams))
12711			}
12712		}
12713	}
12714
12715	if invalidParams.Len() > 0 {
12716		return invalidParams
12717	}
12718	return nil
12719}
12720
12721// SetPipelineParameterList sets the PipelineParameterList field's value.
12722func (s *SageMakerPipelineParameters) SetPipelineParameterList(v []*SageMakerPipelineParameter) *SageMakerPipelineParameters {
12723	s.PipelineParameterList = v
12724	return s
12725}
12726
12727// This structure includes the custom parameter to be used when the target is
12728// an SQS FIFO queue.
12729type SqsParameters struct {
12730	_ struct{} `type:"structure"`
12731
12732	// The FIFO message group ID to use as the target.
12733	MessageGroupId *string `type:"string"`
12734}
12735
12736// String returns the string representation
12737func (s SqsParameters) String() string {
12738	return awsutil.Prettify(s)
12739}
12740
12741// GoString returns the string representation
12742func (s SqsParameters) GoString() string {
12743	return s.String()
12744}
12745
12746// SetMessageGroupId sets the MessageGroupId field's value.
12747func (s *SqsParameters) SetMessageGroupId(v string) *SqsParameters {
12748	s.MessageGroupId = &v
12749	return s
12750}
12751
12752type StartReplayInput struct {
12753	_ struct{} `type:"structure"`
12754
12755	// A description for the replay to start.
12756	Description *string `type:"string"`
12757
12758	// A ReplayDestination object that includes details about the destination for
12759	// the replay.
12760	//
12761	// Destination is a required field
12762	Destination *ReplayDestination `type:"structure" required:"true"`
12763
12764	// A time stamp for the time to stop replaying events. Only events that occurred
12765	// between the EventStartTime and EventEndTime are replayed.
12766	//
12767	// EventEndTime is a required field
12768	EventEndTime *time.Time `type:"timestamp" required:"true"`
12769
12770	// The ARN of the archive to replay events from.
12771	//
12772	// EventSourceArn is a required field
12773	EventSourceArn *string `min:"1" type:"string" required:"true"`
12774
12775	// A time stamp for the time to start replaying events. Only events that occurred
12776	// between the EventStartTime and EventEndTime are replayed.
12777	//
12778	// EventStartTime is a required field
12779	EventStartTime *time.Time `type:"timestamp" required:"true"`
12780
12781	// The name of the replay to start.
12782	//
12783	// ReplayName is a required field
12784	ReplayName *string `min:"1" type:"string" required:"true"`
12785}
12786
12787// String returns the string representation
12788func (s StartReplayInput) String() string {
12789	return awsutil.Prettify(s)
12790}
12791
12792// GoString returns the string representation
12793func (s StartReplayInput) GoString() string {
12794	return s.String()
12795}
12796
12797// Validate inspects the fields of the type to determine if they are valid.
12798func (s *StartReplayInput) Validate() error {
12799	invalidParams := request.ErrInvalidParams{Context: "StartReplayInput"}
12800	if s.Destination == nil {
12801		invalidParams.Add(request.NewErrParamRequired("Destination"))
12802	}
12803	if s.EventEndTime == nil {
12804		invalidParams.Add(request.NewErrParamRequired("EventEndTime"))
12805	}
12806	if s.EventSourceArn == nil {
12807		invalidParams.Add(request.NewErrParamRequired("EventSourceArn"))
12808	}
12809	if s.EventSourceArn != nil && len(*s.EventSourceArn) < 1 {
12810		invalidParams.Add(request.NewErrParamMinLen("EventSourceArn", 1))
12811	}
12812	if s.EventStartTime == nil {
12813		invalidParams.Add(request.NewErrParamRequired("EventStartTime"))
12814	}
12815	if s.ReplayName == nil {
12816		invalidParams.Add(request.NewErrParamRequired("ReplayName"))
12817	}
12818	if s.ReplayName != nil && len(*s.ReplayName) < 1 {
12819		invalidParams.Add(request.NewErrParamMinLen("ReplayName", 1))
12820	}
12821	if s.Destination != nil {
12822		if err := s.Destination.Validate(); err != nil {
12823			invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
12824		}
12825	}
12826
12827	if invalidParams.Len() > 0 {
12828		return invalidParams
12829	}
12830	return nil
12831}
12832
12833// SetDescription sets the Description field's value.
12834func (s *StartReplayInput) SetDescription(v string) *StartReplayInput {
12835	s.Description = &v
12836	return s
12837}
12838
12839// SetDestination sets the Destination field's value.
12840func (s *StartReplayInput) SetDestination(v *ReplayDestination) *StartReplayInput {
12841	s.Destination = v
12842	return s
12843}
12844
12845// SetEventEndTime sets the EventEndTime field's value.
12846func (s *StartReplayInput) SetEventEndTime(v time.Time) *StartReplayInput {
12847	s.EventEndTime = &v
12848	return s
12849}
12850
12851// SetEventSourceArn sets the EventSourceArn field's value.
12852func (s *StartReplayInput) SetEventSourceArn(v string) *StartReplayInput {
12853	s.EventSourceArn = &v
12854	return s
12855}
12856
12857// SetEventStartTime sets the EventStartTime field's value.
12858func (s *StartReplayInput) SetEventStartTime(v time.Time) *StartReplayInput {
12859	s.EventStartTime = &v
12860	return s
12861}
12862
12863// SetReplayName sets the ReplayName field's value.
12864func (s *StartReplayInput) SetReplayName(v string) *StartReplayInput {
12865	s.ReplayName = &v
12866	return s
12867}
12868
12869type StartReplayOutput struct {
12870	_ struct{} `type:"structure"`
12871
12872	// The ARN of the replay.
12873	ReplayArn *string `min:"1" type:"string"`
12874
12875	// The time at which the replay started.
12876	ReplayStartTime *time.Time `type:"timestamp"`
12877
12878	// The state of the replay.
12879	State *string `type:"string" enum:"ReplayState"`
12880
12881	// The reason that the replay is in the state.
12882	StateReason *string `type:"string"`
12883}
12884
12885// String returns the string representation
12886func (s StartReplayOutput) String() string {
12887	return awsutil.Prettify(s)
12888}
12889
12890// GoString returns the string representation
12891func (s StartReplayOutput) GoString() string {
12892	return s.String()
12893}
12894
12895// SetReplayArn sets the ReplayArn field's value.
12896func (s *StartReplayOutput) SetReplayArn(v string) *StartReplayOutput {
12897	s.ReplayArn = &v
12898	return s
12899}
12900
12901// SetReplayStartTime sets the ReplayStartTime field's value.
12902func (s *StartReplayOutput) SetReplayStartTime(v time.Time) *StartReplayOutput {
12903	s.ReplayStartTime = &v
12904	return s
12905}
12906
12907// SetState sets the State field's value.
12908func (s *StartReplayOutput) SetState(v string) *StartReplayOutput {
12909	s.State = &v
12910	return s
12911}
12912
12913// SetStateReason sets the StateReason field's value.
12914func (s *StartReplayOutput) SetStateReason(v string) *StartReplayOutput {
12915	s.StateReason = &v
12916	return s
12917}
12918
12919// A key-value pair associated with an AWS resource. In EventBridge, rules and
12920// event buses support tagging.
12921type Tag struct {
12922	_ struct{} `type:"structure"`
12923
12924	// A string you can use to assign a value. The combination of tag keys and values
12925	// can help you organize and categorize your resources.
12926	//
12927	// Key is a required field
12928	Key *string `min:"1" type:"string" required:"true"`
12929
12930	// The value for the specified tag key.
12931	//
12932	// Value is a required field
12933	Value *string `type:"string" required:"true"`
12934}
12935
12936// String returns the string representation
12937func (s Tag) String() string {
12938	return awsutil.Prettify(s)
12939}
12940
12941// GoString returns the string representation
12942func (s Tag) GoString() string {
12943	return s.String()
12944}
12945
12946// Validate inspects the fields of the type to determine if they are valid.
12947func (s *Tag) Validate() error {
12948	invalidParams := request.ErrInvalidParams{Context: "Tag"}
12949	if s.Key == nil {
12950		invalidParams.Add(request.NewErrParamRequired("Key"))
12951	}
12952	if s.Key != nil && len(*s.Key) < 1 {
12953		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
12954	}
12955	if s.Value == nil {
12956		invalidParams.Add(request.NewErrParamRequired("Value"))
12957	}
12958
12959	if invalidParams.Len() > 0 {
12960		return invalidParams
12961	}
12962	return nil
12963}
12964
12965// SetKey sets the Key field's value.
12966func (s *Tag) SetKey(v string) *Tag {
12967	s.Key = &v
12968	return s
12969}
12970
12971// SetValue sets the Value field's value.
12972func (s *Tag) SetValue(v string) *Tag {
12973	s.Value = &v
12974	return s
12975}
12976
12977type TagResourceInput struct {
12978	_ struct{} `type:"structure"`
12979
12980	// The ARN of the EventBridge resource that you're adding tags to.
12981	//
12982	// ResourceARN is a required field
12983	ResourceARN *string `min:"1" type:"string" required:"true"`
12984
12985	// The list of key-value pairs to associate with the resource.
12986	//
12987	// Tags is a required field
12988	Tags []*Tag `type:"list" required:"true"`
12989}
12990
12991// String returns the string representation
12992func (s TagResourceInput) String() string {
12993	return awsutil.Prettify(s)
12994}
12995
12996// GoString returns the string representation
12997func (s TagResourceInput) GoString() string {
12998	return s.String()
12999}
13000
13001// Validate inspects the fields of the type to determine if they are valid.
13002func (s *TagResourceInput) Validate() error {
13003	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
13004	if s.ResourceARN == nil {
13005		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
13006	}
13007	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
13008		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
13009	}
13010	if s.Tags == nil {
13011		invalidParams.Add(request.NewErrParamRequired("Tags"))
13012	}
13013	if s.Tags != nil {
13014		for i, v := range s.Tags {
13015			if v == nil {
13016				continue
13017			}
13018			if err := v.Validate(); err != nil {
13019				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
13020			}
13021		}
13022	}
13023
13024	if invalidParams.Len() > 0 {
13025		return invalidParams
13026	}
13027	return nil
13028}
13029
13030// SetResourceARN sets the ResourceARN field's value.
13031func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput {
13032	s.ResourceARN = &v
13033	return s
13034}
13035
13036// SetTags sets the Tags field's value.
13037func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
13038	s.Tags = v
13039	return s
13040}
13041
13042type TagResourceOutput struct {
13043	_ struct{} `type:"structure"`
13044}
13045
13046// String returns the string representation
13047func (s TagResourceOutput) String() string {
13048	return awsutil.Prettify(s)
13049}
13050
13051// GoString returns the string representation
13052func (s TagResourceOutput) GoString() string {
13053	return s.String()
13054}
13055
13056// Targets are the resources to be invoked when a rule is triggered. For a complete
13057// list of services and resources that can be set as a target, see PutTargets.
13058//
13059// If you are setting the event bus of another account as the target, and that
13060// account granted permission to your account through an organization instead
13061// of directly by the account ID, then you must specify a RoleArn with proper
13062// permissions in the Target structure. For more information, see Sending and
13063// Receiving Events Between AWS Accounts (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-cross-account-event-delivery.html)
13064// in the Amazon EventBridge User Guide.
13065type Target struct {
13066	_ struct{} `type:"structure"`
13067
13068	// The Amazon Resource Name (ARN) of the target.
13069	//
13070	// Arn is a required field
13071	Arn *string `min:"1" type:"string" required:"true"`
13072
13073	// If the event target is an AWS Batch job, this contains the job definition,
13074	// job name, and other parameters. For more information, see Jobs (https://docs.aws.amazon.com/batch/latest/userguide/jobs.html)
13075	// in the AWS Batch User Guide.
13076	BatchParameters *BatchParameters `type:"structure"`
13077
13078	// The DeadLetterConfig that defines the target queue to send dead-letter queue
13079	// events to.
13080	DeadLetterConfig *DeadLetterConfig `type:"structure"`
13081
13082	// Contains the Amazon ECS task definition and task count to be used, if the
13083	// event target is an Amazon ECS task. For more information about Amazon ECS
13084	// tasks, see Task Definitions (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html)
13085	// in the Amazon EC2 Container Service Developer Guide.
13086	EcsParameters *EcsParameters `type:"structure"`
13087
13088	// Contains the HTTP parameters to use when the target is a API Gateway REST
13089	// endpoint or EventBridge ApiDestination.
13090	//
13091	// If you specify an API Gateway REST API or EventBridge ApiDestination as a
13092	// target, you can use this parameter to specify headers, path parameters, and
13093	// query string keys/values as part of your target invoking request. If you're
13094	// using ApiDestinations, the corresponding Connection can also have these values
13095	// configured. In case of any conflicting keys, values from the Connection take
13096	// precedence.
13097	HttpParameters *HttpParameters `type:"structure"`
13098
13099	// The ID of the target.
13100	//
13101	// Id is a required field
13102	Id *string `min:"1" type:"string" required:"true"`
13103
13104	// Valid JSON text passed to the target. In this case, nothing from the event
13105	// itself is passed to the target. For more information, see The JavaScript
13106	// Object Notation (JSON) Data Interchange Format (http://www.rfc-editor.org/rfc/rfc7159.txt).
13107	Input *string `type:"string"`
13108
13109	// The value of the JSONPath that is used for extracting part of the matched
13110	// event when passing it to the target. You must use JSON dot notation, not
13111	// bracket notation. For more information about JSON paths, see JSONPath (http://goessner.net/articles/JsonPath/).
13112	InputPath *string `type:"string"`
13113
13114	// Settings to enable you to provide custom input to a target based on certain
13115	// event data. You can extract one or more key-value pairs from the event and
13116	// then use that data to send customized input to the target.
13117	InputTransformer *InputTransformer `type:"structure"`
13118
13119	// The custom parameter you can use to control the shard assignment, when the
13120	// target is a Kinesis data stream. If you do not include this parameter, the
13121	// default is to use the eventId as the partition key.
13122	KinesisParameters *KinesisParameters `type:"structure"`
13123
13124	// Contains the Redshift Data API parameters to use when the target is a Redshift
13125	// cluster.
13126	//
13127	// If you specify a Redshift Cluster as a Target, you can use this to specify
13128	// parameters to invoke the Redshift Data API ExecuteStatement based on EventBridge
13129	// events.
13130	RedshiftDataParameters *RedshiftDataParameters `type:"structure"`
13131
13132	// The RetryPolicy object that contains the retry policy configuration to use
13133	// for the dead-letter queue.
13134	RetryPolicy *RetryPolicy `type:"structure"`
13135
13136	// The Amazon Resource Name (ARN) of the IAM role to be used for this target
13137	// when the rule is triggered. If one rule triggers multiple targets, you can
13138	// use a different IAM role for each target.
13139	RoleArn *string `min:"1" type:"string"`
13140
13141	// Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
13142	RunCommandParameters *RunCommandParameters `type:"structure"`
13143
13144	// Contains the SageMaker Model Building Pipeline parameters to start execution
13145	// of a SageMaker Model Building Pipeline.
13146	//
13147	// If you specify a SageMaker Model Building Pipeline as a target, you can use
13148	// this to specify parameters to start a pipeline execution based on EventBridge
13149	// events.
13150	SageMakerPipelineParameters *SageMakerPipelineParameters `type:"structure"`
13151
13152	// Contains the message group ID to use when the target is a FIFO queue.
13153	//
13154	// If you specify an SQS FIFO queue as a target, the queue must have content-based
13155	// deduplication enabled.
13156	SqsParameters *SqsParameters `type:"structure"`
13157}
13158
13159// String returns the string representation
13160func (s Target) String() string {
13161	return awsutil.Prettify(s)
13162}
13163
13164// GoString returns the string representation
13165func (s Target) GoString() string {
13166	return s.String()
13167}
13168
13169// Validate inspects the fields of the type to determine if they are valid.
13170func (s *Target) Validate() error {
13171	invalidParams := request.ErrInvalidParams{Context: "Target"}
13172	if s.Arn == nil {
13173		invalidParams.Add(request.NewErrParamRequired("Arn"))
13174	}
13175	if s.Arn != nil && len(*s.Arn) < 1 {
13176		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
13177	}
13178	if s.Id == nil {
13179		invalidParams.Add(request.NewErrParamRequired("Id"))
13180	}
13181	if s.Id != nil && len(*s.Id) < 1 {
13182		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
13183	}
13184	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
13185		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
13186	}
13187	if s.BatchParameters != nil {
13188		if err := s.BatchParameters.Validate(); err != nil {
13189			invalidParams.AddNested("BatchParameters", err.(request.ErrInvalidParams))
13190		}
13191	}
13192	if s.DeadLetterConfig != nil {
13193		if err := s.DeadLetterConfig.Validate(); err != nil {
13194			invalidParams.AddNested("DeadLetterConfig", err.(request.ErrInvalidParams))
13195		}
13196	}
13197	if s.EcsParameters != nil {
13198		if err := s.EcsParameters.Validate(); err != nil {
13199			invalidParams.AddNested("EcsParameters", err.(request.ErrInvalidParams))
13200		}
13201	}
13202	if s.InputTransformer != nil {
13203		if err := s.InputTransformer.Validate(); err != nil {
13204			invalidParams.AddNested("InputTransformer", err.(request.ErrInvalidParams))
13205		}
13206	}
13207	if s.KinesisParameters != nil {
13208		if err := s.KinesisParameters.Validate(); err != nil {
13209			invalidParams.AddNested("KinesisParameters", err.(request.ErrInvalidParams))
13210		}
13211	}
13212	if s.RedshiftDataParameters != nil {
13213		if err := s.RedshiftDataParameters.Validate(); err != nil {
13214			invalidParams.AddNested("RedshiftDataParameters", err.(request.ErrInvalidParams))
13215		}
13216	}
13217	if s.RetryPolicy != nil {
13218		if err := s.RetryPolicy.Validate(); err != nil {
13219			invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams))
13220		}
13221	}
13222	if s.RunCommandParameters != nil {
13223		if err := s.RunCommandParameters.Validate(); err != nil {
13224			invalidParams.AddNested("RunCommandParameters", err.(request.ErrInvalidParams))
13225		}
13226	}
13227	if s.SageMakerPipelineParameters != nil {
13228		if err := s.SageMakerPipelineParameters.Validate(); err != nil {
13229			invalidParams.AddNested("SageMakerPipelineParameters", err.(request.ErrInvalidParams))
13230		}
13231	}
13232
13233	if invalidParams.Len() > 0 {
13234		return invalidParams
13235	}
13236	return nil
13237}
13238
13239// SetArn sets the Arn field's value.
13240func (s *Target) SetArn(v string) *Target {
13241	s.Arn = &v
13242	return s
13243}
13244
13245// SetBatchParameters sets the BatchParameters field's value.
13246func (s *Target) SetBatchParameters(v *BatchParameters) *Target {
13247	s.BatchParameters = v
13248	return s
13249}
13250
13251// SetDeadLetterConfig sets the DeadLetterConfig field's value.
13252func (s *Target) SetDeadLetterConfig(v *DeadLetterConfig) *Target {
13253	s.DeadLetterConfig = v
13254	return s
13255}
13256
13257// SetEcsParameters sets the EcsParameters field's value.
13258func (s *Target) SetEcsParameters(v *EcsParameters) *Target {
13259	s.EcsParameters = v
13260	return s
13261}
13262
13263// SetHttpParameters sets the HttpParameters field's value.
13264func (s *Target) SetHttpParameters(v *HttpParameters) *Target {
13265	s.HttpParameters = v
13266	return s
13267}
13268
13269// SetId sets the Id field's value.
13270func (s *Target) SetId(v string) *Target {
13271	s.Id = &v
13272	return s
13273}
13274
13275// SetInput sets the Input field's value.
13276func (s *Target) SetInput(v string) *Target {
13277	s.Input = &v
13278	return s
13279}
13280
13281// SetInputPath sets the InputPath field's value.
13282func (s *Target) SetInputPath(v string) *Target {
13283	s.InputPath = &v
13284	return s
13285}
13286
13287// SetInputTransformer sets the InputTransformer field's value.
13288func (s *Target) SetInputTransformer(v *InputTransformer) *Target {
13289	s.InputTransformer = v
13290	return s
13291}
13292
13293// SetKinesisParameters sets the KinesisParameters field's value.
13294func (s *Target) SetKinesisParameters(v *KinesisParameters) *Target {
13295	s.KinesisParameters = v
13296	return s
13297}
13298
13299// SetRedshiftDataParameters sets the RedshiftDataParameters field's value.
13300func (s *Target) SetRedshiftDataParameters(v *RedshiftDataParameters) *Target {
13301	s.RedshiftDataParameters = v
13302	return s
13303}
13304
13305// SetRetryPolicy sets the RetryPolicy field's value.
13306func (s *Target) SetRetryPolicy(v *RetryPolicy) *Target {
13307	s.RetryPolicy = v
13308	return s
13309}
13310
13311// SetRoleArn sets the RoleArn field's value.
13312func (s *Target) SetRoleArn(v string) *Target {
13313	s.RoleArn = &v
13314	return s
13315}
13316
13317// SetRunCommandParameters sets the RunCommandParameters field's value.
13318func (s *Target) SetRunCommandParameters(v *RunCommandParameters) *Target {
13319	s.RunCommandParameters = v
13320	return s
13321}
13322
13323// SetSageMakerPipelineParameters sets the SageMakerPipelineParameters field's value.
13324func (s *Target) SetSageMakerPipelineParameters(v *SageMakerPipelineParameters) *Target {
13325	s.SageMakerPipelineParameters = v
13326	return s
13327}
13328
13329// SetSqsParameters sets the SqsParameters field's value.
13330func (s *Target) SetSqsParameters(v *SqsParameters) *Target {
13331	s.SqsParameters = v
13332	return s
13333}
13334
13335type TestEventPatternInput struct {
13336	_ struct{} `type:"structure"`
13337
13338	// The event, in JSON format, to test against the event pattern. The JSON must
13339	// follow the format specified in AWS Events (https://docs.aws.amazon.com/eventbridge/latest/userguide/aws-events.html),
13340	// and the following fields are mandatory:
13341	//
13342	//    * id
13343	//
13344	//    * account
13345	//
13346	//    * source
13347	//
13348	//    * time
13349	//
13350	//    * region
13351	//
13352	//    * resources
13353	//
13354	//    * detail-type
13355	//
13356	// Event is a required field
13357	Event *string `type:"string" required:"true"`
13358
13359	// The event pattern. For more information, see Events and Event Patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)
13360	// in the Amazon EventBridge User Guide.
13361	//
13362	// EventPattern is a required field
13363	EventPattern *string `type:"string" required:"true"`
13364}
13365
13366// String returns the string representation
13367func (s TestEventPatternInput) String() string {
13368	return awsutil.Prettify(s)
13369}
13370
13371// GoString returns the string representation
13372func (s TestEventPatternInput) GoString() string {
13373	return s.String()
13374}
13375
13376// Validate inspects the fields of the type to determine if they are valid.
13377func (s *TestEventPatternInput) Validate() error {
13378	invalidParams := request.ErrInvalidParams{Context: "TestEventPatternInput"}
13379	if s.Event == nil {
13380		invalidParams.Add(request.NewErrParamRequired("Event"))
13381	}
13382	if s.EventPattern == nil {
13383		invalidParams.Add(request.NewErrParamRequired("EventPattern"))
13384	}
13385
13386	if invalidParams.Len() > 0 {
13387		return invalidParams
13388	}
13389	return nil
13390}
13391
13392// SetEvent sets the Event field's value.
13393func (s *TestEventPatternInput) SetEvent(v string) *TestEventPatternInput {
13394	s.Event = &v
13395	return s
13396}
13397
13398// SetEventPattern sets the EventPattern field's value.
13399func (s *TestEventPatternInput) SetEventPattern(v string) *TestEventPatternInput {
13400	s.EventPattern = &v
13401	return s
13402}
13403
13404type TestEventPatternOutput struct {
13405	_ struct{} `type:"structure"`
13406
13407	// Indicates whether the event matches the event pattern.
13408	Result *bool `type:"boolean"`
13409}
13410
13411// String returns the string representation
13412func (s TestEventPatternOutput) String() string {
13413	return awsutil.Prettify(s)
13414}
13415
13416// GoString returns the string representation
13417func (s TestEventPatternOutput) GoString() string {
13418	return s.String()
13419}
13420
13421// SetResult sets the Result field's value.
13422func (s *TestEventPatternOutput) SetResult(v bool) *TestEventPatternOutput {
13423	s.Result = &v
13424	return s
13425}
13426
13427type UntagResourceInput struct {
13428	_ struct{} `type:"structure"`
13429
13430	// The ARN of the EventBridge resource from which you are removing tags.
13431	//
13432	// ResourceARN is a required field
13433	ResourceARN *string `min:"1" type:"string" required:"true"`
13434
13435	// The list of tag keys to remove from the resource.
13436	//
13437	// TagKeys is a required field
13438	TagKeys []*string `type:"list" required:"true"`
13439}
13440
13441// String returns the string representation
13442func (s UntagResourceInput) String() string {
13443	return awsutil.Prettify(s)
13444}
13445
13446// GoString returns the string representation
13447func (s UntagResourceInput) GoString() string {
13448	return s.String()
13449}
13450
13451// Validate inspects the fields of the type to determine if they are valid.
13452func (s *UntagResourceInput) Validate() error {
13453	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
13454	if s.ResourceARN == nil {
13455		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
13456	}
13457	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
13458		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
13459	}
13460	if s.TagKeys == nil {
13461		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
13462	}
13463
13464	if invalidParams.Len() > 0 {
13465		return invalidParams
13466	}
13467	return nil
13468}
13469
13470// SetResourceARN sets the ResourceARN field's value.
13471func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput {
13472	s.ResourceARN = &v
13473	return s
13474}
13475
13476// SetTagKeys sets the TagKeys field's value.
13477func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
13478	s.TagKeys = v
13479	return s
13480}
13481
13482type UntagResourceOutput struct {
13483	_ struct{} `type:"structure"`
13484}
13485
13486// String returns the string representation
13487func (s UntagResourceOutput) String() string {
13488	return awsutil.Prettify(s)
13489}
13490
13491// GoString returns the string representation
13492func (s UntagResourceOutput) GoString() string {
13493	return s.String()
13494}
13495
13496type UpdateApiDestinationInput struct {
13497	_ struct{} `type:"structure"`
13498
13499	// The ARN of the connection to use for the API destination.
13500	ConnectionArn *string `min:"1" type:"string"`
13501
13502	// The name of the API destination to update.
13503	Description *string `type:"string"`
13504
13505	// The method to use for the API destination.
13506	HttpMethod *string `type:"string" enum:"ApiDestinationHttpMethod"`
13507
13508	// The URL to the endpoint to use for the API destination.
13509	InvocationEndpoint *string `min:"1" type:"string"`
13510
13511	// The maximum number of invocations per second to send to the API destination.
13512	InvocationRateLimitPerSecond *int64 `min:"1" type:"integer"`
13513
13514	// The name of the API destination to update.
13515	//
13516	// Name is a required field
13517	Name *string `min:"1" type:"string" required:"true"`
13518}
13519
13520// String returns the string representation
13521func (s UpdateApiDestinationInput) String() string {
13522	return awsutil.Prettify(s)
13523}
13524
13525// GoString returns the string representation
13526func (s UpdateApiDestinationInput) GoString() string {
13527	return s.String()
13528}
13529
13530// Validate inspects the fields of the type to determine if they are valid.
13531func (s *UpdateApiDestinationInput) Validate() error {
13532	invalidParams := request.ErrInvalidParams{Context: "UpdateApiDestinationInput"}
13533	if s.ConnectionArn != nil && len(*s.ConnectionArn) < 1 {
13534		invalidParams.Add(request.NewErrParamMinLen("ConnectionArn", 1))
13535	}
13536	if s.InvocationEndpoint != nil && len(*s.InvocationEndpoint) < 1 {
13537		invalidParams.Add(request.NewErrParamMinLen("InvocationEndpoint", 1))
13538	}
13539	if s.InvocationRateLimitPerSecond != nil && *s.InvocationRateLimitPerSecond < 1 {
13540		invalidParams.Add(request.NewErrParamMinValue("InvocationRateLimitPerSecond", 1))
13541	}
13542	if s.Name == nil {
13543		invalidParams.Add(request.NewErrParamRequired("Name"))
13544	}
13545	if s.Name != nil && len(*s.Name) < 1 {
13546		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
13547	}
13548
13549	if invalidParams.Len() > 0 {
13550		return invalidParams
13551	}
13552	return nil
13553}
13554
13555// SetConnectionArn sets the ConnectionArn field's value.
13556func (s *UpdateApiDestinationInput) SetConnectionArn(v string) *UpdateApiDestinationInput {
13557	s.ConnectionArn = &v
13558	return s
13559}
13560
13561// SetDescription sets the Description field's value.
13562func (s *UpdateApiDestinationInput) SetDescription(v string) *UpdateApiDestinationInput {
13563	s.Description = &v
13564	return s
13565}
13566
13567// SetHttpMethod sets the HttpMethod field's value.
13568func (s *UpdateApiDestinationInput) SetHttpMethod(v string) *UpdateApiDestinationInput {
13569	s.HttpMethod = &v
13570	return s
13571}
13572
13573// SetInvocationEndpoint sets the InvocationEndpoint field's value.
13574func (s *UpdateApiDestinationInput) SetInvocationEndpoint(v string) *UpdateApiDestinationInput {
13575	s.InvocationEndpoint = &v
13576	return s
13577}
13578
13579// SetInvocationRateLimitPerSecond sets the InvocationRateLimitPerSecond field's value.
13580func (s *UpdateApiDestinationInput) SetInvocationRateLimitPerSecond(v int64) *UpdateApiDestinationInput {
13581	s.InvocationRateLimitPerSecond = &v
13582	return s
13583}
13584
13585// SetName sets the Name field's value.
13586func (s *UpdateApiDestinationInput) SetName(v string) *UpdateApiDestinationInput {
13587	s.Name = &v
13588	return s
13589}
13590
13591type UpdateApiDestinationOutput struct {
13592	_ struct{} `type:"structure"`
13593
13594	// The ARN of the API destination that was updated.
13595	ApiDestinationArn *string `min:"1" type:"string"`
13596
13597	// The state of the API destination that was updated.
13598	ApiDestinationState *string `type:"string" enum:"ApiDestinationState"`
13599
13600	// A time stamp for the time that the API destination was created.
13601	CreationTime *time.Time `type:"timestamp"`
13602
13603	// A time stamp for the time that the API destination was last modified.
13604	LastModifiedTime *time.Time `type:"timestamp"`
13605}
13606
13607// String returns the string representation
13608func (s UpdateApiDestinationOutput) String() string {
13609	return awsutil.Prettify(s)
13610}
13611
13612// GoString returns the string representation
13613func (s UpdateApiDestinationOutput) GoString() string {
13614	return s.String()
13615}
13616
13617// SetApiDestinationArn sets the ApiDestinationArn field's value.
13618func (s *UpdateApiDestinationOutput) SetApiDestinationArn(v string) *UpdateApiDestinationOutput {
13619	s.ApiDestinationArn = &v
13620	return s
13621}
13622
13623// SetApiDestinationState sets the ApiDestinationState field's value.
13624func (s *UpdateApiDestinationOutput) SetApiDestinationState(v string) *UpdateApiDestinationOutput {
13625	s.ApiDestinationState = &v
13626	return s
13627}
13628
13629// SetCreationTime sets the CreationTime field's value.
13630func (s *UpdateApiDestinationOutput) SetCreationTime(v time.Time) *UpdateApiDestinationOutput {
13631	s.CreationTime = &v
13632	return s
13633}
13634
13635// SetLastModifiedTime sets the LastModifiedTime field's value.
13636func (s *UpdateApiDestinationOutput) SetLastModifiedTime(v time.Time) *UpdateApiDestinationOutput {
13637	s.LastModifiedTime = &v
13638	return s
13639}
13640
13641type UpdateArchiveInput struct {
13642	_ struct{} `type:"structure"`
13643
13644	// The name of the archive to update.
13645	//
13646	// ArchiveName is a required field
13647	ArchiveName *string `min:"1" type:"string" required:"true"`
13648
13649	// The description for the archive.
13650	Description *string `type:"string"`
13651
13652	// The event pattern to use to filter events sent to the archive.
13653	EventPattern *string `type:"string"`
13654
13655	// The number of days to retain events in the archive.
13656	RetentionDays *int64 `type:"integer"`
13657}
13658
13659// String returns the string representation
13660func (s UpdateArchiveInput) String() string {
13661	return awsutil.Prettify(s)
13662}
13663
13664// GoString returns the string representation
13665func (s UpdateArchiveInput) GoString() string {
13666	return s.String()
13667}
13668
13669// Validate inspects the fields of the type to determine if they are valid.
13670func (s *UpdateArchiveInput) Validate() error {
13671	invalidParams := request.ErrInvalidParams{Context: "UpdateArchiveInput"}
13672	if s.ArchiveName == nil {
13673		invalidParams.Add(request.NewErrParamRequired("ArchiveName"))
13674	}
13675	if s.ArchiveName != nil && len(*s.ArchiveName) < 1 {
13676		invalidParams.Add(request.NewErrParamMinLen("ArchiveName", 1))
13677	}
13678
13679	if invalidParams.Len() > 0 {
13680		return invalidParams
13681	}
13682	return nil
13683}
13684
13685// SetArchiveName sets the ArchiveName field's value.
13686func (s *UpdateArchiveInput) SetArchiveName(v string) *UpdateArchiveInput {
13687	s.ArchiveName = &v
13688	return s
13689}
13690
13691// SetDescription sets the Description field's value.
13692func (s *UpdateArchiveInput) SetDescription(v string) *UpdateArchiveInput {
13693	s.Description = &v
13694	return s
13695}
13696
13697// SetEventPattern sets the EventPattern field's value.
13698func (s *UpdateArchiveInput) SetEventPattern(v string) *UpdateArchiveInput {
13699	s.EventPattern = &v
13700	return s
13701}
13702
13703// SetRetentionDays sets the RetentionDays field's value.
13704func (s *UpdateArchiveInput) SetRetentionDays(v int64) *UpdateArchiveInput {
13705	s.RetentionDays = &v
13706	return s
13707}
13708
13709type UpdateArchiveOutput struct {
13710	_ struct{} `type:"structure"`
13711
13712	// The ARN of the archive.
13713	ArchiveArn *string `min:"1" type:"string"`
13714
13715	// The time at which the archive was updated.
13716	CreationTime *time.Time `type:"timestamp"`
13717
13718	// The state of the archive.
13719	State *string `type:"string" enum:"ArchiveState"`
13720
13721	// The reason that the archive is in the current state.
13722	StateReason *string `type:"string"`
13723}
13724
13725// String returns the string representation
13726func (s UpdateArchiveOutput) String() string {
13727	return awsutil.Prettify(s)
13728}
13729
13730// GoString returns the string representation
13731func (s UpdateArchiveOutput) GoString() string {
13732	return s.String()
13733}
13734
13735// SetArchiveArn sets the ArchiveArn field's value.
13736func (s *UpdateArchiveOutput) SetArchiveArn(v string) *UpdateArchiveOutput {
13737	s.ArchiveArn = &v
13738	return s
13739}
13740
13741// SetCreationTime sets the CreationTime field's value.
13742func (s *UpdateArchiveOutput) SetCreationTime(v time.Time) *UpdateArchiveOutput {
13743	s.CreationTime = &v
13744	return s
13745}
13746
13747// SetState sets the State field's value.
13748func (s *UpdateArchiveOutput) SetState(v string) *UpdateArchiveOutput {
13749	s.State = &v
13750	return s
13751}
13752
13753// SetStateReason sets the StateReason field's value.
13754func (s *UpdateArchiveOutput) SetStateReason(v string) *UpdateArchiveOutput {
13755	s.StateReason = &v
13756	return s
13757}
13758
13759// Contains the API key authorization parameters to use to update the connection.
13760type UpdateConnectionApiKeyAuthRequestParameters struct {
13761	_ struct{} `type:"structure"`
13762
13763	// The name of the API key to use for authorization.
13764	ApiKeyName *string `min:"1" type:"string"`
13765
13766	// The value associated with teh API key to use for authorization.
13767	ApiKeyValue *string `min:"1" type:"string"`
13768}
13769
13770// String returns the string representation
13771func (s UpdateConnectionApiKeyAuthRequestParameters) String() string {
13772	return awsutil.Prettify(s)
13773}
13774
13775// GoString returns the string representation
13776func (s UpdateConnectionApiKeyAuthRequestParameters) GoString() string {
13777	return s.String()
13778}
13779
13780// Validate inspects the fields of the type to determine if they are valid.
13781func (s *UpdateConnectionApiKeyAuthRequestParameters) Validate() error {
13782	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionApiKeyAuthRequestParameters"}
13783	if s.ApiKeyName != nil && len(*s.ApiKeyName) < 1 {
13784		invalidParams.Add(request.NewErrParamMinLen("ApiKeyName", 1))
13785	}
13786	if s.ApiKeyValue != nil && len(*s.ApiKeyValue) < 1 {
13787		invalidParams.Add(request.NewErrParamMinLen("ApiKeyValue", 1))
13788	}
13789
13790	if invalidParams.Len() > 0 {
13791		return invalidParams
13792	}
13793	return nil
13794}
13795
13796// SetApiKeyName sets the ApiKeyName field's value.
13797func (s *UpdateConnectionApiKeyAuthRequestParameters) SetApiKeyName(v string) *UpdateConnectionApiKeyAuthRequestParameters {
13798	s.ApiKeyName = &v
13799	return s
13800}
13801
13802// SetApiKeyValue sets the ApiKeyValue field's value.
13803func (s *UpdateConnectionApiKeyAuthRequestParameters) SetApiKeyValue(v string) *UpdateConnectionApiKeyAuthRequestParameters {
13804	s.ApiKeyValue = &v
13805	return s
13806}
13807
13808// Contains the additional parameters to use for the connection.
13809type UpdateConnectionAuthRequestParameters struct {
13810	_ struct{} `type:"structure"`
13811
13812	// A UpdateConnectionApiKeyAuthRequestParameters object that contains the authorization
13813	// parameters for API key authorization.
13814	ApiKeyAuthParameters *UpdateConnectionApiKeyAuthRequestParameters `type:"structure"`
13815
13816	// A UpdateConnectionBasicAuthRequestParameters object that contains the authorization
13817	// parameters for Basic authorization.
13818	BasicAuthParameters *UpdateConnectionBasicAuthRequestParameters `type:"structure"`
13819
13820	// A ConnectionHttpParameters object that contains the additional parameters
13821	// to use for the connection.
13822	InvocationHttpParameters *ConnectionHttpParameters `type:"structure"`
13823
13824	// A UpdateConnectionOAuthRequestParameters object that contains the authorization
13825	// parameters for OAuth authorization.
13826	OAuthParameters *UpdateConnectionOAuthRequestParameters `type:"structure"`
13827}
13828
13829// String returns the string representation
13830func (s UpdateConnectionAuthRequestParameters) String() string {
13831	return awsutil.Prettify(s)
13832}
13833
13834// GoString returns the string representation
13835func (s UpdateConnectionAuthRequestParameters) GoString() string {
13836	return s.String()
13837}
13838
13839// Validate inspects the fields of the type to determine if they are valid.
13840func (s *UpdateConnectionAuthRequestParameters) Validate() error {
13841	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionAuthRequestParameters"}
13842	if s.ApiKeyAuthParameters != nil {
13843		if err := s.ApiKeyAuthParameters.Validate(); err != nil {
13844			invalidParams.AddNested("ApiKeyAuthParameters", err.(request.ErrInvalidParams))
13845		}
13846	}
13847	if s.BasicAuthParameters != nil {
13848		if err := s.BasicAuthParameters.Validate(); err != nil {
13849			invalidParams.AddNested("BasicAuthParameters", err.(request.ErrInvalidParams))
13850		}
13851	}
13852	if s.OAuthParameters != nil {
13853		if err := s.OAuthParameters.Validate(); err != nil {
13854			invalidParams.AddNested("OAuthParameters", err.(request.ErrInvalidParams))
13855		}
13856	}
13857
13858	if invalidParams.Len() > 0 {
13859		return invalidParams
13860	}
13861	return nil
13862}
13863
13864// SetApiKeyAuthParameters sets the ApiKeyAuthParameters field's value.
13865func (s *UpdateConnectionAuthRequestParameters) SetApiKeyAuthParameters(v *UpdateConnectionApiKeyAuthRequestParameters) *UpdateConnectionAuthRequestParameters {
13866	s.ApiKeyAuthParameters = v
13867	return s
13868}
13869
13870// SetBasicAuthParameters sets the BasicAuthParameters field's value.
13871func (s *UpdateConnectionAuthRequestParameters) SetBasicAuthParameters(v *UpdateConnectionBasicAuthRequestParameters) *UpdateConnectionAuthRequestParameters {
13872	s.BasicAuthParameters = v
13873	return s
13874}
13875
13876// SetInvocationHttpParameters sets the InvocationHttpParameters field's value.
13877func (s *UpdateConnectionAuthRequestParameters) SetInvocationHttpParameters(v *ConnectionHttpParameters) *UpdateConnectionAuthRequestParameters {
13878	s.InvocationHttpParameters = v
13879	return s
13880}
13881
13882// SetOAuthParameters sets the OAuthParameters field's value.
13883func (s *UpdateConnectionAuthRequestParameters) SetOAuthParameters(v *UpdateConnectionOAuthRequestParameters) *UpdateConnectionAuthRequestParameters {
13884	s.OAuthParameters = v
13885	return s
13886}
13887
13888// Contains the Basic authorization parameters for the connection.
13889type UpdateConnectionBasicAuthRequestParameters struct {
13890	_ struct{} `type:"structure"`
13891
13892	// The password associated with the user name to use for Basic authorization.
13893	Password *string `min:"1" type:"string"`
13894
13895	// The user name to use for Basic authorization.
13896	Username *string `min:"1" type:"string"`
13897}
13898
13899// String returns the string representation
13900func (s UpdateConnectionBasicAuthRequestParameters) String() string {
13901	return awsutil.Prettify(s)
13902}
13903
13904// GoString returns the string representation
13905func (s UpdateConnectionBasicAuthRequestParameters) GoString() string {
13906	return s.String()
13907}
13908
13909// Validate inspects the fields of the type to determine if they are valid.
13910func (s *UpdateConnectionBasicAuthRequestParameters) Validate() error {
13911	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionBasicAuthRequestParameters"}
13912	if s.Password != nil && len(*s.Password) < 1 {
13913		invalidParams.Add(request.NewErrParamMinLen("Password", 1))
13914	}
13915	if s.Username != nil && len(*s.Username) < 1 {
13916		invalidParams.Add(request.NewErrParamMinLen("Username", 1))
13917	}
13918
13919	if invalidParams.Len() > 0 {
13920		return invalidParams
13921	}
13922	return nil
13923}
13924
13925// SetPassword sets the Password field's value.
13926func (s *UpdateConnectionBasicAuthRequestParameters) SetPassword(v string) *UpdateConnectionBasicAuthRequestParameters {
13927	s.Password = &v
13928	return s
13929}
13930
13931// SetUsername sets the Username field's value.
13932func (s *UpdateConnectionBasicAuthRequestParameters) SetUsername(v string) *UpdateConnectionBasicAuthRequestParameters {
13933	s.Username = &v
13934	return s
13935}
13936
13937type UpdateConnectionInput struct {
13938	_ struct{} `type:"structure"`
13939
13940	// The authorization parameters to use for the connection.
13941	AuthParameters *UpdateConnectionAuthRequestParameters `type:"structure"`
13942
13943	// The type of authorization to use for the connection.
13944	AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"`
13945
13946	// A description for the connection.
13947	Description *string `type:"string"`
13948
13949	// The name of the connection to update.
13950	//
13951	// Name is a required field
13952	Name *string `min:"1" type:"string" required:"true"`
13953}
13954
13955// String returns the string representation
13956func (s UpdateConnectionInput) String() string {
13957	return awsutil.Prettify(s)
13958}
13959
13960// GoString returns the string representation
13961func (s UpdateConnectionInput) GoString() string {
13962	return s.String()
13963}
13964
13965// Validate inspects the fields of the type to determine if they are valid.
13966func (s *UpdateConnectionInput) Validate() error {
13967	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionInput"}
13968	if s.Name == nil {
13969		invalidParams.Add(request.NewErrParamRequired("Name"))
13970	}
13971	if s.Name != nil && len(*s.Name) < 1 {
13972		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
13973	}
13974	if s.AuthParameters != nil {
13975		if err := s.AuthParameters.Validate(); err != nil {
13976			invalidParams.AddNested("AuthParameters", err.(request.ErrInvalidParams))
13977		}
13978	}
13979
13980	if invalidParams.Len() > 0 {
13981		return invalidParams
13982	}
13983	return nil
13984}
13985
13986// SetAuthParameters sets the AuthParameters field's value.
13987func (s *UpdateConnectionInput) SetAuthParameters(v *UpdateConnectionAuthRequestParameters) *UpdateConnectionInput {
13988	s.AuthParameters = v
13989	return s
13990}
13991
13992// SetAuthorizationType sets the AuthorizationType field's value.
13993func (s *UpdateConnectionInput) SetAuthorizationType(v string) *UpdateConnectionInput {
13994	s.AuthorizationType = &v
13995	return s
13996}
13997
13998// SetDescription sets the Description field's value.
13999func (s *UpdateConnectionInput) SetDescription(v string) *UpdateConnectionInput {
14000	s.Description = &v
14001	return s
14002}
14003
14004// SetName sets the Name field's value.
14005func (s *UpdateConnectionInput) SetName(v string) *UpdateConnectionInput {
14006	s.Name = &v
14007	return s
14008}
14009
14010// Contains the OAuth authorization parameters to use for the connection.
14011type UpdateConnectionOAuthClientRequestParameters struct {
14012	_ struct{} `type:"structure"`
14013
14014	// The client ID to use for OAuth authorization.
14015	ClientID *string `min:"1" type:"string"`
14016
14017	// The client secret assciated with the client ID to use for OAuth authorization.
14018	ClientSecret *string `min:"1" type:"string"`
14019}
14020
14021// String returns the string representation
14022func (s UpdateConnectionOAuthClientRequestParameters) String() string {
14023	return awsutil.Prettify(s)
14024}
14025
14026// GoString returns the string representation
14027func (s UpdateConnectionOAuthClientRequestParameters) GoString() string {
14028	return s.String()
14029}
14030
14031// Validate inspects the fields of the type to determine if they are valid.
14032func (s *UpdateConnectionOAuthClientRequestParameters) Validate() error {
14033	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionOAuthClientRequestParameters"}
14034	if s.ClientID != nil && len(*s.ClientID) < 1 {
14035		invalidParams.Add(request.NewErrParamMinLen("ClientID", 1))
14036	}
14037	if s.ClientSecret != nil && len(*s.ClientSecret) < 1 {
14038		invalidParams.Add(request.NewErrParamMinLen("ClientSecret", 1))
14039	}
14040
14041	if invalidParams.Len() > 0 {
14042		return invalidParams
14043	}
14044	return nil
14045}
14046
14047// SetClientID sets the ClientID field's value.
14048func (s *UpdateConnectionOAuthClientRequestParameters) SetClientID(v string) *UpdateConnectionOAuthClientRequestParameters {
14049	s.ClientID = &v
14050	return s
14051}
14052
14053// SetClientSecret sets the ClientSecret field's value.
14054func (s *UpdateConnectionOAuthClientRequestParameters) SetClientSecret(v string) *UpdateConnectionOAuthClientRequestParameters {
14055	s.ClientSecret = &v
14056	return s
14057}
14058
14059// Contains the OAuth request parameters to use for the connection.
14060type UpdateConnectionOAuthRequestParameters struct {
14061	_ struct{} `type:"structure"`
14062
14063	// The URL to the authorization endpoint when OAuth is specified as the authorization
14064	// type.
14065	AuthorizationEndpoint *string `min:"1" type:"string"`
14066
14067	// A UpdateConnectionOAuthClientRequestParameters object that contains the client
14068	// parameters to use for the connection when OAuth is specified as the authorization
14069	// type.
14070	ClientParameters *UpdateConnectionOAuthClientRequestParameters `type:"structure"`
14071
14072	// The method used to connect to the HTTP endpoint.
14073	HttpMethod *string `type:"string" enum:"ConnectionOAuthHttpMethod"`
14074
14075	// The additional HTTP parameters used for the OAuth authorization request.
14076	OAuthHttpParameters *ConnectionHttpParameters `type:"structure"`
14077}
14078
14079// String returns the string representation
14080func (s UpdateConnectionOAuthRequestParameters) String() string {
14081	return awsutil.Prettify(s)
14082}
14083
14084// GoString returns the string representation
14085func (s UpdateConnectionOAuthRequestParameters) GoString() string {
14086	return s.String()
14087}
14088
14089// Validate inspects the fields of the type to determine if they are valid.
14090func (s *UpdateConnectionOAuthRequestParameters) Validate() error {
14091	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectionOAuthRequestParameters"}
14092	if s.AuthorizationEndpoint != nil && len(*s.AuthorizationEndpoint) < 1 {
14093		invalidParams.Add(request.NewErrParamMinLen("AuthorizationEndpoint", 1))
14094	}
14095	if s.ClientParameters != nil {
14096		if err := s.ClientParameters.Validate(); err != nil {
14097			invalidParams.AddNested("ClientParameters", err.(request.ErrInvalidParams))
14098		}
14099	}
14100
14101	if invalidParams.Len() > 0 {
14102		return invalidParams
14103	}
14104	return nil
14105}
14106
14107// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
14108func (s *UpdateConnectionOAuthRequestParameters) SetAuthorizationEndpoint(v string) *UpdateConnectionOAuthRequestParameters {
14109	s.AuthorizationEndpoint = &v
14110	return s
14111}
14112
14113// SetClientParameters sets the ClientParameters field's value.
14114func (s *UpdateConnectionOAuthRequestParameters) SetClientParameters(v *UpdateConnectionOAuthClientRequestParameters) *UpdateConnectionOAuthRequestParameters {
14115	s.ClientParameters = v
14116	return s
14117}
14118
14119// SetHttpMethod sets the HttpMethod field's value.
14120func (s *UpdateConnectionOAuthRequestParameters) SetHttpMethod(v string) *UpdateConnectionOAuthRequestParameters {
14121	s.HttpMethod = &v
14122	return s
14123}
14124
14125// SetOAuthHttpParameters sets the OAuthHttpParameters field's value.
14126func (s *UpdateConnectionOAuthRequestParameters) SetOAuthHttpParameters(v *ConnectionHttpParameters) *UpdateConnectionOAuthRequestParameters {
14127	s.OAuthHttpParameters = v
14128	return s
14129}
14130
14131type UpdateConnectionOutput struct {
14132	_ struct{} `type:"structure"`
14133
14134	// The ARN of the connection that was updated.
14135	ConnectionArn *string `min:"1" type:"string"`
14136
14137	// The state of the connection that was updated.
14138	ConnectionState *string `type:"string" enum:"ConnectionState"`
14139
14140	// A time stamp for the time that the connection was created.
14141	CreationTime *time.Time `type:"timestamp"`
14142
14143	// A time stamp for the time that the connection was last authorized.
14144	LastAuthorizedTime *time.Time `type:"timestamp"`
14145
14146	// A time stamp for the time that the connection was last modified.
14147	LastModifiedTime *time.Time `type:"timestamp"`
14148}
14149
14150// String returns the string representation
14151func (s UpdateConnectionOutput) String() string {
14152	return awsutil.Prettify(s)
14153}
14154
14155// GoString returns the string representation
14156func (s UpdateConnectionOutput) GoString() string {
14157	return s.String()
14158}
14159
14160// SetConnectionArn sets the ConnectionArn field's value.
14161func (s *UpdateConnectionOutput) SetConnectionArn(v string) *UpdateConnectionOutput {
14162	s.ConnectionArn = &v
14163	return s
14164}
14165
14166// SetConnectionState sets the ConnectionState field's value.
14167func (s *UpdateConnectionOutput) SetConnectionState(v string) *UpdateConnectionOutput {
14168	s.ConnectionState = &v
14169	return s
14170}
14171
14172// SetCreationTime sets the CreationTime field's value.
14173func (s *UpdateConnectionOutput) SetCreationTime(v time.Time) *UpdateConnectionOutput {
14174	s.CreationTime = &v
14175	return s
14176}
14177
14178// SetLastAuthorizedTime sets the LastAuthorizedTime field's value.
14179func (s *UpdateConnectionOutput) SetLastAuthorizedTime(v time.Time) *UpdateConnectionOutput {
14180	s.LastAuthorizedTime = &v
14181	return s
14182}
14183
14184// SetLastModifiedTime sets the LastModifiedTime field's value.
14185func (s *UpdateConnectionOutput) SetLastModifiedTime(v time.Time) *UpdateConnectionOutput {
14186	s.LastModifiedTime = &v
14187	return s
14188}
14189
14190const (
14191	// ApiDestinationHttpMethodPost is a ApiDestinationHttpMethod enum value
14192	ApiDestinationHttpMethodPost = "POST"
14193
14194	// ApiDestinationHttpMethodGet is a ApiDestinationHttpMethod enum value
14195	ApiDestinationHttpMethodGet = "GET"
14196
14197	// ApiDestinationHttpMethodHead is a ApiDestinationHttpMethod enum value
14198	ApiDestinationHttpMethodHead = "HEAD"
14199
14200	// ApiDestinationHttpMethodOptions is a ApiDestinationHttpMethod enum value
14201	ApiDestinationHttpMethodOptions = "OPTIONS"
14202
14203	// ApiDestinationHttpMethodPut is a ApiDestinationHttpMethod enum value
14204	ApiDestinationHttpMethodPut = "PUT"
14205
14206	// ApiDestinationHttpMethodPatch is a ApiDestinationHttpMethod enum value
14207	ApiDestinationHttpMethodPatch = "PATCH"
14208
14209	// ApiDestinationHttpMethodDelete is a ApiDestinationHttpMethod enum value
14210	ApiDestinationHttpMethodDelete = "DELETE"
14211)
14212
14213// ApiDestinationHttpMethod_Values returns all elements of the ApiDestinationHttpMethod enum
14214func ApiDestinationHttpMethod_Values() []string {
14215	return []string{
14216		ApiDestinationHttpMethodPost,
14217		ApiDestinationHttpMethodGet,
14218		ApiDestinationHttpMethodHead,
14219		ApiDestinationHttpMethodOptions,
14220		ApiDestinationHttpMethodPut,
14221		ApiDestinationHttpMethodPatch,
14222		ApiDestinationHttpMethodDelete,
14223	}
14224}
14225
14226const (
14227	// ApiDestinationStateActive is a ApiDestinationState enum value
14228	ApiDestinationStateActive = "ACTIVE"
14229
14230	// ApiDestinationStateInactive is a ApiDestinationState enum value
14231	ApiDestinationStateInactive = "INACTIVE"
14232)
14233
14234// ApiDestinationState_Values returns all elements of the ApiDestinationState enum
14235func ApiDestinationState_Values() []string {
14236	return []string{
14237		ApiDestinationStateActive,
14238		ApiDestinationStateInactive,
14239	}
14240}
14241
14242const (
14243	// ArchiveStateEnabled is a ArchiveState enum value
14244	ArchiveStateEnabled = "ENABLED"
14245
14246	// ArchiveStateDisabled is a ArchiveState enum value
14247	ArchiveStateDisabled = "DISABLED"
14248
14249	// ArchiveStateCreating is a ArchiveState enum value
14250	ArchiveStateCreating = "CREATING"
14251
14252	// ArchiveStateUpdating is a ArchiveState enum value
14253	ArchiveStateUpdating = "UPDATING"
14254
14255	// ArchiveStateCreateFailed is a ArchiveState enum value
14256	ArchiveStateCreateFailed = "CREATE_FAILED"
14257
14258	// ArchiveStateUpdateFailed is a ArchiveState enum value
14259	ArchiveStateUpdateFailed = "UPDATE_FAILED"
14260)
14261
14262// ArchiveState_Values returns all elements of the ArchiveState enum
14263func ArchiveState_Values() []string {
14264	return []string{
14265		ArchiveStateEnabled,
14266		ArchiveStateDisabled,
14267		ArchiveStateCreating,
14268		ArchiveStateUpdating,
14269		ArchiveStateCreateFailed,
14270		ArchiveStateUpdateFailed,
14271	}
14272}
14273
14274const (
14275	// AssignPublicIpEnabled is a AssignPublicIp enum value
14276	AssignPublicIpEnabled = "ENABLED"
14277
14278	// AssignPublicIpDisabled is a AssignPublicIp enum value
14279	AssignPublicIpDisabled = "DISABLED"
14280)
14281
14282// AssignPublicIp_Values returns all elements of the AssignPublicIp enum
14283func AssignPublicIp_Values() []string {
14284	return []string{
14285		AssignPublicIpEnabled,
14286		AssignPublicIpDisabled,
14287	}
14288}
14289
14290const (
14291	// ConnectionAuthorizationTypeBasic is a ConnectionAuthorizationType enum value
14292	ConnectionAuthorizationTypeBasic = "BASIC"
14293
14294	// ConnectionAuthorizationTypeOauthClientCredentials is a ConnectionAuthorizationType enum value
14295	ConnectionAuthorizationTypeOauthClientCredentials = "OAUTH_CLIENT_CREDENTIALS"
14296
14297	// ConnectionAuthorizationTypeApiKey is a ConnectionAuthorizationType enum value
14298	ConnectionAuthorizationTypeApiKey = "API_KEY"
14299)
14300
14301// ConnectionAuthorizationType_Values returns all elements of the ConnectionAuthorizationType enum
14302func ConnectionAuthorizationType_Values() []string {
14303	return []string{
14304		ConnectionAuthorizationTypeBasic,
14305		ConnectionAuthorizationTypeOauthClientCredentials,
14306		ConnectionAuthorizationTypeApiKey,
14307	}
14308}
14309
14310const (
14311	// ConnectionOAuthHttpMethodGet is a ConnectionOAuthHttpMethod enum value
14312	ConnectionOAuthHttpMethodGet = "GET"
14313
14314	// ConnectionOAuthHttpMethodPost is a ConnectionOAuthHttpMethod enum value
14315	ConnectionOAuthHttpMethodPost = "POST"
14316
14317	// ConnectionOAuthHttpMethodPut is a ConnectionOAuthHttpMethod enum value
14318	ConnectionOAuthHttpMethodPut = "PUT"
14319)
14320
14321// ConnectionOAuthHttpMethod_Values returns all elements of the ConnectionOAuthHttpMethod enum
14322func ConnectionOAuthHttpMethod_Values() []string {
14323	return []string{
14324		ConnectionOAuthHttpMethodGet,
14325		ConnectionOAuthHttpMethodPost,
14326		ConnectionOAuthHttpMethodPut,
14327	}
14328}
14329
14330const (
14331	// ConnectionStateCreating is a ConnectionState enum value
14332	ConnectionStateCreating = "CREATING"
14333
14334	// ConnectionStateUpdating is a ConnectionState enum value
14335	ConnectionStateUpdating = "UPDATING"
14336
14337	// ConnectionStateDeleting is a ConnectionState enum value
14338	ConnectionStateDeleting = "DELETING"
14339
14340	// ConnectionStateAuthorized is a ConnectionState enum value
14341	ConnectionStateAuthorized = "AUTHORIZED"
14342
14343	// ConnectionStateDeauthorized is a ConnectionState enum value
14344	ConnectionStateDeauthorized = "DEAUTHORIZED"
14345
14346	// ConnectionStateAuthorizing is a ConnectionState enum value
14347	ConnectionStateAuthorizing = "AUTHORIZING"
14348
14349	// ConnectionStateDeauthorizing is a ConnectionState enum value
14350	ConnectionStateDeauthorizing = "DEAUTHORIZING"
14351)
14352
14353// ConnectionState_Values returns all elements of the ConnectionState enum
14354func ConnectionState_Values() []string {
14355	return []string{
14356		ConnectionStateCreating,
14357		ConnectionStateUpdating,
14358		ConnectionStateDeleting,
14359		ConnectionStateAuthorized,
14360		ConnectionStateDeauthorized,
14361		ConnectionStateAuthorizing,
14362		ConnectionStateDeauthorizing,
14363	}
14364}
14365
14366const (
14367	// EventSourceStatePending is a EventSourceState enum value
14368	EventSourceStatePending = "PENDING"
14369
14370	// EventSourceStateActive is a EventSourceState enum value
14371	EventSourceStateActive = "ACTIVE"
14372
14373	// EventSourceStateDeleted is a EventSourceState enum value
14374	EventSourceStateDeleted = "DELETED"
14375)
14376
14377// EventSourceState_Values returns all elements of the EventSourceState enum
14378func EventSourceState_Values() []string {
14379	return []string{
14380		EventSourceStatePending,
14381		EventSourceStateActive,
14382		EventSourceStateDeleted,
14383	}
14384}
14385
14386const (
14387	// LaunchTypeEc2 is a LaunchType enum value
14388	LaunchTypeEc2 = "EC2"
14389
14390	// LaunchTypeFargate is a LaunchType enum value
14391	LaunchTypeFargate = "FARGATE"
14392)
14393
14394// LaunchType_Values returns all elements of the LaunchType enum
14395func LaunchType_Values() []string {
14396	return []string{
14397		LaunchTypeEc2,
14398		LaunchTypeFargate,
14399	}
14400}
14401
14402const (
14403	// ReplayStateStarting is a ReplayState enum value
14404	ReplayStateStarting = "STARTING"
14405
14406	// ReplayStateRunning is a ReplayState enum value
14407	ReplayStateRunning = "RUNNING"
14408
14409	// ReplayStateCancelling is a ReplayState enum value
14410	ReplayStateCancelling = "CANCELLING"
14411
14412	// ReplayStateCompleted is a ReplayState enum value
14413	ReplayStateCompleted = "COMPLETED"
14414
14415	// ReplayStateCancelled is a ReplayState enum value
14416	ReplayStateCancelled = "CANCELLED"
14417
14418	// ReplayStateFailed is a ReplayState enum value
14419	ReplayStateFailed = "FAILED"
14420)
14421
14422// ReplayState_Values returns all elements of the ReplayState enum
14423func ReplayState_Values() []string {
14424	return []string{
14425		ReplayStateStarting,
14426		ReplayStateRunning,
14427		ReplayStateCancelling,
14428		ReplayStateCompleted,
14429		ReplayStateCancelled,
14430		ReplayStateFailed,
14431	}
14432}
14433
14434const (
14435	// RuleStateEnabled is a RuleState enum value
14436	RuleStateEnabled = "ENABLED"
14437
14438	// RuleStateDisabled is a RuleState enum value
14439	RuleStateDisabled = "DISABLED"
14440)
14441
14442// RuleState_Values returns all elements of the RuleState enum
14443func RuleState_Values() []string {
14444	return []string{
14445		RuleStateEnabled,
14446		RuleStateDisabled,
14447	}
14448}
14449