1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/lambda/Lambda_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/lambda/model/EventSourcePosition.h>
10 #include <aws/core/utils/DateTime.h>
11 #include <aws/lambda/model/DestinationConfig.h>
12 #include <aws/core/utils/memory/stl/AWSVector.h>
13 #include <aws/lambda/model/SelfManagedEventSource.h>
14 #include <aws/lambda/model/SourceAccessConfiguration.h>
15 #include <aws/lambda/model/FunctionResponseType.h>
16 #include <utility>
17 
18 namespace Aws
19 {
20 namespace Utils
21 {
22 namespace Json
23 {
24   class JsonValue;
25   class JsonView;
26 } // namespace Json
27 } // namespace Utils
28 namespace Lambda
29 {
30 namespace Model
31 {
32 
33   /**
34    * <p>A mapping between an Amazon Web Services resource and a Lambda function. For
35    * details, see <a>CreateEventSourceMapping</a>.</p><p><h3>See Also:</h3>   <a
36    * href="http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/EventSourceMappingConfiguration">AWS
37    * API Reference</a></p>
38    */
39   class AWS_LAMBDA_API EventSourceMappingConfiguration
40   {
41   public:
42     EventSourceMappingConfiguration();
43     EventSourceMappingConfiguration(Aws::Utils::Json::JsonView jsonValue);
44     EventSourceMappingConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
45     Aws::Utils::Json::JsonValue Jsonize() const;
46 
47 
48     /**
49      * <p>The identifier of the event source mapping.</p>
50      */
GetUUID()51     inline const Aws::String& GetUUID() const{ return m_uUID; }
52 
53     /**
54      * <p>The identifier of the event source mapping.</p>
55      */
UUIDHasBeenSet()56     inline bool UUIDHasBeenSet() const { return m_uUIDHasBeenSet; }
57 
58     /**
59      * <p>The identifier of the event source mapping.</p>
60      */
SetUUID(const Aws::String & value)61     inline void SetUUID(const Aws::String& value) { m_uUIDHasBeenSet = true; m_uUID = value; }
62 
63     /**
64      * <p>The identifier of the event source mapping.</p>
65      */
SetUUID(Aws::String && value)66     inline void SetUUID(Aws::String&& value) { m_uUIDHasBeenSet = true; m_uUID = std::move(value); }
67 
68     /**
69      * <p>The identifier of the event source mapping.</p>
70      */
SetUUID(const char * value)71     inline void SetUUID(const char* value) { m_uUIDHasBeenSet = true; m_uUID.assign(value); }
72 
73     /**
74      * <p>The identifier of the event source mapping.</p>
75      */
WithUUID(const Aws::String & value)76     inline EventSourceMappingConfiguration& WithUUID(const Aws::String& value) { SetUUID(value); return *this;}
77 
78     /**
79      * <p>The identifier of the event source mapping.</p>
80      */
WithUUID(Aws::String && value)81     inline EventSourceMappingConfiguration& WithUUID(Aws::String&& value) { SetUUID(std::move(value)); return *this;}
82 
83     /**
84      * <p>The identifier of the event source mapping.</p>
85      */
WithUUID(const char * value)86     inline EventSourceMappingConfiguration& WithUUID(const char* value) { SetUUID(value); return *this;}
87 
88 
89     /**
90      * <p>The position in a stream from which to start reading. Required for Amazon
91      * Kinesis, Amazon DynamoDB, and Amazon MSK stream sources.
92      * <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams.</p>
93      */
GetStartingPosition()94     inline const EventSourcePosition& GetStartingPosition() const{ return m_startingPosition; }
95 
96     /**
97      * <p>The position in a stream from which to start reading. Required for Amazon
98      * Kinesis, Amazon DynamoDB, and Amazon MSK stream sources.
99      * <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams.</p>
100      */
StartingPositionHasBeenSet()101     inline bool StartingPositionHasBeenSet() const { return m_startingPositionHasBeenSet; }
102 
103     /**
104      * <p>The position in a stream from which to start reading. Required for Amazon
105      * Kinesis, Amazon DynamoDB, and Amazon MSK stream sources.
106      * <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams.</p>
107      */
SetStartingPosition(const EventSourcePosition & value)108     inline void SetStartingPosition(const EventSourcePosition& value) { m_startingPositionHasBeenSet = true; m_startingPosition = value; }
109 
110     /**
111      * <p>The position in a stream from which to start reading. Required for Amazon
112      * Kinesis, Amazon DynamoDB, and Amazon MSK stream sources.
113      * <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams.</p>
114      */
SetStartingPosition(EventSourcePosition && value)115     inline void SetStartingPosition(EventSourcePosition&& value) { m_startingPositionHasBeenSet = true; m_startingPosition = std::move(value); }
116 
117     /**
118      * <p>The position in a stream from which to start reading. Required for Amazon
119      * Kinesis, Amazon DynamoDB, and Amazon MSK stream sources.
120      * <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams.</p>
121      */
WithStartingPosition(const EventSourcePosition & value)122     inline EventSourceMappingConfiguration& WithStartingPosition(const EventSourcePosition& value) { SetStartingPosition(value); return *this;}
123 
124     /**
125      * <p>The position in a stream from which to start reading. Required for Amazon
126      * Kinesis, Amazon DynamoDB, and Amazon MSK stream sources.
127      * <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams.</p>
128      */
WithStartingPosition(EventSourcePosition && value)129     inline EventSourceMappingConfiguration& WithStartingPosition(EventSourcePosition&& value) { SetStartingPosition(std::move(value)); return *this;}
130 
131 
132     /**
133      * <p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time
134      * from which to start reading.</p>
135      */
GetStartingPositionTimestamp()136     inline const Aws::Utils::DateTime& GetStartingPositionTimestamp() const{ return m_startingPositionTimestamp; }
137 
138     /**
139      * <p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time
140      * from which to start reading.</p>
141      */
StartingPositionTimestampHasBeenSet()142     inline bool StartingPositionTimestampHasBeenSet() const { return m_startingPositionTimestampHasBeenSet; }
143 
144     /**
145      * <p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time
146      * from which to start reading.</p>
147      */
SetStartingPositionTimestamp(const Aws::Utils::DateTime & value)148     inline void SetStartingPositionTimestamp(const Aws::Utils::DateTime& value) { m_startingPositionTimestampHasBeenSet = true; m_startingPositionTimestamp = value; }
149 
150     /**
151      * <p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time
152      * from which to start reading.</p>
153      */
SetStartingPositionTimestamp(Aws::Utils::DateTime && value)154     inline void SetStartingPositionTimestamp(Aws::Utils::DateTime&& value) { m_startingPositionTimestampHasBeenSet = true; m_startingPositionTimestamp = std::move(value); }
155 
156     /**
157      * <p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time
158      * from which to start reading.</p>
159      */
WithStartingPositionTimestamp(const Aws::Utils::DateTime & value)160     inline EventSourceMappingConfiguration& WithStartingPositionTimestamp(const Aws::Utils::DateTime& value) { SetStartingPositionTimestamp(value); return *this;}
161 
162     /**
163      * <p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time
164      * from which to start reading.</p>
165      */
WithStartingPositionTimestamp(Aws::Utils::DateTime && value)166     inline EventSourceMappingConfiguration& WithStartingPositionTimestamp(Aws::Utils::DateTime&& value) { SetStartingPositionTimestamp(std::move(value)); return *this;}
167 
168 
169     /**
170      * <p>The maximum number of records in each batch that Lambda pulls from your
171      * stream or queue and sends to your function. Lambda passes all of the records in
172      * the batch to the function in a single call, up to the payload limit for
173      * synchronous invocation (6 MB).</p> <p>Default value: Varies by service. For
174      * Amazon SQS, the default is 10. For all other services, the default is 100.</p>
175      * <p>Related setting: When you set <code>BatchSize</code> to a value greater than
176      * 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
177      */
GetBatchSize()178     inline int GetBatchSize() const{ return m_batchSize; }
179 
180     /**
181      * <p>The maximum number of records in each batch that Lambda pulls from your
182      * stream or queue and sends to your function. Lambda passes all of the records in
183      * the batch to the function in a single call, up to the payload limit for
184      * synchronous invocation (6 MB).</p> <p>Default value: Varies by service. For
185      * Amazon SQS, the default is 10. For all other services, the default is 100.</p>
186      * <p>Related setting: When you set <code>BatchSize</code> to a value greater than
187      * 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
188      */
BatchSizeHasBeenSet()189     inline bool BatchSizeHasBeenSet() const { return m_batchSizeHasBeenSet; }
190 
191     /**
192      * <p>The maximum number of records in each batch that Lambda pulls from your
193      * stream or queue and sends to your function. Lambda passes all of the records in
194      * the batch to the function in a single call, up to the payload limit for
195      * synchronous invocation (6 MB).</p> <p>Default value: Varies by service. For
196      * Amazon SQS, the default is 10. For all other services, the default is 100.</p>
197      * <p>Related setting: When you set <code>BatchSize</code> to a value greater than
198      * 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
199      */
SetBatchSize(int value)200     inline void SetBatchSize(int value) { m_batchSizeHasBeenSet = true; m_batchSize = value; }
201 
202     /**
203      * <p>The maximum number of records in each batch that Lambda pulls from your
204      * stream or queue and sends to your function. Lambda passes all of the records in
205      * the batch to the function in a single call, up to the payload limit for
206      * synchronous invocation (6 MB).</p> <p>Default value: Varies by service. For
207      * Amazon SQS, the default is 10. For all other services, the default is 100.</p>
208      * <p>Related setting: When you set <code>BatchSize</code> to a value greater than
209      * 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
210      */
WithBatchSize(int value)211     inline EventSourceMappingConfiguration& WithBatchSize(int value) { SetBatchSize(value); return *this;}
212 
213 
214     /**
215      * <p>(Streams and Amazon SQS standard queues) The maximum amount of time, in
216      * seconds, that Lambda spends gathering records before invoking the function.</p>
217      * <p>Default: 0</p> <p>Related setting: When you set <code>BatchSize</code> to a
218      * value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code>
219      * to at least 1.</p>
220      */
GetMaximumBatchingWindowInSeconds()221     inline int GetMaximumBatchingWindowInSeconds() const{ return m_maximumBatchingWindowInSeconds; }
222 
223     /**
224      * <p>(Streams and Amazon SQS standard queues) The maximum amount of time, in
225      * seconds, that Lambda spends gathering records before invoking the function.</p>
226      * <p>Default: 0</p> <p>Related setting: When you set <code>BatchSize</code> to a
227      * value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code>
228      * to at least 1.</p>
229      */
MaximumBatchingWindowInSecondsHasBeenSet()230     inline bool MaximumBatchingWindowInSecondsHasBeenSet() const { return m_maximumBatchingWindowInSecondsHasBeenSet; }
231 
232     /**
233      * <p>(Streams and Amazon SQS standard queues) The maximum amount of time, in
234      * seconds, that Lambda spends gathering records before invoking the function.</p>
235      * <p>Default: 0</p> <p>Related setting: When you set <code>BatchSize</code> to a
236      * value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code>
237      * to at least 1.</p>
238      */
SetMaximumBatchingWindowInSeconds(int value)239     inline void SetMaximumBatchingWindowInSeconds(int value) { m_maximumBatchingWindowInSecondsHasBeenSet = true; m_maximumBatchingWindowInSeconds = value; }
240 
241     /**
242      * <p>(Streams and Amazon SQS standard queues) The maximum amount of time, in
243      * seconds, that Lambda spends gathering records before invoking the function.</p>
244      * <p>Default: 0</p> <p>Related setting: When you set <code>BatchSize</code> to a
245      * value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code>
246      * to at least 1.</p>
247      */
WithMaximumBatchingWindowInSeconds(int value)248     inline EventSourceMappingConfiguration& WithMaximumBatchingWindowInSeconds(int value) { SetMaximumBatchingWindowInSeconds(value); return *this;}
249 
250 
251     /**
252      * <p>(Streams only) The number of batches to process concurrently from each shard.
253      * The default value is 1.</p>
254      */
GetParallelizationFactor()255     inline int GetParallelizationFactor() const{ return m_parallelizationFactor; }
256 
257     /**
258      * <p>(Streams only) The number of batches to process concurrently from each shard.
259      * The default value is 1.</p>
260      */
ParallelizationFactorHasBeenSet()261     inline bool ParallelizationFactorHasBeenSet() const { return m_parallelizationFactorHasBeenSet; }
262 
263     /**
264      * <p>(Streams only) The number of batches to process concurrently from each shard.
265      * The default value is 1.</p>
266      */
SetParallelizationFactor(int value)267     inline void SetParallelizationFactor(int value) { m_parallelizationFactorHasBeenSet = true; m_parallelizationFactor = value; }
268 
269     /**
270      * <p>(Streams only) The number of batches to process concurrently from each shard.
271      * The default value is 1.</p>
272      */
WithParallelizationFactor(int value)273     inline EventSourceMappingConfiguration& WithParallelizationFactor(int value) { SetParallelizationFactor(value); return *this;}
274 
275 
276     /**
277      * <p>The Amazon Resource Name (ARN) of the event source.</p>
278      */
GetEventSourceArn()279     inline const Aws::String& GetEventSourceArn() const{ return m_eventSourceArn; }
280 
281     /**
282      * <p>The Amazon Resource Name (ARN) of the event source.</p>
283      */
EventSourceArnHasBeenSet()284     inline bool EventSourceArnHasBeenSet() const { return m_eventSourceArnHasBeenSet; }
285 
286     /**
287      * <p>The Amazon Resource Name (ARN) of the event source.</p>
288      */
SetEventSourceArn(const Aws::String & value)289     inline void SetEventSourceArn(const Aws::String& value) { m_eventSourceArnHasBeenSet = true; m_eventSourceArn = value; }
290 
291     /**
292      * <p>The Amazon Resource Name (ARN) of the event source.</p>
293      */
SetEventSourceArn(Aws::String && value)294     inline void SetEventSourceArn(Aws::String&& value) { m_eventSourceArnHasBeenSet = true; m_eventSourceArn = std::move(value); }
295 
296     /**
297      * <p>The Amazon Resource Name (ARN) of the event source.</p>
298      */
SetEventSourceArn(const char * value)299     inline void SetEventSourceArn(const char* value) { m_eventSourceArnHasBeenSet = true; m_eventSourceArn.assign(value); }
300 
301     /**
302      * <p>The Amazon Resource Name (ARN) of the event source.</p>
303      */
WithEventSourceArn(const Aws::String & value)304     inline EventSourceMappingConfiguration& WithEventSourceArn(const Aws::String& value) { SetEventSourceArn(value); return *this;}
305 
306     /**
307      * <p>The Amazon Resource Name (ARN) of the event source.</p>
308      */
WithEventSourceArn(Aws::String && value)309     inline EventSourceMappingConfiguration& WithEventSourceArn(Aws::String&& value) { SetEventSourceArn(std::move(value)); return *this;}
310 
311     /**
312      * <p>The Amazon Resource Name (ARN) of the event source.</p>
313      */
WithEventSourceArn(const char * value)314     inline EventSourceMappingConfiguration& WithEventSourceArn(const char* value) { SetEventSourceArn(value); return *this;}
315 
316 
317     /**
318      * <p>The ARN of the Lambda function.</p>
319      */
GetFunctionArn()320     inline const Aws::String& GetFunctionArn() const{ return m_functionArn; }
321 
322     /**
323      * <p>The ARN of the Lambda function.</p>
324      */
FunctionArnHasBeenSet()325     inline bool FunctionArnHasBeenSet() const { return m_functionArnHasBeenSet; }
326 
327     /**
328      * <p>The ARN of the Lambda function.</p>
329      */
SetFunctionArn(const Aws::String & value)330     inline void SetFunctionArn(const Aws::String& value) { m_functionArnHasBeenSet = true; m_functionArn = value; }
331 
332     /**
333      * <p>The ARN of the Lambda function.</p>
334      */
SetFunctionArn(Aws::String && value)335     inline void SetFunctionArn(Aws::String&& value) { m_functionArnHasBeenSet = true; m_functionArn = std::move(value); }
336 
337     /**
338      * <p>The ARN of the Lambda function.</p>
339      */
SetFunctionArn(const char * value)340     inline void SetFunctionArn(const char* value) { m_functionArnHasBeenSet = true; m_functionArn.assign(value); }
341 
342     /**
343      * <p>The ARN of the Lambda function.</p>
344      */
WithFunctionArn(const Aws::String & value)345     inline EventSourceMappingConfiguration& WithFunctionArn(const Aws::String& value) { SetFunctionArn(value); return *this;}
346 
347     /**
348      * <p>The ARN of the Lambda function.</p>
349      */
WithFunctionArn(Aws::String && value)350     inline EventSourceMappingConfiguration& WithFunctionArn(Aws::String&& value) { SetFunctionArn(std::move(value)); return *this;}
351 
352     /**
353      * <p>The ARN of the Lambda function.</p>
354      */
WithFunctionArn(const char * value)355     inline EventSourceMappingConfiguration& WithFunctionArn(const char* value) { SetFunctionArn(value); return *this;}
356 
357 
358     /**
359      * <p>The date that the event source mapping was last updated or that its state
360      * changed.</p>
361      */
GetLastModified()362     inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; }
363 
364     /**
365      * <p>The date that the event source mapping was last updated or that its state
366      * changed.</p>
367      */
LastModifiedHasBeenSet()368     inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; }
369 
370     /**
371      * <p>The date that the event source mapping was last updated or that its state
372      * changed.</p>
373      */
SetLastModified(const Aws::Utils::DateTime & value)374     inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModifiedHasBeenSet = true; m_lastModified = value; }
375 
376     /**
377      * <p>The date that the event source mapping was last updated or that its state
378      * changed.</p>
379      */
SetLastModified(Aws::Utils::DateTime && value)380     inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModifiedHasBeenSet = true; m_lastModified = std::move(value); }
381 
382     /**
383      * <p>The date that the event source mapping was last updated or that its state
384      * changed.</p>
385      */
WithLastModified(const Aws::Utils::DateTime & value)386     inline EventSourceMappingConfiguration& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;}
387 
388     /**
389      * <p>The date that the event source mapping was last updated or that its state
390      * changed.</p>
391      */
WithLastModified(Aws::Utils::DateTime && value)392     inline EventSourceMappingConfiguration& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;}
393 
394 
395     /**
396      * <p>The result of the last Lambda invocation of your function.</p>
397      */
GetLastProcessingResult()398     inline const Aws::String& GetLastProcessingResult() const{ return m_lastProcessingResult; }
399 
400     /**
401      * <p>The result of the last Lambda invocation of your function.</p>
402      */
LastProcessingResultHasBeenSet()403     inline bool LastProcessingResultHasBeenSet() const { return m_lastProcessingResultHasBeenSet; }
404 
405     /**
406      * <p>The result of the last Lambda invocation of your function.</p>
407      */
SetLastProcessingResult(const Aws::String & value)408     inline void SetLastProcessingResult(const Aws::String& value) { m_lastProcessingResultHasBeenSet = true; m_lastProcessingResult = value; }
409 
410     /**
411      * <p>The result of the last Lambda invocation of your function.</p>
412      */
SetLastProcessingResult(Aws::String && value)413     inline void SetLastProcessingResult(Aws::String&& value) { m_lastProcessingResultHasBeenSet = true; m_lastProcessingResult = std::move(value); }
414 
415     /**
416      * <p>The result of the last Lambda invocation of your function.</p>
417      */
SetLastProcessingResult(const char * value)418     inline void SetLastProcessingResult(const char* value) { m_lastProcessingResultHasBeenSet = true; m_lastProcessingResult.assign(value); }
419 
420     /**
421      * <p>The result of the last Lambda invocation of your function.</p>
422      */
WithLastProcessingResult(const Aws::String & value)423     inline EventSourceMappingConfiguration& WithLastProcessingResult(const Aws::String& value) { SetLastProcessingResult(value); return *this;}
424 
425     /**
426      * <p>The result of the last Lambda invocation of your function.</p>
427      */
WithLastProcessingResult(Aws::String && value)428     inline EventSourceMappingConfiguration& WithLastProcessingResult(Aws::String&& value) { SetLastProcessingResult(std::move(value)); return *this;}
429 
430     /**
431      * <p>The result of the last Lambda invocation of your function.</p>
432      */
WithLastProcessingResult(const char * value)433     inline EventSourceMappingConfiguration& WithLastProcessingResult(const char* value) { SetLastProcessingResult(value); return *this;}
434 
435 
436     /**
437      * <p>The state of the event source mapping. It can be one of the following:
438      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
439      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
440      * <code>Deleting</code>.</p>
441      */
GetState()442     inline const Aws::String& GetState() const{ return m_state; }
443 
444     /**
445      * <p>The state of the event source mapping. It can be one of the following:
446      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
447      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
448      * <code>Deleting</code>.</p>
449      */
StateHasBeenSet()450     inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
451 
452     /**
453      * <p>The state of the event source mapping. It can be one of the following:
454      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
455      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
456      * <code>Deleting</code>.</p>
457      */
SetState(const Aws::String & value)458     inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; }
459 
460     /**
461      * <p>The state of the event source mapping. It can be one of the following:
462      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
463      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
464      * <code>Deleting</code>.</p>
465      */
SetState(Aws::String && value)466     inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
467 
468     /**
469      * <p>The state of the event source mapping. It can be one of the following:
470      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
471      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
472      * <code>Deleting</code>.</p>
473      */
SetState(const char * value)474     inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); }
475 
476     /**
477      * <p>The state of the event source mapping. It can be one of the following:
478      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
479      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
480      * <code>Deleting</code>.</p>
481      */
WithState(const Aws::String & value)482     inline EventSourceMappingConfiguration& WithState(const Aws::String& value) { SetState(value); return *this;}
483 
484     /**
485      * <p>The state of the event source mapping. It can be one of the following:
486      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
487      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
488      * <code>Deleting</code>.</p>
489      */
WithState(Aws::String && value)490     inline EventSourceMappingConfiguration& WithState(Aws::String&& value) { SetState(std::move(value)); return *this;}
491 
492     /**
493      * <p>The state of the event source mapping. It can be one of the following:
494      * <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>,
495      * <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or
496      * <code>Deleting</code>.</p>
497      */
WithState(const char * value)498     inline EventSourceMappingConfiguration& WithState(const char* value) { SetState(value); return *this;}
499 
500 
501     /**
502      * <p>Indicates whether a user or Lambda made the last change to the event source
503      * mapping.</p>
504      */
GetStateTransitionReason()505     inline const Aws::String& GetStateTransitionReason() const{ return m_stateTransitionReason; }
506 
507     /**
508      * <p>Indicates whether a user or Lambda made the last change to the event source
509      * mapping.</p>
510      */
StateTransitionReasonHasBeenSet()511     inline bool StateTransitionReasonHasBeenSet() const { return m_stateTransitionReasonHasBeenSet; }
512 
513     /**
514      * <p>Indicates whether a user or Lambda made the last change to the event source
515      * mapping.</p>
516      */
SetStateTransitionReason(const Aws::String & value)517     inline void SetStateTransitionReason(const Aws::String& value) { m_stateTransitionReasonHasBeenSet = true; m_stateTransitionReason = value; }
518 
519     /**
520      * <p>Indicates whether a user or Lambda made the last change to the event source
521      * mapping.</p>
522      */
SetStateTransitionReason(Aws::String && value)523     inline void SetStateTransitionReason(Aws::String&& value) { m_stateTransitionReasonHasBeenSet = true; m_stateTransitionReason = std::move(value); }
524 
525     /**
526      * <p>Indicates whether a user or Lambda made the last change to the event source
527      * mapping.</p>
528      */
SetStateTransitionReason(const char * value)529     inline void SetStateTransitionReason(const char* value) { m_stateTransitionReasonHasBeenSet = true; m_stateTransitionReason.assign(value); }
530 
531     /**
532      * <p>Indicates whether a user or Lambda made the last change to the event source
533      * mapping.</p>
534      */
WithStateTransitionReason(const Aws::String & value)535     inline EventSourceMappingConfiguration& WithStateTransitionReason(const Aws::String& value) { SetStateTransitionReason(value); return *this;}
536 
537     /**
538      * <p>Indicates whether a user or Lambda made the last change to the event source
539      * mapping.</p>
540      */
WithStateTransitionReason(Aws::String && value)541     inline EventSourceMappingConfiguration& WithStateTransitionReason(Aws::String&& value) { SetStateTransitionReason(std::move(value)); return *this;}
542 
543     /**
544      * <p>Indicates whether a user or Lambda made the last change to the event source
545      * mapping.</p>
546      */
WithStateTransitionReason(const char * value)547     inline EventSourceMappingConfiguration& WithStateTransitionReason(const char* value) { SetStateTransitionReason(value); return *this;}
548 
549 
550     /**
551      * <p>(Streams only) An Amazon SQS queue or Amazon SNS topic destination for
552      * discarded records.</p>
553      */
GetDestinationConfig()554     inline const DestinationConfig& GetDestinationConfig() const{ return m_destinationConfig; }
555 
556     /**
557      * <p>(Streams only) An Amazon SQS queue or Amazon SNS topic destination for
558      * discarded records.</p>
559      */
DestinationConfigHasBeenSet()560     inline bool DestinationConfigHasBeenSet() const { return m_destinationConfigHasBeenSet; }
561 
562     /**
563      * <p>(Streams only) An Amazon SQS queue or Amazon SNS topic destination for
564      * discarded records.</p>
565      */
SetDestinationConfig(const DestinationConfig & value)566     inline void SetDestinationConfig(const DestinationConfig& value) { m_destinationConfigHasBeenSet = true; m_destinationConfig = value; }
567 
568     /**
569      * <p>(Streams only) An Amazon SQS queue or Amazon SNS topic destination for
570      * discarded records.</p>
571      */
SetDestinationConfig(DestinationConfig && value)572     inline void SetDestinationConfig(DestinationConfig&& value) { m_destinationConfigHasBeenSet = true; m_destinationConfig = std::move(value); }
573 
574     /**
575      * <p>(Streams only) An Amazon SQS queue or Amazon SNS topic destination for
576      * discarded records.</p>
577      */
WithDestinationConfig(const DestinationConfig & value)578     inline EventSourceMappingConfiguration& WithDestinationConfig(const DestinationConfig& value) { SetDestinationConfig(value); return *this;}
579 
580     /**
581      * <p>(Streams only) An Amazon SQS queue or Amazon SNS topic destination for
582      * discarded records.</p>
583      */
WithDestinationConfig(DestinationConfig && value)584     inline EventSourceMappingConfiguration& WithDestinationConfig(DestinationConfig&& value) { SetDestinationConfig(std::move(value)); return *this;}
585 
586 
587     /**
588      * <p>The name of the Kafka topic.</p>
589      */
GetTopics()590     inline const Aws::Vector<Aws::String>& GetTopics() const{ return m_topics; }
591 
592     /**
593      * <p>The name of the Kafka topic.</p>
594      */
TopicsHasBeenSet()595     inline bool TopicsHasBeenSet() const { return m_topicsHasBeenSet; }
596 
597     /**
598      * <p>The name of the Kafka topic.</p>
599      */
SetTopics(const Aws::Vector<Aws::String> & value)600     inline void SetTopics(const Aws::Vector<Aws::String>& value) { m_topicsHasBeenSet = true; m_topics = value; }
601 
602     /**
603      * <p>The name of the Kafka topic.</p>
604      */
SetTopics(Aws::Vector<Aws::String> && value)605     inline void SetTopics(Aws::Vector<Aws::String>&& value) { m_topicsHasBeenSet = true; m_topics = std::move(value); }
606 
607     /**
608      * <p>The name of the Kafka topic.</p>
609      */
WithTopics(const Aws::Vector<Aws::String> & value)610     inline EventSourceMappingConfiguration& WithTopics(const Aws::Vector<Aws::String>& value) { SetTopics(value); return *this;}
611 
612     /**
613      * <p>The name of the Kafka topic.</p>
614      */
WithTopics(Aws::Vector<Aws::String> && value)615     inline EventSourceMappingConfiguration& WithTopics(Aws::Vector<Aws::String>&& value) { SetTopics(std::move(value)); return *this;}
616 
617     /**
618      * <p>The name of the Kafka topic.</p>
619      */
AddTopics(const Aws::String & value)620     inline EventSourceMappingConfiguration& AddTopics(const Aws::String& value) { m_topicsHasBeenSet = true; m_topics.push_back(value); return *this; }
621 
622     /**
623      * <p>The name of the Kafka topic.</p>
624      */
AddTopics(Aws::String && value)625     inline EventSourceMappingConfiguration& AddTopics(Aws::String&& value) { m_topicsHasBeenSet = true; m_topics.push_back(std::move(value)); return *this; }
626 
627     /**
628      * <p>The name of the Kafka topic.</p>
629      */
AddTopics(const char * value)630     inline EventSourceMappingConfiguration& AddTopics(const char* value) { m_topicsHasBeenSet = true; m_topics.push_back(value); return *this; }
631 
632 
633     /**
634      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
635      * consume.</p>
636      */
GetQueues()637     inline const Aws::Vector<Aws::String>& GetQueues() const{ return m_queues; }
638 
639     /**
640      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
641      * consume.</p>
642      */
QueuesHasBeenSet()643     inline bool QueuesHasBeenSet() const { return m_queuesHasBeenSet; }
644 
645     /**
646      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
647      * consume.</p>
648      */
SetQueues(const Aws::Vector<Aws::String> & value)649     inline void SetQueues(const Aws::Vector<Aws::String>& value) { m_queuesHasBeenSet = true; m_queues = value; }
650 
651     /**
652      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
653      * consume.</p>
654      */
SetQueues(Aws::Vector<Aws::String> && value)655     inline void SetQueues(Aws::Vector<Aws::String>&& value) { m_queuesHasBeenSet = true; m_queues = std::move(value); }
656 
657     /**
658      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
659      * consume.</p>
660      */
WithQueues(const Aws::Vector<Aws::String> & value)661     inline EventSourceMappingConfiguration& WithQueues(const Aws::Vector<Aws::String>& value) { SetQueues(value); return *this;}
662 
663     /**
664      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
665      * consume.</p>
666      */
WithQueues(Aws::Vector<Aws::String> && value)667     inline EventSourceMappingConfiguration& WithQueues(Aws::Vector<Aws::String>&& value) { SetQueues(std::move(value)); return *this;}
668 
669     /**
670      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
671      * consume.</p>
672      */
AddQueues(const Aws::String & value)673     inline EventSourceMappingConfiguration& AddQueues(const Aws::String& value) { m_queuesHasBeenSet = true; m_queues.push_back(value); return *this; }
674 
675     /**
676      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
677      * consume.</p>
678      */
AddQueues(Aws::String && value)679     inline EventSourceMappingConfiguration& AddQueues(Aws::String&& value) { m_queuesHasBeenSet = true; m_queues.push_back(std::move(value)); return *this; }
680 
681     /**
682      * <p> (Amazon MQ) The name of the Amazon MQ broker destination queue to
683      * consume.</p>
684      */
AddQueues(const char * value)685     inline EventSourceMappingConfiguration& AddQueues(const char* value) { m_queuesHasBeenSet = true; m_queues.push_back(value); return *this; }
686 
687 
688     /**
689      * <p>An array of the authentication protocol, VPC components, or virtual host to
690      * secure and define your event source.</p>
691      */
GetSourceAccessConfigurations()692     inline const Aws::Vector<SourceAccessConfiguration>& GetSourceAccessConfigurations() const{ return m_sourceAccessConfigurations; }
693 
694     /**
695      * <p>An array of the authentication protocol, VPC components, or virtual host to
696      * secure and define your event source.</p>
697      */
SourceAccessConfigurationsHasBeenSet()698     inline bool SourceAccessConfigurationsHasBeenSet() const { return m_sourceAccessConfigurationsHasBeenSet; }
699 
700     /**
701      * <p>An array of the authentication protocol, VPC components, or virtual host to
702      * secure and define your event source.</p>
703      */
SetSourceAccessConfigurations(const Aws::Vector<SourceAccessConfiguration> & value)704     inline void SetSourceAccessConfigurations(const Aws::Vector<SourceAccessConfiguration>& value) { m_sourceAccessConfigurationsHasBeenSet = true; m_sourceAccessConfigurations = value; }
705 
706     /**
707      * <p>An array of the authentication protocol, VPC components, or virtual host to
708      * secure and define your event source.</p>
709      */
SetSourceAccessConfigurations(Aws::Vector<SourceAccessConfiguration> && value)710     inline void SetSourceAccessConfigurations(Aws::Vector<SourceAccessConfiguration>&& value) { m_sourceAccessConfigurationsHasBeenSet = true; m_sourceAccessConfigurations = std::move(value); }
711 
712     /**
713      * <p>An array of the authentication protocol, VPC components, or virtual host to
714      * secure and define your event source.</p>
715      */
WithSourceAccessConfigurations(const Aws::Vector<SourceAccessConfiguration> & value)716     inline EventSourceMappingConfiguration& WithSourceAccessConfigurations(const Aws::Vector<SourceAccessConfiguration>& value) { SetSourceAccessConfigurations(value); return *this;}
717 
718     /**
719      * <p>An array of the authentication protocol, VPC components, or virtual host to
720      * secure and define your event source.</p>
721      */
WithSourceAccessConfigurations(Aws::Vector<SourceAccessConfiguration> && value)722     inline EventSourceMappingConfiguration& WithSourceAccessConfigurations(Aws::Vector<SourceAccessConfiguration>&& value) { SetSourceAccessConfigurations(std::move(value)); return *this;}
723 
724     /**
725      * <p>An array of the authentication protocol, VPC components, or virtual host to
726      * secure and define your event source.</p>
727      */
AddSourceAccessConfigurations(const SourceAccessConfiguration & value)728     inline EventSourceMappingConfiguration& AddSourceAccessConfigurations(const SourceAccessConfiguration& value) { m_sourceAccessConfigurationsHasBeenSet = true; m_sourceAccessConfigurations.push_back(value); return *this; }
729 
730     /**
731      * <p>An array of the authentication protocol, VPC components, or virtual host to
732      * secure and define your event source.</p>
733      */
AddSourceAccessConfigurations(SourceAccessConfiguration && value)734     inline EventSourceMappingConfiguration& AddSourceAccessConfigurations(SourceAccessConfiguration&& value) { m_sourceAccessConfigurationsHasBeenSet = true; m_sourceAccessConfigurations.push_back(std::move(value)); return *this; }
735 
736 
737     /**
738      * <p>The self-managed Apache Kafka cluster for your event source.</p>
739      */
GetSelfManagedEventSource()740     inline const SelfManagedEventSource& GetSelfManagedEventSource() const{ return m_selfManagedEventSource; }
741 
742     /**
743      * <p>The self-managed Apache Kafka cluster for your event source.</p>
744      */
SelfManagedEventSourceHasBeenSet()745     inline bool SelfManagedEventSourceHasBeenSet() const { return m_selfManagedEventSourceHasBeenSet; }
746 
747     /**
748      * <p>The self-managed Apache Kafka cluster for your event source.</p>
749      */
SetSelfManagedEventSource(const SelfManagedEventSource & value)750     inline void SetSelfManagedEventSource(const SelfManagedEventSource& value) { m_selfManagedEventSourceHasBeenSet = true; m_selfManagedEventSource = value; }
751 
752     /**
753      * <p>The self-managed Apache Kafka cluster for your event source.</p>
754      */
SetSelfManagedEventSource(SelfManagedEventSource && value)755     inline void SetSelfManagedEventSource(SelfManagedEventSource&& value) { m_selfManagedEventSourceHasBeenSet = true; m_selfManagedEventSource = std::move(value); }
756 
757     /**
758      * <p>The self-managed Apache Kafka cluster for your event source.</p>
759      */
WithSelfManagedEventSource(const SelfManagedEventSource & value)760     inline EventSourceMappingConfiguration& WithSelfManagedEventSource(const SelfManagedEventSource& value) { SetSelfManagedEventSource(value); return *this;}
761 
762     /**
763      * <p>The self-managed Apache Kafka cluster for your event source.</p>
764      */
WithSelfManagedEventSource(SelfManagedEventSource && value)765     inline EventSourceMappingConfiguration& WithSelfManagedEventSource(SelfManagedEventSource&& value) { SetSelfManagedEventSource(std::move(value)); return *this;}
766 
767 
768     /**
769      * <p>(Streams only) Discard records older than the specified age. The default
770      * value is -1, which sets the maximum age to infinite. When the value is set to
771      * infinite, Lambda never discards old records. </p>
772      */
GetMaximumRecordAgeInSeconds()773     inline int GetMaximumRecordAgeInSeconds() const{ return m_maximumRecordAgeInSeconds; }
774 
775     /**
776      * <p>(Streams only) Discard records older than the specified age. The default
777      * value is -1, which sets the maximum age to infinite. When the value is set to
778      * infinite, Lambda never discards old records. </p>
779      */
MaximumRecordAgeInSecondsHasBeenSet()780     inline bool MaximumRecordAgeInSecondsHasBeenSet() const { return m_maximumRecordAgeInSecondsHasBeenSet; }
781 
782     /**
783      * <p>(Streams only) Discard records older than the specified age. The default
784      * value is -1, which sets the maximum age to infinite. When the value is set to
785      * infinite, Lambda never discards old records. </p>
786      */
SetMaximumRecordAgeInSeconds(int value)787     inline void SetMaximumRecordAgeInSeconds(int value) { m_maximumRecordAgeInSecondsHasBeenSet = true; m_maximumRecordAgeInSeconds = value; }
788 
789     /**
790      * <p>(Streams only) Discard records older than the specified age. The default
791      * value is -1, which sets the maximum age to infinite. When the value is set to
792      * infinite, Lambda never discards old records. </p>
793      */
WithMaximumRecordAgeInSeconds(int value)794     inline EventSourceMappingConfiguration& WithMaximumRecordAgeInSeconds(int value) { SetMaximumRecordAgeInSeconds(value); return *this;}
795 
796 
797     /**
798      * <p>(Streams only) If the function returns an error, split the batch in two and
799      * retry. The default value is false.</p>
800      */
GetBisectBatchOnFunctionError()801     inline bool GetBisectBatchOnFunctionError() const{ return m_bisectBatchOnFunctionError; }
802 
803     /**
804      * <p>(Streams only) If the function returns an error, split the batch in two and
805      * retry. The default value is false.</p>
806      */
BisectBatchOnFunctionErrorHasBeenSet()807     inline bool BisectBatchOnFunctionErrorHasBeenSet() const { return m_bisectBatchOnFunctionErrorHasBeenSet; }
808 
809     /**
810      * <p>(Streams only) If the function returns an error, split the batch in two and
811      * retry. The default value is false.</p>
812      */
SetBisectBatchOnFunctionError(bool value)813     inline void SetBisectBatchOnFunctionError(bool value) { m_bisectBatchOnFunctionErrorHasBeenSet = true; m_bisectBatchOnFunctionError = value; }
814 
815     /**
816      * <p>(Streams only) If the function returns an error, split the batch in two and
817      * retry. The default value is false.</p>
818      */
WithBisectBatchOnFunctionError(bool value)819     inline EventSourceMappingConfiguration& WithBisectBatchOnFunctionError(bool value) { SetBisectBatchOnFunctionError(value); return *this;}
820 
821 
822     /**
823      * <p>(Streams only) Discard records after the specified number of retries. The
824      * default value is -1, which sets the maximum number of retries to infinite. When
825      * MaximumRetryAttempts is infinite, Lambda retries failed records until the record
826      * expires in the event source.</p>
827      */
GetMaximumRetryAttempts()828     inline int GetMaximumRetryAttempts() const{ return m_maximumRetryAttempts; }
829 
830     /**
831      * <p>(Streams only) Discard records after the specified number of retries. The
832      * default value is -1, which sets the maximum number of retries to infinite. When
833      * MaximumRetryAttempts is infinite, Lambda retries failed records until the record
834      * expires in the event source.</p>
835      */
MaximumRetryAttemptsHasBeenSet()836     inline bool MaximumRetryAttemptsHasBeenSet() const { return m_maximumRetryAttemptsHasBeenSet; }
837 
838     /**
839      * <p>(Streams only) Discard records after the specified number of retries. The
840      * default value is -1, which sets the maximum number of retries to infinite. When
841      * MaximumRetryAttempts is infinite, Lambda retries failed records until the record
842      * expires in the event source.</p>
843      */
SetMaximumRetryAttempts(int value)844     inline void SetMaximumRetryAttempts(int value) { m_maximumRetryAttemptsHasBeenSet = true; m_maximumRetryAttempts = value; }
845 
846     /**
847      * <p>(Streams only) Discard records after the specified number of retries. The
848      * default value is -1, which sets the maximum number of retries to infinite. When
849      * MaximumRetryAttempts is infinite, Lambda retries failed records until the record
850      * expires in the event source.</p>
851      */
WithMaximumRetryAttempts(int value)852     inline EventSourceMappingConfiguration& WithMaximumRetryAttempts(int value) { SetMaximumRetryAttempts(value); return *this;}
853 
854 
855     /**
856      * <p>(Streams only) The duration in seconds of a processing window. The range is
857      * 1–900 seconds.</p>
858      */
GetTumblingWindowInSeconds()859     inline int GetTumblingWindowInSeconds() const{ return m_tumblingWindowInSeconds; }
860 
861     /**
862      * <p>(Streams only) The duration in seconds of a processing window. The range is
863      * 1–900 seconds.</p>
864      */
TumblingWindowInSecondsHasBeenSet()865     inline bool TumblingWindowInSecondsHasBeenSet() const { return m_tumblingWindowInSecondsHasBeenSet; }
866 
867     /**
868      * <p>(Streams only) The duration in seconds of a processing window. The range is
869      * 1–900 seconds.</p>
870      */
SetTumblingWindowInSeconds(int value)871     inline void SetTumblingWindowInSeconds(int value) { m_tumblingWindowInSecondsHasBeenSet = true; m_tumblingWindowInSeconds = value; }
872 
873     /**
874      * <p>(Streams only) The duration in seconds of a processing window. The range is
875      * 1–900 seconds.</p>
876      */
WithTumblingWindowInSeconds(int value)877     inline EventSourceMappingConfiguration& WithTumblingWindowInSeconds(int value) { SetTumblingWindowInSeconds(value); return *this;}
878 
879 
880     /**
881      * <p>(Streams only) A list of current response type enums applied to the event
882      * source mapping.</p>
883      */
GetFunctionResponseTypes()884     inline const Aws::Vector<FunctionResponseType>& GetFunctionResponseTypes() const{ return m_functionResponseTypes; }
885 
886     /**
887      * <p>(Streams only) A list of current response type enums applied to the event
888      * source mapping.</p>
889      */
FunctionResponseTypesHasBeenSet()890     inline bool FunctionResponseTypesHasBeenSet() const { return m_functionResponseTypesHasBeenSet; }
891 
892     /**
893      * <p>(Streams only) A list of current response type enums applied to the event
894      * source mapping.</p>
895      */
SetFunctionResponseTypes(const Aws::Vector<FunctionResponseType> & value)896     inline void SetFunctionResponseTypes(const Aws::Vector<FunctionResponseType>& value) { m_functionResponseTypesHasBeenSet = true; m_functionResponseTypes = value; }
897 
898     /**
899      * <p>(Streams only) A list of current response type enums applied to the event
900      * source mapping.</p>
901      */
SetFunctionResponseTypes(Aws::Vector<FunctionResponseType> && value)902     inline void SetFunctionResponseTypes(Aws::Vector<FunctionResponseType>&& value) { m_functionResponseTypesHasBeenSet = true; m_functionResponseTypes = std::move(value); }
903 
904     /**
905      * <p>(Streams only) A list of current response type enums applied to the event
906      * source mapping.</p>
907      */
WithFunctionResponseTypes(const Aws::Vector<FunctionResponseType> & value)908     inline EventSourceMappingConfiguration& WithFunctionResponseTypes(const Aws::Vector<FunctionResponseType>& value) { SetFunctionResponseTypes(value); return *this;}
909 
910     /**
911      * <p>(Streams only) A list of current response type enums applied to the event
912      * source mapping.</p>
913      */
WithFunctionResponseTypes(Aws::Vector<FunctionResponseType> && value)914     inline EventSourceMappingConfiguration& WithFunctionResponseTypes(Aws::Vector<FunctionResponseType>&& value) { SetFunctionResponseTypes(std::move(value)); return *this;}
915 
916     /**
917      * <p>(Streams only) A list of current response type enums applied to the event
918      * source mapping.</p>
919      */
AddFunctionResponseTypes(const FunctionResponseType & value)920     inline EventSourceMappingConfiguration& AddFunctionResponseTypes(const FunctionResponseType& value) { m_functionResponseTypesHasBeenSet = true; m_functionResponseTypes.push_back(value); return *this; }
921 
922     /**
923      * <p>(Streams only) A list of current response type enums applied to the event
924      * source mapping.</p>
925      */
AddFunctionResponseTypes(FunctionResponseType && value)926     inline EventSourceMappingConfiguration& AddFunctionResponseTypes(FunctionResponseType&& value) { m_functionResponseTypesHasBeenSet = true; m_functionResponseTypes.push_back(std::move(value)); return *this; }
927 
928   private:
929 
930     Aws::String m_uUID;
931     bool m_uUIDHasBeenSet;
932 
933     EventSourcePosition m_startingPosition;
934     bool m_startingPositionHasBeenSet;
935 
936     Aws::Utils::DateTime m_startingPositionTimestamp;
937     bool m_startingPositionTimestampHasBeenSet;
938 
939     int m_batchSize;
940     bool m_batchSizeHasBeenSet;
941 
942     int m_maximumBatchingWindowInSeconds;
943     bool m_maximumBatchingWindowInSecondsHasBeenSet;
944 
945     int m_parallelizationFactor;
946     bool m_parallelizationFactorHasBeenSet;
947 
948     Aws::String m_eventSourceArn;
949     bool m_eventSourceArnHasBeenSet;
950 
951     Aws::String m_functionArn;
952     bool m_functionArnHasBeenSet;
953 
954     Aws::Utils::DateTime m_lastModified;
955     bool m_lastModifiedHasBeenSet;
956 
957     Aws::String m_lastProcessingResult;
958     bool m_lastProcessingResultHasBeenSet;
959 
960     Aws::String m_state;
961     bool m_stateHasBeenSet;
962 
963     Aws::String m_stateTransitionReason;
964     bool m_stateTransitionReasonHasBeenSet;
965 
966     DestinationConfig m_destinationConfig;
967     bool m_destinationConfigHasBeenSet;
968 
969     Aws::Vector<Aws::String> m_topics;
970     bool m_topicsHasBeenSet;
971 
972     Aws::Vector<Aws::String> m_queues;
973     bool m_queuesHasBeenSet;
974 
975     Aws::Vector<SourceAccessConfiguration> m_sourceAccessConfigurations;
976     bool m_sourceAccessConfigurationsHasBeenSet;
977 
978     SelfManagedEventSource m_selfManagedEventSource;
979     bool m_selfManagedEventSourceHasBeenSet;
980 
981     int m_maximumRecordAgeInSeconds;
982     bool m_maximumRecordAgeInSecondsHasBeenSet;
983 
984     bool m_bisectBatchOnFunctionError;
985     bool m_bisectBatchOnFunctionErrorHasBeenSet;
986 
987     int m_maximumRetryAttempts;
988     bool m_maximumRetryAttemptsHasBeenSet;
989 
990     int m_tumblingWindowInSeconds;
991     bool m_tumblingWindowInSecondsHasBeenSet;
992 
993     Aws::Vector<FunctionResponseType> m_functionResponseTypes;
994     bool m_functionResponseTypesHasBeenSet;
995   };
996 
997 } // namespace Model
998 } // namespace Lambda
999 } // namespace Aws
1000