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

commonMain.aws.sdk.kotlin.services.codedeploy.model.BatchGetDeploymentTargetsRequest.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.codedeploy.model

import aws.smithy.kotlin.runtime.SdkDsl

public class BatchGetDeploymentTargetsRequest private constructor(builder: Builder) {
    /**
     * The unique ID of a deployment.
     */
    public val deploymentId: kotlin.String? = builder.deploymentId
    /**
     * The unique IDs of the deployment targets. The compute platform of the deployment determines the type of the targets and their formats. The maximum number of deployment target IDs you can specify is 25.
     * +  For deployments that use the EC2/On-premises compute platform, the target IDs are Amazon EC2 or on-premises instances IDs, and their target type is `instanceTarget`.
     * +  For deployments that use the Lambda compute platform, the target IDs are the names of Lambda functions, and their target type is `instanceTarget`.
     * +  For deployments that use the Amazon ECS compute platform, the target IDs are pairs of Amazon ECS clusters and services specified using the format `:`. Their target type is `ecsTarget`.
     * +  For deployments that are deployed with CloudFormation, the target IDs are CloudFormation stack IDs. Their target type is `cloudFormationTarget`.
     */
    public val targetIds: List? = builder.targetIds

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

    override fun toString(): kotlin.String = buildString {
        append("BatchGetDeploymentTargetsRequest(")
        append("deploymentId=$deploymentId,")
        append("targetIds=$targetIds")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = deploymentId?.hashCode() ?: 0
        result = 31 * result + (targetIds?.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 BatchGetDeploymentTargetsRequest

        if (deploymentId != other.deploymentId) return false
        if (targetIds != other.targetIds) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The unique ID of a deployment.
         */
        public var deploymentId: kotlin.String? = null
        /**
         * The unique IDs of the deployment targets. The compute platform of the deployment determines the type of the targets and their formats. The maximum number of deployment target IDs you can specify is 25.
         * +  For deployments that use the EC2/On-premises compute platform, the target IDs are Amazon EC2 or on-premises instances IDs, and their target type is `instanceTarget`.
         * +  For deployments that use the Lambda compute platform, the target IDs are the names of Lambda functions, and their target type is `instanceTarget`.
         * +  For deployments that use the Amazon ECS compute platform, the target IDs are pairs of Amazon ECS clusters and services specified using the format `:`. Their target type is `ecsTarget`.
         * +  For deployments that are deployed with CloudFormation, the target IDs are CloudFormation stack IDs. Their target type is `cloudFormationTarget`.
         */
        public var targetIds: List? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.codedeploy.model.BatchGetDeploymentTargetsRequest) : this() {
            this.deploymentId = x.deploymentId
            this.targetIds = x.targetIds
        }

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy