modifyEndpoint method

Future<ModifyEndpointResponse> modifyEndpoint({
  1. required String endpointArn,
  2. String? certificateArn,
  3. String? databaseName,
  4. DmsTransferSettings? dmsTransferSettings,
  5. DocDbSettings? docDbSettings,
  6. DynamoDbSettings? dynamoDbSettings,
  7. ElasticsearchSettings? elasticsearchSettings,
  8. String? endpointIdentifier,
  9. ReplicationEndpointTypeValue? endpointType,
  10. String? engineName,
  11. String? externalTableDefinition,
  12. String? extraConnectionAttributes,
  13. IBMDb2Settings? iBMDb2Settings,
  14. KafkaSettings? kafkaSettings,
  15. KinesisSettings? kinesisSettings,
  16. MicrosoftSQLServerSettings? microsoftSQLServerSettings,
  17. MongoDbSettings? mongoDbSettings,
  18. MySQLSettings? mySQLSettings,
  19. NeptuneSettings? neptuneSettings,
  20. OracleSettings? oracleSettings,
  21. String? password,
  22. int? port,
  23. PostgreSQLSettings? postgreSQLSettings,
  24. RedshiftSettings? redshiftSettings,
  25. S3Settings? s3Settings,
  26. String? serverName,
  27. String? serviceAccessRoleArn,
  28. DmsSslModeValue? sslMode,
  29. SybaseSettings? sybaseSettings,
  30. String? username,
})

Modifies the specified endpoint.

May throw InvalidResourceStateFault. May throw ResourceNotFoundFault. May throw ResourceAlreadyExistsFault. May throw KMSKeyNotAccessibleFault. May throw AccessDeniedFault.

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.

Parameter dmsTransferSettings : The settings in JSON format for the DMS transfer type of source endpoint.

Attributes include the following:

  • serviceAccessRoleArn - The AWS Identity and Access Management (IAM) role that has permission to access the Amazon S3 bucket.
  • BucketName - The name of the S3 bucket to use.
  • compressionType - An optional parameter to use GZIP to compress the target files. Either set this parameter to NONE (the default) or don't use it to leave the files uncompressed.
Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string ,BucketName=string,CompressionType=string

JSON syntax for these settings is as follows: { "ServiceAccessRoleArn": "string", "BucketName": "string", "CompressionType": "none"|"gzip" }

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 AWS Database Migration Service in the AWS 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 AWS Database Migration Service User Guide.

Parameter elasticsearchSettings : Settings in JSON format for the target Elasticsearch endpoint. For more information about the available settings, see Extra Connection Attributes When Using Elasticsearch as a Target for AWS DMS in the AWS 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 type of engine for the endpoint. Valid values, depending on the EndpointType, include "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql", "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis", "kafka", "elasticsearch", "documentdb", "sqlserver", and "neptune".

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 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 AWS DMS in the AWS 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 Apache Kafka as a Target for AWS Database Migration Service in the AWS 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 Amazon Kinesis Data Streams as a Target for AWS Database Migration Service in the AWS 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 AWS DMS and Extra connection attributes when using SQL Server as a target for AWS DMS in the AWS 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 Using MongoDB as a Target for AWS Database Migration Service in the AWS 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 AWS DMS and Extra connection attributes when using a MySQL-compatible database as a target for AWS DMS in the AWS 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 Endpoint Settings for Amazon Neptune as a Target in the AWS 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 AWS DMS and Extra connection attributes when using Oracle as a target for AWS DMS in the AWS 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 AWS DMS and Extra connection attributes when using PostgreSQL as a target for AWS DMS in the AWS Database Migration Service User Guide.

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 AWS DMS in the AWS 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 service access role you want to use to modify the endpoint.

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 AWS DMS and Extra connection attributes when using SAP ASE as a target for AWS DMS in the AWS Database Migration Service User Guide.

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,
  String? externalTableDefinition,
  String? extraConnectionAttributes,
  IBMDb2Settings? iBMDb2Settings,
  KafkaSettings? kafkaSettings,
  KinesisSettings? kinesisSettings,
  MicrosoftSQLServerSettings? microsoftSQLServerSettings,
  MongoDbSettings? mongoDbSettings,
  MySQLSettings? mySQLSettings,
  NeptuneSettings? neptuneSettings,
  OracleSettings? oracleSettings,
  String? password,
  int? port,
  PostgreSQLSettings? postgreSQLSettings,
  RedshiftSettings? redshiftSettings,
  S3Settings? s3Settings,
  String? serverName,
  String? serviceAccessRoleArn,
  DmsSslModeValue? sslMode,
  SybaseSettings? sybaseSettings,
  String? username,
}) async {
  ArgumentError.checkNotNull(endpointArn, 'endpointArn');
  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.toValue(),
      if (engineName != null) 'EngineName': engineName,
      if (externalTableDefinition != null)
        'ExternalTableDefinition': externalTableDefinition,
      if (extraConnectionAttributes != null)
        'ExtraConnectionAttributes': extraConnectionAttributes,
      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 (redshiftSettings != null) 'RedshiftSettings': redshiftSettings,
      if (s3Settings != null) 'S3Settings': s3Settings,
      if (serverName != null) 'ServerName': serverName,
      if (serviceAccessRoleArn != null)
        'ServiceAccessRoleArn': serviceAccessRoleArn,
      if (sslMode != null) 'SslMode': sslMode.toValue(),
      if (sybaseSettings != null) 'SybaseSettings': sybaseSettings,
      if (username != null) 'Username': username,
    },
  );

  return ModifyEndpointResponse.fromJson(jsonResponse.body);
}