All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.aws.sdk.kotlin.services.redshiftserverless.model.RestoreTableFromSnapshotRequest.kt Maven / Gradle / Ivy

There is a newer version: 1.3.76
Show newest version
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.redshiftserverless.model

import aws.smithy.kotlin.runtime.SdkDsl

public class RestoreTableFromSnapshotRequest private constructor(builder: Builder) {
    /**
     * Indicates whether name identifiers for database, schema, and table are case sensitive. If true, the names are case sensitive. If false, the names are not case sensitive. The default is false.
     */
    public val activateCaseSensitiveIdentifier: kotlin.Boolean? = builder.activateCaseSensitiveIdentifier
    /**
     * The namespace of the snapshot to restore from.
     */
    public val namespaceName: kotlin.String? = builder.namespaceName
    /**
     * The name of the table to create from the restore operation.
     */
    public val newTableName: kotlin.String? = builder.newTableName
    /**
     * The name of the snapshot to restore the table from.
     */
    public val snapshotName: kotlin.String? = builder.snapshotName
    /**
     * The name of the source database that contains the table being restored.
     */
    public val sourceDatabaseName: kotlin.String? = builder.sourceDatabaseName
    /**
     * The name of the source schema that contains the table being restored.
     */
    public val sourceSchemaName: kotlin.String? = builder.sourceSchemaName
    /**
     * The name of the source table being restored.
     */
    public val sourceTableName: kotlin.String? = builder.sourceTableName
    /**
     * The name of the database to restore the table to.
     */
    public val targetDatabaseName: kotlin.String? = builder.targetDatabaseName
    /**
     * The name of the schema to restore the table to.
     */
    public val targetSchemaName: kotlin.String? = builder.targetSchemaName
    /**
     * The workgroup to restore the table to.
     */
    public val workgroupName: kotlin.String? = builder.workgroupName

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.redshiftserverless.model.RestoreTableFromSnapshotRequest = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("RestoreTableFromSnapshotRequest(")
        append("activateCaseSensitiveIdentifier=$activateCaseSensitiveIdentifier,")
        append("namespaceName=$namespaceName,")
        append("newTableName=$newTableName,")
        append("snapshotName=$snapshotName,")
        append("sourceDatabaseName=$sourceDatabaseName,")
        append("sourceSchemaName=$sourceSchemaName,")
        append("sourceTableName=$sourceTableName,")
        append("targetDatabaseName=$targetDatabaseName,")
        append("targetSchemaName=$targetSchemaName,")
        append("workgroupName=$workgroupName")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = activateCaseSensitiveIdentifier?.hashCode() ?: 0
        result = 31 * result + (namespaceName?.hashCode() ?: 0)
        result = 31 * result + (newTableName?.hashCode() ?: 0)
        result = 31 * result + (snapshotName?.hashCode() ?: 0)
        result = 31 * result + (sourceDatabaseName?.hashCode() ?: 0)
        result = 31 * result + (sourceSchemaName?.hashCode() ?: 0)
        result = 31 * result + (sourceTableName?.hashCode() ?: 0)
        result = 31 * result + (targetDatabaseName?.hashCode() ?: 0)
        result = 31 * result + (targetSchemaName?.hashCode() ?: 0)
        result = 31 * result + (workgroupName?.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 RestoreTableFromSnapshotRequest

        if (activateCaseSensitiveIdentifier != other.activateCaseSensitiveIdentifier) return false
        if (namespaceName != other.namespaceName) return false
        if (newTableName != other.newTableName) return false
        if (snapshotName != other.snapshotName) return false
        if (sourceDatabaseName != other.sourceDatabaseName) return false
        if (sourceSchemaName != other.sourceSchemaName) return false
        if (sourceTableName != other.sourceTableName) return false
        if (targetDatabaseName != other.targetDatabaseName) return false
        if (targetSchemaName != other.targetSchemaName) return false
        if (workgroupName != other.workgroupName) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.redshiftserverless.model.RestoreTableFromSnapshotRequest = Builder(this).apply(block).build()

    @SdkDsl
    public class Builder {
        /**
         * Indicates whether name identifiers for database, schema, and table are case sensitive. If true, the names are case sensitive. If false, the names are not case sensitive. The default is false.
         */
        public var activateCaseSensitiveIdentifier: kotlin.Boolean? = null
        /**
         * The namespace of the snapshot to restore from.
         */
        public var namespaceName: kotlin.String? = null
        /**
         * The name of the table to create from the restore operation.
         */
        public var newTableName: kotlin.String? = null
        /**
         * The name of the snapshot to restore the table from.
         */
        public var snapshotName: kotlin.String? = null
        /**
         * The name of the source database that contains the table being restored.
         */
        public var sourceDatabaseName: kotlin.String? = null
        /**
         * The name of the source schema that contains the table being restored.
         */
        public var sourceSchemaName: kotlin.String? = null
        /**
         * The name of the source table being restored.
         */
        public var sourceTableName: kotlin.String? = null
        /**
         * The name of the database to restore the table to.
         */
        public var targetDatabaseName: kotlin.String? = null
        /**
         * The name of the schema to restore the table to.
         */
        public var targetSchemaName: kotlin.String? = null
        /**
         * The workgroup to restore the table to.
         */
        public var workgroupName: kotlin.String? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.redshiftserverless.model.RestoreTableFromSnapshotRequest) : this() {
            this.activateCaseSensitiveIdentifier = x.activateCaseSensitiveIdentifier
            this.namespaceName = x.namespaceName
            this.newTableName = x.newTableName
            this.snapshotName = x.snapshotName
            this.sourceDatabaseName = x.sourceDatabaseName
            this.sourceSchemaName = x.sourceSchemaName
            this.sourceTableName = x.sourceTableName
            this.targetDatabaseName = x.targetDatabaseName
            this.targetSchemaName = x.targetSchemaName
            this.workgroupName = x.workgroupName
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.redshiftserverless.model.RestoreTableFromSnapshotRequest = RestoreTableFromSnapshotRequest(this)

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy