7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/lambda/LambdaRequest.h>
12#include <aws/lambda/Lambda_EXPORTS.h>
13#include <aws/lambda/model/AmazonManagedKafkaEventSourceConfig.h>
14#include <aws/lambda/model/DestinationConfig.h>
15#include <aws/lambda/model/DocumentDBEventSourceConfig.h>
16#include <aws/lambda/model/EventSourceMappingLoggingConfig.h>
17#include <aws/lambda/model/EventSourceMappingMetricsConfig.h>
18#include <aws/lambda/model/EventSourcePosition.h>
19#include <aws/lambda/model/FilterCriteria.h>
20#include <aws/lambda/model/FunctionResponseType.h>
21#include <aws/lambda/model/ProvisionedPollerConfig.h>
22#include <aws/lambda/model/ScalingConfig.h>
23#include <aws/lambda/model/SelfManagedEventSource.h>
24#include <aws/lambda/model/SelfManagedKafkaEventSourceConfig.h>
25#include <aws/lambda/model/SourceAccessConfiguration.h>
62 template <
typename EventSourceArnT = Aws::String>
64 m_eventSourceArnHasBeenSet =
true;
65 m_eventSourceArn = std::forward<EventSourceArnT>(value);
67 template <
typename EventSourceArnT = Aws::String>
89 template <
typename FunctionNameT = Aws::String>
91 m_functionNameHasBeenSet =
true;
92 m_functionName = std::forward<FunctionNameT>(value);
94 template <
typename FunctionNameT = Aws::String>
109 m_enabledHasBeenSet =
true;
136 m_batchSizeHasBeenSet =
true;
154 template <
typename FilterCriteriaT = FilterCriteria>
156 m_filterCriteriaHasBeenSet =
true;
157 m_filterCriteria = std::forward<FilterCriteriaT>(value);
159 template <
typename FilterCriteriaT = FilterCriteria>
185 m_maximumBatchingWindowInSecondsHasBeenSet =
true;
186 m_maximumBatchingWindowInSeconds = value;
202 m_parallelizationFactorHasBeenSet =
true;
203 m_parallelizationFactor = value;
221 m_startingPositionHasBeenSet =
true;
222 m_startingPosition = value;
238 template <
typename StartingPositionTimestampT = Aws::Utils::DateTime>
240 m_startingPositionTimestampHasBeenSet =
true;
241 m_startingPositionTimestamp = std::forward<StartingPositionTimestampT>(value);
243 template <
typename StartingPositionTimestampT = Aws::Utils::DateTime>
258 template <
typename DestinationConfigT = DestinationConfig>
260 m_destinationConfigHasBeenSet =
true;
261 m_destinationConfig = std::forward<DestinationConfigT>(value);
263 template <
typename DestinationConfigT = DestinationConfig>
279 m_maximumRecordAgeInSecondsHasBeenSet =
true;
280 m_maximumRecordAgeInSeconds = value;
296 m_bisectBatchOnFunctionErrorHasBeenSet =
true;
297 m_bisectBatchOnFunctionError = value;
315 m_maximumRetryAttemptsHasBeenSet =
true;
316 m_maximumRetryAttempts = value;
330 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
332 m_tagsHasBeenSet =
true;
333 m_tags = std::forward<TagsT>(value);
335 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
337 SetTags(std::forward<TagsT>(value));
340 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
342 m_tagsHasBeenSet =
true;
343 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
357 m_tumblingWindowInSecondsHasBeenSet =
true;
358 m_tumblingWindowInSeconds = value;
372 template <
typename TopicsT = Aws::Vector<Aws::String>>
374 m_topicsHasBeenSet =
true;
375 m_topics = std::forward<TopicsT>(value);
377 template <
typename TopicsT = Aws::Vector<Aws::String>>
382 template <
typename TopicsT = Aws::String>
384 m_topicsHasBeenSet =
true;
385 m_topics.emplace_back(std::forward<TopicsT>(value));
396 template <
typename QueuesT = Aws::Vector<Aws::String>>
398 m_queuesHasBeenSet =
true;
399 m_queues = std::forward<QueuesT>(value);
401 template <
typename QueuesT = Aws::Vector<Aws::String>>
406 template <
typename QueuesT = Aws::String>
408 m_queuesHasBeenSet =
true;
409 m_queues.emplace_back(std::forward<QueuesT>(value));
421 template <
typename SourceAccessConfigurationsT = Aws::Vector<SourceAccessConfiguration>>
423 m_sourceAccessConfigurationsHasBeenSet =
true;
424 m_sourceAccessConfigurations = std::forward<SourceAccessConfigurationsT>(value);
426 template <
typename SourceAccessConfigurationsT = Aws::Vector<SourceAccessConfiguration>>
431 template <
typename SourceAccessConfigurationsT = SourceAccessConfiguration>
433 m_sourceAccessConfigurationsHasBeenSet =
true;
434 m_sourceAccessConfigurations.emplace_back(std::forward<SourceAccessConfigurationsT>(value));
445 template <
typename SelfManagedEventSourceT = SelfManagedEventSource>
447 m_selfManagedEventSourceHasBeenSet =
true;
448 m_selfManagedEventSource = std::forward<SelfManagedEventSourceT>(value);
450 template <
typename SelfManagedEventSourceT = SelfManagedEventSource>
465 template <
typename FunctionResponseTypesT = Aws::Vector<FunctionResponseType>>
467 m_functionResponseTypesHasBeenSet =
true;
468 m_functionResponseTypes = std::forward<FunctionResponseTypesT>(value);
470 template <
typename FunctionResponseTypesT = Aws::Vector<FunctionResponseType>>
476 m_functionResponseTypesHasBeenSet =
true;
477 m_functionResponseTypes.push_back(value);
488 return m_amazonManagedKafkaEventSourceConfig;
491 template <
typename AmazonManagedKafkaEventSourceConfigT = AmazonManagedKafkaEventSourceConfig>
493 m_amazonManagedKafkaEventSourceConfigHasBeenSet =
true;
494 m_amazonManagedKafkaEventSourceConfig = std::forward<AmazonManagedKafkaEventSourceConfigT>(value);
496 template <
typename AmazonManagedKafkaEventSourceConfigT = AmazonManagedKafkaEventSourceConfig>
509 return m_selfManagedKafkaEventSourceConfig;
512 template <
typename SelfManagedKafkaEventSourceConfigT = SelfManagedKafkaEventSourceConfig>
514 m_selfManagedKafkaEventSourceConfigHasBeenSet =
true;
515 m_selfManagedKafkaEventSourceConfig = std::forward<SelfManagedKafkaEventSourceConfigT>(value);
517 template <
typename SelfManagedKafkaEventSourceConfigT = SelfManagedKafkaEventSourceConfig>
533 template <
typename ScalingConfigT = ScalingConfig>
535 m_scalingConfigHasBeenSet =
true;
536 m_scalingConfig = std::forward<ScalingConfigT>(value);
538 template <
typename ScalingConfigT = ScalingConfig>
551 template <
typename DocumentDBEventSourceConfigT = DocumentDBEventSourceConfig>
553 m_documentDBEventSourceConfigHasBeenSet =
true;
554 m_documentDBEventSourceConfig = std::forward<DocumentDBEventSourceConfigT>(value);
556 template <
typename DocumentDBEventSourceConfigT = DocumentDBEventSourceConfig>
573 template <
typename KMSKeyArnT = Aws::String>
575 m_kMSKeyArnHasBeenSet =
true;
576 m_kMSKeyArn = std::forward<KMSKeyArnT>(value);
578 template <
typename KMSKeyArnT = Aws::String>
593 template <
typename MetricsConfigT = EventSourceMappingMetricsConfig>
595 m_metricsConfigHasBeenSet =
true;
596 m_metricsConfig = std::forward<MetricsConfigT>(value);
598 template <
typename MetricsConfigT = EventSourceMappingMetricsConfig>
614 template <
typename LoggingConfigT = EventSourceMappingLoggingConfig>
616 m_loggingConfigHasBeenSet =
true;
617 m_loggingConfig = std::forward<LoggingConfigT>(value);
619 template <
typename LoggingConfigT = EventSourceMappingLoggingConfig>
635 template <
typename ProvisionedPollerConfigT = ProvisionedPollerConfig>
637 m_provisionedPollerConfigHasBeenSet =
true;
638 m_provisionedPollerConfig = std::forward<ProvisionedPollerConfigT>(value);
640 template <
typename ProvisionedPollerConfigT = ProvisionedPollerConfig>
651 bool m_enabled{
false};
655 FilterCriteria m_filterCriteria;
657 int m_maximumBatchingWindowInSeconds{0};
659 int m_parallelizationFactor{0};
665 DestinationConfig m_destinationConfig;
667 int m_maximumRecordAgeInSeconds{0};
669 bool m_bisectBatchOnFunctionError{
false};
671 int m_maximumRetryAttempts{0};
675 int m_tumblingWindowInSeconds{0};
683 SelfManagedEventSource m_selfManagedEventSource;
687 AmazonManagedKafkaEventSourceConfig m_amazonManagedKafkaEventSourceConfig;
689 SelfManagedKafkaEventSourceConfig m_selfManagedKafkaEventSourceConfig;
691 ScalingConfig m_scalingConfig;
693 DocumentDBEventSourceConfig m_documentDBEventSourceConfig;
697 EventSourceMappingMetricsConfig m_metricsConfig;
699 EventSourceMappingLoggingConfig m_loggingConfig;
701 ProvisionedPollerConfig m_provisionedPollerConfig;
702 bool m_eventSourceArnHasBeenSet =
false;
703 bool m_functionNameHasBeenSet =
false;
704 bool m_enabledHasBeenSet =
false;
705 bool m_batchSizeHasBeenSet =
false;
706 bool m_filterCriteriaHasBeenSet =
false;
707 bool m_maximumBatchingWindowInSecondsHasBeenSet =
false;
708 bool m_parallelizationFactorHasBeenSet =
false;
709 bool m_startingPositionHasBeenSet =
false;
710 bool m_startingPositionTimestampHasBeenSet =
false;
711 bool m_destinationConfigHasBeenSet =
false;
712 bool m_maximumRecordAgeInSecondsHasBeenSet =
false;
713 bool m_bisectBatchOnFunctionErrorHasBeenSet =
false;
714 bool m_maximumRetryAttemptsHasBeenSet =
false;
715 bool m_tagsHasBeenSet =
false;
716 bool m_tumblingWindowInSecondsHasBeenSet =
false;
717 bool m_topicsHasBeenSet =
false;
718 bool m_queuesHasBeenSet =
false;
719 bool m_sourceAccessConfigurationsHasBeenSet =
false;
720 bool m_selfManagedEventSourceHasBeenSet =
false;
721 bool m_functionResponseTypesHasBeenSet =
false;
722 bool m_amazonManagedKafkaEventSourceConfigHasBeenSet =
false;
723 bool m_selfManagedKafkaEventSourceConfigHasBeenSet =
false;
724 bool m_scalingConfigHasBeenSet =
false;
725 bool m_documentDBEventSourceConfigHasBeenSet =
false;
726 bool m_kMSKeyArnHasBeenSet =
false;
727 bool m_metricsConfigHasBeenSet =
false;
728 bool m_loggingConfigHasBeenSet =
false;
729 bool m_provisionedPollerConfigHasBeenSet =
false;
CreateEventSourceMappingRequest & WithMetricsConfig(MetricsConfigT &&value)
const SelfManagedEventSource & GetSelfManagedEventSource() const
CreateEventSourceMappingRequest & WithTumblingWindowInSeconds(int value)
void SetMaximumBatchingWindowInSeconds(int value)
CreateEventSourceMappingRequest & WithKMSKeyArn(KMSKeyArnT &&value)
const Aws::Utils::DateTime & GetStartingPositionTimestamp() const
virtual const char * GetServiceRequestName() const override
const ProvisionedPollerConfig & GetProvisionedPollerConfig() const
CreateEventSourceMappingRequest & WithBatchSize(int value)
int GetMaximumRecordAgeInSeconds() const
bool ParallelizationFactorHasBeenSet() const
CreateEventSourceMappingRequest & WithEventSourceArn(EventSourceArnT &&value)
int GetParallelizationFactor() const
bool AmazonManagedKafkaEventSourceConfigHasBeenSet() const
void SetScalingConfig(ScalingConfigT &&value)
CreateEventSourceMappingRequest & AddFunctionResponseTypes(FunctionResponseType value)
CreateEventSourceMappingRequest & WithDestinationConfig(DestinationConfigT &&value)
bool FilterCriteriaHasBeenSet() const
void SetFunctionResponseTypes(FunctionResponseTypesT &&value)
void SetSelfManagedEventSource(SelfManagedEventSourceT &&value)
void SetLoggingConfig(LoggingConfigT &&value)
CreateEventSourceMappingRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateEventSourceMappingRequest & WithBisectBatchOnFunctionError(bool value)
const SelfManagedKafkaEventSourceConfig & GetSelfManagedKafkaEventSourceConfig() const
CreateEventSourceMappingRequest & WithTags(TagsT &&value)
void SetStartingPosition(EventSourcePosition value)
void SetEnabled(bool value)
CreateEventSourceMappingRequest & WithAmazonManagedKafkaEventSourceConfig(AmazonManagedKafkaEventSourceConfigT &&value)
CreateEventSourceMappingRequest & WithFilterCriteria(FilterCriteriaT &&value)
CreateEventSourceMappingRequest & WithQueues(QueuesT &&value)
void SetDocumentDBEventSourceConfig(DocumentDBEventSourceConfigT &&value)
bool MaximumRetryAttemptsHasBeenSet() const
bool MaximumBatchingWindowInSecondsHasBeenSet() const
void SetMetricsConfig(MetricsConfigT &&value)
CreateEventSourceMappingRequest & WithMaximumRecordAgeInSeconds(int value)
void SetAmazonManagedKafkaEventSourceConfig(AmazonManagedKafkaEventSourceConfigT &&value)
bool FunctionNameHasBeenSet() const
const AmazonManagedKafkaEventSourceConfig & GetAmazonManagedKafkaEventSourceConfig() const
bool SelfManagedKafkaEventSourceConfigHasBeenSet() const
bool MaximumRecordAgeInSecondsHasBeenSet() const
const FilterCriteria & GetFilterCriteria() const
EventSourcePosition GetStartingPosition() const
bool StartingPositionHasBeenSet() const
bool ProvisionedPollerConfigHasBeenSet() const
bool TopicsHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
bool LoggingConfigHasBeenSet() const
const EventSourceMappingLoggingConfig & GetLoggingConfig() const
AWS_LAMBDA_API CreateEventSourceMappingRequest()=default
bool StartingPositionTimestampHasBeenSet() const
void SetFunctionName(FunctionNameT &&value)
void SetFilterCriteria(FilterCriteriaT &&value)
const Aws::String & GetEventSourceArn() const
CreateEventSourceMappingRequest & WithFunctionName(FunctionNameT &&value)
bool EventSourceArnHasBeenSet() const
CreateEventSourceMappingRequest & AddQueues(QueuesT &&value)
const Aws::Vector< FunctionResponseType > & GetFunctionResponseTypes() const
void SetSourceAccessConfigurations(SourceAccessConfigurationsT &&value)
CreateEventSourceMappingRequest & WithMaximumBatchingWindowInSeconds(int value)
void SetProvisionedPollerConfig(ProvisionedPollerConfigT &&value)
bool KMSKeyArnHasBeenSet() const
const DestinationConfig & GetDestinationConfig() const
CreateEventSourceMappingRequest & WithParallelizationFactor(int value)
bool ScalingConfigHasBeenSet() const
CreateEventSourceMappingRequest & WithSelfManagedKafkaEventSourceConfig(SelfManagedKafkaEventSourceConfigT &&value)
CreateEventSourceMappingRequest & WithStartingPosition(EventSourcePosition value)
void SetEventSourceArn(EventSourceArnT &&value)
bool MetricsConfigHasBeenSet() const
CreateEventSourceMappingRequest & WithSelfManagedEventSource(SelfManagedEventSourceT &&value)
void SetTopics(TopicsT &&value)
bool TagsHasBeenSet() const
CreateEventSourceMappingRequest & WithScalingConfig(ScalingConfigT &&value)
CreateEventSourceMappingRequest & AddTopics(TopicsT &&value)
CreateEventSourceMappingRequest & AddSourceAccessConfigurations(SourceAccessConfigurationsT &&value)
void SetParallelizationFactor(int value)
bool SourceAccessConfigurationsHasBeenSet() const
bool DocumentDBEventSourceConfigHasBeenSet() const
void SetTumblingWindowInSeconds(int value)
void SetMaximumRecordAgeInSeconds(int value)
bool GetBisectBatchOnFunctionError() const
int GetTumblingWindowInSeconds() const
const Aws::String & GetKMSKeyArn() const
AWS_LAMBDA_API Aws::String SerializePayload() const override
CreateEventSourceMappingRequest & WithTopics(TopicsT &&value)
const Aws::Vector< Aws::String > & GetTopics() const
const Aws::Vector< Aws::String > & GetQueues() const
bool QueuesHasBeenSet() const
CreateEventSourceMappingRequest & WithDocumentDBEventSourceConfig(DocumentDBEventSourceConfigT &&value)
void SetDestinationConfig(DestinationConfigT &&value)
void SetSelfManagedKafkaEventSourceConfig(SelfManagedKafkaEventSourceConfigT &&value)
const EventSourceMappingMetricsConfig & GetMetricsConfig() const
CreateEventSourceMappingRequest & WithMaximumRetryAttempts(int value)
const DocumentDBEventSourceConfig & GetDocumentDBEventSourceConfig() const
CreateEventSourceMappingRequest & WithLoggingConfig(LoggingConfigT &&value)
CreateEventSourceMappingRequest & WithStartingPositionTimestamp(StartingPositionTimestampT &&value)
void SetKMSKeyArn(KMSKeyArnT &&value)
bool SelfManagedEventSourceHasBeenSet() const
bool DestinationConfigHasBeenSet() const
CreateEventSourceMappingRequest & WithFunctionResponseTypes(FunctionResponseTypesT &&value)
void SetQueues(QueuesT &&value)
const Aws::Vector< SourceAccessConfiguration > & GetSourceAccessConfigurations() const
CreateEventSourceMappingRequest & WithProvisionedPollerConfig(ProvisionedPollerConfigT &&value)
void SetTags(TagsT &&value)
const Aws::String & GetFunctionName() const
bool BisectBatchOnFunctionErrorHasBeenSet() const
void SetBisectBatchOnFunctionError(bool value)
void SetBatchSize(int value)
bool TumblingWindowInSecondsHasBeenSet() const
int GetMaximumBatchingWindowInSeconds() const
void SetMaximumRetryAttempts(int value)
const ScalingConfig & GetScalingConfig() const
bool EnabledHasBeenSet() const
int GetMaximumRetryAttempts() const
void SetStartingPositionTimestamp(StartingPositionTimestampT &&value)
CreateEventSourceMappingRequest & WithEnabled(bool value)
CreateEventSourceMappingRequest & WithSourceAccessConfigurations(SourceAccessConfigurationsT &&value)
bool FunctionResponseTypesHasBeenSet() const
bool BatchSizeHasBeenSet() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector