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

commonMain.aws.sdk.kotlin.services.neptune.model.DescribeDbEngineVersionsRequest.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.neptune.model

import aws.smithy.kotlin.runtime.SdkDsl

public class DescribeDbEngineVersionsRequest private constructor(builder: Builder) {
    /**
     * The name of a specific DB parameter group family to return details for.
     *
     * Constraints:
     * + If supplied, must match an existing DBParameterGroupFamily.
     */
    public val dbParameterGroupFamily: kotlin.String? = builder.dbParameterGroupFamily
    /**
     * Indicates that only the default version of the specified engine or engine and major version combination is returned.
     */
    public val defaultOnly: kotlin.Boolean? = builder.defaultOnly
    /**
     * The database engine to return.
     */
    public val engine: kotlin.String? = builder.engine
    /**
     * The database engine version to return.
     *
     * Example: `5.1.49`
     */
    public val engineVersion: kotlin.String? = builder.engineVersion
    /**
     * Not currently supported.
     */
    public val filters: List? = builder.filters
    /**
     * If this parameter is specified and the requested engine supports the `CharacterSetName` parameter for `CreateDBInstance`, the response includes a list of supported character sets for each engine version.
     */
    public val listSupportedCharacterSets: kotlin.Boolean? = builder.listSupportedCharacterSets
    /**
     * If this parameter is specified and the requested engine supports the `TimeZone` parameter for `CreateDBInstance`, the response includes a list of supported time zones for each engine version.
     */
    public val listSupportedTimezones: kotlin.Boolean? = builder.listSupportedTimezones
    /**
     * An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.
     */
    public val marker: kotlin.String? = builder.marker
    /**
     * The maximum number of records to include in the response. If more than the `MaxRecords` value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.
     *
     * Default: 100
     *
     * Constraints: Minimum 20, maximum 100.
     */
    public val maxRecords: kotlin.Int? = builder.maxRecords

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

    override fun toString(): kotlin.String = buildString {
        append("DescribeDbEngineVersionsRequest(")
        append("dbParameterGroupFamily=$dbParameterGroupFamily,")
        append("defaultOnly=$defaultOnly,")
        append("engine=$engine,")
        append("engineVersion=$engineVersion,")
        append("filters=$filters,")
        append("listSupportedCharacterSets=$listSupportedCharacterSets,")
        append("listSupportedTimezones=$listSupportedTimezones,")
        append("marker=$marker,")
        append("maxRecords=$maxRecords")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = dbParameterGroupFamily?.hashCode() ?: 0
        result = 31 * result + (defaultOnly?.hashCode() ?: 0)
        result = 31 * result + (engine?.hashCode() ?: 0)
        result = 31 * result + (engineVersion?.hashCode() ?: 0)
        result = 31 * result + (filters?.hashCode() ?: 0)
        result = 31 * result + (listSupportedCharacterSets?.hashCode() ?: 0)
        result = 31 * result + (listSupportedTimezones?.hashCode() ?: 0)
        result = 31 * result + (marker?.hashCode() ?: 0)
        result = 31 * result + (maxRecords ?: 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 DescribeDbEngineVersionsRequest

        if (dbParameterGroupFamily != other.dbParameterGroupFamily) return false
        if (defaultOnly != other.defaultOnly) return false
        if (engine != other.engine) return false
        if (engineVersion != other.engineVersion) return false
        if (filters != other.filters) return false
        if (listSupportedCharacterSets != other.listSupportedCharacterSets) return false
        if (listSupportedTimezones != other.listSupportedTimezones) return false
        if (marker != other.marker) return false
        if (maxRecords != other.maxRecords) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The name of a specific DB parameter group family to return details for.
         *
         * Constraints:
         * + If supplied, must match an existing DBParameterGroupFamily.
         */
        public var dbParameterGroupFamily: kotlin.String? = null
        /**
         * Indicates that only the default version of the specified engine or engine and major version combination is returned.
         */
        public var defaultOnly: kotlin.Boolean? = null
        /**
         * The database engine to return.
         */
        public var engine: kotlin.String? = null
        /**
         * The database engine version to return.
         *
         * Example: `5.1.49`
         */
        public var engineVersion: kotlin.String? = null
        /**
         * Not currently supported.
         */
        public var filters: List? = null
        /**
         * If this parameter is specified and the requested engine supports the `CharacterSetName` parameter for `CreateDBInstance`, the response includes a list of supported character sets for each engine version.
         */
        public var listSupportedCharacterSets: kotlin.Boolean? = null
        /**
         * If this parameter is specified and the requested engine supports the `TimeZone` parameter for `CreateDBInstance`, the response includes a list of supported time zones for each engine version.
         */
        public var listSupportedTimezones: kotlin.Boolean? = null
        /**
         * An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.
         */
        public var marker: kotlin.String? = null
        /**
         * The maximum number of records to include in the response. If more than the `MaxRecords` value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.
         *
         * Default: 100
         *
         * Constraints: Minimum 20, maximum 100.
         */
        public var maxRecords: kotlin.Int? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.neptune.model.DescribeDbEngineVersionsRequest) : this() {
            this.dbParameterGroupFamily = x.dbParameterGroupFamily
            this.defaultOnly = x.defaultOnly
            this.engine = x.engine
            this.engineVersion = x.engineVersion
            this.filters = x.filters
            this.listSupportedCharacterSets = x.listSupportedCharacterSets
            this.listSupportedTimezones = x.listSupportedTimezones
            this.marker = x.marker
            this.maxRecords = x.maxRecords
        }

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy