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 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/firehose/model/AmazonopensearchserviceIndexRotationPeriod.h>
10 #include <aws/firehose/model/AmazonopensearchserviceBufferingHints.h>
11 #include <aws/firehose/model/AmazonopensearchserviceRetryOptions.h>
12 #include <aws/firehose/model/S3DestinationUpdate.h>
13 #include <aws/firehose/model/ProcessingConfiguration.h>
14 #include <aws/firehose/model/CloudWatchLoggingOptions.h>
15 #include <utility>
16 
17 namespace Aws
18 {
19 namespace Utils
20 {
21 namespace Json
22 {
23   class JsonValue;
24   class JsonView;
25 } // namespace Json
26 } // namespace Utils
27 namespace Firehose
28 {
29 namespace Model
30 {
31 
32   class AWS_FIREHOSE_API AmazonopensearchserviceDestinationUpdate
33   {
34   public:
35     AmazonopensearchserviceDestinationUpdate();
36     AmazonopensearchserviceDestinationUpdate(Aws::Utils::Json::JsonView jsonValue);
37     AmazonopensearchserviceDestinationUpdate& operator=(Aws::Utils::Json::JsonView jsonValue);
38     Aws::Utils::Json::JsonValue Jsonize() const;
39 
40 
41 
GetRoleARN()42     inline const Aws::String& GetRoleARN() const{ return m_roleARN; }
43 
44 
RoleARNHasBeenSet()45     inline bool RoleARNHasBeenSet() const { return m_roleARNHasBeenSet; }
46 
47 
SetRoleARN(const Aws::String & value)48     inline void SetRoleARN(const Aws::String& value) { m_roleARNHasBeenSet = true; m_roleARN = value; }
49 
50 
SetRoleARN(Aws::String && value)51     inline void SetRoleARN(Aws::String&& value) { m_roleARNHasBeenSet = true; m_roleARN = std::move(value); }
52 
53 
SetRoleARN(const char * value)54     inline void SetRoleARN(const char* value) { m_roleARNHasBeenSet = true; m_roleARN.assign(value); }
55 
56 
WithRoleARN(const Aws::String & value)57     inline AmazonopensearchserviceDestinationUpdate& WithRoleARN(const Aws::String& value) { SetRoleARN(value); return *this;}
58 
59 
WithRoleARN(Aws::String && value)60     inline AmazonopensearchserviceDestinationUpdate& WithRoleARN(Aws::String&& value) { SetRoleARN(std::move(value)); return *this;}
61 
62 
WithRoleARN(const char * value)63     inline AmazonopensearchserviceDestinationUpdate& WithRoleARN(const char* value) { SetRoleARN(value); return *this;}
64 
65 
66 
GetDomainARN()67     inline const Aws::String& GetDomainARN() const{ return m_domainARN; }
68 
69 
DomainARNHasBeenSet()70     inline bool DomainARNHasBeenSet() const { return m_domainARNHasBeenSet; }
71 
72 
SetDomainARN(const Aws::String & value)73     inline void SetDomainARN(const Aws::String& value) { m_domainARNHasBeenSet = true; m_domainARN = value; }
74 
75 
SetDomainARN(Aws::String && value)76     inline void SetDomainARN(Aws::String&& value) { m_domainARNHasBeenSet = true; m_domainARN = std::move(value); }
77 
78 
SetDomainARN(const char * value)79     inline void SetDomainARN(const char* value) { m_domainARNHasBeenSet = true; m_domainARN.assign(value); }
80 
81 
WithDomainARN(const Aws::String & value)82     inline AmazonopensearchserviceDestinationUpdate& WithDomainARN(const Aws::String& value) { SetDomainARN(value); return *this;}
83 
84 
WithDomainARN(Aws::String && value)85     inline AmazonopensearchserviceDestinationUpdate& WithDomainARN(Aws::String&& value) { SetDomainARN(std::move(value)); return *this;}
86 
87 
WithDomainARN(const char * value)88     inline AmazonopensearchserviceDestinationUpdate& WithDomainARN(const char* value) { SetDomainARN(value); return *this;}
89 
90 
91 
GetClusterEndpoint()92     inline const Aws::String& GetClusterEndpoint() const{ return m_clusterEndpoint; }
93 
94 
ClusterEndpointHasBeenSet()95     inline bool ClusterEndpointHasBeenSet() const { return m_clusterEndpointHasBeenSet; }
96 
97 
SetClusterEndpoint(const Aws::String & value)98     inline void SetClusterEndpoint(const Aws::String& value) { m_clusterEndpointHasBeenSet = true; m_clusterEndpoint = value; }
99 
100 
SetClusterEndpoint(Aws::String && value)101     inline void SetClusterEndpoint(Aws::String&& value) { m_clusterEndpointHasBeenSet = true; m_clusterEndpoint = std::move(value); }
102 
103 
SetClusterEndpoint(const char * value)104     inline void SetClusterEndpoint(const char* value) { m_clusterEndpointHasBeenSet = true; m_clusterEndpoint.assign(value); }
105 
106 
WithClusterEndpoint(const Aws::String & value)107     inline AmazonopensearchserviceDestinationUpdate& WithClusterEndpoint(const Aws::String& value) { SetClusterEndpoint(value); return *this;}
108 
109 
WithClusterEndpoint(Aws::String && value)110     inline AmazonopensearchserviceDestinationUpdate& WithClusterEndpoint(Aws::String&& value) { SetClusterEndpoint(std::move(value)); return *this;}
111 
112 
WithClusterEndpoint(const char * value)113     inline AmazonopensearchserviceDestinationUpdate& WithClusterEndpoint(const char* value) { SetClusterEndpoint(value); return *this;}
114 
115 
116 
GetIndexName()117     inline const Aws::String& GetIndexName() const{ return m_indexName; }
118 
119 
IndexNameHasBeenSet()120     inline bool IndexNameHasBeenSet() const { return m_indexNameHasBeenSet; }
121 
122 
SetIndexName(const Aws::String & value)123     inline void SetIndexName(const Aws::String& value) { m_indexNameHasBeenSet = true; m_indexName = value; }
124 
125 
SetIndexName(Aws::String && value)126     inline void SetIndexName(Aws::String&& value) { m_indexNameHasBeenSet = true; m_indexName = std::move(value); }
127 
128 
SetIndexName(const char * value)129     inline void SetIndexName(const char* value) { m_indexNameHasBeenSet = true; m_indexName.assign(value); }
130 
131 
WithIndexName(const Aws::String & value)132     inline AmazonopensearchserviceDestinationUpdate& WithIndexName(const Aws::String& value) { SetIndexName(value); return *this;}
133 
134 
WithIndexName(Aws::String && value)135     inline AmazonopensearchserviceDestinationUpdate& WithIndexName(Aws::String&& value) { SetIndexName(std::move(value)); return *this;}
136 
137 
WithIndexName(const char * value)138     inline AmazonopensearchserviceDestinationUpdate& WithIndexName(const char* value) { SetIndexName(value); return *this;}
139 
140 
141 
GetTypeName()142     inline const Aws::String& GetTypeName() const{ return m_typeName; }
143 
144 
TypeNameHasBeenSet()145     inline bool TypeNameHasBeenSet() const { return m_typeNameHasBeenSet; }
146 
147 
SetTypeName(const Aws::String & value)148     inline void SetTypeName(const Aws::String& value) { m_typeNameHasBeenSet = true; m_typeName = value; }
149 
150 
SetTypeName(Aws::String && value)151     inline void SetTypeName(Aws::String&& value) { m_typeNameHasBeenSet = true; m_typeName = std::move(value); }
152 
153 
SetTypeName(const char * value)154     inline void SetTypeName(const char* value) { m_typeNameHasBeenSet = true; m_typeName.assign(value); }
155 
156 
WithTypeName(const Aws::String & value)157     inline AmazonopensearchserviceDestinationUpdate& WithTypeName(const Aws::String& value) { SetTypeName(value); return *this;}
158 
159 
WithTypeName(Aws::String && value)160     inline AmazonopensearchserviceDestinationUpdate& WithTypeName(Aws::String&& value) { SetTypeName(std::move(value)); return *this;}
161 
162 
WithTypeName(const char * value)163     inline AmazonopensearchserviceDestinationUpdate& WithTypeName(const char* value) { SetTypeName(value); return *this;}
164 
165 
166 
GetIndexRotationPeriod()167     inline const AmazonopensearchserviceIndexRotationPeriod& GetIndexRotationPeriod() const{ return m_indexRotationPeriod; }
168 
169 
IndexRotationPeriodHasBeenSet()170     inline bool IndexRotationPeriodHasBeenSet() const { return m_indexRotationPeriodHasBeenSet; }
171 
172 
SetIndexRotationPeriod(const AmazonopensearchserviceIndexRotationPeriod & value)173     inline void SetIndexRotationPeriod(const AmazonopensearchserviceIndexRotationPeriod& value) { m_indexRotationPeriodHasBeenSet = true; m_indexRotationPeriod = value; }
174 
175 
SetIndexRotationPeriod(AmazonopensearchserviceIndexRotationPeriod && value)176     inline void SetIndexRotationPeriod(AmazonopensearchserviceIndexRotationPeriod&& value) { m_indexRotationPeriodHasBeenSet = true; m_indexRotationPeriod = std::move(value); }
177 
178 
WithIndexRotationPeriod(const AmazonopensearchserviceIndexRotationPeriod & value)179     inline AmazonopensearchserviceDestinationUpdate& WithIndexRotationPeriod(const AmazonopensearchserviceIndexRotationPeriod& value) { SetIndexRotationPeriod(value); return *this;}
180 
181 
WithIndexRotationPeriod(AmazonopensearchserviceIndexRotationPeriod && value)182     inline AmazonopensearchserviceDestinationUpdate& WithIndexRotationPeriod(AmazonopensearchserviceIndexRotationPeriod&& value) { SetIndexRotationPeriod(std::move(value)); return *this;}
183 
184 
185 
GetBufferingHints()186     inline const AmazonopensearchserviceBufferingHints& GetBufferingHints() const{ return m_bufferingHints; }
187 
188 
BufferingHintsHasBeenSet()189     inline bool BufferingHintsHasBeenSet() const { return m_bufferingHintsHasBeenSet; }
190 
191 
SetBufferingHints(const AmazonopensearchserviceBufferingHints & value)192     inline void SetBufferingHints(const AmazonopensearchserviceBufferingHints& value) { m_bufferingHintsHasBeenSet = true; m_bufferingHints = value; }
193 
194 
SetBufferingHints(AmazonopensearchserviceBufferingHints && value)195     inline void SetBufferingHints(AmazonopensearchserviceBufferingHints&& value) { m_bufferingHintsHasBeenSet = true; m_bufferingHints = std::move(value); }
196 
197 
WithBufferingHints(const AmazonopensearchserviceBufferingHints & value)198     inline AmazonopensearchserviceDestinationUpdate& WithBufferingHints(const AmazonopensearchserviceBufferingHints& value) { SetBufferingHints(value); return *this;}
199 
200 
WithBufferingHints(AmazonopensearchserviceBufferingHints && value)201     inline AmazonopensearchserviceDestinationUpdate& WithBufferingHints(AmazonopensearchserviceBufferingHints&& value) { SetBufferingHints(std::move(value)); return *this;}
202 
203 
204 
GetRetryOptions()205     inline const AmazonopensearchserviceRetryOptions& GetRetryOptions() const{ return m_retryOptions; }
206 
207 
RetryOptionsHasBeenSet()208     inline bool RetryOptionsHasBeenSet() const { return m_retryOptionsHasBeenSet; }
209 
210 
SetRetryOptions(const AmazonopensearchserviceRetryOptions & value)211     inline void SetRetryOptions(const AmazonopensearchserviceRetryOptions& value) { m_retryOptionsHasBeenSet = true; m_retryOptions = value; }
212 
213 
SetRetryOptions(AmazonopensearchserviceRetryOptions && value)214     inline void SetRetryOptions(AmazonopensearchserviceRetryOptions&& value) { m_retryOptionsHasBeenSet = true; m_retryOptions = std::move(value); }
215 
216 
WithRetryOptions(const AmazonopensearchserviceRetryOptions & value)217     inline AmazonopensearchserviceDestinationUpdate& WithRetryOptions(const AmazonopensearchserviceRetryOptions& value) { SetRetryOptions(value); return *this;}
218 
219 
WithRetryOptions(AmazonopensearchserviceRetryOptions && value)220     inline AmazonopensearchserviceDestinationUpdate& WithRetryOptions(AmazonopensearchserviceRetryOptions&& value) { SetRetryOptions(std::move(value)); return *this;}
221 
222 
223 
GetS3Update()224     inline const S3DestinationUpdate& GetS3Update() const{ return m_s3Update; }
225 
226 
S3UpdateHasBeenSet()227     inline bool S3UpdateHasBeenSet() const { return m_s3UpdateHasBeenSet; }
228 
229 
SetS3Update(const S3DestinationUpdate & value)230     inline void SetS3Update(const S3DestinationUpdate& value) { m_s3UpdateHasBeenSet = true; m_s3Update = value; }
231 
232 
SetS3Update(S3DestinationUpdate && value)233     inline void SetS3Update(S3DestinationUpdate&& value) { m_s3UpdateHasBeenSet = true; m_s3Update = std::move(value); }
234 
235 
WithS3Update(const S3DestinationUpdate & value)236     inline AmazonopensearchserviceDestinationUpdate& WithS3Update(const S3DestinationUpdate& value) { SetS3Update(value); return *this;}
237 
238 
WithS3Update(S3DestinationUpdate && value)239     inline AmazonopensearchserviceDestinationUpdate& WithS3Update(S3DestinationUpdate&& value) { SetS3Update(std::move(value)); return *this;}
240 
241 
242 
GetProcessingConfiguration()243     inline const ProcessingConfiguration& GetProcessingConfiguration() const{ return m_processingConfiguration; }
244 
245 
ProcessingConfigurationHasBeenSet()246     inline bool ProcessingConfigurationHasBeenSet() const { return m_processingConfigurationHasBeenSet; }
247 
248 
SetProcessingConfiguration(const ProcessingConfiguration & value)249     inline void SetProcessingConfiguration(const ProcessingConfiguration& value) { m_processingConfigurationHasBeenSet = true; m_processingConfiguration = value; }
250 
251 
SetProcessingConfiguration(ProcessingConfiguration && value)252     inline void SetProcessingConfiguration(ProcessingConfiguration&& value) { m_processingConfigurationHasBeenSet = true; m_processingConfiguration = std::move(value); }
253 
254 
WithProcessingConfiguration(const ProcessingConfiguration & value)255     inline AmazonopensearchserviceDestinationUpdate& WithProcessingConfiguration(const ProcessingConfiguration& value) { SetProcessingConfiguration(value); return *this;}
256 
257 
WithProcessingConfiguration(ProcessingConfiguration && value)258     inline AmazonopensearchserviceDestinationUpdate& WithProcessingConfiguration(ProcessingConfiguration&& value) { SetProcessingConfiguration(std::move(value)); return *this;}
259 
260 
261 
GetCloudWatchLoggingOptions()262     inline const CloudWatchLoggingOptions& GetCloudWatchLoggingOptions() const{ return m_cloudWatchLoggingOptions; }
263 
264 
CloudWatchLoggingOptionsHasBeenSet()265     inline bool CloudWatchLoggingOptionsHasBeenSet() const { return m_cloudWatchLoggingOptionsHasBeenSet; }
266 
267 
SetCloudWatchLoggingOptions(const CloudWatchLoggingOptions & value)268     inline void SetCloudWatchLoggingOptions(const CloudWatchLoggingOptions& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = value; }
269 
270 
SetCloudWatchLoggingOptions(CloudWatchLoggingOptions && value)271     inline void SetCloudWatchLoggingOptions(CloudWatchLoggingOptions&& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = std::move(value); }
272 
273 
WithCloudWatchLoggingOptions(const CloudWatchLoggingOptions & value)274     inline AmazonopensearchserviceDestinationUpdate& WithCloudWatchLoggingOptions(const CloudWatchLoggingOptions& value) { SetCloudWatchLoggingOptions(value); return *this;}
275 
276 
WithCloudWatchLoggingOptions(CloudWatchLoggingOptions && value)277     inline AmazonopensearchserviceDestinationUpdate& WithCloudWatchLoggingOptions(CloudWatchLoggingOptions&& value) { SetCloudWatchLoggingOptions(std::move(value)); return *this;}
278 
279   private:
280 
281     Aws::String m_roleARN;
282     bool m_roleARNHasBeenSet;
283 
284     Aws::String m_domainARN;
285     bool m_domainARNHasBeenSet;
286 
287     Aws::String m_clusterEndpoint;
288     bool m_clusterEndpointHasBeenSet;
289 
290     Aws::String m_indexName;
291     bool m_indexNameHasBeenSet;
292 
293     Aws::String m_typeName;
294     bool m_typeNameHasBeenSet;
295 
296     AmazonopensearchserviceIndexRotationPeriod m_indexRotationPeriod;
297     bool m_indexRotationPeriodHasBeenSet;
298 
299     AmazonopensearchserviceBufferingHints m_bufferingHints;
300     bool m_bufferingHintsHasBeenSet;
301 
302     AmazonopensearchserviceRetryOptions m_retryOptions;
303     bool m_retryOptionsHasBeenSet;
304 
305     S3DestinationUpdate m_s3Update;
306     bool m_s3UpdateHasBeenSet;
307 
308     ProcessingConfiguration m_processingConfiguration;
309     bool m_processingConfigurationHasBeenSet;
310 
311     CloudWatchLoggingOptions m_cloudWatchLoggingOptions;
312     bool m_cloudWatchLoggingOptionsHasBeenSet;
313   };
314 
315 } // namespace Model
316 } // namespace Firehose
317 } // namespace Aws
318