/* * Copyright 2018-2023 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.glue.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Defines a connection to a data source. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class Connection implements Serializable, Cloneable, StructuredPojo { /** ** The name of the connection definition. *
*/ private String name; /** ** The description of the connection. *
*/ private String description; /** ** The type of the connection. Currently, SFTP is not supported. *
*/ private String connectionType; /** ** A list of criteria that can be used in selecting this connection. *
*/ private java.util.List* These key-value pairs define parameters for the connection: *
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of the
* database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is listening
* for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file that
* contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer (SSL) with
* hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue uses this
* root certificate to validate the customer’s certificate when connecting to the customer database. Glue only
* handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM
* format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates the
* Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms
* for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key
* Algorithm, the key length must be at least 2048. You can set the value of this property to true
to
* skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the addresses of
* the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default value is
* "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The default is an
* empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or not. Glue
* validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client side
* authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password to
* access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client keystore
* password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab stores
* long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A krb5.conf
* stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation:
* krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more information,
* see Kafka Documentation:
* Configuring Kafka Brokers.
*
* A map of physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup
,
* that are needed to make this connection successfully.
*
* The time that this connection definition was created. *
*/ private java.util.Date creationTime; /** ** The last time that this connection definition was updated. *
*/ private java.util.Date lastUpdatedTime; /** ** The user, group, or role that last updated this connection definition. *
*/ private String lastUpdatedBy; /** ** The name of the connection definition. *
* * @param name * The name of the connection definition. */ public void setName(String name) { this.name = name; } /** ** The name of the connection definition. *
* * @return The name of the connection definition. */ public String getName() { return this.name; } /** ** The name of the connection definition. *
* * @param name * The name of the connection definition. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withName(String name) { setName(name); return this; } /** ** The description of the connection. *
* * @param description * The description of the connection. */ public void setDescription(String description) { this.description = description; } /** ** The description of the connection. *
* * @return The description of the connection. */ public String getDescription() { return this.description; } /** ** The description of the connection. *
* * @param description * The description of the connection. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withDescription(String description) { setDescription(description); return this; } /** ** The type of the connection. Currently, SFTP is not supported. *
* * @param connectionType * The type of the connection. Currently, SFTP is not supported. * @see ConnectionType */ public void setConnectionType(String connectionType) { this.connectionType = connectionType; } /** ** The type of the connection. Currently, SFTP is not supported. *
* * @return The type of the connection. Currently, SFTP is not supported. * @see ConnectionType */ public String getConnectionType() { return this.connectionType; } /** ** The type of the connection. Currently, SFTP is not supported. *
* * @param connectionType * The type of the connection. Currently, SFTP is not supported. * @return Returns a reference to this object so that method calls can be chained together. * @see ConnectionType */ public Connection withConnectionType(String connectionType) { setConnectionType(connectionType); return this; } /** ** The type of the connection. Currently, SFTP is not supported. *
* * @param connectionType * The type of the connection. Currently, SFTP is not supported. * @return Returns a reference to this object so that method calls can be chained together. * @see ConnectionType */ public Connection withConnectionType(ConnectionType connectionType) { this.connectionType = connectionType.toString(); return this; } /** ** A list of criteria that can be used in selecting this connection. *
* * @return A list of criteria that can be used in selecting this connection. */ public java.util.List* A list of criteria that can be used in selecting this connection. *
* * @param matchCriteria * A list of criteria that can be used in selecting this connection. */ public void setMatchCriteria(java.util.Collection* A list of criteria that can be used in selecting this connection. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setMatchCriteria(java.util.Collection)} or {@link #withMatchCriteria(java.util.Collection)} if you want * to override the existing values. *
* * @param matchCriteria * A list of criteria that can be used in selecting this connection. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withMatchCriteria(String... matchCriteria) { if (this.matchCriteria == null) { setMatchCriteria(new java.util.ArrayList* A list of criteria that can be used in selecting this connection. *
* * @param matchCriteria * A list of criteria that can be used in selecting this connection. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withMatchCriteria(java.util.Collection* These key-value pairs define parameters for the connection: *
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of the
* database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is listening
* for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file that
* contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer (SSL) with
* hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue uses this
* root certificate to validate the customer’s certificate when connecting to the customer database. Glue only
* handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM
* format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates the
* Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms
* for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key
* Algorithm, the key length must be at least 2048. You can set the value of this property to true
to
* skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the addresses of
* the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default value is
* "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The default is an
* empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or not. Glue
* validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client side
* authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password to
* access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client keystore
* password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab stores
* long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A krb5.conf
* stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation:
* krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more information,
* see Kafka Documentation:
* Configuring Kafka Brokers.
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of
* the database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is
* listening for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file
* that contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer
* (SSL) with hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue
* uses this root certificate to validate the customer’s certificate when connecting to the customer
* database. Glue only handles X.509 certificates. The certificate provided must be DER-encoded and supplied
* in Base64 encoding PEM format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates
* the Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted
* algorithms for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject
* Public Key Algorithm, the key length must be at least 2048. You can set the value of this property to
* true
to skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the
* hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the
* addresses of the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and
* bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default
* value is "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The
* default is an empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or
* not. Glue validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value
* is "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client
* side authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password
* to access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client
* keystore password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password
* (if the user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the
* "SCRAM-SHA-512" mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the
* "SCRAM-SHA-512" mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password
* (if the user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab
* stores long-term keys for one or more principals. For more information, see MIT Kerberos Documentation:
* Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A
* krb5.conf stores Kerberos configuration information, such as the location of the KDC server. For more
* information, see MIT
* Kerberos Documentation: krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka
* Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more
* information, see Kafka Documentation:
* Configuring Kafka Brokers.
*
* These key-value pairs define parameters for the connection: *
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of the
* database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is listening
* for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file that
* contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer (SSL) with
* hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue uses this
* root certificate to validate the customer’s certificate when connecting to the customer database. Glue only
* handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM
* format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates the
* Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms
* for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key
* Algorithm, the key length must be at least 2048. You can set the value of this property to true
to
* skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the addresses of
* the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default value is
* "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The default is an
* empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or not. Glue
* validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client side
* authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password to
* access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client keystore
* password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab stores
* long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A krb5.conf
* stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation:
* krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more information,
* see Kafka Documentation:
* Configuring Kafka Brokers.
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of the
* database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is
* listening for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file that
* contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer
* (SSL) with hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue
* uses this root certificate to validate the customer’s certificate when connecting to the customer
* database. Glue only handles X.509 certificates. The certificate provided must be DER-encoded and supplied
* in Base64 encoding PEM format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates the
* Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted
* algorithms for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject
* Public Key Algorithm, the key length must be at least 2048. You can set the value of this property to
* true
to skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the
* hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the
* addresses of the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and
* bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default
* value is "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The default
* is an empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or
* not. Glue validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is
* "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client
* side authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password
* to access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client keystore
* password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password
* (if the user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the
* "SCRAM-SHA-512" mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the
* "SCRAM-SHA-512" mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password
* (if the user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab
* stores long-term keys for one or more principals. For more information, see MIT Kerberos Documentation:
* Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A
* krb5.conf stores Kerberos configuration information, such as the location of the KDC server. For more
* information, see MIT
* Kerberos Documentation: krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka
* Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more
* information, see Kafka Documentation:
* Configuring Kafka Brokers.
*
* These key-value pairs define parameters for the connection: *
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of the
* database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is listening
* for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file that
* contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer (SSL) with
* hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue uses this
* root certificate to validate the customer’s certificate when connecting to the customer database. Glue only
* handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM
* format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates the
* Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms
* for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key
* Algorithm, the key length must be at least 2048. You can set the value of this property to true
to
* skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the addresses of
* the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default value is
* "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The default is an
* empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or not. Glue
* validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client side
* authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password to
* access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client keystore
* password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the "SCRAM-SHA-512"
* mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password (if the
* user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab stores
* long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A krb5.conf
* stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation:
* krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more information,
* see Kafka Documentation:
* Configuring Kafka Brokers.
*
* HOST
- The host URI: either the fully qualified domain name (FQDN) or the IPv4 address of the
* database host.
*
* PORT
- The port number, between 1024 and 65535, of the port on which the database host is
* listening for database connections.
*
* USER_NAME
- The name under which to log in to the database. The value string for
* USER_NAME
is "USERNAME
".
*
* PASSWORD
- A password, if one is used, for the user name.
*
* ENCRYPTED_PASSWORD
- When you enable connection password protection by setting
* ConnectionPasswordEncryption
in the Data Catalog encryption settings, this field stores the
* encrypted password.
*
* JDBC_DRIVER_JAR_URI
- The Amazon Simple Storage Service (Amazon S3) path of the JAR file that
* contains the JDBC driver to use.
*
* JDBC_DRIVER_CLASS_NAME
- The class name of the JDBC driver to use.
*
* JDBC_ENGINE
- The name of the JDBC engine to use.
*
* JDBC_ENGINE_VERSION
- The version of the JDBC engine to use.
*
* CONFIG_FILES
- (Reserved for future use.)
*
* INSTANCE_ID
- The instance ID to use.
*
* JDBC_CONNECTION_URL
- The URL for connecting to a JDBC data source.
*
* JDBC_ENFORCE_SSL
- A Boolean string (true, false) specifying whether Secure Sockets Layer
* (SSL) with hostname matching is enforced for the JDBC connection on the client. The default is false.
*
* CUSTOM_JDBC_CERT
- An Amazon S3 location specifying the customer's root certificate. Glue
* uses this root certificate to validate the customer’s certificate when connecting to the customer
* database. Glue only handles X.509 certificates. The certificate provided must be DER-encoded and supplied
* in Base64 encoding PEM format.
*
* SKIP_CUSTOM_JDBC_CERT_VALIDATION
- By default, this is false
. Glue validates the
* Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted
* algorithms for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject
* Public Key Algorithm, the key length must be at least 2048. You can set the value of this property to
* true
to skip Glue’s validation of the customer certificate.
*
* CUSTOM_JDBC_CERT_STRING
- A custom JDBC certificate string which is used for domain match or
* distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the
* SSL_SERVER_CERT_DN
; in Microsoft SQL Server, this is used as the
* hostNameInCertificate
.
*
* CONNECTION_URL
- The URL for connecting to a general (non-JDBC) data source.
*
* SECRET_ID
- The secret ID used for the secret manager of credentials.
*
* CONNECTOR_URL
- The connector URL for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_TYPE
- The connector type for a MARKETPLACE or CUSTOM connection.
*
* CONNECTOR_CLASS_NAME
- The connector class name for a MARKETPLACE or CUSTOM connection.
*
* KAFKA_BOOTSTRAP_SERVERS
- A comma-separated list of host and port pairs that are the
* addresses of the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and
* bootstrap itself.
*
* KAFKA_SSL_ENABLED
- Whether to enable or disable SSL on an Apache Kafka connection. Default
* value is "true".
*
* KAFKA_CUSTOM_CERT
- The Amazon S3 URL for the private CA cert file (.pem format). The default
* is an empty string.
*
* KAFKA_SKIP_CUSTOM_CERT_VALIDATION
- Whether to skip the validation of the CA cert file or
* not. Glue validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is
* "false".
*
* KAFKA_CLIENT_KEYSTORE
- The Amazon S3 location of the client keystore file for Kafka client
* side authentication (Optional).
*
* KAFKA_CLIENT_KEYSTORE_PASSWORD
- The password to access the provided keystore (Optional).
*
* KAFKA_CLIENT_KEY_PASSWORD
- A keystore can consist of multiple keys, so this is the password
* to access the client key to be used with the Kafka server side key (Optional).
*
* ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD
- The encrypted version of the Kafka client keystore
* password (if the user has the Glue encrypt passwords setting selected).
*
* ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD
- The encrypted version of the Kafka client key password
* (if the user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_MECHANISM
- "SCRAM-SHA-512"
, "GSSAPI"
, or
* "AWS_MSK_IAM"
. These are the supported SASL Mechanisms.
*
* KAFKA_SASL_SCRAM_USERNAME
- A plaintext username used to authenticate with the
* "SCRAM-SHA-512" mechanism.
*
* KAFKA_SASL_SCRAM_PASSWORD
- A plaintext password used to authenticate with the
* "SCRAM-SHA-512" mechanism.
*
* ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD
- The encrypted version of the Kafka SASL SCRAM password
* (if the user has the Glue encrypt passwords setting selected).
*
* KAFKA_SASL_GSSAPI_KEYTAB
- The S3 location of a Kerberos keytab
file. A keytab
* stores long-term keys for one or more principals. For more information, see MIT Kerberos Documentation:
* Keytab.
*
* KAFKA_SASL_GSSAPI_KRB5_CONF
- The S3 location of a Kerberos krb5.conf
file. A
* krb5.conf stores Kerberos configuration information, such as the location of the KDC server. For more
* information, see MIT
* Kerberos Documentation: krb5.conf.
*
* KAFKA_SASL_GSSAPI_SERVICE
- The Kerberos service name, as set with
* sasl.kerberos.service.name
in your Kafka
* Configuration.
*
* KAFKA_SASL_GSSAPI_PRINCIPAL
- The name of the Kerberos princial used by Glue. For more
* information, see Kafka Documentation:
* Configuring Kafka Brokers.
*
* A map of physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup
,
* that are needed to make this connection successfully.
*
SecurityGroup
, that are needed to make this connection successfully.
*/
public void setPhysicalConnectionRequirements(PhysicalConnectionRequirements physicalConnectionRequirements) {
this.physicalConnectionRequirements = physicalConnectionRequirements;
}
/**
*
* A map of physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup
,
* that are needed to make this connection successfully.
*
SecurityGroup
, that are needed to make this connection successfully.
*/
public PhysicalConnectionRequirements getPhysicalConnectionRequirements() {
return this.physicalConnectionRequirements;
}
/**
*
* A map of physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup
,
* that are needed to make this connection successfully.
*
SecurityGroup
, that are needed to make this connection successfully.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Connection withPhysicalConnectionRequirements(PhysicalConnectionRequirements physicalConnectionRequirements) {
setPhysicalConnectionRequirements(physicalConnectionRequirements);
return this;
}
/**
* * The time that this connection definition was created. *
* * @param creationTime * The time that this connection definition was created. */ public void setCreationTime(java.util.Date creationTime) { this.creationTime = creationTime; } /** ** The time that this connection definition was created. *
* * @return The time that this connection definition was created. */ public java.util.Date getCreationTime() { return this.creationTime; } /** ** The time that this connection definition was created. *
* * @param creationTime * The time that this connection definition was created. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withCreationTime(java.util.Date creationTime) { setCreationTime(creationTime); return this; } /** ** The last time that this connection definition was updated. *
* * @param lastUpdatedTime * The last time that this connection definition was updated. */ public void setLastUpdatedTime(java.util.Date lastUpdatedTime) { this.lastUpdatedTime = lastUpdatedTime; } /** ** The last time that this connection definition was updated. *
* * @return The last time that this connection definition was updated. */ public java.util.Date getLastUpdatedTime() { return this.lastUpdatedTime; } /** ** The last time that this connection definition was updated. *
* * @param lastUpdatedTime * The last time that this connection definition was updated. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withLastUpdatedTime(java.util.Date lastUpdatedTime) { setLastUpdatedTime(lastUpdatedTime); return this; } /** ** The user, group, or role that last updated this connection definition. *
* * @param lastUpdatedBy * The user, group, or role that last updated this connection definition. */ public void setLastUpdatedBy(String lastUpdatedBy) { this.lastUpdatedBy = lastUpdatedBy; } /** ** The user, group, or role that last updated this connection definition. *
* * @return The user, group, or role that last updated this connection definition. */ public String getLastUpdatedBy() { return this.lastUpdatedBy; } /** ** The user, group, or role that last updated this connection definition. *
* * @param lastUpdatedBy * The user, group, or role that last updated this connection definition. * @return Returns a reference to this object so that method calls can be chained together. */ public Connection withLastUpdatedBy(String lastUpdatedBy) { setLastUpdatedBy(lastUpdatedBy); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getName() != null) sb.append("Name: ").append(getName()).append(","); if (getDescription() != null) sb.append("Description: ").append(getDescription()).append(","); if (getConnectionType() != null) sb.append("ConnectionType: ").append(getConnectionType()).append(","); if (getMatchCriteria() != null) sb.append("MatchCriteria: ").append(getMatchCriteria()).append(","); if (getConnectionProperties() != null) sb.append("ConnectionProperties: ").append(getConnectionProperties()).append(","); if (getPhysicalConnectionRequirements() != null) sb.append("PhysicalConnectionRequirements: ").append(getPhysicalConnectionRequirements()).append(","); if (getCreationTime() != null) sb.append("CreationTime: ").append(getCreationTime()).append(","); if (getLastUpdatedTime() != null) sb.append("LastUpdatedTime: ").append(getLastUpdatedTime()).append(","); if (getLastUpdatedBy() != null) sb.append("LastUpdatedBy: ").append(getLastUpdatedBy()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Connection == false) return false; Connection other = (Connection) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; if (other.getConnectionType() == null ^ this.getConnectionType() == null) return false; if (other.getConnectionType() != null && other.getConnectionType().equals(this.getConnectionType()) == false) return false; if (other.getMatchCriteria() == null ^ this.getMatchCriteria() == null) return false; if (other.getMatchCriteria() != null && other.getMatchCriteria().equals(this.getMatchCriteria()) == false) return false; if (other.getConnectionProperties() == null ^ this.getConnectionProperties() == null) return false; if (other.getConnectionProperties() != null && other.getConnectionProperties().equals(this.getConnectionProperties()) == false) return false; if (other.getPhysicalConnectionRequirements() == null ^ this.getPhysicalConnectionRequirements() == null) return false; if (other.getPhysicalConnectionRequirements() != null && other.getPhysicalConnectionRequirements().equals(this.getPhysicalConnectionRequirements()) == false) return false; if (other.getCreationTime() == null ^ this.getCreationTime() == null) return false; if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false) return false; if (other.getLastUpdatedTime() == null ^ this.getLastUpdatedTime() == null) return false; if (other.getLastUpdatedTime() != null && other.getLastUpdatedTime().equals(this.getLastUpdatedTime()) == false) return false; if (other.getLastUpdatedBy() == null ^ this.getLastUpdatedBy() == null) return false; if (other.getLastUpdatedBy() != null && other.getLastUpdatedBy().equals(this.getLastUpdatedBy()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getConnectionType() == null) ? 0 : getConnectionType().hashCode()); hashCode = prime * hashCode + ((getMatchCriteria() == null) ? 0 : getMatchCriteria().hashCode()); hashCode = prime * hashCode + ((getConnectionProperties() == null) ? 0 : getConnectionProperties().hashCode()); hashCode = prime * hashCode + ((getPhysicalConnectionRequirements() == null) ? 0 : getPhysicalConnectionRequirements().hashCode()); hashCode = prime * hashCode + ((getCreationTime() == null) ? 0 : getCreationTime().hashCode()); hashCode = prime * hashCode + ((getLastUpdatedTime() == null) ? 0 : getLastUpdatedTime().hashCode()); hashCode = prime * hashCode + ((getLastUpdatedBy() == null) ? 0 : getLastUpdatedBy().hashCode()); return hashCode; } @Override public Connection clone() { try { return (Connection) 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.glue.model.transform.ConnectionMarshaller.getInstance().marshall(this, protocolMarshaller); } }