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/firehose/Firehose_EXPORTS.h> 8 9 namespace Aws 10 { 11 namespace Utils 12 { 13 namespace Json 14 { 15 class JsonValue; 16 class JsonView; 17 } // namespace Json 18 } // namespace Utils 19 namespace Firehose 20 { 21 namespace Model 22 { 23 24 /** 25 * <p>Describes the buffering to perform before delivering data to the Amazon ES 26 * destination.</p><p><h3>See Also:</h3> <a 27 * href="http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ElasticsearchBufferingHints">AWS 28 * API Reference</a></p> 29 */ 30 class AWS_FIREHOSE_API ElasticsearchBufferingHints 31 { 32 public: 33 ElasticsearchBufferingHints(); 34 ElasticsearchBufferingHints(Aws::Utils::Json::JsonView jsonValue); 35 ElasticsearchBufferingHints& operator=(Aws::Utils::Json::JsonView jsonValue); 36 Aws::Utils::Json::JsonValue Jsonize() const; 37 38 39 /** 40 * <p>Buffer incoming data for the specified period of time, in seconds, before 41 * delivering it to the destination. The default value is 300 (5 minutes).</p> 42 */ GetIntervalInSeconds()43 inline int GetIntervalInSeconds() const{ return m_intervalInSeconds; } 44 45 /** 46 * <p>Buffer incoming data for the specified period of time, in seconds, before 47 * delivering it to the destination. The default value is 300 (5 minutes).</p> 48 */ IntervalInSecondsHasBeenSet()49 inline bool IntervalInSecondsHasBeenSet() const { return m_intervalInSecondsHasBeenSet; } 50 51 /** 52 * <p>Buffer incoming data for the specified period of time, in seconds, before 53 * delivering it to the destination. The default value is 300 (5 minutes).</p> 54 */ SetIntervalInSeconds(int value)55 inline void SetIntervalInSeconds(int value) { m_intervalInSecondsHasBeenSet = true; m_intervalInSeconds = value; } 56 57 /** 58 * <p>Buffer incoming data for the specified period of time, in seconds, before 59 * delivering it to the destination. The default value is 300 (5 minutes).</p> 60 */ WithIntervalInSeconds(int value)61 inline ElasticsearchBufferingHints& WithIntervalInSeconds(int value) { SetIntervalInSeconds(value); return *this;} 62 63 64 /** 65 * <p>Buffer incoming data to the specified size, in MBs, before delivering it to 66 * the destination. The default value is 5.</p> <p>We recommend setting this 67 * parameter to a value greater than the amount of data you typically ingest into 68 * the delivery stream in 10 seconds. For example, if you typically ingest data at 69 * 1 MB/sec, the value should be 10 MB or higher.</p> 70 */ GetSizeInMBs()71 inline int GetSizeInMBs() const{ return m_sizeInMBs; } 72 73 /** 74 * <p>Buffer incoming data to the specified size, in MBs, before delivering it to 75 * the destination. The default value is 5.</p> <p>We recommend setting this 76 * parameter to a value greater than the amount of data you typically ingest into 77 * the delivery stream in 10 seconds. For example, if you typically ingest data at 78 * 1 MB/sec, the value should be 10 MB or higher.</p> 79 */ SizeInMBsHasBeenSet()80 inline bool SizeInMBsHasBeenSet() const { return m_sizeInMBsHasBeenSet; } 81 82 /** 83 * <p>Buffer incoming data to the specified size, in MBs, before delivering it to 84 * the destination. The default value is 5.</p> <p>We recommend setting this 85 * parameter to a value greater than the amount of data you typically ingest into 86 * the delivery stream in 10 seconds. For example, if you typically ingest data at 87 * 1 MB/sec, the value should be 10 MB or higher.</p> 88 */ SetSizeInMBs(int value)89 inline void SetSizeInMBs(int value) { m_sizeInMBsHasBeenSet = true; m_sizeInMBs = value; } 90 91 /** 92 * <p>Buffer incoming data to the specified size, in MBs, before delivering it to 93 * the destination. The default value is 5.</p> <p>We recommend setting this 94 * parameter to a value greater than the amount of data you typically ingest into 95 * the delivery stream in 10 seconds. For example, if you typically ingest data at 96 * 1 MB/sec, the value should be 10 MB or higher.</p> 97 */ WithSizeInMBs(int value)98 inline ElasticsearchBufferingHints& WithSizeInMBs(int value) { SetSizeInMBs(value); return *this;} 99 100 private: 101 102 int m_intervalInSeconds; 103 bool m_intervalInSecondsHasBeenSet; 104 105 int m_sizeInMBs; 106 bool m_sizeInMBsHasBeenSet; 107 }; 108 109 } // namespace Model 110 } // namespace Firehose 111 } // namespace Aws 112