commonMain.aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueResponse.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of secretsmanager-jvm Show documentation
Show all versions of secretsmanager-jvm Show documentation
The AWS SDK for Kotlin client for Secrets Manager
The newest version!
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.secretsmanager.model
import aws.smithy.kotlin.runtime.SdkDsl
import aws.smithy.kotlin.runtime.time.Instant
public class GetSecretValueResponse private constructor(builder: Builder) {
/**
* The ARN of the secret.
*/
public val arn: kotlin.String? = builder.arn
/**
* The date and time that this version of the secret was created. If you don't specify which version in `VersionId` or `VersionStage`, then Secrets Manager uses the `AWSCURRENT` version.
*/
public val createdDate: aws.smithy.kotlin.runtime.time.Instant? = builder.createdDate
/**
* The friendly name of the secret.
*/
public val name: kotlin.String? = builder.name
/**
* The decrypted secret value, if the secret value was originally provided as binary data in the form of a byte array. When you retrieve a `SecretBinary` using the HTTP API, the Python SDK, or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not encoded.
*
* If the secret was created by using the Secrets Manager console, or if the secret value was originally provided as a string, then this field is omitted. The secret value appears in `SecretString` instead.
*
* Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
*/
public val secretBinary: kotlin.ByteArray? = builder.secretBinary
/**
* The decrypted secret value, if the secret value was originally provided as a string or through the Secrets Manager console.
*
* If this secret was created by using the console, then Secrets Manager stores the information as a JSON structure of key/value pairs.
*
* Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
*/
public val secretString: kotlin.String? = builder.secretString
/**
* The unique identifier of this version of the secret.
*/
public val versionId: kotlin.String? = builder.versionId
/**
* A list of all of the staging labels currently attached to this version of the secret.
*/
public val versionStages: List? = builder.versionStages
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueResponse = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("GetSecretValueResponse(")
append("arn=$arn,")
append("createdDate=$createdDate,")
append("name=$name,")
append("secretBinary=*** Sensitive Data Redacted ***,")
append("secretString=*** Sensitive Data Redacted ***,")
append("versionId=$versionId,")
append("versionStages=$versionStages")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = arn?.hashCode() ?: 0
result = 31 * result + (createdDate?.hashCode() ?: 0)
result = 31 * result + (name?.hashCode() ?: 0)
result = 31 * result + (secretBinary?.contentHashCode() ?: 0)
result = 31 * result + (secretString?.hashCode() ?: 0)
result = 31 * result + (versionId?.hashCode() ?: 0)
result = 31 * result + (versionStages?.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 GetSecretValueResponse
if (arn != other.arn) return false
if (createdDate != other.createdDate) return false
if (name != other.name) return false
if (secretBinary != null) {
if (other.secretBinary == null) return false
if (!secretBinary.contentEquals(other.secretBinary)) return false
} else if (other.secretBinary != null) return false
if (secretString != other.secretString) return false
if (versionId != other.versionId) return false
if (versionStages != other.versionStages) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueResponse = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The ARN of the secret.
*/
public var arn: kotlin.String? = null
/**
* The date and time that this version of the secret was created. If you don't specify which version in `VersionId` or `VersionStage`, then Secrets Manager uses the `AWSCURRENT` version.
*/
public var createdDate: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* The friendly name of the secret.
*/
public var name: kotlin.String? = null
/**
* The decrypted secret value, if the secret value was originally provided as binary data in the form of a byte array. When you retrieve a `SecretBinary` using the HTTP API, the Python SDK, or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not encoded.
*
* If the secret was created by using the Secrets Manager console, or if the secret value was originally provided as a string, then this field is omitted. The secret value appears in `SecretString` instead.
*
* Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
*/
public var secretBinary: kotlin.ByteArray? = null
/**
* The decrypted secret value, if the secret value was originally provided as a string or through the Secrets Manager console.
*
* If this secret was created by using the console, then Secrets Manager stores the information as a JSON structure of key/value pairs.
*
* Sensitive: This field contains sensitive information, so the service does not include it in CloudTrail log entries. If you create your own log entries, you must also avoid logging the information in this field.
*/
public var secretString: kotlin.String? = null
/**
* The unique identifier of this version of the secret.
*/
public var versionId: kotlin.String? = null
/**
* A list of all of the staging labels currently attached to this version of the secret.
*/
public var versionStages: List? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueResponse) : this() {
this.arn = x.arn
this.createdDate = x.createdDate
this.name = x.name
this.secretBinary = x.secretBinary
this.secretString = x.secretString
this.versionId = x.versionId
this.versionStages = x.versionStages
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueResponse = GetSecretValueResponse(this)
internal fun correctErrors(): Builder {
return this
}
}
}