commonMain.aws.sdk.kotlin.services.neptune.model.DbClusterEndpoint.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of neptune-jvm Show documentation
Show all versions of neptune-jvm Show documentation
The AWS SDK for Kotlin client for Neptune
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.neptune.model
import aws.smithy.kotlin.runtime.SdkDsl
/**
* This data type represents the information you need to connect to an Amazon Neptune DB cluster. This data type is used as a response element in the following actions:
* + `CreateDBClusterEndpoint`
* + `DescribeDBClusterEndpoints`
* + `ModifyDBClusterEndpoint`
* + `DeleteDBClusterEndpoint`
*
* For the data structure that represents Amazon Neptune DB instance endpoints, see `Endpoint`.
*/
public class DbClusterEndpoint private constructor(builder: Builder) {
/**
* The type associated with a custom endpoint. One of: `READER`, `WRITER`, `ANY`.
*/
public val customEndpointType: kotlin.String? = builder.customEndpointType
/**
* The Amazon Resource Name (ARN) for the endpoint.
*/
public val dbClusterEndpointArn: kotlin.String? = builder.dbClusterEndpointArn
/**
* The identifier associated with the endpoint. This parameter is stored as a lowercase string.
*/
public val dbClusterEndpointIdentifier: kotlin.String? = builder.dbClusterEndpointIdentifier
/**
* A unique system-generated identifier for an endpoint. It remains the same for the whole life of the endpoint.
*/
public val dbClusterEndpointResourceIdentifier: kotlin.String? = builder.dbClusterEndpointResourceIdentifier
/**
* The DB cluster identifier of the DB cluster associated with the endpoint. This parameter is stored as a lowercase string.
*/
public val dbClusterIdentifier: kotlin.String? = builder.dbClusterIdentifier
/**
* The DNS address of the endpoint.
*/
public val endpoint: kotlin.String? = builder.endpoint
/**
* The type of the endpoint. One of: `READER`, `WRITER`, `CUSTOM`.
*/
public val endpointType: kotlin.String? = builder.endpointType
/**
* List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty.
*/
public val excludedMembers: List? = builder.excludedMembers
/**
* List of DB instance identifiers that are part of the custom endpoint group.
*/
public val staticMembers: List? = builder.staticMembers
/**
* The current status of the endpoint. One of: `creating`, `available`, `deleting`, `inactive`, `modifying`. The `inactive` state applies to an endpoint that cannot be used for a certain kind of cluster, such as a `writer` endpoint for a read-only secondary cluster in a global database.
*/
public val status: kotlin.String? = builder.status
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.neptune.model.DbClusterEndpoint = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("DbClusterEndpoint(")
append("customEndpointType=$customEndpointType,")
append("dbClusterEndpointArn=$dbClusterEndpointArn,")
append("dbClusterEndpointIdentifier=$dbClusterEndpointIdentifier,")
append("dbClusterEndpointResourceIdentifier=$dbClusterEndpointResourceIdentifier,")
append("dbClusterIdentifier=$dbClusterIdentifier,")
append("endpoint=$endpoint,")
append("endpointType=$endpointType,")
append("excludedMembers=$excludedMembers,")
append("staticMembers=$staticMembers,")
append("status=$status")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = customEndpointType?.hashCode() ?: 0
result = 31 * result + (dbClusterEndpointArn?.hashCode() ?: 0)
result = 31 * result + (dbClusterEndpointIdentifier?.hashCode() ?: 0)
result = 31 * result + (dbClusterEndpointResourceIdentifier?.hashCode() ?: 0)
result = 31 * result + (dbClusterIdentifier?.hashCode() ?: 0)
result = 31 * result + (endpoint?.hashCode() ?: 0)
result = 31 * result + (endpointType?.hashCode() ?: 0)
result = 31 * result + (excludedMembers?.hashCode() ?: 0)
result = 31 * result + (staticMembers?.hashCode() ?: 0)
result = 31 * result + (status?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as DbClusterEndpoint
if (customEndpointType != other.customEndpointType) return false
if (dbClusterEndpointArn != other.dbClusterEndpointArn) return false
if (dbClusterEndpointIdentifier != other.dbClusterEndpointIdentifier) return false
if (dbClusterEndpointResourceIdentifier != other.dbClusterEndpointResourceIdentifier) return false
if (dbClusterIdentifier != other.dbClusterIdentifier) return false
if (endpoint != other.endpoint) return false
if (endpointType != other.endpointType) return false
if (excludedMembers != other.excludedMembers) return false
if (staticMembers != other.staticMembers) return false
if (status != other.status) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.neptune.model.DbClusterEndpoint = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The type associated with a custom endpoint. One of: `READER`, `WRITER`, `ANY`.
*/
public var customEndpointType: kotlin.String? = null
/**
* The Amazon Resource Name (ARN) for the endpoint.
*/
public var dbClusterEndpointArn: kotlin.String? = null
/**
* The identifier associated with the endpoint. This parameter is stored as a lowercase string.
*/
public var dbClusterEndpointIdentifier: kotlin.String? = null
/**
* A unique system-generated identifier for an endpoint. It remains the same for the whole life of the endpoint.
*/
public var dbClusterEndpointResourceIdentifier: kotlin.String? = null
/**
* The DB cluster identifier of the DB cluster associated with the endpoint. This parameter is stored as a lowercase string.
*/
public var dbClusterIdentifier: kotlin.String? = null
/**
* The DNS address of the endpoint.
*/
public var endpoint: kotlin.String? = null
/**
* The type of the endpoint. One of: `READER`, `WRITER`, `CUSTOM`.
*/
public var endpointType: kotlin.String? = null
/**
* List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty.
*/
public var excludedMembers: List? = null
/**
* List of DB instance identifiers that are part of the custom endpoint group.
*/
public var staticMembers: List? = null
/**
* The current status of the endpoint. One of: `creating`, `available`, `deleting`, `inactive`, `modifying`. The `inactive` state applies to an endpoint that cannot be used for a certain kind of cluster, such as a `writer` endpoint for a read-only secondary cluster in a global database.
*/
public var status: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.neptune.model.DbClusterEndpoint) : this() {
this.customEndpointType = x.customEndpointType
this.dbClusterEndpointArn = x.dbClusterEndpointArn
this.dbClusterEndpointIdentifier = x.dbClusterEndpointIdentifier
this.dbClusterEndpointResourceIdentifier = x.dbClusterEndpointResourceIdentifier
this.dbClusterIdentifier = x.dbClusterIdentifier
this.endpoint = x.endpoint
this.endpointType = x.endpointType
this.excludedMembers = x.excludedMembers
this.staticMembers = x.staticMembers
this.status = x.status
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.neptune.model.DbClusterEndpoint = DbClusterEndpoint(this)
internal fun correctErrors(): Builder {
return this
}
}
}