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

commonMain.aws.sdk.kotlin.services.swf.model.PollForDecisionTaskRequest.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.swf.model

import aws.smithy.kotlin.runtime.SdkDsl

public class PollForDecisionTaskRequest private constructor(builder: Builder) {
    /**
     * The name of the domain containing the task lists to poll.
     */
    public val domain: kotlin.String? = builder.domain
    /**
     * Identity of the decider making the request, which is recorded in the DecisionTaskStarted event in the workflow history. This enables diagnostic tracing when problems arise. The form of this identity is user defined.
     */
    public val identity: kotlin.String? = builder.identity
    /**
     * The maximum number of results that are returned per call. Use `nextPageToken` to obtain further pages of results.
     *
     * This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.
     */
    public val maximumPageSize: kotlin.Int? = builder.maximumPageSize
    /**
     * If `NextPageToken` is returned there are more results available. The value of `NextPageToken` is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return a `400` error: "`Specified token has exceeded its maximum lifetime`".
     *
     * The configured `maximumPageSize` determines how many results can be returned in a single call.
     *
     * The `nextPageToken` returned by this action cannot be used with GetWorkflowExecutionHistory to get the next page. You must call PollForDecisionTask again (with the `nextPageToken`) to retrieve the next page of history records. Calling PollForDecisionTask with a `nextPageToken` doesn't return a new decision task.
     */
    public val nextPageToken: kotlin.String? = builder.nextPageToken
    /**
     * When set to `true`, returns the events in reverse order. By default the results are returned in ascending order of the `eventTimestamp` of the events.
     */
    public val reverseOrder: kotlin.Boolean? = builder.reverseOrder
    /**
     * When set to `true`, returns the events with `eventTimestamp` greater than or equal to `eventTimestamp` of the most recent `DecisionTaskStarted` event. By default, this parameter is set to `false`.
     */
    public val startAtPreviousStartedEvent: kotlin.Boolean? = builder.startAtPreviousStartedEvent
    /**
     * Specifies the task list to poll for decision tasks.
     *
     * The specified string must not contain a `:` (colon), `/` (slash), `|` (vertical bar), or any control characters (`\u0000-\u001f` | `\u007f-\u009f`). Also, it must *not* be the literal string `arn`.
     */
    public val taskList: aws.sdk.kotlin.services.swf.model.TaskList? = builder.taskList

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

    override fun toString(): kotlin.String = buildString {
        append("PollForDecisionTaskRequest(")
        append("domain=$domain,")
        append("identity=$identity,")
        append("maximumPageSize=$maximumPageSize,")
        append("nextPageToken=$nextPageToken,")
        append("reverseOrder=$reverseOrder,")
        append("startAtPreviousStartedEvent=$startAtPreviousStartedEvent,")
        append("taskList=$taskList")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = domain?.hashCode() ?: 0
        result = 31 * result + (identity?.hashCode() ?: 0)
        result = 31 * result + (maximumPageSize ?: 0)
        result = 31 * result + (nextPageToken?.hashCode() ?: 0)
        result = 31 * result + (reverseOrder?.hashCode() ?: 0)
        result = 31 * result + (startAtPreviousStartedEvent?.hashCode() ?: 0)
        result = 31 * result + (taskList?.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 PollForDecisionTaskRequest

        if (domain != other.domain) return false
        if (identity != other.identity) return false
        if (maximumPageSize != other.maximumPageSize) return false
        if (nextPageToken != other.nextPageToken) return false
        if (reverseOrder != other.reverseOrder) return false
        if (startAtPreviousStartedEvent != other.startAtPreviousStartedEvent) return false
        if (taskList != other.taskList) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The name of the domain containing the task lists to poll.
         */
        public var domain: kotlin.String? = null
        /**
         * Identity of the decider making the request, which is recorded in the DecisionTaskStarted event in the workflow history. This enables diagnostic tracing when problems arise. The form of this identity is user defined.
         */
        public var identity: kotlin.String? = null
        /**
         * The maximum number of results that are returned per call. Use `nextPageToken` to obtain further pages of results.
         *
         * This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.
         */
        public var maximumPageSize: kotlin.Int? = null
        /**
         * If `NextPageToken` is returned there are more results available. The value of `NextPageToken` is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return a `400` error: "`Specified token has exceeded its maximum lifetime`".
         *
         * The configured `maximumPageSize` determines how many results can be returned in a single call.
         *
         * The `nextPageToken` returned by this action cannot be used with GetWorkflowExecutionHistory to get the next page. You must call PollForDecisionTask again (with the `nextPageToken`) to retrieve the next page of history records. Calling PollForDecisionTask with a `nextPageToken` doesn't return a new decision task.
         */
        public var nextPageToken: kotlin.String? = null
        /**
         * When set to `true`, returns the events in reverse order. By default the results are returned in ascending order of the `eventTimestamp` of the events.
         */
        public var reverseOrder: kotlin.Boolean? = null
        /**
         * When set to `true`, returns the events with `eventTimestamp` greater than or equal to `eventTimestamp` of the most recent `DecisionTaskStarted` event. By default, this parameter is set to `false`.
         */
        public var startAtPreviousStartedEvent: kotlin.Boolean? = null
        /**
         * Specifies the task list to poll for decision tasks.
         *
         * The specified string must not contain a `:` (colon), `/` (slash), `|` (vertical bar), or any control characters (`\u0000-\u001f` | `\u007f-\u009f`). Also, it must *not* be the literal string `arn`.
         */
        public var taskList: aws.sdk.kotlin.services.swf.model.TaskList? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.swf.model.PollForDecisionTaskRequest) : this() {
            this.domain = x.domain
            this.identity = x.identity
            this.maximumPageSize = x.maximumPageSize
            this.nextPageToken = x.nextPageToken
            this.reverseOrder = x.reverseOrder
            this.startAtPreviousStartedEvent = x.startAtPreviousStartedEvent
            this.taskList = x.taskList
        }

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy