
com.amazonaws.services.databasemigrationservice.model.MongoDbSettings Maven / Gradle / Ivy
/*
* Copyright 2013-2018 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 com.amazonaws.services.databasemigrationservice.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
*
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class MongoDbSettings implements Serializable, Cloneable, StructuredPojo {
/**
*
* The user name you use to access the MongoDB source endpoint.
*
*/
private String username;
/**
*
* The password for the user account you use to access the MongoDB source endpoint.
*
*/
private String password;
/**
*
* The name of the server on the MongoDB source endpoint.
*
*/
private String serverName;
/**
*
* The port value for the MongoDB source endpoint.
*
*/
private Integer port;
/**
*
* The database name on the MongoDB source endpoint.
*
*/
private String databaseName;
/**
*
* The authentication type you use to access the MongoDB source endpoint.
*
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
*
*/
private String authType;
/**
*
* The authentication mechanism you use to access the MongoDB source endpoint.
*
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This attribute is
* not used when authType=No.
*
*/
private String authMechanism;
/**
*
* Specifies either document or table mode.
*
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
*
*/
private String nestingLevel;
/**
*
* Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
*
* Default value is false.
*
*/
private String extractDocId;
/**
*
* Indicates the number of documents to preview to determine the document organization. Use this attribute when
* NestingLevel
is set to ONE.
*
*
* Must be a positive value greater than 0. Default value is 1000.
*
*/
private String docsToInvestigate;
/**
*
* The MongoDB database name. This attribute is not used when authType=NO
.
*
*
* The default is admin.
*
*/
private String authSource;
/**
*
* 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.
*
*/
private String kmsKeyId;
/**
*
* The user name you use to access the MongoDB source endpoint.
*
*
* @param username
* The user name you use to access the MongoDB source endpoint.
*/
public void setUsername(String username) {
this.username = username;
}
/**
*
* The user name you use to access the MongoDB source endpoint.
*
*
* @return The user name you use to access the MongoDB source endpoint.
*/
public String getUsername() {
return this.username;
}
/**
*
* The user name you use to access the MongoDB source endpoint.
*
*
* @param username
* The user name you use to access the MongoDB source endpoint.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withUsername(String username) {
setUsername(username);
return this;
}
/**
*
* The password for the user account you use to access the MongoDB source endpoint.
*
*
* @param password
* The password for the user account you use to access the MongoDB source endpoint.
*/
public void setPassword(String password) {
this.password = password;
}
/**
*
* The password for the user account you use to access the MongoDB source endpoint.
*
*
* @return The password for the user account you use to access the MongoDB source endpoint.
*/
public String getPassword() {
return this.password;
}
/**
*
* The password for the user account you use to access the MongoDB source endpoint.
*
*
* @param password
* The password for the user account you use to access the MongoDB source endpoint.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withPassword(String password) {
setPassword(password);
return this;
}
/**
*
* The name of the server on the MongoDB source endpoint.
*
*
* @param serverName
* The name of the server on the MongoDB source endpoint.
*/
public void setServerName(String serverName) {
this.serverName = serverName;
}
/**
*
* The name of the server on the MongoDB source endpoint.
*
*
* @return The name of the server on the MongoDB source endpoint.
*/
public String getServerName() {
return this.serverName;
}
/**
*
* The name of the server on the MongoDB source endpoint.
*
*
* @param serverName
* The name of the server on the MongoDB source endpoint.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withServerName(String serverName) {
setServerName(serverName);
return this;
}
/**
*
* The port value for the MongoDB source endpoint.
*
*
* @param port
* The port value for the MongoDB source endpoint.
*/
public void setPort(Integer port) {
this.port = port;
}
/**
*
* The port value for the MongoDB source endpoint.
*
*
* @return The port value for the MongoDB source endpoint.
*/
public Integer getPort() {
return this.port;
}
/**
*
* The port value for the MongoDB source endpoint.
*
*
* @param port
* The port value for the MongoDB source endpoint.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withPort(Integer port) {
setPort(port);
return this;
}
/**
*
* The database name on the MongoDB source endpoint.
*
*
* @param databaseName
* The database name on the MongoDB source endpoint.
*/
public void setDatabaseName(String databaseName) {
this.databaseName = databaseName;
}
/**
*
* The database name on the MongoDB source endpoint.
*
*
* @return The database name on the MongoDB source endpoint.
*/
public String getDatabaseName() {
return this.databaseName;
}
/**
*
* The database name on the MongoDB source endpoint.
*
*
* @param databaseName
* The database name on the MongoDB source endpoint.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withDatabaseName(String databaseName) {
setDatabaseName(databaseName);
return this;
}
/**
*
* The authentication type you use to access the MongoDB source endpoint.
*
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
*
*
* @param authType
* The authentication type you use to access the MongoDB source endpoint.
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
* @see AuthTypeValue
*/
public void setAuthType(String authType) {
this.authType = authType;
}
/**
*
* The authentication type you use to access the MongoDB source endpoint.
*
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
*
*
* @return The authentication type you use to access the MongoDB source endpoint.
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
* @see AuthTypeValue
*/
public String getAuthType() {
return this.authType;
}
/**
*
* The authentication type you use to access the MongoDB source endpoint.
*
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
*
*
* @param authType
* The authentication type you use to access the MongoDB source endpoint.
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
* @return Returns a reference to this object so that method calls can be chained together.
* @see AuthTypeValue
*/
public MongoDbSettings withAuthType(String authType) {
setAuthType(authType);
return this;
}
/**
*
* The authentication type you use to access the MongoDB source endpoint.
*
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
*
*
* @param authType
* The authentication type you use to access the MongoDB source endpoint.
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
* @see AuthTypeValue
*/
public void setAuthType(AuthTypeValue authType) {
withAuthType(authType);
}
/**
*
* The authentication type you use to access the MongoDB source endpoint.
*
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
*
*
* @param authType
* The authentication type you use to access the MongoDB source endpoint.
*
* Valid values: NO, PASSWORD
*
*
* When NO is selected, user name and password parameters are not used and can be empty.
* @return Returns a reference to this object so that method calls can be chained together.
* @see AuthTypeValue
*/
public MongoDbSettings withAuthType(AuthTypeValue authType) {
this.authType = authType.toString();
return this;
}
/**
*
* The authentication mechanism you use to access the MongoDB source endpoint.
*
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This attribute is
* not used when authType=No.
*
*
* @param authMechanism
* The authentication mechanism you use to access the MongoDB source endpoint.
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This
* attribute is not used when authType=No.
* @see AuthMechanismValue
*/
public void setAuthMechanism(String authMechanism) {
this.authMechanism = authMechanism;
}
/**
*
* The authentication mechanism you use to access the MongoDB source endpoint.
*
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This attribute is
* not used when authType=No.
*
*
* @return The authentication mechanism you use to access the MongoDB source endpoint.
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This
* attribute is not used when authType=No.
* @see AuthMechanismValue
*/
public String getAuthMechanism() {
return this.authMechanism;
}
/**
*
* The authentication mechanism you use to access the MongoDB source endpoint.
*
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This attribute is
* not used when authType=No.
*
*
* @param authMechanism
* The authentication mechanism you use to access the MongoDB source endpoint.
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This
* attribute is not used when authType=No.
* @return Returns a reference to this object so that method calls can be chained together.
* @see AuthMechanismValue
*/
public MongoDbSettings withAuthMechanism(String authMechanism) {
setAuthMechanism(authMechanism);
return this;
}
/**
*
* The authentication mechanism you use to access the MongoDB source endpoint.
*
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This attribute is
* not used when authType=No.
*
*
* @param authMechanism
* The authentication mechanism you use to access the MongoDB source endpoint.
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This
* attribute is not used when authType=No.
* @see AuthMechanismValue
*/
public void setAuthMechanism(AuthMechanismValue authMechanism) {
withAuthMechanism(authMechanism);
}
/**
*
* The authentication mechanism you use to access the MongoDB source endpoint.
*
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This attribute is
* not used when authType=No.
*
*
* @param authMechanism
* The authentication mechanism you use to access the MongoDB source endpoint.
*
* Valid values: DEFAULT, MONGODB_CR, SCRAM_SHA_1
*
*
* DEFAULT – For MongoDB version 2.x, use MONGODB_CR. For MongoDB version 3.x, use SCRAM_SHA_1. This
* attribute is not used when authType=No.
* @return Returns a reference to this object so that method calls can be chained together.
* @see AuthMechanismValue
*/
public MongoDbSettings withAuthMechanism(AuthMechanismValue authMechanism) {
this.authMechanism = authMechanism.toString();
return this;
}
/**
*
* Specifies either document or table mode.
*
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
*
*
* @param nestingLevel
* Specifies either document or table mode.
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
* @see NestingLevelValue
*/
public void setNestingLevel(String nestingLevel) {
this.nestingLevel = nestingLevel;
}
/**
*
* Specifies either document or table mode.
*
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
*
*
* @return Specifies either document or table mode.
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
* @see NestingLevelValue
*/
public String getNestingLevel() {
return this.nestingLevel;
}
/**
*
* Specifies either document or table mode.
*
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
*
*
* @param nestingLevel
* Specifies either document or table mode.
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
* @return Returns a reference to this object so that method calls can be chained together.
* @see NestingLevelValue
*/
public MongoDbSettings withNestingLevel(String nestingLevel) {
setNestingLevel(nestingLevel);
return this;
}
/**
*
* Specifies either document or table mode.
*
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
*
*
* @param nestingLevel
* Specifies either document or table mode.
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
* @see NestingLevelValue
*/
public void setNestingLevel(NestingLevelValue nestingLevel) {
withNestingLevel(nestingLevel);
}
/**
*
* Specifies either document or table mode.
*
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
*
*
* @param nestingLevel
* Specifies either document or table mode.
*
* Valid values: NONE, ONE
*
*
* Default value is NONE. Specify NONE to use document mode. Specify ONE to use table mode.
* @return Returns a reference to this object so that method calls can be chained together.
* @see NestingLevelValue
*/
public MongoDbSettings withNestingLevel(NestingLevelValue nestingLevel) {
this.nestingLevel = nestingLevel.toString();
return this;
}
/**
*
* Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
*
* Default value is false.
*
*
* @param extractDocId
* Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
* Default value is false.
*/
public void setExtractDocId(String extractDocId) {
this.extractDocId = extractDocId;
}
/**
*
* Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
*
* Default value is false.
*
*
* @return Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
* Default value is false.
*/
public String getExtractDocId() {
return this.extractDocId;
}
/**
*
* Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
*
* Default value is false.
*
*
* @param extractDocId
* Specifies the document ID. Use this attribute when NestingLevel
is set to NONE.
*
* Default value is false.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withExtractDocId(String extractDocId) {
setExtractDocId(extractDocId);
return this;
}
/**
*
* Indicates the number of documents to preview to determine the document organization. Use this attribute when
* NestingLevel
is set to ONE.
*
*
* Must be a positive value greater than 0. Default value is 1000.
*
*
* @param docsToInvestigate
* Indicates the number of documents to preview to determine the document organization. Use this attribute
* when NestingLevel
is set to ONE.
*
* Must be a positive value greater than 0. Default value is 1000.
*/
public void setDocsToInvestigate(String docsToInvestigate) {
this.docsToInvestigate = docsToInvestigate;
}
/**
*
* Indicates the number of documents to preview to determine the document organization. Use this attribute when
* NestingLevel
is set to ONE.
*
*
* Must be a positive value greater than 0. Default value is 1000.
*
*
* @return Indicates the number of documents to preview to determine the document organization. Use this attribute
* when NestingLevel
is set to ONE.
*
* Must be a positive value greater than 0. Default value is 1000.
*/
public String getDocsToInvestigate() {
return this.docsToInvestigate;
}
/**
*
* Indicates the number of documents to preview to determine the document organization. Use this attribute when
* NestingLevel
is set to ONE.
*
*
* Must be a positive value greater than 0. Default value is 1000.
*
*
* @param docsToInvestigate
* Indicates the number of documents to preview to determine the document organization. Use this attribute
* when NestingLevel
is set to ONE.
*
* Must be a positive value greater than 0. Default value is 1000.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withDocsToInvestigate(String docsToInvestigate) {
setDocsToInvestigate(docsToInvestigate);
return this;
}
/**
*
* The MongoDB database name. This attribute is not used when authType=NO
.
*
*
* The default is admin.
*
*
* @param authSource
* The MongoDB database name. This attribute is not used when authType=NO
.
*
* The default is admin.
*/
public void setAuthSource(String authSource) {
this.authSource = authSource;
}
/**
*
* The MongoDB database name. This attribute is not used when authType=NO
.
*
*
* The default is admin.
*
*
* @return The MongoDB database name. This attribute is not used when authType=NO
.
*
* The default is admin.
*/
public String getAuthSource() {
return this.authSource;
}
/**
*
* The MongoDB database name. This attribute is not used when authType=NO
.
*
*
* The default is admin.
*
*
* @param authSource
* The MongoDB database name. This attribute is not used when authType=NO
.
*
* The default is admin.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public MongoDbSettings withAuthSource(String authSource) {
setAuthSource(authSource);
return this;
}
/**
*
* 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.
*/
public void setKmsKeyId(String kmsKeyId) {
this.kmsKeyId = 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 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 getKmsKeyId() {
return this.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.
*
*
* @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.
*/
public MongoDbSettings withKmsKeyId(String kmsKeyId) {
setKmsKeyId(kmsKeyId);
return this;
}
/**
* Returns a string representation of this object; useful for testing and debugging.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getUsername() != null)
sb.append("Username: ").append(getUsername()).append(",");
if (getPassword() != null)
sb.append("Password: ").append(getPassword()).append(",");
if (getServerName() != null)
sb.append("ServerName: ").append(getServerName()).append(",");
if (getPort() != null)
sb.append("Port: ").append(getPort()).append(",");
if (getDatabaseName() != null)
sb.append("DatabaseName: ").append(getDatabaseName()).append(",");
if (getAuthType() != null)
sb.append("AuthType: ").append(getAuthType()).append(",");
if (getAuthMechanism() != null)
sb.append("AuthMechanism: ").append(getAuthMechanism()).append(",");
if (getNestingLevel() != null)
sb.append("NestingLevel: ").append(getNestingLevel()).append(",");
if (getExtractDocId() != null)
sb.append("ExtractDocId: ").append(getExtractDocId()).append(",");
if (getDocsToInvestigate() != null)
sb.append("DocsToInvestigate: ").append(getDocsToInvestigate()).append(",");
if (getAuthSource() != null)
sb.append("AuthSource: ").append(getAuthSource()).append(",");
if (getKmsKeyId() != null)
sb.append("KmsKeyId: ").append(getKmsKeyId());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof MongoDbSettings == false)
return false;
MongoDbSettings other = (MongoDbSettings) obj;
if (other.getUsername() == null ^ this.getUsername() == null)
return false;
if (other.getUsername() != null && other.getUsername().equals(this.getUsername()) == false)
return false;
if (other.getPassword() == null ^ this.getPassword() == null)
return false;
if (other.getPassword() != null && other.getPassword().equals(this.getPassword()) == false)
return false;
if (other.getServerName() == null ^ this.getServerName() == null)
return false;
if (other.getServerName() != null && other.getServerName().equals(this.getServerName()) == false)
return false;
if (other.getPort() == null ^ this.getPort() == null)
return false;
if (other.getPort() != null && other.getPort().equals(this.getPort()) == false)
return false;
if (other.getDatabaseName() == null ^ this.getDatabaseName() == null)
return false;
if (other.getDatabaseName() != null && other.getDatabaseName().equals(this.getDatabaseName()) == false)
return false;
if (other.getAuthType() == null ^ this.getAuthType() == null)
return false;
if (other.getAuthType() != null && other.getAuthType().equals(this.getAuthType()) == false)
return false;
if (other.getAuthMechanism() == null ^ this.getAuthMechanism() == null)
return false;
if (other.getAuthMechanism() != null && other.getAuthMechanism().equals(this.getAuthMechanism()) == false)
return false;
if (other.getNestingLevel() == null ^ this.getNestingLevel() == null)
return false;
if (other.getNestingLevel() != null && other.getNestingLevel().equals(this.getNestingLevel()) == false)
return false;
if (other.getExtractDocId() == null ^ this.getExtractDocId() == null)
return false;
if (other.getExtractDocId() != null && other.getExtractDocId().equals(this.getExtractDocId()) == false)
return false;
if (other.getDocsToInvestigate() == null ^ this.getDocsToInvestigate() == null)
return false;
if (other.getDocsToInvestigate() != null && other.getDocsToInvestigate().equals(this.getDocsToInvestigate()) == false)
return false;
if (other.getAuthSource() == null ^ this.getAuthSource() == null)
return false;
if (other.getAuthSource() != null && other.getAuthSource().equals(this.getAuthSource()) == false)
return false;
if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null)
return false;
if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getUsername() == null) ? 0 : getUsername().hashCode());
hashCode = prime * hashCode + ((getPassword() == null) ? 0 : getPassword().hashCode());
hashCode = prime * hashCode + ((getServerName() == null) ? 0 : getServerName().hashCode());
hashCode = prime * hashCode + ((getPort() == null) ? 0 : getPort().hashCode());
hashCode = prime * hashCode + ((getDatabaseName() == null) ? 0 : getDatabaseName().hashCode());
hashCode = prime * hashCode + ((getAuthType() == null) ? 0 : getAuthType().hashCode());
hashCode = prime * hashCode + ((getAuthMechanism() == null) ? 0 : getAuthMechanism().hashCode());
hashCode = prime * hashCode + ((getNestingLevel() == null) ? 0 : getNestingLevel().hashCode());
hashCode = prime * hashCode + ((getExtractDocId() == null) ? 0 : getExtractDocId().hashCode());
hashCode = prime * hashCode + ((getDocsToInvestigate() == null) ? 0 : getDocsToInvestigate().hashCode());
hashCode = prime * hashCode + ((getAuthSource() == null) ? 0 : getAuthSource().hashCode());
hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode());
return hashCode;
}
@Override
public MongoDbSettings clone() {
try {
return (MongoDbSettings) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.databasemigrationservice.model.transform.MongoDbSettingsMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}