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

commonMain.aws.sdk.kotlin.services.codepipeline.model.RuleExecutionDetail.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.codepipeline.model

import aws.smithy.kotlin.runtime.SdkDsl
import aws.smithy.kotlin.runtime.time.Instant

/**
 * The details of the runs for a rule and the results produced on an artifact as it passes through stages in the pipeline.
 */
public class RuleExecutionDetail private constructor(builder: Builder) {
    /**
     * Input details for the rule execution, such as role ARN, Region, and input artifacts.
     */
    public val input: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionInput? = builder.input
    /**
     * The date and time of the last change to the rule execution, in timestamp format.
     */
    public val lastUpdateTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdateTime
    /**
     * Output details for the rule execution, such as the rule execution result.
     */
    public val output: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionOutput? = builder.output
    /**
     * The ID of the pipeline execution in the stage where the rule was run. Use the GetPipelineState action to retrieve the current pipelineExecutionId of the stage.
     */
    public val pipelineExecutionId: kotlin.String? = builder.pipelineExecutionId
    /**
     * The version number of the pipeline with the stage where the rule was run.
     */
    public val pipelineVersion: kotlin.Int? = builder.pipelineVersion
    /**
     * The ID of the run for the rule.
     */
    public val ruleExecutionId: kotlin.String? = builder.ruleExecutionId
    /**
     * The name of the rule that was run in the stage.
     */
    public val ruleName: kotlin.String? = builder.ruleName
    /**
     * The name of the stage where the rule was run.
     */
    public val stageName: kotlin.String? = builder.stageName
    /**
     * The start time of the rule execution.
     */
    public val startTime: aws.smithy.kotlin.runtime.time.Instant? = builder.startTime
    /**
     * The status of the rule execution. Status categories are `InProgress`, `Succeeded`, and `Failed`.
     */
    public val status: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionStatus? = builder.status
    /**
     * The ARN of the user who changed the rule execution details.
     */
    public val updatedBy: kotlin.String? = builder.updatedBy

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

    override fun toString(): kotlin.String = buildString {
        append("RuleExecutionDetail(")
        append("input=$input,")
        append("lastUpdateTime=$lastUpdateTime,")
        append("output=$output,")
        append("pipelineExecutionId=$pipelineExecutionId,")
        append("pipelineVersion=$pipelineVersion,")
        append("ruleExecutionId=$ruleExecutionId,")
        append("ruleName=$ruleName,")
        append("stageName=$stageName,")
        append("startTime=$startTime,")
        append("status=$status,")
        append("updatedBy=$updatedBy")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = input?.hashCode() ?: 0
        result = 31 * result + (lastUpdateTime?.hashCode() ?: 0)
        result = 31 * result + (output?.hashCode() ?: 0)
        result = 31 * result + (pipelineExecutionId?.hashCode() ?: 0)
        result = 31 * result + (pipelineVersion ?: 0)
        result = 31 * result + (ruleExecutionId?.hashCode() ?: 0)
        result = 31 * result + (ruleName?.hashCode() ?: 0)
        result = 31 * result + (stageName?.hashCode() ?: 0)
        result = 31 * result + (startTime?.hashCode() ?: 0)
        result = 31 * result + (status?.hashCode() ?: 0)
        result = 31 * result + (updatedBy?.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 RuleExecutionDetail

        if (input != other.input) return false
        if (lastUpdateTime != other.lastUpdateTime) return false
        if (output != other.output) return false
        if (pipelineExecutionId != other.pipelineExecutionId) return false
        if (pipelineVersion != other.pipelineVersion) return false
        if (ruleExecutionId != other.ruleExecutionId) return false
        if (ruleName != other.ruleName) return false
        if (stageName != other.stageName) return false
        if (startTime != other.startTime) return false
        if (status != other.status) return false
        if (updatedBy != other.updatedBy) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * Input details for the rule execution, such as role ARN, Region, and input artifacts.
         */
        public var input: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionInput? = null
        /**
         * The date and time of the last change to the rule execution, in timestamp format.
         */
        public var lastUpdateTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * Output details for the rule execution, such as the rule execution result.
         */
        public var output: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionOutput? = null
        /**
         * The ID of the pipeline execution in the stage where the rule was run. Use the GetPipelineState action to retrieve the current pipelineExecutionId of the stage.
         */
        public var pipelineExecutionId: kotlin.String? = null
        /**
         * The version number of the pipeline with the stage where the rule was run.
         */
        public var pipelineVersion: kotlin.Int? = null
        /**
         * The ID of the run for the rule.
         */
        public var ruleExecutionId: kotlin.String? = null
        /**
         * The name of the rule that was run in the stage.
         */
        public var ruleName: kotlin.String? = null
        /**
         * The name of the stage where the rule was run.
         */
        public var stageName: kotlin.String? = null
        /**
         * The start time of the rule execution.
         */
        public var startTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The status of the rule execution. Status categories are `InProgress`, `Succeeded`, and `Failed`.
         */
        public var status: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionStatus? = null
        /**
         * The ARN of the user who changed the rule execution details.
         */
        public var updatedBy: kotlin.String? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionDetail) : this() {
            this.input = x.input
            this.lastUpdateTime = x.lastUpdateTime
            this.output = x.output
            this.pipelineExecutionId = x.pipelineExecutionId
            this.pipelineVersion = x.pipelineVersion
            this.ruleExecutionId = x.ruleExecutionId
            this.ruleName = x.ruleName
            this.stageName = x.stageName
            this.startTime = x.startTime
            this.status = x.status
            this.updatedBy = x.updatedBy
        }

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

        /**
         * construct an [aws.sdk.kotlin.services.codepipeline.model.RuleExecutionInput] inside the given [block]
         */
        public fun input(block: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionInput.Builder.() -> kotlin.Unit) {
            this.input = aws.sdk.kotlin.services.codepipeline.model.RuleExecutionInput.invoke(block)
        }

        /**
         * construct an [aws.sdk.kotlin.services.codepipeline.model.RuleExecutionOutput] inside the given [block]
         */
        public fun output(block: aws.sdk.kotlin.services.codepipeline.model.RuleExecutionOutput.Builder.() -> kotlin.Unit) {
            this.output = aws.sdk.kotlin.services.codepipeline.model.RuleExecutionOutput.invoke(block)
        }

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy