All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.databasemigration.model.Endpoint Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Database Migration Service module holds the client classes that are used for communicating with AWS Database Migration Service.

There is a newer version: 2.0.0-preview-11
Show newest version
/*
 * Copyright 2012-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */

package software.amazon.awssdk.services.databasemigration.model;

import java.util.Objects;
import java.util.Optional;
import java.util.function.Consumer;
import javax.annotation.Generated;
import software.amazon.awssdk.annotations.SdkInternalApi;
import software.amazon.awssdk.core.protocol.ProtocolMarshaller;
import software.amazon.awssdk.core.protocol.StructuredPojo;
import software.amazon.awssdk.services.databasemigration.transform.EndpointMarshaller;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 * 

*/ @Generated("software.amazon.awssdk:codegen") public class Endpoint implements StructuredPojo, ToCopyableBuilder { private final String endpointIdentifier; private final String endpointType; private final String engineName; private final String username; private final String serverName; private final Integer port; private final String databaseName; private final String extraConnectionAttributes; private final String status; private final String kmsKeyId; private final String endpointArn; private final String certificateArn; private final String sslMode; private final String externalId; private final DynamoDbSettings dynamoDbSettings; private final S3Settings s3Settings; private final MongoDbSettings mongoDbSettings; private Endpoint(BuilderImpl builder) { this.endpointIdentifier = builder.endpointIdentifier; this.endpointType = builder.endpointType; this.engineName = builder.engineName; this.username = builder.username; this.serverName = builder.serverName; this.port = builder.port; this.databaseName = builder.databaseName; this.extraConnectionAttributes = builder.extraConnectionAttributes; this.status = builder.status; this.kmsKeyId = builder.kmsKeyId; this.endpointArn = builder.endpointArn; this.certificateArn = builder.certificateArn; this.sslMode = builder.sslMode; this.externalId = builder.externalId; this.dynamoDbSettings = builder.dynamoDbSettings; this.s3Settings = builder.s3Settings; this.mongoDbSettings = builder.mongoDbSettings; } /** *

* The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII letters, digits, * and hyphens; and must not end with a hyphen or contain two consecutive hyphens. *

* * @return The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII letters, * digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens. */ public String endpointIdentifier() { return endpointIdentifier; } /** *

* The type of endpoint. *

*

* If the service returns an enum value that is not available in the current SDK version, {@link #endpointType} will * return {@link ReplicationEndpointTypeValue#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is * available from {@link #endpointTypeString}. *

* * @return The type of endpoint. * @see ReplicationEndpointTypeValue */ public ReplicationEndpointTypeValue endpointType() { return ReplicationEndpointTypeValue.fromValue(endpointType); } /** *

* The type of endpoint. *

*

* If the service returns an enum value that is not available in the current SDK version, {@link #endpointType} will * return {@link ReplicationEndpointTypeValue#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is * available from {@link #endpointTypeString}. *

* * @return The type of endpoint. * @see ReplicationEndpointTypeValue */ public String endpointTypeString() { return endpointType; } /** *

* The database engine name. Valid values, depending on the EndPointType, include MYSQL, ORACLE, POSTGRES, MARIADB, * AURORA, REDSHIFT, S3, SYBASE, DYNAMODB, MONGODB, and SQLSERVER. *

* * @return The database engine name. Valid values, depending on the EndPointType, include MYSQL, ORACLE, POSTGRES, * MARIADB, AURORA, REDSHIFT, S3, SYBASE, DYNAMODB, MONGODB, and SQLSERVER. */ public String engineName() { return engineName; } /** *

* The user name used to connect to the endpoint. *

* * @return The user name used to connect to the endpoint. */ public String username() { return username; } /** *

* The name of the server at the endpoint. *

* * @return The name of the server at the endpoint. */ public String serverName() { return serverName; } /** *

* The port value used to access the endpoint. *

* * @return The port value used to access the endpoint. */ public Integer port() { return port; } /** *

* The name of the database at the endpoint. *

* * @return The name of the database at the endpoint. */ public String databaseName() { return databaseName; } /** *

* Additional connection attributes used to connect to the endpoint. *

* * @return Additional connection attributes used to connect to the endpoint. */ public String extraConnectionAttributes() { return extraConnectionAttributes; } /** *

* The status of the endpoint. *

* * @return The status of the endpoint. */ public String status() { return status; } /** *

* The KMS key identifier that will be used to encrypt the connection parameters. If you do not specify a value for * the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption * key for your AWS account. Your AWS account has a different default encryption key for each AWS region. *

* * @return The KMS key identifier that will be used to encrypt the connection parameters. If you do not specify a * value for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the * default encryption key for your AWS account. Your AWS account has a different default encryption key for * each AWS region. */ public String kmsKeyId() { return kmsKeyId; } /** *

* The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. *

* * @return The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. */ public String endpointArn() { return endpointArn; } /** *

* The Amazon Resource Name (ARN) used for SSL connection to the endpoint. *

* * @return The Amazon Resource Name (ARN) used for SSL connection to the endpoint. */ public String certificateArn() { return certificateArn; } /** *

* The SSL mode used to connect to the endpoint. *

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. *

*

* If the service returns an enum value that is not available in the current SDK version, {@link #sslMode} will * return {@link DmsSslModeValue#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from * {@link #sslModeString}. *

* * @return The SSL mode used to connect to the endpoint.

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. * @see DmsSslModeValue */ public DmsSslModeValue sslMode() { return DmsSslModeValue.fromValue(sslMode); } /** *

* The SSL mode used to connect to the endpoint. *

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. *

*

* If the service returns an enum value that is not available in the current SDK version, {@link #sslMode} will * return {@link DmsSslModeValue#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from * {@link #sslModeString}. *

* * @return The SSL mode used to connect to the endpoint.

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. * @see DmsSslModeValue */ public String sslModeString() { return sslMode; } /** *

* Value returned by a call to CreateEndpoint that can be used for cross-account validation. Use it on a subsequent * call to CreateEndpoint to create the endpoint with a cross-account. *

* * @return Value returned by a call to CreateEndpoint that can be used for cross-account validation. Use it on a * subsequent call to CreateEndpoint to create the endpoint with a cross-account. */ public String externalId() { return externalId; } /** *

* The settings for the target DynamoDB database. For more information, see the DynamoDBSettings * structure. *

* * @return The settings for the target DynamoDB database. For more information, see the * DynamoDBSettings structure. */ public DynamoDbSettings dynamoDbSettings() { return dynamoDbSettings; } /** *

* The settings for the S3 target endpoint. For more information, see the S3Settings structure. *

* * @return The settings for the S3 target endpoint. For more information, see the S3Settings structure. */ public S3Settings s3Settings() { return s3Settings; } /** *

* The settings for the MongoDB source endpoint. For more information, see the MongoDbSettings * structure. *

* * @return The settings for the MongoDB source endpoint. For more information, see the MongoDbSettings * structure. */ public MongoDbSettings mongoDbSettings() { return mongoDbSettings; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(endpointIdentifier()); hashCode = 31 * hashCode + Objects.hashCode(endpointTypeString()); hashCode = 31 * hashCode + Objects.hashCode(engineName()); hashCode = 31 * hashCode + Objects.hashCode(username()); hashCode = 31 * hashCode + Objects.hashCode(serverName()); hashCode = 31 * hashCode + Objects.hashCode(port()); hashCode = 31 * hashCode + Objects.hashCode(databaseName()); hashCode = 31 * hashCode + Objects.hashCode(extraConnectionAttributes()); hashCode = 31 * hashCode + Objects.hashCode(status()); hashCode = 31 * hashCode + Objects.hashCode(kmsKeyId()); hashCode = 31 * hashCode + Objects.hashCode(endpointArn()); hashCode = 31 * hashCode + Objects.hashCode(certificateArn()); hashCode = 31 * hashCode + Objects.hashCode(sslModeString()); hashCode = 31 * hashCode + Objects.hashCode(externalId()); hashCode = 31 * hashCode + Objects.hashCode(dynamoDbSettings()); hashCode = 31 * hashCode + Objects.hashCode(s3Settings()); hashCode = 31 * hashCode + Objects.hashCode(mongoDbSettings()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof Endpoint)) { return false; } Endpoint other = (Endpoint) obj; return Objects.equals(endpointIdentifier(), other.endpointIdentifier()) && Objects.equals(endpointTypeString(), other.endpointTypeString()) && Objects.equals(engineName(), other.engineName()) && Objects.equals(username(), other.username()) && Objects.equals(serverName(), other.serverName()) && Objects.equals(port(), other.port()) && Objects.equals(databaseName(), other.databaseName()) && Objects.equals(extraConnectionAttributes(), other.extraConnectionAttributes()) && Objects.equals(status(), other.status()) && Objects.equals(kmsKeyId(), other.kmsKeyId()) && Objects.equals(endpointArn(), other.endpointArn()) && Objects.equals(certificateArn(), other.certificateArn()) && Objects.equals(sslModeString(), other.sslModeString()) && Objects.equals(externalId(), other.externalId()) && Objects.equals(dynamoDbSettings(), other.dynamoDbSettings()) && Objects.equals(s3Settings(), other.s3Settings()) && Objects.equals(mongoDbSettings(), other.mongoDbSettings()); } @Override public String toString() { StringBuilder sb = new StringBuilder("{"); if (endpointIdentifier() != null) { sb.append("EndpointIdentifier: ").append(endpointIdentifier()).append(","); } if (endpointTypeString() != null) { sb.append("EndpointType: ").append(endpointTypeString()).append(","); } if (engineName() != null) { sb.append("EngineName: ").append(engineName()).append(","); } if (username() != null) { sb.append("Username: ").append(username()).append(","); } if (serverName() != null) { sb.append("ServerName: ").append(serverName()).append(","); } if (port() != null) { sb.append("Port: ").append(port()).append(","); } if (databaseName() != null) { sb.append("DatabaseName: ").append(databaseName()).append(","); } if (extraConnectionAttributes() != null) { sb.append("ExtraConnectionAttributes: ").append(extraConnectionAttributes()).append(","); } if (status() != null) { sb.append("Status: ").append(status()).append(","); } if (kmsKeyId() != null) { sb.append("KmsKeyId: ").append(kmsKeyId()).append(","); } if (endpointArn() != null) { sb.append("EndpointArn: ").append(endpointArn()).append(","); } if (certificateArn() != null) { sb.append("CertificateArn: ").append(certificateArn()).append(","); } if (sslModeString() != null) { sb.append("SslMode: ").append(sslModeString()).append(","); } if (externalId() != null) { sb.append("ExternalId: ").append(externalId()).append(","); } if (dynamoDbSettings() != null) { sb.append("DynamoDbSettings: ").append(dynamoDbSettings()).append(","); } if (s3Settings() != null) { sb.append("S3Settings: ").append(s3Settings()).append(","); } if (mongoDbSettings() != null) { sb.append("MongoDbSettings: ").append(mongoDbSettings()).append(","); } if (sb.length() > 1) { sb.setLength(sb.length() - 1); } sb.append("}"); return sb.toString(); } public Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "EndpointIdentifier": return Optional.of(clazz.cast(endpointIdentifier())); case "EndpointType": return Optional.of(clazz.cast(endpointTypeString())); case "EngineName": return Optional.of(clazz.cast(engineName())); case "Username": return Optional.of(clazz.cast(username())); case "ServerName": return Optional.of(clazz.cast(serverName())); case "Port": return Optional.of(clazz.cast(port())); case "DatabaseName": return Optional.of(clazz.cast(databaseName())); case "ExtraConnectionAttributes": return Optional.of(clazz.cast(extraConnectionAttributes())); case "Status": return Optional.of(clazz.cast(status())); case "KmsKeyId": return Optional.of(clazz.cast(kmsKeyId())); case "EndpointArn": return Optional.of(clazz.cast(endpointArn())); case "CertificateArn": return Optional.of(clazz.cast(certificateArn())); case "SslMode": return Optional.of(clazz.cast(sslModeString())); case "ExternalId": return Optional.of(clazz.cast(externalId())); case "DynamoDbSettings": return Optional.of(clazz.cast(dynamoDbSettings())); case "S3Settings": return Optional.of(clazz.cast(s3Settings())); case "MongoDbSettings": return Optional.of(clazz.cast(mongoDbSettings())); default: return Optional.empty(); } } @SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { EndpointMarshaller.getInstance().marshall(this, protocolMarshaller); } public interface Builder extends CopyableBuilder { /** *

* The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII letters, * digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens. *

* * @param endpointIdentifier * The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII * letters, digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens. * @return Returns a reference to this object so that method calls can be chained together. */ Builder endpointIdentifier(String endpointIdentifier); /** *

* The type of endpoint. *

* * @param endpointType * The type of endpoint. * @see ReplicationEndpointTypeValue * @return Returns a reference to this object so that method calls can be chained together. * @see ReplicationEndpointTypeValue */ Builder endpointType(String endpointType); /** *

* The type of endpoint. *

* * @param endpointType * The type of endpoint. * @see ReplicationEndpointTypeValue * @return Returns a reference to this object so that method calls can be chained together. * @see ReplicationEndpointTypeValue */ Builder endpointType(ReplicationEndpointTypeValue endpointType); /** *

* The database engine name. Valid values, depending on the EndPointType, include MYSQL, ORACLE, POSTGRES, * MARIADB, AURORA, REDSHIFT, S3, SYBASE, DYNAMODB, MONGODB, and SQLSERVER. *

* * @param engineName * The database engine name. Valid values, depending on the EndPointType, include MYSQL, ORACLE, * POSTGRES, MARIADB, AURORA, REDSHIFT, S3, SYBASE, DYNAMODB, MONGODB, and SQLSERVER. * @return Returns a reference to this object so that method calls can be chained together. */ Builder engineName(String engineName); /** *

* The user name used to connect to the endpoint. *

* * @param username * The user name used to connect to the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder username(String username); /** *

* The name of the server at the endpoint. *

* * @param serverName * The name of the server at the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder serverName(String serverName); /** *

* The port value used to access the endpoint. *

* * @param port * The port value used to access the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder port(Integer port); /** *

* The name of the database at the endpoint. *

* * @param databaseName * The name of the database at the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder databaseName(String databaseName); /** *

* Additional connection attributes used to connect to the endpoint. *

* * @param extraConnectionAttributes * Additional connection attributes used to connect to the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder extraConnectionAttributes(String extraConnectionAttributes); /** *

* The status of the endpoint. *

* * @param status * The status of the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder status(String status); /** *

* The KMS key identifier that will be used to encrypt the connection parameters. If you do not specify a value * for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the default * encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS * region. *

* * @param kmsKeyId * The KMS key identifier that will be used to encrypt the connection parameters. If you do not specify a * value for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a different default encryption * key for each AWS region. * @return Returns a reference to this object so that method calls can be chained together. */ Builder kmsKeyId(String kmsKeyId); /** *

* The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. *

* * @param endpointArn * The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder endpointArn(String endpointArn); /** *

* The Amazon Resource Name (ARN) used for SSL connection to the endpoint. *

* * @param certificateArn * The Amazon Resource Name (ARN) used for SSL connection to the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ Builder certificateArn(String certificateArn); /** *

* The SSL mode used to connect to the endpoint. *

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. *

* * @param sslMode * The SSL mode used to connect to the endpoint.

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. * @see DmsSslModeValue * @return Returns a reference to this object so that method calls can be chained together. * @see DmsSslModeValue */ Builder sslMode(String sslMode); /** *

* The SSL mode used to connect to the endpoint. *

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. *

* * @param sslMode * The SSL mode used to connect to the endpoint.

*

* SSL mode can be one of four values: none, require, verify-ca, verify-full. *

*

* The default value is none. * @see DmsSslModeValue * @return Returns a reference to this object so that method calls can be chained together. * @see DmsSslModeValue */ Builder sslMode(DmsSslModeValue sslMode); /** *

* Value returned by a call to CreateEndpoint that can be used for cross-account validation. Use it on a * subsequent call to CreateEndpoint to create the endpoint with a cross-account. *

* * @param externalId * Value returned by a call to CreateEndpoint that can be used for cross-account validation. Use it on a * subsequent call to CreateEndpoint to create the endpoint with a cross-account. * @return Returns a reference to this object so that method calls can be chained together. */ Builder externalId(String externalId); /** *

* The settings for the target DynamoDB database. For more information, see the DynamoDBSettings * structure. *

* * @param dynamoDbSettings * The settings for the target DynamoDB database. For more information, see the * DynamoDBSettings structure. * @return Returns a reference to this object so that method calls can be chained together. */ Builder dynamoDbSettings(DynamoDbSettings dynamoDbSettings); /** *

* The settings for the target DynamoDB database. For more information, see the DynamoDBSettings * structure. *

* This is a convenience that creates an instance of the {@link DynamoDbSettings.Builder} avoiding the need to * create one manually via {@link DynamoDbSettings#builder()}. * * When the {@link Consumer} completes, {@link DynamoDbSettings.Builder#build()} is called immediately and its * result is passed to {@link #dynamoDbSettings(DynamoDbSettings)}. * * @param dynamoDbSettings * a consumer that will call methods on {@link DynamoDbSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #dynamoDbSettings(DynamoDbSettings) */ default Builder dynamoDbSettings(Consumer dynamoDbSettings) { return dynamoDbSettings(DynamoDbSettings.builder().apply(dynamoDbSettings).build()); } /** *

* The settings for the S3 target endpoint. For more information, see the S3Settings structure. *

* * @param s3Settings * The settings for the S3 target endpoint. For more information, see the S3Settings * structure. * @return Returns a reference to this object so that method calls can be chained together. */ Builder s3Settings(S3Settings s3Settings); /** *

* The settings for the S3 target endpoint. For more information, see the S3Settings structure. *

* This is a convenience that creates an instance of the {@link S3Settings.Builder} avoiding the need to create * one manually via {@link S3Settings#builder()}. * * When the {@link Consumer} completes, {@link S3Settings.Builder#build()} is called immediately and its result * is passed to {@link #s3Settings(S3Settings)}. * * @param s3Settings * a consumer that will call methods on {@link S3Settings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #s3Settings(S3Settings) */ default Builder s3Settings(Consumer s3Settings) { return s3Settings(S3Settings.builder().apply(s3Settings).build()); } /** *

* The settings for the MongoDB source endpoint. For more information, see the MongoDbSettings * structure. *

* * @param mongoDbSettings * The settings for the MongoDB source endpoint. For more information, see the * MongoDbSettings structure. * @return Returns a reference to this object so that method calls can be chained together. */ Builder mongoDbSettings(MongoDbSettings mongoDbSettings); /** *

* The settings for the MongoDB source endpoint. For more information, see the MongoDbSettings * structure. *

* This is a convenience that creates an instance of the {@link MongoDbSettings.Builder} avoiding the need to * create one manually via {@link MongoDbSettings#builder()}. * * When the {@link Consumer} completes, {@link MongoDbSettings.Builder#build()} is called immediately and its * result is passed to {@link #mongoDbSettings(MongoDbSettings)}. * * @param mongoDbSettings * a consumer that will call methods on {@link MongoDbSettings.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #mongoDbSettings(MongoDbSettings) */ default Builder mongoDbSettings(Consumer mongoDbSettings) { return mongoDbSettings(MongoDbSettings.builder().apply(mongoDbSettings).build()); } } static final class BuilderImpl implements Builder { private String endpointIdentifier; private String endpointType; private String engineName; private String username; private String serverName; private Integer port; private String databaseName; private String extraConnectionAttributes; private String status; private String kmsKeyId; private String endpointArn; private String certificateArn; private String sslMode; private String externalId; private DynamoDbSettings dynamoDbSettings; private S3Settings s3Settings; private MongoDbSettings mongoDbSettings; private BuilderImpl() { } private BuilderImpl(Endpoint model) { endpointIdentifier(model.endpointIdentifier); endpointType(model.endpointType); engineName(model.engineName); username(model.username); serverName(model.serverName); port(model.port); databaseName(model.databaseName); extraConnectionAttributes(model.extraConnectionAttributes); status(model.status); kmsKeyId(model.kmsKeyId); endpointArn(model.endpointArn); certificateArn(model.certificateArn); sslMode(model.sslMode); externalId(model.externalId); dynamoDbSettings(model.dynamoDbSettings); s3Settings(model.s3Settings); mongoDbSettings(model.mongoDbSettings); } public final String getEndpointIdentifier() { return endpointIdentifier; } @Override public final Builder endpointIdentifier(String endpointIdentifier) { this.endpointIdentifier = endpointIdentifier; return this; } public final void setEndpointIdentifier(String endpointIdentifier) { this.endpointIdentifier = endpointIdentifier; } public final String getEndpointType() { return endpointType; } @Override public final Builder endpointType(String endpointType) { this.endpointType = endpointType; return this; } @Override public final Builder endpointType(ReplicationEndpointTypeValue endpointType) { this.endpointType(endpointType.toString()); return this; } public final void setEndpointType(String endpointType) { this.endpointType = endpointType; } public final String getEngineName() { return engineName; } @Override public final Builder engineName(String engineName) { this.engineName = engineName; return this; } public final void setEngineName(String engineName) { this.engineName = engineName; } public final String getUsername() { return username; } @Override public final Builder username(String username) { this.username = username; return this; } public final void setUsername(String username) { this.username = username; } public final String getServerName() { return serverName; } @Override public final Builder serverName(String serverName) { this.serverName = serverName; return this; } public final void setServerName(String serverName) { this.serverName = serverName; } public final Integer getPort() { return port; } @Override public final Builder port(Integer port) { this.port = port; return this; } public final void setPort(Integer port) { this.port = port; } public final String getDatabaseName() { return databaseName; } @Override public final Builder databaseName(String databaseName) { this.databaseName = databaseName; return this; } public final void setDatabaseName(String databaseName) { this.databaseName = databaseName; } public final String getExtraConnectionAttributes() { return extraConnectionAttributes; } @Override public final Builder extraConnectionAttributes(String extraConnectionAttributes) { this.extraConnectionAttributes = extraConnectionAttributes; return this; } public final void setExtraConnectionAttributes(String extraConnectionAttributes) { this.extraConnectionAttributes = extraConnectionAttributes; } public final String getStatus() { return status; } @Override public final Builder status(String status) { this.status = status; return this; } public final void setStatus(String status) { this.status = status; } public final String getKmsKeyId() { return kmsKeyId; } @Override public final Builder kmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; return this; } public final void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } public final String getEndpointArn() { return endpointArn; } @Override public final Builder endpointArn(String endpointArn) { this.endpointArn = endpointArn; return this; } public final void setEndpointArn(String endpointArn) { this.endpointArn = endpointArn; } public final String getCertificateArn() { return certificateArn; } @Override public final Builder certificateArn(String certificateArn) { this.certificateArn = certificateArn; return this; } public final void setCertificateArn(String certificateArn) { this.certificateArn = certificateArn; } public final String getSslMode() { return sslMode; } @Override public final Builder sslMode(String sslMode) { this.sslMode = sslMode; return this; } @Override public final Builder sslMode(DmsSslModeValue sslMode) { this.sslMode(sslMode.toString()); return this; } public final void setSslMode(String sslMode) { this.sslMode = sslMode; } public final String getExternalId() { return externalId; } @Override public final Builder externalId(String externalId) { this.externalId = externalId; return this; } public final void setExternalId(String externalId) { this.externalId = externalId; } public final DynamoDbSettings.Builder getDynamoDbSettings() { return dynamoDbSettings != null ? dynamoDbSettings.toBuilder() : null; } @Override public final Builder dynamoDbSettings(DynamoDbSettings dynamoDbSettings) { this.dynamoDbSettings = dynamoDbSettings; return this; } public final void setDynamoDbSettings(DynamoDbSettings.BuilderImpl dynamoDbSettings) { this.dynamoDbSettings = dynamoDbSettings != null ? dynamoDbSettings.build() : null; } public final S3Settings.Builder getS3Settings() { return s3Settings != null ? s3Settings.toBuilder() : null; } @Override public final Builder s3Settings(S3Settings s3Settings) { this.s3Settings = s3Settings; return this; } public final void setS3Settings(S3Settings.BuilderImpl s3Settings) { this.s3Settings = s3Settings != null ? s3Settings.build() : null; } public final MongoDbSettings.Builder getMongoDbSettings() { return mongoDbSettings != null ? mongoDbSettings.toBuilder() : null; } @Override public final Builder mongoDbSettings(MongoDbSettings mongoDbSettings) { this.mongoDbSettings = mongoDbSettings; return this; } public final void setMongoDbSettings(MongoDbSettings.BuilderImpl mongoDbSettings) { this.mongoDbSettings = mongoDbSettings != null ? mongoDbSettings.build() : null; } @Override public Endpoint build() { return new Endpoint(this); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy