modifyEndpoint method
- required String endpointArn,
- String? certificateArn,
- String? databaseName,
- DmsTransferSettings? dmsTransferSettings,
- DocDbSettings? docDbSettings,
- DynamoDbSettings? dynamoDbSettings,
- ElasticsearchSettings? elasticsearchSettings,
- String? endpointIdentifier,
- ReplicationEndpointTypeValue? endpointType,
- String? engineName,
- bool? exactSettings,
- String? externalTableDefinition,
- String? extraConnectionAttributes,
- GcpMySQLSettings? gcpMySQLSettings,
- IBMDb2Settings? iBMDb2Settings,
- KafkaSettings? kafkaSettings,
- KinesisSettings? kinesisSettings,
- MicrosoftSQLServerSettings? microsoftSQLServerSettings,
- MongoDbSettings? mongoDbSettings,
- MySQLSettings? mySQLSettings,
- NeptuneSettings? neptuneSettings,
- OracleSettings? oracleSettings,
- String? password,
- int? port,
- PostgreSQLSettings? postgreSQLSettings,
- RedisSettings? redisSettings,
- RedshiftSettings? redshiftSettings,
- S3Settings? s3Settings,
- String? serverName,
- String? serviceAccessRoleArn,
- DmsSslModeValue? sslMode,
- SybaseSettings? sybaseSettings,
- TimestreamSettings? timestreamSettings,
- String? username,
Modifies the specified endpoint.
May throw AccessDeniedFault.
May throw InvalidResourceStateFault.
May throw KMSKeyNotAccessibleFault.
May throw ResourceAlreadyExistsFault.
May throw ResourceNotFoundFault.
Parameter endpointArn :
The Amazon Resource Name (ARN) string that uniquely identifies the
endpoint.
Parameter certificateArn :
The Amazon Resource Name (ARN) of the certificate used for SSL connection.
Parameter databaseName :
The name of the endpoint database. For a MySQL source or target endpoint,
do not specify DatabaseName.
Parameter dmsTransferSettings :
The settings in JSON format for the DMS transfer type of source endpoint.
Attributes include the following:
-
serviceAccessRoleArn - The Amazon Resource Name (ARN) used by the service
access IAM role. The role must allow the
iam:PassRoleaction. - BucketName - The name of the S3 bucket to use.
ServiceAccessRoleArn=string ,BucketName=string
JSON syntax for these settings is as follows: {
"ServiceAccessRoleArn": "string", "BucketName": "string"}
Parameter docDbSettings :
Settings in JSON format for the source DocumentDB endpoint. For more
information about the available settings, see the configuration properties
section in
Using DocumentDB as a Target for Database Migration Service in the
Database Migration Service User Guide.
Parameter dynamoDbSettings :
Settings in JSON format for the target Amazon DynamoDB endpoint. For
information about other available settings, see Using
Object Mapping to Migrate Data to DynamoDB in the Database
Migration Service User Guide.
Parameter elasticsearchSettings :
Settings in JSON format for the target OpenSearch endpoint. For more
information about the available settings, see Extra
Connection Attributes When Using OpenSearch as a Target for DMS in the
Database Migration Service User Guide.
Parameter endpointIdentifier :
The database endpoint identifier. Identifiers must begin with a letter and
must contain only ASCII letters, digits, and hyphens. They can't end with
a hyphen or contain two consecutive hyphens.
Parameter endpointType :
The type of endpoint. Valid values are source and
target.
Parameter engineName :
The database engine name. Valid values, depending on the EndpointType,
include "mysql", "oracle",
"postgres", "mariadb", "aurora",
"aurora-postgresql", "redshift",
"s3", "db2", "db2-zos",
"azuredb", "sybase", "dynamodb",
"mongodb", "kinesis", "kafka",
"elasticsearch", "documentdb",
"sqlserver", "neptune", and
"babelfish".
Parameter exactSettings :
If this attribute is Y, the current call to ModifyEndpoint
replaces all existing endpoint settings with the exact settings that you
specify in this call. If this attribute is N, the current call to
ModifyEndpoint does two things:
- It replaces any endpoint settings that already exist with new values, for settings with the same names.
- It creates new endpoint settings that you specify in the call, for settings with different names.
create-endpoint ... --endpoint-settings
'{"a":1}' ..., the endpoint has the following endpoint settings:
'{"a":1}'. If you then call modify-endpoint ...
--endpoint-settings '{"b":2}' ... for the same endpoint, the
endpoint has the following settings: '{"a":1,"b":2}'.
However, suppose that you follow this with a call to modify-endpoint
... --endpoint-settings '{"b":2}' --exact-settings ... for that
same endpoint again. Then the endpoint has the following settings:
'{"b":2}'. All existing settings are replaced with the exact
settings that you specify.
Parameter externalTableDefinition :
The external table definition.
Parameter extraConnectionAttributes :
Additional attributes associated with the connection. To reset this
parameter, pass the empty string ("") as an argument.
Parameter gcpMySQLSettings :
Settings in JSON format for the source GCP MySQL endpoint.
Parameter iBMDb2Settings :
Settings in JSON format for the source IBM Db2 LUW endpoint. For
information about other available settings, see Extra
connection attributes when using Db2 LUW as a source for DMS in the
Database Migration Service User Guide.
Parameter kafkaSettings :
Settings in JSON format for the target Apache Kafka endpoint. For more
information about the available settings, see Using
object mapping to migrate data to a Kafka topic in the Database
Migration Service User Guide.
Parameter kinesisSettings :
Settings in JSON format for the target endpoint for Amazon Kinesis Data
Streams. For more information about the available settings, see Using
object mapping to migrate data to a Kinesis data stream in the
Database Migration Service User Guide.
Parameter microsoftSQLServerSettings :
Settings in JSON format for the source and target Microsoft SQL Server
endpoint. For information about other available settings, see Extra
connection attributes when using SQL Server as a source for DMS and
Extra connection attributes when using SQL Server as a target for DMS
in the Database Migration Service User Guide.
Parameter mongoDbSettings :
Settings in JSON format for the source MongoDB endpoint. For more
information about the available settings, see the configuration properties
section in Endpoint
configuration settings when using MongoDB as a source for Database
Migration Service in the Database Migration Service User Guide.
Parameter mySQLSettings :
Settings in JSON format for the source and target MySQL endpoint. For
information about other available settings, see Extra
connection attributes when using MySQL as a source for DMS and Extra
connection attributes when using a MySQL-compatible database as a target
for DMS in the Database Migration Service User Guide.
Parameter neptuneSettings :
Settings in JSON format for the target Amazon Neptune endpoint. For more
information about the available settings, see Specifying
graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a
target in the Database Migration Service User Guide.
Parameter oracleSettings :
Settings in JSON format for the source and target Oracle endpoint. For
information about other available settings, see Extra
connection attributes when using Oracle as a source for DMS and
Extra connection attributes when using Oracle as a target for DMS in
the Database Migration Service User Guide.
Parameter password :
The password to be used to login to the endpoint database.
Parameter port :
The port used by the endpoint database.
Parameter postgreSQLSettings :
Settings in JSON format for the source and target PostgreSQL endpoint. For
information about other available settings, see Extra
connection attributes when using PostgreSQL as a source for DMS and
Extra connection attributes when using PostgreSQL as a target for DMS
in the Database Migration Service User Guide.
Parameter redisSettings :
Settings in JSON format for the Redis target endpoint.
Parameter s3Settings :
Settings in JSON format for the target Amazon S3 endpoint. For more
information about the available settings, see Extra
Connection Attributes When Using Amazon S3 as a Target for DMS in the
Database Migration Service User Guide.
Parameter serverName :
The name of the server where the endpoint database resides.
Parameter serviceAccessRoleArn :
The Amazon Resource Name (ARN) for the IAM role you want to use to modify
the endpoint. The role must allow the iam:PassRole action.
Parameter sslMode :
The SSL mode used to connect to the endpoint. The default value is
none.
Parameter sybaseSettings :
Settings in JSON format for the source and target SAP ASE endpoint. For
information about other available settings, see Extra
connection attributes when using SAP ASE as a source for DMS and Extra
connection attributes when using SAP ASE as a target for DMS in the
Database Migration Service User Guide.
Parameter timestreamSettings :
Settings in JSON format for the target Amazon Timestream endpoint.
Parameter username :
The user name to be used to login to the endpoint database.
Implementation
Future<ModifyEndpointResponse> modifyEndpoint({
required String endpointArn,
String? certificateArn,
String? databaseName,
DmsTransferSettings? dmsTransferSettings,
DocDbSettings? docDbSettings,
DynamoDbSettings? dynamoDbSettings,
ElasticsearchSettings? elasticsearchSettings,
String? endpointIdentifier,
ReplicationEndpointTypeValue? endpointType,
String? engineName,
bool? exactSettings,
String? externalTableDefinition,
String? extraConnectionAttributes,
GcpMySQLSettings? gcpMySQLSettings,
IBMDb2Settings? iBMDb2Settings,
KafkaSettings? kafkaSettings,
KinesisSettings? kinesisSettings,
MicrosoftSQLServerSettings? microsoftSQLServerSettings,
MongoDbSettings? mongoDbSettings,
MySQLSettings? mySQLSettings,
NeptuneSettings? neptuneSettings,
OracleSettings? oracleSettings,
String? password,
int? port,
PostgreSQLSettings? postgreSQLSettings,
RedisSettings? redisSettings,
RedshiftSettings? redshiftSettings,
S3Settings? s3Settings,
String? serverName,
String? serviceAccessRoleArn,
DmsSslModeValue? sslMode,
SybaseSettings? sybaseSettings,
TimestreamSettings? timestreamSettings,
String? username,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AmazonDMSv20160101.ModifyEndpoint'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'EndpointArn': endpointArn,
if (certificateArn != null) 'CertificateArn': certificateArn,
if (databaseName != null) 'DatabaseName': databaseName,
if (dmsTransferSettings != null)
'DmsTransferSettings': dmsTransferSettings,
if (docDbSettings != null) 'DocDbSettings': docDbSettings,
if (dynamoDbSettings != null) 'DynamoDbSettings': dynamoDbSettings,
if (elasticsearchSettings != null)
'ElasticsearchSettings': elasticsearchSettings,
if (endpointIdentifier != null)
'EndpointIdentifier': endpointIdentifier,
if (endpointType != null) 'EndpointType': endpointType.value,
if (engineName != null) 'EngineName': engineName,
if (exactSettings != null) 'ExactSettings': exactSettings,
if (externalTableDefinition != null)
'ExternalTableDefinition': externalTableDefinition,
if (extraConnectionAttributes != null)
'ExtraConnectionAttributes': extraConnectionAttributes,
if (gcpMySQLSettings != null) 'GcpMySQLSettings': gcpMySQLSettings,
if (iBMDb2Settings != null) 'IBMDb2Settings': iBMDb2Settings,
if (kafkaSettings != null) 'KafkaSettings': kafkaSettings,
if (kinesisSettings != null) 'KinesisSettings': kinesisSettings,
if (microsoftSQLServerSettings != null)
'MicrosoftSQLServerSettings': microsoftSQLServerSettings,
if (mongoDbSettings != null) 'MongoDbSettings': mongoDbSettings,
if (mySQLSettings != null) 'MySQLSettings': mySQLSettings,
if (neptuneSettings != null) 'NeptuneSettings': neptuneSettings,
if (oracleSettings != null) 'OracleSettings': oracleSettings,
if (password != null) 'Password': password,
if (port != null) 'Port': port,
if (postgreSQLSettings != null)
'PostgreSQLSettings': postgreSQLSettings,
if (redisSettings != null) 'RedisSettings': redisSettings,
if (redshiftSettings != null) 'RedshiftSettings': redshiftSettings,
if (s3Settings != null) 'S3Settings': s3Settings,
if (serverName != null) 'ServerName': serverName,
if (serviceAccessRoleArn != null)
'ServiceAccessRoleArn': serviceAccessRoleArn,
if (sslMode != null) 'SslMode': sslMode.value,
if (sybaseSettings != null) 'SybaseSettings': sybaseSettings,
if (timestreamSettings != null)
'TimestreamSettings': timestreamSettings,
if (username != null) 'Username': username,
},
);
return ModifyEndpointResponse.fromJson(jsonResponse.body);
}