![JAR search and dependency download from the Maven repository](/logo.png)
com.oracle.bmc.goldengate.model.OracleConnection Maven / Gradle / Ivy
Show all versions of oci-java-sdk-shaded-full Show documentation
/**
* Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
* This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
*/
package com.oracle.bmc.goldengate.model;
/**
* Represents the metadata of an Oracle Database Connection.
* Note: Objects should always be created or deserialized using the {@link Builder}. This model
* distinguishes fields that are {@code null} because they are unset from fields that are explicitly
* set to {@code null}. This is done in the setter methods of the {@link Builder}, which maintain a
* set of all explicitly set fields called {@link Builder#__explicitlySet__}. The {@link
* #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set
* fields into account. The constructor, on the other hand, does not take the explicitly set fields
* into account (since the constructor cannot distinguish explicit {@code null} from unset {@code
* null}).
*/
@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200407")
@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = OracleConnection.Builder.class)
@com.fasterxml.jackson.annotation.JsonTypeInfo(
use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME,
include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY,
property = "connectionType")
@com.fasterxml.jackson.annotation.JsonFilter(
com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME)
public final class OracleConnection extends Connection {
@com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
public static class Builder {
@com.fasterxml.jackson.annotation.JsonProperty("id")
private String id;
public Builder id(String id) {
this.id = id;
this.__explicitlySet__.add("id");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
private String displayName;
public Builder displayName(String displayName) {
this.displayName = displayName;
this.__explicitlySet__.add("displayName");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("description")
private String description;
public Builder description(String description) {
this.description = description;
this.__explicitlySet__.add("description");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
private String compartmentId;
public Builder compartmentId(String compartmentId) {
this.compartmentId = compartmentId;
this.__explicitlySet__.add("compartmentId");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("freeformTags")
private java.util.Map freeformTags;
public Builder freeformTags(java.util.Map freeformTags) {
this.freeformTags = freeformTags;
this.__explicitlySet__.add("freeformTags");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("definedTags")
private java.util.Map> definedTags;
public Builder definedTags(
java.util.Map> definedTags) {
this.definedTags = definedTags;
this.__explicitlySet__.add("definedTags");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("systemTags")
private java.util.Map> systemTags;
public Builder systemTags(java.util.Map> systemTags) {
this.systemTags = systemTags;
this.__explicitlySet__.add("systemTags");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("lifecycleState")
private LifecycleState lifecycleState;
public Builder lifecycleState(LifecycleState lifecycleState) {
this.lifecycleState = lifecycleState;
this.__explicitlySet__.add("lifecycleState");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails")
private String lifecycleDetails;
public Builder lifecycleDetails(String lifecycleDetails) {
this.lifecycleDetails = lifecycleDetails;
this.__explicitlySet__.add("lifecycleDetails");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("timeCreated")
private java.util.Date timeCreated;
public Builder timeCreated(java.util.Date timeCreated) {
this.timeCreated = timeCreated;
this.__explicitlySet__.add("timeCreated");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("timeUpdated")
private java.util.Date timeUpdated;
public Builder timeUpdated(java.util.Date timeUpdated) {
this.timeUpdated = timeUpdated;
this.__explicitlySet__.add("timeUpdated");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("locks")
private java.util.List locks;
public Builder locks(java.util.List locks) {
this.locks = locks;
this.__explicitlySet__.add("locks");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("vaultId")
private String vaultId;
public Builder vaultId(String vaultId) {
this.vaultId = vaultId;
this.__explicitlySet__.add("vaultId");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("keyId")
private String keyId;
public Builder keyId(String keyId) {
this.keyId = keyId;
this.__explicitlySet__.add("keyId");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("ingressIps")
private java.util.List ingressIps;
public Builder ingressIps(java.util.List ingressIps) {
this.ingressIps = ingressIps;
this.__explicitlySet__.add("ingressIps");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("nsgIds")
private java.util.List nsgIds;
public Builder nsgIds(java.util.List nsgIds) {
this.nsgIds = nsgIds;
this.__explicitlySet__.add("nsgIds");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("subnetId")
private String subnetId;
public Builder subnetId(String subnetId) {
this.subnetId = subnetId;
this.__explicitlySet__.add("subnetId");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("routingMethod")
private RoutingMethod routingMethod;
public Builder routingMethod(RoutingMethod routingMethod) {
this.routingMethod = routingMethod;
this.__explicitlySet__.add("routingMethod");
return this;
}
/** The Oracle technology type. */
@com.fasterxml.jackson.annotation.JsonProperty("technologyType")
private TechnologyType technologyType;
/**
* The Oracle technology type.
*
* @param technologyType the value to set
* @return this builder
*/
public Builder technologyType(TechnologyType technologyType) {
this.technologyType = technologyType;
this.__explicitlySet__.add("technologyType");
return this;
}
/**
* The username Oracle GoldenGate uses to connect the associated system of the given
* technology. This username must already exist and be available by the system/application
* to be connected to and must conform to the case sensitivty requirments defined in it.
*/
@com.fasterxml.jackson.annotation.JsonProperty("username")
private String username;
/**
* The username Oracle GoldenGate uses to connect the associated system of the given
* technology. This username must already exist and be available by the system/application
* to be connected to and must conform to the case sensitivty requirments defined in it.
*
* @param username the value to set
* @return this builder
*/
public Builder username(String username) {
this.username = username;
this.__explicitlySet__.add("username");
return this;
}
/** Connect descriptor or Easy Connect Naming method used to connect to a database. */
@com.fasterxml.jackson.annotation.JsonProperty("connectionString")
private String connectionString;
/**
* Connect descriptor or Easy Connect Naming method used to connect to a database.
*
* @param connectionString the value to set
* @return this builder
*/
public Builder connectionString(String connectionString) {
this.connectionString = connectionString;
this.__explicitlySet__.add("connectionString");
return this;
}
/**
* Authentication mode. It can be provided at creation of Oracle Autonomous Database
* Serverless connections, when a databaseId is provided. The default value is MTLS.
*/
@com.fasterxml.jackson.annotation.JsonProperty("authenticationMode")
private AuthenticationMode authenticationMode;
/**
* Authentication mode. It can be provided at creation of Oracle Autonomous Database
* Serverless connections, when a databaseId is provided. The default value is MTLS.
*
* @param authenticationMode the value to set
* @return this builder
*/
public Builder authenticationMode(AuthenticationMode authenticationMode) {
this.authenticationMode = authenticationMode;
this.__explicitlySet__.add("authenticationMode");
return this;
}
/**
* The mode of the database connection session to be established by the data client.
* 'REDIRECT' - for a RAC database, 'DIRECT' - for a non-RAC database. Connection to a RAC
* database involves a redirection received from the SCAN listeners to the database node to
* connect to. By default the mode would be DIRECT.
*/
@com.fasterxml.jackson.annotation.JsonProperty("sessionMode")
private SessionMode sessionMode;
/**
* The mode of the database connection session to be established by the data client.
* 'REDIRECT' - for a RAC database, 'DIRECT' - for a non-RAC database. Connection to a RAC
* database involves a redirection received from the SCAN listeners to the database node to
* connect to. By default the mode would be DIRECT.
*
* @param sessionMode the value to set
* @return this builder
*/
public Builder sessionMode(SessionMode sessionMode) {
this.sessionMode = sessionMode;
this.__explicitlySet__.add("sessionMode");
return this;
}
/**
* Deprecated: this field will be removed in future versions. Either specify the private IP
* in the connectionString or host field, or make sure the host name is resolvable in the
* target VCN.
*
* The private IP address of the connection's endpoint in the customer's VCN, typically a
* database endpoint or a big data endpoint (e.g. Kafka bootstrap server). In case the
* privateIp is provided, the subnetId must also be provided. In case the privateIp (and the
* subnetId) is not provided it is assumed the datasource is publicly accessible. In case
* the connection is accessible only privately, the lack of privateIp will result in not
* being able to access the connection.
*/
@com.fasterxml.jackson.annotation.JsonProperty("privateIp")
private String privateIp;
/**
* Deprecated: this field will be removed in future versions. Either specify the private IP
* in the connectionString or host field, or make sure the host name is resolvable in the
* target VCN.
*
*
The private IP address of the connection's endpoint in the customer's VCN, typically a
* database endpoint or a big data endpoint (e.g. Kafka bootstrap server). In case the
* privateIp is provided, the subnetId must also be provided. In case the privateIp (and the
* subnetId) is not provided it is assumed the datasource is publicly accessible. In case
* the connection is accessible only privately, the lack of privateIp will result in not
* being able to access the connection.
*
* @param privateIp the value to set
* @return this builder
*/
public Builder privateIp(String privateIp) {
this.privateIp = privateIp;
this.__explicitlySet__.add("privateIp");
return this;
}
/**
* The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the
* database being referenced.
*/
@com.fasterxml.jackson.annotation.JsonProperty("databaseId")
private String databaseId;
/**
* The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the
* database being referenced.
*
* @param databaseId the value to set
* @return this builder
*/
public Builder databaseId(String databaseId) {
this.databaseId = databaseId;
this.__explicitlySet__.add("databaseId");
return this;
}
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
public OracleConnection build() {
OracleConnection model =
new OracleConnection(
this.id,
this.displayName,
this.description,
this.compartmentId,
this.freeformTags,
this.definedTags,
this.systemTags,
this.lifecycleState,
this.lifecycleDetails,
this.timeCreated,
this.timeUpdated,
this.locks,
this.vaultId,
this.keyId,
this.ingressIps,
this.nsgIds,
this.subnetId,
this.routingMethod,
this.technologyType,
this.username,
this.connectionString,
this.authenticationMode,
this.sessionMode,
this.privateIp,
this.databaseId);
for (String explicitlySetProperty : this.__explicitlySet__) {
model.markPropertyAsExplicitlySet(explicitlySetProperty);
}
return model;
}
@com.fasterxml.jackson.annotation.JsonIgnore
public Builder copy(OracleConnection model) {
if (model.wasPropertyExplicitlySet("id")) {
this.id(model.getId());
}
if (model.wasPropertyExplicitlySet("displayName")) {
this.displayName(model.getDisplayName());
}
if (model.wasPropertyExplicitlySet("description")) {
this.description(model.getDescription());
}
if (model.wasPropertyExplicitlySet("compartmentId")) {
this.compartmentId(model.getCompartmentId());
}
if (model.wasPropertyExplicitlySet("freeformTags")) {
this.freeformTags(model.getFreeformTags());
}
if (model.wasPropertyExplicitlySet("definedTags")) {
this.definedTags(model.getDefinedTags());
}
if (model.wasPropertyExplicitlySet("systemTags")) {
this.systemTags(model.getSystemTags());
}
if (model.wasPropertyExplicitlySet("lifecycleState")) {
this.lifecycleState(model.getLifecycleState());
}
if (model.wasPropertyExplicitlySet("lifecycleDetails")) {
this.lifecycleDetails(model.getLifecycleDetails());
}
if (model.wasPropertyExplicitlySet("timeCreated")) {
this.timeCreated(model.getTimeCreated());
}
if (model.wasPropertyExplicitlySet("timeUpdated")) {
this.timeUpdated(model.getTimeUpdated());
}
if (model.wasPropertyExplicitlySet("locks")) {
this.locks(model.getLocks());
}
if (model.wasPropertyExplicitlySet("vaultId")) {
this.vaultId(model.getVaultId());
}
if (model.wasPropertyExplicitlySet("keyId")) {
this.keyId(model.getKeyId());
}
if (model.wasPropertyExplicitlySet("ingressIps")) {
this.ingressIps(model.getIngressIps());
}
if (model.wasPropertyExplicitlySet("nsgIds")) {
this.nsgIds(model.getNsgIds());
}
if (model.wasPropertyExplicitlySet("subnetId")) {
this.subnetId(model.getSubnetId());
}
if (model.wasPropertyExplicitlySet("routingMethod")) {
this.routingMethod(model.getRoutingMethod());
}
if (model.wasPropertyExplicitlySet("technologyType")) {
this.technologyType(model.getTechnologyType());
}
if (model.wasPropertyExplicitlySet("username")) {
this.username(model.getUsername());
}
if (model.wasPropertyExplicitlySet("connectionString")) {
this.connectionString(model.getConnectionString());
}
if (model.wasPropertyExplicitlySet("authenticationMode")) {
this.authenticationMode(model.getAuthenticationMode());
}
if (model.wasPropertyExplicitlySet("sessionMode")) {
this.sessionMode(model.getSessionMode());
}
if (model.wasPropertyExplicitlySet("privateIp")) {
this.privateIp(model.getPrivateIp());
}
if (model.wasPropertyExplicitlySet("databaseId")) {
this.databaseId(model.getDatabaseId());
}
return this;
}
}
/** Create a new builder. */
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().copy(this);
}
@Deprecated
public OracleConnection(
String id,
String displayName,
String description,
String compartmentId,
java.util.Map freeformTags,
java.util.Map> definedTags,
java.util.Map> systemTags,
LifecycleState lifecycleState,
String lifecycleDetails,
java.util.Date timeCreated,
java.util.Date timeUpdated,
java.util.List locks,
String vaultId,
String keyId,
java.util.List ingressIps,
java.util.List nsgIds,
String subnetId,
RoutingMethod routingMethod,
TechnologyType technologyType,
String username,
String connectionString,
AuthenticationMode authenticationMode,
SessionMode sessionMode,
String privateIp,
String databaseId) {
super(
id,
displayName,
description,
compartmentId,
freeformTags,
definedTags,
systemTags,
lifecycleState,
lifecycleDetails,
timeCreated,
timeUpdated,
locks,
vaultId,
keyId,
ingressIps,
nsgIds,
subnetId,
routingMethod);
this.technologyType = technologyType;
this.username = username;
this.connectionString = connectionString;
this.authenticationMode = authenticationMode;
this.sessionMode = sessionMode;
this.privateIp = privateIp;
this.databaseId = databaseId;
}
/** The Oracle technology type. */
public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum {
AmazonRdsOracle("AMAZON_RDS_ORACLE"),
OciAutonomousDatabase("OCI_AUTONOMOUS_DATABASE"),
OracleDatabase("ORACLE_DATABASE"),
OracleExadata("ORACLE_EXADATA"),
OracleExadataDatabaseAtAzure("ORACLE_EXADATA_DATABASE_AT_AZURE"),
/**
* This value is used if a service returns a value for this enum that is not recognized by
* this version of the SDK.
*/
UnknownEnumValue(null);
private static final org.slf4j.Logger LOG =
org.slf4j.LoggerFactory.getLogger(TechnologyType.class);
private final String value;
private static java.util.Map map;
static {
map = new java.util.HashMap<>();
for (TechnologyType v : TechnologyType.values()) {
if (v != UnknownEnumValue) {
map.put(v.getValue(), v);
}
}
}
TechnologyType(String value) {
this.value = value;
}
@com.fasterxml.jackson.annotation.JsonValue
public String getValue() {
return value;
}
@com.fasterxml.jackson.annotation.JsonCreator
public static TechnologyType create(String key) {
if (map.containsKey(key)) {
return map.get(key);
}
LOG.warn(
"Received unknown value '{}' for enum 'TechnologyType', returning UnknownEnumValue",
key);
return UnknownEnumValue;
}
};
/** The Oracle technology type. */
@com.fasterxml.jackson.annotation.JsonProperty("technologyType")
private final TechnologyType technologyType;
/**
* The Oracle technology type.
*
* @return the value
*/
public TechnologyType getTechnologyType() {
return technologyType;
}
/**
* The username Oracle GoldenGate uses to connect the associated system of the given technology.
* This username must already exist and be available by the system/application to be connected
* to and must conform to the case sensitivty requirments defined in it.
*/
@com.fasterxml.jackson.annotation.JsonProperty("username")
private final String username;
/**
* The username Oracle GoldenGate uses to connect the associated system of the given technology.
* This username must already exist and be available by the system/application to be connected
* to and must conform to the case sensitivty requirments defined in it.
*
* @return the value
*/
public String getUsername() {
return username;
}
/** Connect descriptor or Easy Connect Naming method used to connect to a database. */
@com.fasterxml.jackson.annotation.JsonProperty("connectionString")
private final String connectionString;
/**
* Connect descriptor or Easy Connect Naming method used to connect to a database.
*
* @return the value
*/
public String getConnectionString() {
return connectionString;
}
/**
* Authentication mode. It can be provided at creation of Oracle Autonomous Database Serverless
* connections, when a databaseId is provided. The default value is MTLS.
*/
public enum AuthenticationMode implements com.oracle.bmc.http.internal.BmcEnum {
Tls("TLS"),
Mtls("MTLS"),
/**
* This value is used if a service returns a value for this enum that is not recognized by
* this version of the SDK.
*/
UnknownEnumValue(null);
private static final org.slf4j.Logger LOG =
org.slf4j.LoggerFactory.getLogger(AuthenticationMode.class);
private final String value;
private static java.util.Map map;
static {
map = new java.util.HashMap<>();
for (AuthenticationMode v : AuthenticationMode.values()) {
if (v != UnknownEnumValue) {
map.put(v.getValue(), v);
}
}
}
AuthenticationMode(String value) {
this.value = value;
}
@com.fasterxml.jackson.annotation.JsonValue
public String getValue() {
return value;
}
@com.fasterxml.jackson.annotation.JsonCreator
public static AuthenticationMode create(String key) {
if (map.containsKey(key)) {
return map.get(key);
}
LOG.warn(
"Received unknown value '{}' for enum 'AuthenticationMode', returning UnknownEnumValue",
key);
return UnknownEnumValue;
}
};
/**
* Authentication mode. It can be provided at creation of Oracle Autonomous Database Serverless
* connections, when a databaseId is provided. The default value is MTLS.
*/
@com.fasterxml.jackson.annotation.JsonProperty("authenticationMode")
private final AuthenticationMode authenticationMode;
/**
* Authentication mode. It can be provided at creation of Oracle Autonomous Database Serverless
* connections, when a databaseId is provided. The default value is MTLS.
*
* @return the value
*/
public AuthenticationMode getAuthenticationMode() {
return authenticationMode;
}
/**
* The mode of the database connection session to be established by the data client. 'REDIRECT'
* - for a RAC database, 'DIRECT' - for a non-RAC database. Connection to a RAC database
* involves a redirection received from the SCAN listeners to the database node to connect to.
* By default the mode would be DIRECT.
*/
public enum SessionMode implements com.oracle.bmc.http.internal.BmcEnum {
Direct("DIRECT"),
Redirect("REDIRECT"),
/**
* This value is used if a service returns a value for this enum that is not recognized by
* this version of the SDK.
*/
UnknownEnumValue(null);
private static final org.slf4j.Logger LOG =
org.slf4j.LoggerFactory.getLogger(SessionMode.class);
private final String value;
private static java.util.Map map;
static {
map = new java.util.HashMap<>();
for (SessionMode v : SessionMode.values()) {
if (v != UnknownEnumValue) {
map.put(v.getValue(), v);
}
}
}
SessionMode(String value) {
this.value = value;
}
@com.fasterxml.jackson.annotation.JsonValue
public String getValue() {
return value;
}
@com.fasterxml.jackson.annotation.JsonCreator
public static SessionMode create(String key) {
if (map.containsKey(key)) {
return map.get(key);
}
LOG.warn(
"Received unknown value '{}' for enum 'SessionMode', returning UnknownEnumValue",
key);
return UnknownEnumValue;
}
};
/**
* The mode of the database connection session to be established by the data client. 'REDIRECT'
* - for a RAC database, 'DIRECT' - for a non-RAC database. Connection to a RAC database
* involves a redirection received from the SCAN listeners to the database node to connect to.
* By default the mode would be DIRECT.
*/
@com.fasterxml.jackson.annotation.JsonProperty("sessionMode")
private final SessionMode sessionMode;
/**
* The mode of the database connection session to be established by the data client. 'REDIRECT'
* - for a RAC database, 'DIRECT' - for a non-RAC database. Connection to a RAC database
* involves a redirection received from the SCAN listeners to the database node to connect to.
* By default the mode would be DIRECT.
*
* @return the value
*/
public SessionMode getSessionMode() {
return sessionMode;
}
/**
* Deprecated: this field will be removed in future versions. Either specify the private IP in
* the connectionString or host field, or make sure the host name is resolvable in the target
* VCN.
*
* The private IP address of the connection's endpoint in the customer's VCN, typically a
* database endpoint or a big data endpoint (e.g. Kafka bootstrap server). In case the privateIp
* is provided, the subnetId must also be provided. In case the privateIp (and the subnetId) is
* not provided it is assumed the datasource is publicly accessible. In case the connection is
* accessible only privately, the lack of privateIp will result in not being able to access the
* connection.
*/
@com.fasterxml.jackson.annotation.JsonProperty("privateIp")
private final String privateIp;
/**
* Deprecated: this field will be removed in future versions. Either specify the private IP in
* the connectionString or host field, or make sure the host name is resolvable in the target
* VCN.
*
*
The private IP address of the connection's endpoint in the customer's VCN, typically a
* database endpoint or a big data endpoint (e.g. Kafka bootstrap server). In case the privateIp
* is provided, the subnetId must also be provided. In case the privateIp (and the subnetId) is
* not provided it is assumed the datasource is publicly accessible. In case the connection is
* accessible only privately, the lack of privateIp will result in not being able to access the
* connection.
*
* @return the value
*/
public String getPrivateIp() {
return privateIp;
}
/**
* The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the
* database being referenced.
*/
@com.fasterxml.jackson.annotation.JsonProperty("databaseId")
private final String databaseId;
/**
* The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the
* database being referenced.
*
* @return the value
*/
public String getDatabaseId() {
return databaseId;
}
@Override
public String toString() {
return this.toString(true);
}
/**
* Return a string representation of the object.
*
* @param includeByteArrayContents true to include the full contents of byte arrays
* @return string representation
*/
public String toString(boolean includeByteArrayContents) {
java.lang.StringBuilder sb = new java.lang.StringBuilder();
sb.append("OracleConnection(");
sb.append("super=").append(super.toString(includeByteArrayContents));
sb.append(", technologyType=").append(String.valueOf(this.technologyType));
sb.append(", username=").append(String.valueOf(this.username));
sb.append(", connectionString=").append(String.valueOf(this.connectionString));
sb.append(", authenticationMode=").append(String.valueOf(this.authenticationMode));
sb.append(", sessionMode=").append(String.valueOf(this.sessionMode));
sb.append(", privateIp=").append(String.valueOf(this.privateIp));
sb.append(", databaseId=").append(String.valueOf(this.databaseId));
sb.append(")");
return sb.toString();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof OracleConnection)) {
return false;
}
OracleConnection other = (OracleConnection) o;
return java.util.Objects.equals(this.technologyType, other.technologyType)
&& java.util.Objects.equals(this.username, other.username)
&& java.util.Objects.equals(this.connectionString, other.connectionString)
&& java.util.Objects.equals(this.authenticationMode, other.authenticationMode)
&& java.util.Objects.equals(this.sessionMode, other.sessionMode)
&& java.util.Objects.equals(this.privateIp, other.privateIp)
&& java.util.Objects.equals(this.databaseId, other.databaseId)
&& super.equals(other);
}
@Override
public int hashCode() {
final int PRIME = 59;
int result = super.hashCode();
result =
(result * PRIME)
+ (this.technologyType == null ? 43 : this.technologyType.hashCode());
result = (result * PRIME) + (this.username == null ? 43 : this.username.hashCode());
result =
(result * PRIME)
+ (this.connectionString == null ? 43 : this.connectionString.hashCode());
result =
(result * PRIME)
+ (this.authenticationMode == null
? 43
: this.authenticationMode.hashCode());
result = (result * PRIME) + (this.sessionMode == null ? 43 : this.sessionMode.hashCode());
result = (result * PRIME) + (this.privateIp == null ? 43 : this.privateIp.hashCode());
result = (result * PRIME) + (this.databaseId == null ? 43 : this.databaseId.hashCode());
return result;
}
}