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/dms/DatabaseMigrationService_EXPORTS.h>
8 #include <aws/dms/DatabaseMigrationServiceRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/dms/model/ReplicationEndpointTypeValue.h>
11 #include <aws/dms/model/DmsSslModeValue.h>
12 #include <aws/dms/model/DynamoDbSettings.h>
13 #include <aws/dms/model/S3Settings.h>
14 #include <aws/dms/model/DmsTransferSettings.h>
15 #include <aws/dms/model/MongoDbSettings.h>
16 #include <aws/dms/model/KinesisSettings.h>
17 #include <aws/dms/model/KafkaSettings.h>
18 #include <aws/dms/model/ElasticsearchSettings.h>
19 #include <aws/dms/model/NeptuneSettings.h>
20 #include <aws/dms/model/RedshiftSettings.h>
21 #include <aws/dms/model/PostgreSQLSettings.h>
22 #include <aws/dms/model/MySQLSettings.h>
23 #include <aws/dms/model/OracleSettings.h>
24 #include <aws/dms/model/SybaseSettings.h>
25 #include <aws/dms/model/MicrosoftSQLServerSettings.h>
26 #include <aws/dms/model/IBMDb2Settings.h>
27 #include <aws/dms/model/DocDbSettings.h>
28 #include <aws/dms/model/RedisSettings.h>
29 #include <utility>
30 
31 namespace Aws
32 {
33 namespace DatabaseMigrationService
34 {
35 namespace Model
36 {
37 
38   /**
39    * <p/><p><h3>See Also:</h3>   <a
40    * href="http://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyEndpointMessage">AWS
41    * API Reference</a></p>
42    */
43   class AWS_DATABASEMIGRATIONSERVICE_API ModifyEndpointRequest : public DatabaseMigrationServiceRequest
44   {
45   public:
46     ModifyEndpointRequest();
47 
48     // Service request name is the Operation name which will send this request out,
49     // each operation should has unique request name, so that we can get operation's name from this request.
50     // Note: this is not true for response, multiple operations may have the same response name,
51     // so we can not get operation's name from response.
GetServiceRequestName()52     inline virtual const char* GetServiceRequestName() const override { return "ModifyEndpoint"; }
53 
54     Aws::String SerializePayload() const override;
55 
56     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
57 
58 
59     /**
60      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
61      * endpoint.</p>
62      */
GetEndpointArn()63     inline const Aws::String& GetEndpointArn() const{ return m_endpointArn; }
64 
65     /**
66      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
67      * endpoint.</p>
68      */
EndpointArnHasBeenSet()69     inline bool EndpointArnHasBeenSet() const { return m_endpointArnHasBeenSet; }
70 
71     /**
72      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
73      * endpoint.</p>
74      */
SetEndpointArn(const Aws::String & value)75     inline void SetEndpointArn(const Aws::String& value) { m_endpointArnHasBeenSet = true; m_endpointArn = value; }
76 
77     /**
78      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
79      * endpoint.</p>
80      */
SetEndpointArn(Aws::String && value)81     inline void SetEndpointArn(Aws::String&& value) { m_endpointArnHasBeenSet = true; m_endpointArn = std::move(value); }
82 
83     /**
84      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
85      * endpoint.</p>
86      */
SetEndpointArn(const char * value)87     inline void SetEndpointArn(const char* value) { m_endpointArnHasBeenSet = true; m_endpointArn.assign(value); }
88 
89     /**
90      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
91      * endpoint.</p>
92      */
WithEndpointArn(const Aws::String & value)93     inline ModifyEndpointRequest& WithEndpointArn(const Aws::String& value) { SetEndpointArn(value); return *this;}
94 
95     /**
96      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
97      * endpoint.</p>
98      */
WithEndpointArn(Aws::String && value)99     inline ModifyEndpointRequest& WithEndpointArn(Aws::String&& value) { SetEndpointArn(std::move(value)); return *this;}
100 
101     /**
102      * <p>The Amazon Resource Name (ARN) string that uniquely identifies the
103      * endpoint.</p>
104      */
WithEndpointArn(const char * value)105     inline ModifyEndpointRequest& WithEndpointArn(const char* value) { SetEndpointArn(value); return *this;}
106 
107 
108     /**
109      * <p>The database endpoint identifier. Identifiers must begin with a letter and
110      * must contain only ASCII letters, digits, and hyphens. They can't end with a
111      * hyphen or contain two consecutive hyphens.</p>
112      */
GetEndpointIdentifier()113     inline const Aws::String& GetEndpointIdentifier() const{ return m_endpointIdentifier; }
114 
115     /**
116      * <p>The database endpoint identifier. Identifiers must begin with a letter and
117      * must contain only ASCII letters, digits, and hyphens. They can't end with a
118      * hyphen or contain two consecutive hyphens.</p>
119      */
EndpointIdentifierHasBeenSet()120     inline bool EndpointIdentifierHasBeenSet() const { return m_endpointIdentifierHasBeenSet; }
121 
122     /**
123      * <p>The database endpoint identifier. Identifiers must begin with a letter and
124      * must contain only ASCII letters, digits, and hyphens. They can't end with a
125      * hyphen or contain two consecutive hyphens.</p>
126      */
SetEndpointIdentifier(const Aws::String & value)127     inline void SetEndpointIdentifier(const Aws::String& value) { m_endpointIdentifierHasBeenSet = true; m_endpointIdentifier = value; }
128 
129     /**
130      * <p>The database endpoint identifier. Identifiers must begin with a letter and
131      * must contain only ASCII letters, digits, and hyphens. They can't end with a
132      * hyphen or contain two consecutive hyphens.</p>
133      */
SetEndpointIdentifier(Aws::String && value)134     inline void SetEndpointIdentifier(Aws::String&& value) { m_endpointIdentifierHasBeenSet = true; m_endpointIdentifier = std::move(value); }
135 
136     /**
137      * <p>The database endpoint identifier. Identifiers must begin with a letter and
138      * must contain only ASCII letters, digits, and hyphens. They can't end with a
139      * hyphen or contain two consecutive hyphens.</p>
140      */
SetEndpointIdentifier(const char * value)141     inline void SetEndpointIdentifier(const char* value) { m_endpointIdentifierHasBeenSet = true; m_endpointIdentifier.assign(value); }
142 
143     /**
144      * <p>The database endpoint identifier. Identifiers must begin with a letter and
145      * must contain only ASCII letters, digits, and hyphens. They can't end with a
146      * hyphen or contain two consecutive hyphens.</p>
147      */
WithEndpointIdentifier(const Aws::String & value)148     inline ModifyEndpointRequest& WithEndpointIdentifier(const Aws::String& value) { SetEndpointIdentifier(value); return *this;}
149 
150     /**
151      * <p>The database endpoint identifier. Identifiers must begin with a letter and
152      * must contain only ASCII letters, digits, and hyphens. They can't end with a
153      * hyphen or contain two consecutive hyphens.</p>
154      */
WithEndpointIdentifier(Aws::String && value)155     inline ModifyEndpointRequest& WithEndpointIdentifier(Aws::String&& value) { SetEndpointIdentifier(std::move(value)); return *this;}
156 
157     /**
158      * <p>The database endpoint identifier. Identifiers must begin with a letter and
159      * must contain only ASCII letters, digits, and hyphens. They can't end with a
160      * hyphen or contain two consecutive hyphens.</p>
161      */
WithEndpointIdentifier(const char * value)162     inline ModifyEndpointRequest& WithEndpointIdentifier(const char* value) { SetEndpointIdentifier(value); return *this;}
163 
164 
165     /**
166      * <p>The type of endpoint. Valid values are <code>source</code> and
167      * <code>target</code>.</p>
168      */
GetEndpointType()169     inline const ReplicationEndpointTypeValue& GetEndpointType() const{ return m_endpointType; }
170 
171     /**
172      * <p>The type of endpoint. Valid values are <code>source</code> and
173      * <code>target</code>.</p>
174      */
EndpointTypeHasBeenSet()175     inline bool EndpointTypeHasBeenSet() const { return m_endpointTypeHasBeenSet; }
176 
177     /**
178      * <p>The type of endpoint. Valid values are <code>source</code> and
179      * <code>target</code>.</p>
180      */
SetEndpointType(const ReplicationEndpointTypeValue & value)181     inline void SetEndpointType(const ReplicationEndpointTypeValue& value) { m_endpointTypeHasBeenSet = true; m_endpointType = value; }
182 
183     /**
184      * <p>The type of endpoint. Valid values are <code>source</code> and
185      * <code>target</code>.</p>
186      */
SetEndpointType(ReplicationEndpointTypeValue && value)187     inline void SetEndpointType(ReplicationEndpointTypeValue&& value) { m_endpointTypeHasBeenSet = true; m_endpointType = std::move(value); }
188 
189     /**
190      * <p>The type of endpoint. Valid values are <code>source</code> and
191      * <code>target</code>.</p>
192      */
WithEndpointType(const ReplicationEndpointTypeValue & value)193     inline ModifyEndpointRequest& WithEndpointType(const ReplicationEndpointTypeValue& value) { SetEndpointType(value); return *this;}
194 
195     /**
196      * <p>The type of endpoint. Valid values are <code>source</code> and
197      * <code>target</code>.</p>
198      */
WithEndpointType(ReplicationEndpointTypeValue && value)199     inline ModifyEndpointRequest& WithEndpointType(ReplicationEndpointTypeValue&& value) { SetEndpointType(std::move(value)); return *this;}
200 
201 
202     /**
203      * <p>The type of engine for the endpoint. Valid values, depending on the
204      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
205      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
206      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
207      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
208      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
209      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
210      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
211      */
GetEngineName()212     inline const Aws::String& GetEngineName() const{ return m_engineName; }
213 
214     /**
215      * <p>The type of engine for the endpoint. Valid values, depending on the
216      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
217      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
218      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
219      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
220      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
221      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
222      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
223      */
EngineNameHasBeenSet()224     inline bool EngineNameHasBeenSet() const { return m_engineNameHasBeenSet; }
225 
226     /**
227      * <p>The type of engine for the endpoint. Valid values, depending on the
228      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
229      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
230      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
231      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
232      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
233      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
234      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
235      */
SetEngineName(const Aws::String & value)236     inline void SetEngineName(const Aws::String& value) { m_engineNameHasBeenSet = true; m_engineName = value; }
237 
238     /**
239      * <p>The type of engine for the endpoint. Valid values, depending on the
240      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
241      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
242      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
243      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
244      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
245      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
246      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
247      */
SetEngineName(Aws::String && value)248     inline void SetEngineName(Aws::String&& value) { m_engineNameHasBeenSet = true; m_engineName = std::move(value); }
249 
250     /**
251      * <p>The type of engine for the endpoint. Valid values, depending on the
252      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
253      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
254      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
255      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
256      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
257      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
258      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
259      */
SetEngineName(const char * value)260     inline void SetEngineName(const char* value) { m_engineNameHasBeenSet = true; m_engineName.assign(value); }
261 
262     /**
263      * <p>The type of engine for the endpoint. Valid values, depending on the
264      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
265      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
266      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
267      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
268      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
269      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
270      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
271      */
WithEngineName(const Aws::String & value)272     inline ModifyEndpointRequest& WithEngineName(const Aws::String& value) { SetEngineName(value); return *this;}
273 
274     /**
275      * <p>The type of engine for the endpoint. Valid values, depending on the
276      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
277      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
278      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
279      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
280      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
281      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
282      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
283      */
WithEngineName(Aws::String && value)284     inline ModifyEndpointRequest& WithEngineName(Aws::String&& value) { SetEngineName(std::move(value)); return *this;}
285 
286     /**
287      * <p>The type of engine for the endpoint. Valid values, depending on the
288      * EndpointType, include <code>"mysql"</code>, <code>"oracle"</code>,
289      * <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>,
290      * <code>"aurora-postgresql"</code>, <code>"redshift"</code>, <code>"s3"</code>,
291      * <code>"db2"</code>, <code>"azuredb"</code>, <code>"sybase"</code>,
292      * <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>,
293      * <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"documentdb"</code>,
294      * <code>"sqlserver"</code>, and <code>"neptune"</code>.</p>
295      */
WithEngineName(const char * value)296     inline ModifyEndpointRequest& WithEngineName(const char* value) { SetEngineName(value); return *this;}
297 
298 
299     /**
300      * <p>The user name to be used to login to the endpoint database.</p>
301      */
GetUsername()302     inline const Aws::String& GetUsername() const{ return m_username; }
303 
304     /**
305      * <p>The user name to be used to login to the endpoint database.</p>
306      */
UsernameHasBeenSet()307     inline bool UsernameHasBeenSet() const { return m_usernameHasBeenSet; }
308 
309     /**
310      * <p>The user name to be used to login to the endpoint database.</p>
311      */
SetUsername(const Aws::String & value)312     inline void SetUsername(const Aws::String& value) { m_usernameHasBeenSet = true; m_username = value; }
313 
314     /**
315      * <p>The user name to be used to login to the endpoint database.</p>
316      */
SetUsername(Aws::String && value)317     inline void SetUsername(Aws::String&& value) { m_usernameHasBeenSet = true; m_username = std::move(value); }
318 
319     /**
320      * <p>The user name to be used to login to the endpoint database.</p>
321      */
SetUsername(const char * value)322     inline void SetUsername(const char* value) { m_usernameHasBeenSet = true; m_username.assign(value); }
323 
324     /**
325      * <p>The user name to be used to login to the endpoint database.</p>
326      */
WithUsername(const Aws::String & value)327     inline ModifyEndpointRequest& WithUsername(const Aws::String& value) { SetUsername(value); return *this;}
328 
329     /**
330      * <p>The user name to be used to login to the endpoint database.</p>
331      */
WithUsername(Aws::String && value)332     inline ModifyEndpointRequest& WithUsername(Aws::String&& value) { SetUsername(std::move(value)); return *this;}
333 
334     /**
335      * <p>The user name to be used to login to the endpoint database.</p>
336      */
WithUsername(const char * value)337     inline ModifyEndpointRequest& WithUsername(const char* value) { SetUsername(value); return *this;}
338 
339 
340     /**
341      * <p>The password to be used to login to the endpoint database.</p>
342      */
GetPassword()343     inline const Aws::String& GetPassword() const{ return m_password; }
344 
345     /**
346      * <p>The password to be used to login to the endpoint database.</p>
347      */
PasswordHasBeenSet()348     inline bool PasswordHasBeenSet() const { return m_passwordHasBeenSet; }
349 
350     /**
351      * <p>The password to be used to login to the endpoint database.</p>
352      */
SetPassword(const Aws::String & value)353     inline void SetPassword(const Aws::String& value) { m_passwordHasBeenSet = true; m_password = value; }
354 
355     /**
356      * <p>The password to be used to login to the endpoint database.</p>
357      */
SetPassword(Aws::String && value)358     inline void SetPassword(Aws::String&& value) { m_passwordHasBeenSet = true; m_password = std::move(value); }
359 
360     /**
361      * <p>The password to be used to login to the endpoint database.</p>
362      */
SetPassword(const char * value)363     inline void SetPassword(const char* value) { m_passwordHasBeenSet = true; m_password.assign(value); }
364 
365     /**
366      * <p>The password to be used to login to the endpoint database.</p>
367      */
WithPassword(const Aws::String & value)368     inline ModifyEndpointRequest& WithPassword(const Aws::String& value) { SetPassword(value); return *this;}
369 
370     /**
371      * <p>The password to be used to login to the endpoint database.</p>
372      */
WithPassword(Aws::String && value)373     inline ModifyEndpointRequest& WithPassword(Aws::String&& value) { SetPassword(std::move(value)); return *this;}
374 
375     /**
376      * <p>The password to be used to login to the endpoint database.</p>
377      */
WithPassword(const char * value)378     inline ModifyEndpointRequest& WithPassword(const char* value) { SetPassword(value); return *this;}
379 
380 
381     /**
382      * <p>The name of the server where the endpoint database resides.</p>
383      */
GetServerName()384     inline const Aws::String& GetServerName() const{ return m_serverName; }
385 
386     /**
387      * <p>The name of the server where the endpoint database resides.</p>
388      */
ServerNameHasBeenSet()389     inline bool ServerNameHasBeenSet() const { return m_serverNameHasBeenSet; }
390 
391     /**
392      * <p>The name of the server where the endpoint database resides.</p>
393      */
SetServerName(const Aws::String & value)394     inline void SetServerName(const Aws::String& value) { m_serverNameHasBeenSet = true; m_serverName = value; }
395 
396     /**
397      * <p>The name of the server where the endpoint database resides.</p>
398      */
SetServerName(Aws::String && value)399     inline void SetServerName(Aws::String&& value) { m_serverNameHasBeenSet = true; m_serverName = std::move(value); }
400 
401     /**
402      * <p>The name of the server where the endpoint database resides.</p>
403      */
SetServerName(const char * value)404     inline void SetServerName(const char* value) { m_serverNameHasBeenSet = true; m_serverName.assign(value); }
405 
406     /**
407      * <p>The name of the server where the endpoint database resides.</p>
408      */
WithServerName(const Aws::String & value)409     inline ModifyEndpointRequest& WithServerName(const Aws::String& value) { SetServerName(value); return *this;}
410 
411     /**
412      * <p>The name of the server where the endpoint database resides.</p>
413      */
WithServerName(Aws::String && value)414     inline ModifyEndpointRequest& WithServerName(Aws::String&& value) { SetServerName(std::move(value)); return *this;}
415 
416     /**
417      * <p>The name of the server where the endpoint database resides.</p>
418      */
WithServerName(const char * value)419     inline ModifyEndpointRequest& WithServerName(const char* value) { SetServerName(value); return *this;}
420 
421 
422     /**
423      * <p>The port used by the endpoint database.</p>
424      */
GetPort()425     inline int GetPort() const{ return m_port; }
426 
427     /**
428      * <p>The port used by the endpoint database.</p>
429      */
PortHasBeenSet()430     inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
431 
432     /**
433      * <p>The port used by the endpoint database.</p>
434      */
SetPort(int value)435     inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; }
436 
437     /**
438      * <p>The port used by the endpoint database.</p>
439      */
WithPort(int value)440     inline ModifyEndpointRequest& WithPort(int value) { SetPort(value); return *this;}
441 
442 
443     /**
444      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
445      * not specify DatabaseName.</p>
446      */
GetDatabaseName()447     inline const Aws::String& GetDatabaseName() const{ return m_databaseName; }
448 
449     /**
450      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
451      * not specify DatabaseName.</p>
452      */
DatabaseNameHasBeenSet()453     inline bool DatabaseNameHasBeenSet() const { return m_databaseNameHasBeenSet; }
454 
455     /**
456      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
457      * not specify DatabaseName.</p>
458      */
SetDatabaseName(const Aws::String & value)459     inline void SetDatabaseName(const Aws::String& value) { m_databaseNameHasBeenSet = true; m_databaseName = value; }
460 
461     /**
462      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
463      * not specify DatabaseName.</p>
464      */
SetDatabaseName(Aws::String && value)465     inline void SetDatabaseName(Aws::String&& value) { m_databaseNameHasBeenSet = true; m_databaseName = std::move(value); }
466 
467     /**
468      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
469      * not specify DatabaseName.</p>
470      */
SetDatabaseName(const char * value)471     inline void SetDatabaseName(const char* value) { m_databaseNameHasBeenSet = true; m_databaseName.assign(value); }
472 
473     /**
474      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
475      * not specify DatabaseName.</p>
476      */
WithDatabaseName(const Aws::String & value)477     inline ModifyEndpointRequest& WithDatabaseName(const Aws::String& value) { SetDatabaseName(value); return *this;}
478 
479     /**
480      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
481      * not specify DatabaseName.</p>
482      */
WithDatabaseName(Aws::String && value)483     inline ModifyEndpointRequest& WithDatabaseName(Aws::String&& value) { SetDatabaseName(std::move(value)); return *this;}
484 
485     /**
486      * <p>The name of the endpoint database. For a MySQL source or target endpoint, do
487      * not specify DatabaseName.</p>
488      */
WithDatabaseName(const char * value)489     inline ModifyEndpointRequest& WithDatabaseName(const char* value) { SetDatabaseName(value); return *this;}
490 
491 
492     /**
493      * <p>Additional attributes associated with the connection. To reset this
494      * parameter, pass the empty string ("") as an argument.</p>
495      */
GetExtraConnectionAttributes()496     inline const Aws::String& GetExtraConnectionAttributes() const{ return m_extraConnectionAttributes; }
497 
498     /**
499      * <p>Additional attributes associated with the connection. To reset this
500      * parameter, pass the empty string ("") as an argument.</p>
501      */
ExtraConnectionAttributesHasBeenSet()502     inline bool ExtraConnectionAttributesHasBeenSet() const { return m_extraConnectionAttributesHasBeenSet; }
503 
504     /**
505      * <p>Additional attributes associated with the connection. To reset this
506      * parameter, pass the empty string ("") as an argument.</p>
507      */
SetExtraConnectionAttributes(const Aws::String & value)508     inline void SetExtraConnectionAttributes(const Aws::String& value) { m_extraConnectionAttributesHasBeenSet = true; m_extraConnectionAttributes = value; }
509 
510     /**
511      * <p>Additional attributes associated with the connection. To reset this
512      * parameter, pass the empty string ("") as an argument.</p>
513      */
SetExtraConnectionAttributes(Aws::String && value)514     inline void SetExtraConnectionAttributes(Aws::String&& value) { m_extraConnectionAttributesHasBeenSet = true; m_extraConnectionAttributes = std::move(value); }
515 
516     /**
517      * <p>Additional attributes associated with the connection. To reset this
518      * parameter, pass the empty string ("") as an argument.</p>
519      */
SetExtraConnectionAttributes(const char * value)520     inline void SetExtraConnectionAttributes(const char* value) { m_extraConnectionAttributesHasBeenSet = true; m_extraConnectionAttributes.assign(value); }
521 
522     /**
523      * <p>Additional attributes associated with the connection. To reset this
524      * parameter, pass the empty string ("") as an argument.</p>
525      */
WithExtraConnectionAttributes(const Aws::String & value)526     inline ModifyEndpointRequest& WithExtraConnectionAttributes(const Aws::String& value) { SetExtraConnectionAttributes(value); return *this;}
527 
528     /**
529      * <p>Additional attributes associated with the connection. To reset this
530      * parameter, pass the empty string ("") as an argument.</p>
531      */
WithExtraConnectionAttributes(Aws::String && value)532     inline ModifyEndpointRequest& WithExtraConnectionAttributes(Aws::String&& value) { SetExtraConnectionAttributes(std::move(value)); return *this;}
533 
534     /**
535      * <p>Additional attributes associated with the connection. To reset this
536      * parameter, pass the empty string ("") as an argument.</p>
537      */
WithExtraConnectionAttributes(const char * value)538     inline ModifyEndpointRequest& WithExtraConnectionAttributes(const char* value) { SetExtraConnectionAttributes(value); return *this;}
539 
540 
541     /**
542      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
543      * connection.</p>
544      */
GetCertificateArn()545     inline const Aws::String& GetCertificateArn() const{ return m_certificateArn; }
546 
547     /**
548      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
549      * connection.</p>
550      */
CertificateArnHasBeenSet()551     inline bool CertificateArnHasBeenSet() const { return m_certificateArnHasBeenSet; }
552 
553     /**
554      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
555      * connection.</p>
556      */
SetCertificateArn(const Aws::String & value)557     inline void SetCertificateArn(const Aws::String& value) { m_certificateArnHasBeenSet = true; m_certificateArn = value; }
558 
559     /**
560      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
561      * connection.</p>
562      */
SetCertificateArn(Aws::String && value)563     inline void SetCertificateArn(Aws::String&& value) { m_certificateArnHasBeenSet = true; m_certificateArn = std::move(value); }
564 
565     /**
566      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
567      * connection.</p>
568      */
SetCertificateArn(const char * value)569     inline void SetCertificateArn(const char* value) { m_certificateArnHasBeenSet = true; m_certificateArn.assign(value); }
570 
571     /**
572      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
573      * connection.</p>
574      */
WithCertificateArn(const Aws::String & value)575     inline ModifyEndpointRequest& WithCertificateArn(const Aws::String& value) { SetCertificateArn(value); return *this;}
576 
577     /**
578      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
579      * connection.</p>
580      */
WithCertificateArn(Aws::String && value)581     inline ModifyEndpointRequest& WithCertificateArn(Aws::String&& value) { SetCertificateArn(std::move(value)); return *this;}
582 
583     /**
584      * <p>The Amazon Resource Name (ARN) of the certificate used for SSL
585      * connection.</p>
586      */
WithCertificateArn(const char * value)587     inline ModifyEndpointRequest& WithCertificateArn(const char* value) { SetCertificateArn(value); return *this;}
588 
589 
590     /**
591      * <p>The SSL mode used to connect to the endpoint. The default value is
592      * <code>none</code>.</p>
593      */
GetSslMode()594     inline const DmsSslModeValue& GetSslMode() const{ return m_sslMode; }
595 
596     /**
597      * <p>The SSL mode used to connect to the endpoint. The default value is
598      * <code>none</code>.</p>
599      */
SslModeHasBeenSet()600     inline bool SslModeHasBeenSet() const { return m_sslModeHasBeenSet; }
601 
602     /**
603      * <p>The SSL mode used to connect to the endpoint. The default value is
604      * <code>none</code>.</p>
605      */
SetSslMode(const DmsSslModeValue & value)606     inline void SetSslMode(const DmsSslModeValue& value) { m_sslModeHasBeenSet = true; m_sslMode = value; }
607 
608     /**
609      * <p>The SSL mode used to connect to the endpoint. The default value is
610      * <code>none</code>.</p>
611      */
SetSslMode(DmsSslModeValue && value)612     inline void SetSslMode(DmsSslModeValue&& value) { m_sslModeHasBeenSet = true; m_sslMode = std::move(value); }
613 
614     /**
615      * <p>The SSL mode used to connect to the endpoint. The default value is
616      * <code>none</code>.</p>
617      */
WithSslMode(const DmsSslModeValue & value)618     inline ModifyEndpointRequest& WithSslMode(const DmsSslModeValue& value) { SetSslMode(value); return *this;}
619 
620     /**
621      * <p>The SSL mode used to connect to the endpoint. The default value is
622      * <code>none</code>.</p>
623      */
WithSslMode(DmsSslModeValue && value)624     inline ModifyEndpointRequest& WithSslMode(DmsSslModeValue&& value) { SetSslMode(std::move(value)); return *this;}
625 
626 
627     /**
628      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
629      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
630      */
GetServiceAccessRoleArn()631     inline const Aws::String& GetServiceAccessRoleArn() const{ return m_serviceAccessRoleArn; }
632 
633     /**
634      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
635      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
636      */
ServiceAccessRoleArnHasBeenSet()637     inline bool ServiceAccessRoleArnHasBeenSet() const { return m_serviceAccessRoleArnHasBeenSet; }
638 
639     /**
640      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
641      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
642      */
SetServiceAccessRoleArn(const Aws::String & value)643     inline void SetServiceAccessRoleArn(const Aws::String& value) { m_serviceAccessRoleArnHasBeenSet = true; m_serviceAccessRoleArn = value; }
644 
645     /**
646      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
647      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
648      */
SetServiceAccessRoleArn(Aws::String && value)649     inline void SetServiceAccessRoleArn(Aws::String&& value) { m_serviceAccessRoleArnHasBeenSet = true; m_serviceAccessRoleArn = std::move(value); }
650 
651     /**
652      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
653      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
654      */
SetServiceAccessRoleArn(const char * value)655     inline void SetServiceAccessRoleArn(const char* value) { m_serviceAccessRoleArnHasBeenSet = true; m_serviceAccessRoleArn.assign(value); }
656 
657     /**
658      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
659      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
660      */
WithServiceAccessRoleArn(const Aws::String & value)661     inline ModifyEndpointRequest& WithServiceAccessRoleArn(const Aws::String& value) { SetServiceAccessRoleArn(value); return *this;}
662 
663     /**
664      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
665      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
666      */
WithServiceAccessRoleArn(Aws::String && value)667     inline ModifyEndpointRequest& WithServiceAccessRoleArn(Aws::String&& value) { SetServiceAccessRoleArn(std::move(value)); return *this;}
668 
669     /**
670      * <p> The Amazon Resource Name (ARN) for the IAM role you want to use to modify
671      * the endpoint. The role must allow the <code>iam:PassRole</code> action.</p>
672      */
WithServiceAccessRoleArn(const char * value)673     inline ModifyEndpointRequest& WithServiceAccessRoleArn(const char* value) { SetServiceAccessRoleArn(value); return *this;}
674 
675 
676     /**
677      * <p>The external table definition.</p>
678      */
GetExternalTableDefinition()679     inline const Aws::String& GetExternalTableDefinition() const{ return m_externalTableDefinition; }
680 
681     /**
682      * <p>The external table definition.</p>
683      */
ExternalTableDefinitionHasBeenSet()684     inline bool ExternalTableDefinitionHasBeenSet() const { return m_externalTableDefinitionHasBeenSet; }
685 
686     /**
687      * <p>The external table definition.</p>
688      */
SetExternalTableDefinition(const Aws::String & value)689     inline void SetExternalTableDefinition(const Aws::String& value) { m_externalTableDefinitionHasBeenSet = true; m_externalTableDefinition = value; }
690 
691     /**
692      * <p>The external table definition.</p>
693      */
SetExternalTableDefinition(Aws::String && value)694     inline void SetExternalTableDefinition(Aws::String&& value) { m_externalTableDefinitionHasBeenSet = true; m_externalTableDefinition = std::move(value); }
695 
696     /**
697      * <p>The external table definition.</p>
698      */
SetExternalTableDefinition(const char * value)699     inline void SetExternalTableDefinition(const char* value) { m_externalTableDefinitionHasBeenSet = true; m_externalTableDefinition.assign(value); }
700 
701     /**
702      * <p>The external table definition.</p>
703      */
WithExternalTableDefinition(const Aws::String & value)704     inline ModifyEndpointRequest& WithExternalTableDefinition(const Aws::String& value) { SetExternalTableDefinition(value); return *this;}
705 
706     /**
707      * <p>The external table definition.</p>
708      */
WithExternalTableDefinition(Aws::String && value)709     inline ModifyEndpointRequest& WithExternalTableDefinition(Aws::String&& value) { SetExternalTableDefinition(std::move(value)); return *this;}
710 
711     /**
712      * <p>The external table definition.</p>
713      */
WithExternalTableDefinition(const char * value)714     inline ModifyEndpointRequest& WithExternalTableDefinition(const char* value) { SetExternalTableDefinition(value); return *this;}
715 
716 
717     /**
718      * <p>Settings in JSON format for the target Amazon DynamoDB endpoint. For
719      * information about other available settings, see <a
720      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using
721      * Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration
722      * Service User Guide.</i> </p>
723      */
GetDynamoDbSettings()724     inline const DynamoDbSettings& GetDynamoDbSettings() const{ return m_dynamoDbSettings; }
725 
726     /**
727      * <p>Settings in JSON format for the target Amazon DynamoDB endpoint. For
728      * information about other available settings, see <a
729      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using
730      * Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration
731      * Service User Guide.</i> </p>
732      */
DynamoDbSettingsHasBeenSet()733     inline bool DynamoDbSettingsHasBeenSet() const { return m_dynamoDbSettingsHasBeenSet; }
734 
735     /**
736      * <p>Settings in JSON format for the target Amazon DynamoDB endpoint. For
737      * information about other available settings, see <a
738      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using
739      * Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration
740      * Service User Guide.</i> </p>
741      */
SetDynamoDbSettings(const DynamoDbSettings & value)742     inline void SetDynamoDbSettings(const DynamoDbSettings& value) { m_dynamoDbSettingsHasBeenSet = true; m_dynamoDbSettings = value; }
743 
744     /**
745      * <p>Settings in JSON format for the target Amazon DynamoDB endpoint. For
746      * information about other available settings, see <a
747      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using
748      * Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration
749      * Service User Guide.</i> </p>
750      */
SetDynamoDbSettings(DynamoDbSettings && value)751     inline void SetDynamoDbSettings(DynamoDbSettings&& value) { m_dynamoDbSettingsHasBeenSet = true; m_dynamoDbSettings = std::move(value); }
752 
753     /**
754      * <p>Settings in JSON format for the target Amazon DynamoDB endpoint. For
755      * information about other available settings, see <a
756      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using
757      * Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration
758      * Service User Guide.</i> </p>
759      */
WithDynamoDbSettings(const DynamoDbSettings & value)760     inline ModifyEndpointRequest& WithDynamoDbSettings(const DynamoDbSettings& value) { SetDynamoDbSettings(value); return *this;}
761 
762     /**
763      * <p>Settings in JSON format for the target Amazon DynamoDB endpoint. For
764      * information about other available settings, see <a
765      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using
766      * Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration
767      * Service User Guide.</i> </p>
768      */
WithDynamoDbSettings(DynamoDbSettings && value)769     inline ModifyEndpointRequest& WithDynamoDbSettings(DynamoDbSettings&& value) { SetDynamoDbSettings(std::move(value)); return *this;}
770 
771 
772     /**
773      * <p>Settings in JSON format for the target Amazon S3 endpoint. For more
774      * information about the available settings, see <a
775      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra
776      * Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the
777      * <i>Database Migration Service User Guide.</i> </p>
778      */
GetS3Settings()779     inline const S3Settings& GetS3Settings() const{ return m_s3Settings; }
780 
781     /**
782      * <p>Settings in JSON format for the target Amazon S3 endpoint. For more
783      * information about the available settings, see <a
784      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra
785      * Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the
786      * <i>Database Migration Service User Guide.</i> </p>
787      */
S3SettingsHasBeenSet()788     inline bool S3SettingsHasBeenSet() const { return m_s3SettingsHasBeenSet; }
789 
790     /**
791      * <p>Settings in JSON format for the target Amazon S3 endpoint. For more
792      * information about the available settings, see <a
793      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra
794      * Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the
795      * <i>Database Migration Service User Guide.</i> </p>
796      */
SetS3Settings(const S3Settings & value)797     inline void SetS3Settings(const S3Settings& value) { m_s3SettingsHasBeenSet = true; m_s3Settings = value; }
798 
799     /**
800      * <p>Settings in JSON format for the target Amazon S3 endpoint. For more
801      * information about the available settings, see <a
802      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra
803      * Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the
804      * <i>Database Migration Service User Guide.</i> </p>
805      */
SetS3Settings(S3Settings && value)806     inline void SetS3Settings(S3Settings&& value) { m_s3SettingsHasBeenSet = true; m_s3Settings = std::move(value); }
807 
808     /**
809      * <p>Settings in JSON format for the target Amazon S3 endpoint. For more
810      * information about the available settings, see <a
811      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra
812      * Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the
813      * <i>Database Migration Service User Guide.</i> </p>
814      */
WithS3Settings(const S3Settings & value)815     inline ModifyEndpointRequest& WithS3Settings(const S3Settings& value) { SetS3Settings(value); return *this;}
816 
817     /**
818      * <p>Settings in JSON format for the target Amazon S3 endpoint. For more
819      * information about the available settings, see <a
820      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra
821      * Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the
822      * <i>Database Migration Service User Guide.</i> </p>
823      */
WithS3Settings(S3Settings && value)824     inline ModifyEndpointRequest& WithS3Settings(S3Settings&& value) { SetS3Settings(std::move(value)); return *this;}
825 
826 
827     /**
828      * <p>The settings in JSON format for the DMS transfer type of source endpoint.
829      * </p> <p>Attributes include the following:</p> <ul> <li> <p>serviceAccessRoleArn
830      * - The Amazon Resource Name (ARN) used by the service access IAM role. The role
831      * must allow the <code>iam:PassRole</code> action.</p> </li> <li> <p>BucketName -
832      * The name of the S3 bucket to use.</p> </li> </ul> <p>Shorthand syntax for these
833      * settings is as follows: <code>ServiceAccessRoleArn=string
834      * ,BucketName=string</code> </p> <p>JSON syntax for these settings is as follows:
835      * <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string"} </code> </p>
836      */
GetDmsTransferSettings()837     inline const DmsTransferSettings& GetDmsTransferSettings() const{ return m_dmsTransferSettings; }
838 
839     /**
840      * <p>The settings in JSON format for the DMS transfer type of source endpoint.
841      * </p> <p>Attributes include the following:</p> <ul> <li> <p>serviceAccessRoleArn
842      * - The Amazon Resource Name (ARN) used by the service access IAM role. The role
843      * must allow the <code>iam:PassRole</code> action.</p> </li> <li> <p>BucketName -
844      * The name of the S3 bucket to use.</p> </li> </ul> <p>Shorthand syntax for these
845      * settings is as follows: <code>ServiceAccessRoleArn=string
846      * ,BucketName=string</code> </p> <p>JSON syntax for these settings is as follows:
847      * <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string"} </code> </p>
848      */
DmsTransferSettingsHasBeenSet()849     inline bool DmsTransferSettingsHasBeenSet() const { return m_dmsTransferSettingsHasBeenSet; }
850 
851     /**
852      * <p>The settings in JSON format for the DMS transfer type of source endpoint.
853      * </p> <p>Attributes include the following:</p> <ul> <li> <p>serviceAccessRoleArn
854      * - The Amazon Resource Name (ARN) used by the service access IAM role. The role
855      * must allow the <code>iam:PassRole</code> action.</p> </li> <li> <p>BucketName -
856      * The name of the S3 bucket to use.</p> </li> </ul> <p>Shorthand syntax for these
857      * settings is as follows: <code>ServiceAccessRoleArn=string
858      * ,BucketName=string</code> </p> <p>JSON syntax for these settings is as follows:
859      * <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string"} </code> </p>
860      */
SetDmsTransferSettings(const DmsTransferSettings & value)861     inline void SetDmsTransferSettings(const DmsTransferSettings& value) { m_dmsTransferSettingsHasBeenSet = true; m_dmsTransferSettings = value; }
862 
863     /**
864      * <p>The settings in JSON format for the DMS transfer type of source endpoint.
865      * </p> <p>Attributes include the following:</p> <ul> <li> <p>serviceAccessRoleArn
866      * - The Amazon Resource Name (ARN) used by the service access IAM role. The role
867      * must allow the <code>iam:PassRole</code> action.</p> </li> <li> <p>BucketName -
868      * The name of the S3 bucket to use.</p> </li> </ul> <p>Shorthand syntax for these
869      * settings is as follows: <code>ServiceAccessRoleArn=string
870      * ,BucketName=string</code> </p> <p>JSON syntax for these settings is as follows:
871      * <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string"} </code> </p>
872      */
SetDmsTransferSettings(DmsTransferSettings && value)873     inline void SetDmsTransferSettings(DmsTransferSettings&& value) { m_dmsTransferSettingsHasBeenSet = true; m_dmsTransferSettings = std::move(value); }
874 
875     /**
876      * <p>The settings in JSON format for the DMS transfer type of source endpoint.
877      * </p> <p>Attributes include the following:</p> <ul> <li> <p>serviceAccessRoleArn
878      * - The Amazon Resource Name (ARN) used by the service access IAM role. The role
879      * must allow the <code>iam:PassRole</code> action.</p> </li> <li> <p>BucketName -
880      * The name of the S3 bucket to use.</p> </li> </ul> <p>Shorthand syntax for these
881      * settings is as follows: <code>ServiceAccessRoleArn=string
882      * ,BucketName=string</code> </p> <p>JSON syntax for these settings is as follows:
883      * <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string"} </code> </p>
884      */
WithDmsTransferSettings(const DmsTransferSettings & value)885     inline ModifyEndpointRequest& WithDmsTransferSettings(const DmsTransferSettings& value) { SetDmsTransferSettings(value); return *this;}
886 
887     /**
888      * <p>The settings in JSON format for the DMS transfer type of source endpoint.
889      * </p> <p>Attributes include the following:</p> <ul> <li> <p>serviceAccessRoleArn
890      * - The Amazon Resource Name (ARN) used by the service access IAM role. The role
891      * must allow the <code>iam:PassRole</code> action.</p> </li> <li> <p>BucketName -
892      * The name of the S3 bucket to use.</p> </li> </ul> <p>Shorthand syntax for these
893      * settings is as follows: <code>ServiceAccessRoleArn=string
894      * ,BucketName=string</code> </p> <p>JSON syntax for these settings is as follows:
895      * <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string"} </code> </p>
896      */
WithDmsTransferSettings(DmsTransferSettings && value)897     inline ModifyEndpointRequest& WithDmsTransferSettings(DmsTransferSettings&& value) { SetDmsTransferSettings(std::move(value)); return *this;}
898 
899 
900     /**
901      * <p>Settings in JSON format for the source MongoDB endpoint. For more information
902      * about the available settings, see the configuration properties section in <a
903      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint
904      * configuration settings when using MongoDB as a source for Database Migration
905      * Service</a> in the <i>Database Migration Service User Guide.</i> </p>
906      */
GetMongoDbSettings()907     inline const MongoDbSettings& GetMongoDbSettings() const{ return m_mongoDbSettings; }
908 
909     /**
910      * <p>Settings in JSON format for the source MongoDB endpoint. For more information
911      * about the available settings, see the configuration properties section in <a
912      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint
913      * configuration settings when using MongoDB as a source for Database Migration
914      * Service</a> in the <i>Database Migration Service User Guide.</i> </p>
915      */
MongoDbSettingsHasBeenSet()916     inline bool MongoDbSettingsHasBeenSet() const { return m_mongoDbSettingsHasBeenSet; }
917 
918     /**
919      * <p>Settings in JSON format for the source MongoDB endpoint. For more information
920      * about the available settings, see the configuration properties section in <a
921      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint
922      * configuration settings when using MongoDB as a source for Database Migration
923      * Service</a> in the <i>Database Migration Service User Guide.</i> </p>
924      */
SetMongoDbSettings(const MongoDbSettings & value)925     inline void SetMongoDbSettings(const MongoDbSettings& value) { m_mongoDbSettingsHasBeenSet = true; m_mongoDbSettings = value; }
926 
927     /**
928      * <p>Settings in JSON format for the source MongoDB endpoint. For more information
929      * about the available settings, see the configuration properties section in <a
930      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint
931      * configuration settings when using MongoDB as a source for Database Migration
932      * Service</a> in the <i>Database Migration Service User Guide.</i> </p>
933      */
SetMongoDbSettings(MongoDbSettings && value)934     inline void SetMongoDbSettings(MongoDbSettings&& value) { m_mongoDbSettingsHasBeenSet = true; m_mongoDbSettings = std::move(value); }
935 
936     /**
937      * <p>Settings in JSON format for the source MongoDB endpoint. For more information
938      * about the available settings, see the configuration properties section in <a
939      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint
940      * configuration settings when using MongoDB as a source for Database Migration
941      * Service</a> in the <i>Database Migration Service User Guide.</i> </p>
942      */
WithMongoDbSettings(const MongoDbSettings & value)943     inline ModifyEndpointRequest& WithMongoDbSettings(const MongoDbSettings& value) { SetMongoDbSettings(value); return *this;}
944 
945     /**
946      * <p>Settings in JSON format for the source MongoDB endpoint. For more information
947      * about the available settings, see the configuration properties section in <a
948      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint
949      * configuration settings when using MongoDB as a source for Database Migration
950      * Service</a> in the <i>Database Migration Service User Guide.</i> </p>
951      */
WithMongoDbSettings(MongoDbSettings && value)952     inline ModifyEndpointRequest& WithMongoDbSettings(MongoDbSettings&& value) { SetMongoDbSettings(std::move(value)); return *this;}
953 
954 
955     /**
956      * <p>Settings in JSON format for the target endpoint for Amazon Kinesis Data
957      * Streams. For more information about the available settings, see <a
958      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using
959      * object mapping to migrate data to a Kinesis data stream</a> in the <i>Database
960      * Migration Service User Guide.</i> </p>
961      */
GetKinesisSettings()962     inline const KinesisSettings& GetKinesisSettings() const{ return m_kinesisSettings; }
963 
964     /**
965      * <p>Settings in JSON format for the target endpoint for Amazon Kinesis Data
966      * Streams. For more information about the available settings, see <a
967      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using
968      * object mapping to migrate data to a Kinesis data stream</a> in the <i>Database
969      * Migration Service User Guide.</i> </p>
970      */
KinesisSettingsHasBeenSet()971     inline bool KinesisSettingsHasBeenSet() const { return m_kinesisSettingsHasBeenSet; }
972 
973     /**
974      * <p>Settings in JSON format for the target endpoint for Amazon Kinesis Data
975      * Streams. For more information about the available settings, see <a
976      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using
977      * object mapping to migrate data to a Kinesis data stream</a> in the <i>Database
978      * Migration Service User Guide.</i> </p>
979      */
SetKinesisSettings(const KinesisSettings & value)980     inline void SetKinesisSettings(const KinesisSettings& value) { m_kinesisSettingsHasBeenSet = true; m_kinesisSettings = value; }
981 
982     /**
983      * <p>Settings in JSON format for the target endpoint for Amazon Kinesis Data
984      * Streams. For more information about the available settings, see <a
985      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using
986      * object mapping to migrate data to a Kinesis data stream</a> in the <i>Database
987      * Migration Service User Guide.</i> </p>
988      */
SetKinesisSettings(KinesisSettings && value)989     inline void SetKinesisSettings(KinesisSettings&& value) { m_kinesisSettingsHasBeenSet = true; m_kinesisSettings = std::move(value); }
990 
991     /**
992      * <p>Settings in JSON format for the target endpoint for Amazon Kinesis Data
993      * Streams. For more information about the available settings, see <a
994      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using
995      * object mapping to migrate data to a Kinesis data stream</a> in the <i>Database
996      * Migration Service User Guide.</i> </p>
997      */
WithKinesisSettings(const KinesisSettings & value)998     inline ModifyEndpointRequest& WithKinesisSettings(const KinesisSettings& value) { SetKinesisSettings(value); return *this;}
999 
1000     /**
1001      * <p>Settings in JSON format for the target endpoint for Amazon Kinesis Data
1002      * Streams. For more information about the available settings, see <a
1003      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using
1004      * object mapping to migrate data to a Kinesis data stream</a> in the <i>Database
1005      * Migration Service User Guide.</i> </p>
1006      */
WithKinesisSettings(KinesisSettings && value)1007     inline ModifyEndpointRequest& WithKinesisSettings(KinesisSettings&& value) { SetKinesisSettings(std::move(value)); return *this;}
1008 
1009 
1010     /**
1011      * <p>Settings in JSON format for the target Apache Kafka endpoint. For more
1012      * information about the available settings, see <a
1013      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using
1014      * object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration
1015      * Service User Guide.</i> </p>
1016      */
GetKafkaSettings()1017     inline const KafkaSettings& GetKafkaSettings() const{ return m_kafkaSettings; }
1018 
1019     /**
1020      * <p>Settings in JSON format for the target Apache Kafka endpoint. For more
1021      * information about the available settings, see <a
1022      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using
1023      * object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration
1024      * Service User Guide.</i> </p>
1025      */
KafkaSettingsHasBeenSet()1026     inline bool KafkaSettingsHasBeenSet() const { return m_kafkaSettingsHasBeenSet; }
1027 
1028     /**
1029      * <p>Settings in JSON format for the target Apache Kafka endpoint. For more
1030      * information about the available settings, see <a
1031      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using
1032      * object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration
1033      * Service User Guide.</i> </p>
1034      */
SetKafkaSettings(const KafkaSettings & value)1035     inline void SetKafkaSettings(const KafkaSettings& value) { m_kafkaSettingsHasBeenSet = true; m_kafkaSettings = value; }
1036 
1037     /**
1038      * <p>Settings in JSON format for the target Apache Kafka endpoint. For more
1039      * information about the available settings, see <a
1040      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using
1041      * object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration
1042      * Service User Guide.</i> </p>
1043      */
SetKafkaSettings(KafkaSettings && value)1044     inline void SetKafkaSettings(KafkaSettings&& value) { m_kafkaSettingsHasBeenSet = true; m_kafkaSettings = std::move(value); }
1045 
1046     /**
1047      * <p>Settings in JSON format for the target Apache Kafka endpoint. For more
1048      * information about the available settings, see <a
1049      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using
1050      * object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration
1051      * Service User Guide.</i> </p>
1052      */
WithKafkaSettings(const KafkaSettings & value)1053     inline ModifyEndpointRequest& WithKafkaSettings(const KafkaSettings& value) { SetKafkaSettings(value); return *this;}
1054 
1055     /**
1056      * <p>Settings in JSON format for the target Apache Kafka endpoint. For more
1057      * information about the available settings, see <a
1058      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using
1059      * object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration
1060      * Service User Guide.</i> </p>
1061      */
WithKafkaSettings(KafkaSettings && value)1062     inline ModifyEndpointRequest& WithKafkaSettings(KafkaSettings&& value) { SetKafkaSettings(std::move(value)); return *this;}
1063 
1064 
1065     /**
1066      * <p>Settings in JSON format for the target Elasticsearch endpoint. For more
1067      * information about the available settings, see <a
1068      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra
1069      * Connection Attributes When Using Elasticsearch as a Target for DMS</a> in the
1070      * <i>Database Migration Service User Guide.</i> </p>
1071      */
GetElasticsearchSettings()1072     inline const ElasticsearchSettings& GetElasticsearchSettings() const{ return m_elasticsearchSettings; }
1073 
1074     /**
1075      * <p>Settings in JSON format for the target Elasticsearch endpoint. For more
1076      * information about the available settings, see <a
1077      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra
1078      * Connection Attributes When Using Elasticsearch as a Target for DMS</a> in the
1079      * <i>Database Migration Service User Guide.</i> </p>
1080      */
ElasticsearchSettingsHasBeenSet()1081     inline bool ElasticsearchSettingsHasBeenSet() const { return m_elasticsearchSettingsHasBeenSet; }
1082 
1083     /**
1084      * <p>Settings in JSON format for the target Elasticsearch endpoint. For more
1085      * information about the available settings, see <a
1086      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra
1087      * Connection Attributes When Using Elasticsearch as a Target for DMS</a> in the
1088      * <i>Database Migration Service User Guide.</i> </p>
1089      */
SetElasticsearchSettings(const ElasticsearchSettings & value)1090     inline void SetElasticsearchSettings(const ElasticsearchSettings& value) { m_elasticsearchSettingsHasBeenSet = true; m_elasticsearchSettings = value; }
1091 
1092     /**
1093      * <p>Settings in JSON format for the target Elasticsearch endpoint. For more
1094      * information about the available settings, see <a
1095      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra
1096      * Connection Attributes When Using Elasticsearch as a Target for DMS</a> in the
1097      * <i>Database Migration Service User Guide.</i> </p>
1098      */
SetElasticsearchSettings(ElasticsearchSettings && value)1099     inline void SetElasticsearchSettings(ElasticsearchSettings&& value) { m_elasticsearchSettingsHasBeenSet = true; m_elasticsearchSettings = std::move(value); }
1100 
1101     /**
1102      * <p>Settings in JSON format for the target Elasticsearch endpoint. For more
1103      * information about the available settings, see <a
1104      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra
1105      * Connection Attributes When Using Elasticsearch as a Target for DMS</a> in the
1106      * <i>Database Migration Service User Guide.</i> </p>
1107      */
WithElasticsearchSettings(const ElasticsearchSettings & value)1108     inline ModifyEndpointRequest& WithElasticsearchSettings(const ElasticsearchSettings& value) { SetElasticsearchSettings(value); return *this;}
1109 
1110     /**
1111      * <p>Settings in JSON format for the target Elasticsearch endpoint. For more
1112      * information about the available settings, see <a
1113      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra
1114      * Connection Attributes When Using Elasticsearch as a Target for DMS</a> in the
1115      * <i>Database Migration Service User Guide.</i> </p>
1116      */
WithElasticsearchSettings(ElasticsearchSettings && value)1117     inline ModifyEndpointRequest& WithElasticsearchSettings(ElasticsearchSettings&& value) { SetElasticsearchSettings(std::move(value)); return *this;}
1118 
1119 
1120     /**
1121      * <p>Settings in JSON format for the target Amazon Neptune endpoint. For more
1122      * information about the available settings, see <a
1123      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying
1124      * graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a>
1125      * in the <i>Database Migration Service User Guide.</i> </p>
1126      */
GetNeptuneSettings()1127     inline const NeptuneSettings& GetNeptuneSettings() const{ return m_neptuneSettings; }
1128 
1129     /**
1130      * <p>Settings in JSON format for the target Amazon Neptune endpoint. For more
1131      * information about the available settings, see <a
1132      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying
1133      * graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a>
1134      * in the <i>Database Migration Service User Guide.</i> </p>
1135      */
NeptuneSettingsHasBeenSet()1136     inline bool NeptuneSettingsHasBeenSet() const { return m_neptuneSettingsHasBeenSet; }
1137 
1138     /**
1139      * <p>Settings in JSON format for the target Amazon Neptune endpoint. For more
1140      * information about the available settings, see <a
1141      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying
1142      * graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a>
1143      * in the <i>Database Migration Service User Guide.</i> </p>
1144      */
SetNeptuneSettings(const NeptuneSettings & value)1145     inline void SetNeptuneSettings(const NeptuneSettings& value) { m_neptuneSettingsHasBeenSet = true; m_neptuneSettings = value; }
1146 
1147     /**
1148      * <p>Settings in JSON format for the target Amazon Neptune endpoint. For more
1149      * information about the available settings, see <a
1150      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying
1151      * graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a>
1152      * in the <i>Database Migration Service User Guide.</i> </p>
1153      */
SetNeptuneSettings(NeptuneSettings && value)1154     inline void SetNeptuneSettings(NeptuneSettings&& value) { m_neptuneSettingsHasBeenSet = true; m_neptuneSettings = std::move(value); }
1155 
1156     /**
1157      * <p>Settings in JSON format for the target Amazon Neptune endpoint. For more
1158      * information about the available settings, see <a
1159      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying
1160      * graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a>
1161      * in the <i>Database Migration Service User Guide.</i> </p>
1162      */
WithNeptuneSettings(const NeptuneSettings & value)1163     inline ModifyEndpointRequest& WithNeptuneSettings(const NeptuneSettings& value) { SetNeptuneSettings(value); return *this;}
1164 
1165     /**
1166      * <p>Settings in JSON format for the target Amazon Neptune endpoint. For more
1167      * information about the available settings, see <a
1168      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying
1169      * graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a>
1170      * in the <i>Database Migration Service User Guide.</i> </p>
1171      */
WithNeptuneSettings(NeptuneSettings && value)1172     inline ModifyEndpointRequest& WithNeptuneSettings(NeptuneSettings&& value) { SetNeptuneSettings(std::move(value)); return *this;}
1173 
1174 
1175 
GetRedshiftSettings()1176     inline const RedshiftSettings& GetRedshiftSettings() const{ return m_redshiftSettings; }
1177 
1178 
RedshiftSettingsHasBeenSet()1179     inline bool RedshiftSettingsHasBeenSet() const { return m_redshiftSettingsHasBeenSet; }
1180 
1181 
SetRedshiftSettings(const RedshiftSettings & value)1182     inline void SetRedshiftSettings(const RedshiftSettings& value) { m_redshiftSettingsHasBeenSet = true; m_redshiftSettings = value; }
1183 
1184 
SetRedshiftSettings(RedshiftSettings && value)1185     inline void SetRedshiftSettings(RedshiftSettings&& value) { m_redshiftSettingsHasBeenSet = true; m_redshiftSettings = std::move(value); }
1186 
1187 
WithRedshiftSettings(const RedshiftSettings & value)1188     inline ModifyEndpointRequest& WithRedshiftSettings(const RedshiftSettings& value) { SetRedshiftSettings(value); return *this;}
1189 
1190 
WithRedshiftSettings(RedshiftSettings && value)1191     inline ModifyEndpointRequest& WithRedshiftSettings(RedshiftSettings&& value) { SetRedshiftSettings(std::move(value)); return *this;}
1192 
1193 
1194     /**
1195      * <p>Settings in JSON format for the source and target PostgreSQL endpoint. For
1196      * information about other available settings, see <a
1197      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra
1198      * connection attributes when using PostgreSQL as a source for DMS</a> and <a
1199      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib">
1200      * Extra connection attributes when using PostgreSQL as a target for DMS</a> in the
1201      * <i>Database Migration Service User Guide.</i> </p>
1202      */
GetPostgreSQLSettings()1203     inline const PostgreSQLSettings& GetPostgreSQLSettings() const{ return m_postgreSQLSettings; }
1204 
1205     /**
1206      * <p>Settings in JSON format for the source and target PostgreSQL endpoint. For
1207      * information about other available settings, see <a
1208      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra
1209      * connection attributes when using PostgreSQL as a source for DMS</a> and <a
1210      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib">
1211      * Extra connection attributes when using PostgreSQL as a target for DMS</a> in the
1212      * <i>Database Migration Service User Guide.</i> </p>
1213      */
PostgreSQLSettingsHasBeenSet()1214     inline bool PostgreSQLSettingsHasBeenSet() const { return m_postgreSQLSettingsHasBeenSet; }
1215 
1216     /**
1217      * <p>Settings in JSON format for the source and target PostgreSQL endpoint. For
1218      * information about other available settings, see <a
1219      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra
1220      * connection attributes when using PostgreSQL as a source for DMS</a> and <a
1221      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib">
1222      * Extra connection attributes when using PostgreSQL as a target for DMS</a> in the
1223      * <i>Database Migration Service User Guide.</i> </p>
1224      */
SetPostgreSQLSettings(const PostgreSQLSettings & value)1225     inline void SetPostgreSQLSettings(const PostgreSQLSettings& value) { m_postgreSQLSettingsHasBeenSet = true; m_postgreSQLSettings = value; }
1226 
1227     /**
1228      * <p>Settings in JSON format for the source and target PostgreSQL endpoint. For
1229      * information about other available settings, see <a
1230      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra
1231      * connection attributes when using PostgreSQL as a source for DMS</a> and <a
1232      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib">
1233      * Extra connection attributes when using PostgreSQL as a target for DMS</a> in the
1234      * <i>Database Migration Service User Guide.</i> </p>
1235      */
SetPostgreSQLSettings(PostgreSQLSettings && value)1236     inline void SetPostgreSQLSettings(PostgreSQLSettings&& value) { m_postgreSQLSettingsHasBeenSet = true; m_postgreSQLSettings = std::move(value); }
1237 
1238     /**
1239      * <p>Settings in JSON format for the source and target PostgreSQL endpoint. For
1240      * information about other available settings, see <a
1241      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra
1242      * connection attributes when using PostgreSQL as a source for DMS</a> and <a
1243      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib">
1244      * Extra connection attributes when using PostgreSQL as a target for DMS</a> in the
1245      * <i>Database Migration Service User Guide.</i> </p>
1246      */
WithPostgreSQLSettings(const PostgreSQLSettings & value)1247     inline ModifyEndpointRequest& WithPostgreSQLSettings(const PostgreSQLSettings& value) { SetPostgreSQLSettings(value); return *this;}
1248 
1249     /**
1250      * <p>Settings in JSON format for the source and target PostgreSQL endpoint. For
1251      * information about other available settings, see <a
1252      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra
1253      * connection attributes when using PostgreSQL as a source for DMS</a> and <a
1254      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib">
1255      * Extra connection attributes when using PostgreSQL as a target for DMS</a> in the
1256      * <i>Database Migration Service User Guide.</i> </p>
1257      */
WithPostgreSQLSettings(PostgreSQLSettings && value)1258     inline ModifyEndpointRequest& WithPostgreSQLSettings(PostgreSQLSettings&& value) { SetPostgreSQLSettings(std::move(value)); return *this;}
1259 
1260 
1261     /**
1262      * <p>Settings in JSON format for the source and target MySQL endpoint. For
1263      * information about other available settings, see <a
1264      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra
1265      * connection attributes when using MySQL as a source for DMS</a> and <a
1266      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra
1267      * connection attributes when using a MySQL-compatible database as a target for
1268      * DMS</a> in the <i>Database Migration Service User Guide.</i> </p>
1269      */
GetMySQLSettings()1270     inline const MySQLSettings& GetMySQLSettings() const{ return m_mySQLSettings; }
1271 
1272     /**
1273      * <p>Settings in JSON format for the source and target MySQL endpoint. For
1274      * information about other available settings, see <a
1275      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra
1276      * connection attributes when using MySQL as a source for DMS</a> and <a
1277      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra
1278      * connection attributes when using a MySQL-compatible database as a target for
1279      * DMS</a> in the <i>Database Migration Service User Guide.</i> </p>
1280      */
MySQLSettingsHasBeenSet()1281     inline bool MySQLSettingsHasBeenSet() const { return m_mySQLSettingsHasBeenSet; }
1282 
1283     /**
1284      * <p>Settings in JSON format for the source and target MySQL endpoint. For
1285      * information about other available settings, see <a
1286      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra
1287      * connection attributes when using MySQL as a source for DMS</a> and <a
1288      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra
1289      * connection attributes when using a MySQL-compatible database as a target for
1290      * DMS</a> in the <i>Database Migration Service User Guide.</i> </p>
1291      */
SetMySQLSettings(const MySQLSettings & value)1292     inline void SetMySQLSettings(const MySQLSettings& value) { m_mySQLSettingsHasBeenSet = true; m_mySQLSettings = value; }
1293 
1294     /**
1295      * <p>Settings in JSON format for the source and target MySQL endpoint. For
1296      * information about other available settings, see <a
1297      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra
1298      * connection attributes when using MySQL as a source for DMS</a> and <a
1299      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra
1300      * connection attributes when using a MySQL-compatible database as a target for
1301      * DMS</a> in the <i>Database Migration Service User Guide.</i> </p>
1302      */
SetMySQLSettings(MySQLSettings && value)1303     inline void SetMySQLSettings(MySQLSettings&& value) { m_mySQLSettingsHasBeenSet = true; m_mySQLSettings = std::move(value); }
1304 
1305     /**
1306      * <p>Settings in JSON format for the source and target MySQL endpoint. For
1307      * information about other available settings, see <a
1308      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra
1309      * connection attributes when using MySQL as a source for DMS</a> and <a
1310      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra
1311      * connection attributes when using a MySQL-compatible database as a target for
1312      * DMS</a> in the <i>Database Migration Service User Guide.</i> </p>
1313      */
WithMySQLSettings(const MySQLSettings & value)1314     inline ModifyEndpointRequest& WithMySQLSettings(const MySQLSettings& value) { SetMySQLSettings(value); return *this;}
1315 
1316     /**
1317      * <p>Settings in JSON format for the source and target MySQL endpoint. For
1318      * information about other available settings, see <a
1319      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra
1320      * connection attributes when using MySQL as a source for DMS</a> and <a
1321      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra
1322      * connection attributes when using a MySQL-compatible database as a target for
1323      * DMS</a> in the <i>Database Migration Service User Guide.</i> </p>
1324      */
WithMySQLSettings(MySQLSettings && value)1325     inline ModifyEndpointRequest& WithMySQLSettings(MySQLSettings&& value) { SetMySQLSettings(std::move(value)); return *this;}
1326 
1327 
1328     /**
1329      * <p>Settings in JSON format for the source and target Oracle endpoint. For
1330      * information about other available settings, see <a
1331      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra
1332      * connection attributes when using Oracle as a source for DMS</a> and <a
1333      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib">
1334      * Extra connection attributes when using Oracle as a target for DMS</a> in the
1335      * <i>Database Migration Service User Guide.</i> </p>
1336      */
GetOracleSettings()1337     inline const OracleSettings& GetOracleSettings() const{ return m_oracleSettings; }
1338 
1339     /**
1340      * <p>Settings in JSON format for the source and target Oracle endpoint. For
1341      * information about other available settings, see <a
1342      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra
1343      * connection attributes when using Oracle as a source for DMS</a> and <a
1344      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib">
1345      * Extra connection attributes when using Oracle as a target for DMS</a> in the
1346      * <i>Database Migration Service User Guide.</i> </p>
1347      */
OracleSettingsHasBeenSet()1348     inline bool OracleSettingsHasBeenSet() const { return m_oracleSettingsHasBeenSet; }
1349 
1350     /**
1351      * <p>Settings in JSON format for the source and target Oracle endpoint. For
1352      * information about other available settings, see <a
1353      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra
1354      * connection attributes when using Oracle as a source for DMS</a> and <a
1355      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib">
1356      * Extra connection attributes when using Oracle as a target for DMS</a> in the
1357      * <i>Database Migration Service User Guide.</i> </p>
1358      */
SetOracleSettings(const OracleSettings & value)1359     inline void SetOracleSettings(const OracleSettings& value) { m_oracleSettingsHasBeenSet = true; m_oracleSettings = value; }
1360 
1361     /**
1362      * <p>Settings in JSON format for the source and target Oracle endpoint. For
1363      * information about other available settings, see <a
1364      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra
1365      * connection attributes when using Oracle as a source for DMS</a> and <a
1366      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib">
1367      * Extra connection attributes when using Oracle as a target for DMS</a> in the
1368      * <i>Database Migration Service User Guide.</i> </p>
1369      */
SetOracleSettings(OracleSettings && value)1370     inline void SetOracleSettings(OracleSettings&& value) { m_oracleSettingsHasBeenSet = true; m_oracleSettings = std::move(value); }
1371 
1372     /**
1373      * <p>Settings in JSON format for the source and target Oracle endpoint. For
1374      * information about other available settings, see <a
1375      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra
1376      * connection attributes when using Oracle as a source for DMS</a> and <a
1377      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib">
1378      * Extra connection attributes when using Oracle as a target for DMS</a> in the
1379      * <i>Database Migration Service User Guide.</i> </p>
1380      */
WithOracleSettings(const OracleSettings & value)1381     inline ModifyEndpointRequest& WithOracleSettings(const OracleSettings& value) { SetOracleSettings(value); return *this;}
1382 
1383     /**
1384      * <p>Settings in JSON format for the source and target Oracle endpoint. For
1385      * information about other available settings, see <a
1386      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra
1387      * connection attributes when using Oracle as a source for DMS</a> and <a
1388      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib">
1389      * Extra connection attributes when using Oracle as a target for DMS</a> in the
1390      * <i>Database Migration Service User Guide.</i> </p>
1391      */
WithOracleSettings(OracleSettings && value)1392     inline ModifyEndpointRequest& WithOracleSettings(OracleSettings&& value) { SetOracleSettings(std::move(value)); return *this;}
1393 
1394 
1395     /**
1396      * <p>Settings in JSON format for the source and target SAP ASE endpoint. For
1397      * information about other available settings, see <a
1398      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra
1399      * connection attributes when using SAP ASE as a source for DMS</a> and <a
1400      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra
1401      * connection attributes when using SAP ASE as a target for DMS</a> in the
1402      * <i>Database Migration Service User Guide.</i> </p>
1403      */
GetSybaseSettings()1404     inline const SybaseSettings& GetSybaseSettings() const{ return m_sybaseSettings; }
1405 
1406     /**
1407      * <p>Settings in JSON format for the source and target SAP ASE endpoint. For
1408      * information about other available settings, see <a
1409      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra
1410      * connection attributes when using SAP ASE as a source for DMS</a> and <a
1411      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra
1412      * connection attributes when using SAP ASE as a target for DMS</a> in the
1413      * <i>Database Migration Service User Guide.</i> </p>
1414      */
SybaseSettingsHasBeenSet()1415     inline bool SybaseSettingsHasBeenSet() const { return m_sybaseSettingsHasBeenSet; }
1416 
1417     /**
1418      * <p>Settings in JSON format for the source and target SAP ASE endpoint. For
1419      * information about other available settings, see <a
1420      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra
1421      * connection attributes when using SAP ASE as a source for DMS</a> and <a
1422      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra
1423      * connection attributes when using SAP ASE as a target for DMS</a> in the
1424      * <i>Database Migration Service User Guide.</i> </p>
1425      */
SetSybaseSettings(const SybaseSettings & value)1426     inline void SetSybaseSettings(const SybaseSettings& value) { m_sybaseSettingsHasBeenSet = true; m_sybaseSettings = value; }
1427 
1428     /**
1429      * <p>Settings in JSON format for the source and target SAP ASE endpoint. For
1430      * information about other available settings, see <a
1431      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra
1432      * connection attributes when using SAP ASE as a source for DMS</a> and <a
1433      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra
1434      * connection attributes when using SAP ASE as a target for DMS</a> in the
1435      * <i>Database Migration Service User Guide.</i> </p>
1436      */
SetSybaseSettings(SybaseSettings && value)1437     inline void SetSybaseSettings(SybaseSettings&& value) { m_sybaseSettingsHasBeenSet = true; m_sybaseSettings = std::move(value); }
1438 
1439     /**
1440      * <p>Settings in JSON format for the source and target SAP ASE endpoint. For
1441      * information about other available settings, see <a
1442      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra
1443      * connection attributes when using SAP ASE as a source for DMS</a> and <a
1444      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra
1445      * connection attributes when using SAP ASE as a target for DMS</a> in the
1446      * <i>Database Migration Service User Guide.</i> </p>
1447      */
WithSybaseSettings(const SybaseSettings & value)1448     inline ModifyEndpointRequest& WithSybaseSettings(const SybaseSettings& value) { SetSybaseSettings(value); return *this;}
1449 
1450     /**
1451      * <p>Settings in JSON format for the source and target SAP ASE endpoint. For
1452      * information about other available settings, see <a
1453      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra
1454      * connection attributes when using SAP ASE as a source for DMS</a> and <a
1455      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra
1456      * connection attributes when using SAP ASE as a target for DMS</a> in the
1457      * <i>Database Migration Service User Guide.</i> </p>
1458      */
WithSybaseSettings(SybaseSettings && value)1459     inline ModifyEndpointRequest& WithSybaseSettings(SybaseSettings&& value) { SetSybaseSettings(std::move(value)); return *this;}
1460 
1461 
1462     /**
1463      * <p>Settings in JSON format for the source and target Microsoft SQL Server
1464      * endpoint. For information about other available settings, see <a
1465      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra
1466      * connection attributes when using SQL Server as a source for DMS</a> and <a
1467      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib">
1468      * Extra connection attributes when using SQL Server as a target for DMS</a> in the
1469      * <i>Database Migration Service User Guide.</i> </p>
1470      */
GetMicrosoftSQLServerSettings()1471     inline const MicrosoftSQLServerSettings& GetMicrosoftSQLServerSettings() const{ return m_microsoftSQLServerSettings; }
1472 
1473     /**
1474      * <p>Settings in JSON format for the source and target Microsoft SQL Server
1475      * endpoint. For information about other available settings, see <a
1476      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra
1477      * connection attributes when using SQL Server as a source for DMS</a> and <a
1478      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib">
1479      * Extra connection attributes when using SQL Server as a target for DMS</a> in the
1480      * <i>Database Migration Service User Guide.</i> </p>
1481      */
MicrosoftSQLServerSettingsHasBeenSet()1482     inline bool MicrosoftSQLServerSettingsHasBeenSet() const { return m_microsoftSQLServerSettingsHasBeenSet; }
1483 
1484     /**
1485      * <p>Settings in JSON format for the source and target Microsoft SQL Server
1486      * endpoint. For information about other available settings, see <a
1487      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra
1488      * connection attributes when using SQL Server as a source for DMS</a> and <a
1489      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib">
1490      * Extra connection attributes when using SQL Server as a target for DMS</a> in the
1491      * <i>Database Migration Service User Guide.</i> </p>
1492      */
SetMicrosoftSQLServerSettings(const MicrosoftSQLServerSettings & value)1493     inline void SetMicrosoftSQLServerSettings(const MicrosoftSQLServerSettings& value) { m_microsoftSQLServerSettingsHasBeenSet = true; m_microsoftSQLServerSettings = value; }
1494 
1495     /**
1496      * <p>Settings in JSON format for the source and target Microsoft SQL Server
1497      * endpoint. For information about other available settings, see <a
1498      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra
1499      * connection attributes when using SQL Server as a source for DMS</a> and <a
1500      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib">
1501      * Extra connection attributes when using SQL Server as a target for DMS</a> in the
1502      * <i>Database Migration Service User Guide.</i> </p>
1503      */
SetMicrosoftSQLServerSettings(MicrosoftSQLServerSettings && value)1504     inline void SetMicrosoftSQLServerSettings(MicrosoftSQLServerSettings&& value) { m_microsoftSQLServerSettingsHasBeenSet = true; m_microsoftSQLServerSettings = std::move(value); }
1505 
1506     /**
1507      * <p>Settings in JSON format for the source and target Microsoft SQL Server
1508      * endpoint. For information about other available settings, see <a
1509      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra
1510      * connection attributes when using SQL Server as a source for DMS</a> and <a
1511      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib">
1512      * Extra connection attributes when using SQL Server as a target for DMS</a> in the
1513      * <i>Database Migration Service User Guide.</i> </p>
1514      */
WithMicrosoftSQLServerSettings(const MicrosoftSQLServerSettings & value)1515     inline ModifyEndpointRequest& WithMicrosoftSQLServerSettings(const MicrosoftSQLServerSettings& value) { SetMicrosoftSQLServerSettings(value); return *this;}
1516 
1517     /**
1518      * <p>Settings in JSON format for the source and target Microsoft SQL Server
1519      * endpoint. For information about other available settings, see <a
1520      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra
1521      * connection attributes when using SQL Server as a source for DMS</a> and <a
1522      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib">
1523      * Extra connection attributes when using SQL Server as a target for DMS</a> in the
1524      * <i>Database Migration Service User Guide.</i> </p>
1525      */
WithMicrosoftSQLServerSettings(MicrosoftSQLServerSettings && value)1526     inline ModifyEndpointRequest& WithMicrosoftSQLServerSettings(MicrosoftSQLServerSettings&& value) { SetMicrosoftSQLServerSettings(std::move(value)); return *this;}
1527 
1528 
1529     /**
1530      * <p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information
1531      * about other available settings, see <a
1532      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra
1533      * connection attributes when using Db2 LUW as a source for DMS</a> in the
1534      * <i>Database Migration Service User Guide.</i> </p>
1535      */
GetIBMDb2Settings()1536     inline const IBMDb2Settings& GetIBMDb2Settings() const{ return m_iBMDb2Settings; }
1537 
1538     /**
1539      * <p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information
1540      * about other available settings, see <a
1541      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra
1542      * connection attributes when using Db2 LUW as a source for DMS</a> in the
1543      * <i>Database Migration Service User Guide.</i> </p>
1544      */
IBMDb2SettingsHasBeenSet()1545     inline bool IBMDb2SettingsHasBeenSet() const { return m_iBMDb2SettingsHasBeenSet; }
1546 
1547     /**
1548      * <p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information
1549      * about other available settings, see <a
1550      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra
1551      * connection attributes when using Db2 LUW as a source for DMS</a> in the
1552      * <i>Database Migration Service User Guide.</i> </p>
1553      */
SetIBMDb2Settings(const IBMDb2Settings & value)1554     inline void SetIBMDb2Settings(const IBMDb2Settings& value) { m_iBMDb2SettingsHasBeenSet = true; m_iBMDb2Settings = value; }
1555 
1556     /**
1557      * <p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information
1558      * about other available settings, see <a
1559      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra
1560      * connection attributes when using Db2 LUW as a source for DMS</a> in the
1561      * <i>Database Migration Service User Guide.</i> </p>
1562      */
SetIBMDb2Settings(IBMDb2Settings && value)1563     inline void SetIBMDb2Settings(IBMDb2Settings&& value) { m_iBMDb2SettingsHasBeenSet = true; m_iBMDb2Settings = std::move(value); }
1564 
1565     /**
1566      * <p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information
1567      * about other available settings, see <a
1568      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra
1569      * connection attributes when using Db2 LUW as a source for DMS</a> in the
1570      * <i>Database Migration Service User Guide.</i> </p>
1571      */
WithIBMDb2Settings(const IBMDb2Settings & value)1572     inline ModifyEndpointRequest& WithIBMDb2Settings(const IBMDb2Settings& value) { SetIBMDb2Settings(value); return *this;}
1573 
1574     /**
1575      * <p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information
1576      * about other available settings, see <a
1577      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra
1578      * connection attributes when using Db2 LUW as a source for DMS</a> in the
1579      * <i>Database Migration Service User Guide.</i> </p>
1580      */
WithIBMDb2Settings(IBMDb2Settings && value)1581     inline ModifyEndpointRequest& WithIBMDb2Settings(IBMDb2Settings&& value) { SetIBMDb2Settings(std::move(value)); return *this;}
1582 
1583 
1584     /**
1585      * <p>Settings in JSON format for the source DocumentDB endpoint. For more
1586      * information about the available settings, see the configuration properties
1587      * section in <a
1588      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html">
1589      * Using DocumentDB as a Target for Database Migration Service </a> in the
1590      * <i>Database Migration Service User Guide.</i> </p>
1591      */
GetDocDbSettings()1592     inline const DocDbSettings& GetDocDbSettings() const{ return m_docDbSettings; }
1593 
1594     /**
1595      * <p>Settings in JSON format for the source DocumentDB endpoint. For more
1596      * information about the available settings, see the configuration properties
1597      * section in <a
1598      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html">
1599      * Using DocumentDB as a Target for Database Migration Service </a> in the
1600      * <i>Database Migration Service User Guide.</i> </p>
1601      */
DocDbSettingsHasBeenSet()1602     inline bool DocDbSettingsHasBeenSet() const { return m_docDbSettingsHasBeenSet; }
1603 
1604     /**
1605      * <p>Settings in JSON format for the source DocumentDB endpoint. For more
1606      * information about the available settings, see the configuration properties
1607      * section in <a
1608      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html">
1609      * Using DocumentDB as a Target for Database Migration Service </a> in the
1610      * <i>Database Migration Service User Guide.</i> </p>
1611      */
SetDocDbSettings(const DocDbSettings & value)1612     inline void SetDocDbSettings(const DocDbSettings& value) { m_docDbSettingsHasBeenSet = true; m_docDbSettings = value; }
1613 
1614     /**
1615      * <p>Settings in JSON format for the source DocumentDB endpoint. For more
1616      * information about the available settings, see the configuration properties
1617      * section in <a
1618      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html">
1619      * Using DocumentDB as a Target for Database Migration Service </a> in the
1620      * <i>Database Migration Service User Guide.</i> </p>
1621      */
SetDocDbSettings(DocDbSettings && value)1622     inline void SetDocDbSettings(DocDbSettings&& value) { m_docDbSettingsHasBeenSet = true; m_docDbSettings = std::move(value); }
1623 
1624     /**
1625      * <p>Settings in JSON format for the source DocumentDB endpoint. For more
1626      * information about the available settings, see the configuration properties
1627      * section in <a
1628      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html">
1629      * Using DocumentDB as a Target for Database Migration Service </a> in the
1630      * <i>Database Migration Service User Guide.</i> </p>
1631      */
WithDocDbSettings(const DocDbSettings & value)1632     inline ModifyEndpointRequest& WithDocDbSettings(const DocDbSettings& value) { SetDocDbSettings(value); return *this;}
1633 
1634     /**
1635      * <p>Settings in JSON format for the source DocumentDB endpoint. For more
1636      * information about the available settings, see the configuration properties
1637      * section in <a
1638      * href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html">
1639      * Using DocumentDB as a Target for Database Migration Service </a> in the
1640      * <i>Database Migration Service User Guide.</i> </p>
1641      */
WithDocDbSettings(DocDbSettings && value)1642     inline ModifyEndpointRequest& WithDocDbSettings(DocDbSettings&& value) { SetDocDbSettings(std::move(value)); return *this;}
1643 
1644 
1645     /**
1646      * <p>Settings in JSON format for the Redis target endpoint.</p>
1647      */
GetRedisSettings()1648     inline const RedisSettings& GetRedisSettings() const{ return m_redisSettings; }
1649 
1650     /**
1651      * <p>Settings in JSON format for the Redis target endpoint.</p>
1652      */
RedisSettingsHasBeenSet()1653     inline bool RedisSettingsHasBeenSet() const { return m_redisSettingsHasBeenSet; }
1654 
1655     /**
1656      * <p>Settings in JSON format for the Redis target endpoint.</p>
1657      */
SetRedisSettings(const RedisSettings & value)1658     inline void SetRedisSettings(const RedisSettings& value) { m_redisSettingsHasBeenSet = true; m_redisSettings = value; }
1659 
1660     /**
1661      * <p>Settings in JSON format for the Redis target endpoint.</p>
1662      */
SetRedisSettings(RedisSettings && value)1663     inline void SetRedisSettings(RedisSettings&& value) { m_redisSettingsHasBeenSet = true; m_redisSettings = std::move(value); }
1664 
1665     /**
1666      * <p>Settings in JSON format for the Redis target endpoint.</p>
1667      */
WithRedisSettings(const RedisSettings & value)1668     inline ModifyEndpointRequest& WithRedisSettings(const RedisSettings& value) { SetRedisSettings(value); return *this;}
1669 
1670     /**
1671      * <p>Settings in JSON format for the Redis target endpoint.</p>
1672      */
WithRedisSettings(RedisSettings && value)1673     inline ModifyEndpointRequest& WithRedisSettings(RedisSettings&& value) { SetRedisSettings(std::move(value)); return *this;}
1674 
1675 
1676     /**
1677      * <p>If this attribute is Y, the current call to <code>ModifyEndpoint</code>
1678      * replaces all existing endpoint settings with the exact settings that you specify
1679      * in this call. If this attribute is N, the current call to
1680      * <code>ModifyEndpoint</code> does two things: </p> <ul> <li> <p>It replaces any
1681      * endpoint settings that already exist with new values, for settings with the same
1682      * names.</p> </li> <li> <p>It creates new endpoint settings that you specify in
1683      * the call, for settings with different names. </p> </li> </ul> <p>For example, if
1684      * you call <code>create-endpoint ... --endpoint-settings '{"a":1}' ...</code>, the
1685      * endpoint has the following endpoint settings: <code>'{"a":1}'</code>. If you
1686      * then call <code>modify-endpoint ... --endpoint-settings '{"b":2}' ...</code> for
1687      * the same endpoint, the endpoint has the following settings:
1688      * <code>'{"a":1,"b":2}'</code>. </p> <p>However, suppose that you follow this with
1689      * a call to <code>modify-endpoint ... --endpoint-settings '{"b":2}'
1690      * --exact-settings ...</code> for that same endpoint again. Then the endpoint has
1691      * the following settings: <code>'{"b":2}'</code>. All existing settings are
1692      * replaced with the exact settings that you specify. </p>
1693      */
GetExactSettings()1694     inline bool GetExactSettings() const{ return m_exactSettings; }
1695 
1696     /**
1697      * <p>If this attribute is Y, the current call to <code>ModifyEndpoint</code>
1698      * replaces all existing endpoint settings with the exact settings that you specify
1699      * in this call. If this attribute is N, the current call to
1700      * <code>ModifyEndpoint</code> does two things: </p> <ul> <li> <p>It replaces any
1701      * endpoint settings that already exist with new values, for settings with the same
1702      * names.</p> </li> <li> <p>It creates new endpoint settings that you specify in
1703      * the call, for settings with different names. </p> </li> </ul> <p>For example, if
1704      * you call <code>create-endpoint ... --endpoint-settings '{"a":1}' ...</code>, the
1705      * endpoint has the following endpoint settings: <code>'{"a":1}'</code>. If you
1706      * then call <code>modify-endpoint ... --endpoint-settings '{"b":2}' ...</code> for
1707      * the same endpoint, the endpoint has the following settings:
1708      * <code>'{"a":1,"b":2}'</code>. </p> <p>However, suppose that you follow this with
1709      * a call to <code>modify-endpoint ... --endpoint-settings '{"b":2}'
1710      * --exact-settings ...</code> for that same endpoint again. Then the endpoint has
1711      * the following settings: <code>'{"b":2}'</code>. All existing settings are
1712      * replaced with the exact settings that you specify. </p>
1713      */
ExactSettingsHasBeenSet()1714     inline bool ExactSettingsHasBeenSet() const { return m_exactSettingsHasBeenSet; }
1715 
1716     /**
1717      * <p>If this attribute is Y, the current call to <code>ModifyEndpoint</code>
1718      * replaces all existing endpoint settings with the exact settings that you specify
1719      * in this call. If this attribute is N, the current call to
1720      * <code>ModifyEndpoint</code> does two things: </p> <ul> <li> <p>It replaces any
1721      * endpoint settings that already exist with new values, for settings with the same
1722      * names.</p> </li> <li> <p>It creates new endpoint settings that you specify in
1723      * the call, for settings with different names. </p> </li> </ul> <p>For example, if
1724      * you call <code>create-endpoint ... --endpoint-settings '{"a":1}' ...</code>, the
1725      * endpoint has the following endpoint settings: <code>'{"a":1}'</code>. If you
1726      * then call <code>modify-endpoint ... --endpoint-settings '{"b":2}' ...</code> for
1727      * the same endpoint, the endpoint has the following settings:
1728      * <code>'{"a":1,"b":2}'</code>. </p> <p>However, suppose that you follow this with
1729      * a call to <code>modify-endpoint ... --endpoint-settings '{"b":2}'
1730      * --exact-settings ...</code> for that same endpoint again. Then the endpoint has
1731      * the following settings: <code>'{"b":2}'</code>. All existing settings are
1732      * replaced with the exact settings that you specify. </p>
1733      */
SetExactSettings(bool value)1734     inline void SetExactSettings(bool value) { m_exactSettingsHasBeenSet = true; m_exactSettings = value; }
1735 
1736     /**
1737      * <p>If this attribute is Y, the current call to <code>ModifyEndpoint</code>
1738      * replaces all existing endpoint settings with the exact settings that you specify
1739      * in this call. If this attribute is N, the current call to
1740      * <code>ModifyEndpoint</code> does two things: </p> <ul> <li> <p>It replaces any
1741      * endpoint settings that already exist with new values, for settings with the same
1742      * names.</p> </li> <li> <p>It creates new endpoint settings that you specify in
1743      * the call, for settings with different names. </p> </li> </ul> <p>For example, if
1744      * you call <code>create-endpoint ... --endpoint-settings '{"a":1}' ...</code>, the
1745      * endpoint has the following endpoint settings: <code>'{"a":1}'</code>. If you
1746      * then call <code>modify-endpoint ... --endpoint-settings '{"b":2}' ...</code> for
1747      * the same endpoint, the endpoint has the following settings:
1748      * <code>'{"a":1,"b":2}'</code>. </p> <p>However, suppose that you follow this with
1749      * a call to <code>modify-endpoint ... --endpoint-settings '{"b":2}'
1750      * --exact-settings ...</code> for that same endpoint again. Then the endpoint has
1751      * the following settings: <code>'{"b":2}'</code>. All existing settings are
1752      * replaced with the exact settings that you specify. </p>
1753      */
WithExactSettings(bool value)1754     inline ModifyEndpointRequest& WithExactSettings(bool value) { SetExactSettings(value); return *this;}
1755 
1756   private:
1757 
1758     Aws::String m_endpointArn;
1759     bool m_endpointArnHasBeenSet;
1760 
1761     Aws::String m_endpointIdentifier;
1762     bool m_endpointIdentifierHasBeenSet;
1763 
1764     ReplicationEndpointTypeValue m_endpointType;
1765     bool m_endpointTypeHasBeenSet;
1766 
1767     Aws::String m_engineName;
1768     bool m_engineNameHasBeenSet;
1769 
1770     Aws::String m_username;
1771     bool m_usernameHasBeenSet;
1772 
1773     Aws::String m_password;
1774     bool m_passwordHasBeenSet;
1775 
1776     Aws::String m_serverName;
1777     bool m_serverNameHasBeenSet;
1778 
1779     int m_port;
1780     bool m_portHasBeenSet;
1781 
1782     Aws::String m_databaseName;
1783     bool m_databaseNameHasBeenSet;
1784 
1785     Aws::String m_extraConnectionAttributes;
1786     bool m_extraConnectionAttributesHasBeenSet;
1787 
1788     Aws::String m_certificateArn;
1789     bool m_certificateArnHasBeenSet;
1790 
1791     DmsSslModeValue m_sslMode;
1792     bool m_sslModeHasBeenSet;
1793 
1794     Aws::String m_serviceAccessRoleArn;
1795     bool m_serviceAccessRoleArnHasBeenSet;
1796 
1797     Aws::String m_externalTableDefinition;
1798     bool m_externalTableDefinitionHasBeenSet;
1799 
1800     DynamoDbSettings m_dynamoDbSettings;
1801     bool m_dynamoDbSettingsHasBeenSet;
1802 
1803     S3Settings m_s3Settings;
1804     bool m_s3SettingsHasBeenSet;
1805 
1806     DmsTransferSettings m_dmsTransferSettings;
1807     bool m_dmsTransferSettingsHasBeenSet;
1808 
1809     MongoDbSettings m_mongoDbSettings;
1810     bool m_mongoDbSettingsHasBeenSet;
1811 
1812     KinesisSettings m_kinesisSettings;
1813     bool m_kinesisSettingsHasBeenSet;
1814 
1815     KafkaSettings m_kafkaSettings;
1816     bool m_kafkaSettingsHasBeenSet;
1817 
1818     ElasticsearchSettings m_elasticsearchSettings;
1819     bool m_elasticsearchSettingsHasBeenSet;
1820 
1821     NeptuneSettings m_neptuneSettings;
1822     bool m_neptuneSettingsHasBeenSet;
1823 
1824     RedshiftSettings m_redshiftSettings;
1825     bool m_redshiftSettingsHasBeenSet;
1826 
1827     PostgreSQLSettings m_postgreSQLSettings;
1828     bool m_postgreSQLSettingsHasBeenSet;
1829 
1830     MySQLSettings m_mySQLSettings;
1831     bool m_mySQLSettingsHasBeenSet;
1832 
1833     OracleSettings m_oracleSettings;
1834     bool m_oracleSettingsHasBeenSet;
1835 
1836     SybaseSettings m_sybaseSettings;
1837     bool m_sybaseSettingsHasBeenSet;
1838 
1839     MicrosoftSQLServerSettings m_microsoftSQLServerSettings;
1840     bool m_microsoftSQLServerSettingsHasBeenSet;
1841 
1842     IBMDb2Settings m_iBMDb2Settings;
1843     bool m_iBMDb2SettingsHasBeenSet;
1844 
1845     DocDbSettings m_docDbSettings;
1846     bool m_docDbSettingsHasBeenSet;
1847 
1848     RedisSettings m_redisSettings;
1849     bool m_redisSettingsHasBeenSet;
1850 
1851     bool m_exactSettings;
1852     bool m_exactSettingsHasBeenSet;
1853   };
1854 
1855 } // namespace Model
1856 } // namespace DatabaseMigrationService
1857 } // namespace Aws
1858