
commonMain.aws.sdk.kotlin.services.swf.model.LambdaFunctionScheduledEventAttributes.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
/**
* Provides the details of the `LambdaFunctionScheduled` event. It isn't set for other event types.
*/
public class LambdaFunctionScheduledEventAttributes private constructor(builder: Builder) {
/**
* Data attached to the event that the decider can use in subsequent workflow tasks. This data isn't sent to the Lambda task.
*/
public val control: kotlin.String? = builder.control
/**
* The ID of the `LambdaFunctionCompleted` event corresponding to the decision that resulted in scheduling this activity task. To help diagnose issues, use this information to trace back the chain of events leading up to this event.
*/
public val decisionTaskCompletedEventId: kotlin.Long = builder.decisionTaskCompletedEventId
/**
* The unique ID of the Lambda task.
*/
public val id: kotlin.String = requireNotNull(builder.id) { "A non-null value must be provided for id" }
/**
* The input provided to the Lambda task.
*/
public val input: kotlin.String? = builder.input
/**
* The name of the Lambda function.
*/
public val name: kotlin.String = requireNotNull(builder.name) { "A non-null value must be provided for name" }
/**
* The maximum amount of time a worker can take to process the Lambda task.
*/
public val startToCloseTimeout: kotlin.String? = builder.startToCloseTimeout
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.swf.model.LambdaFunctionScheduledEventAttributes = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("LambdaFunctionScheduledEventAttributes(")
append("control=$control,")
append("decisionTaskCompletedEventId=$decisionTaskCompletedEventId,")
append("id=$id,")
append("input=$input,")
append("name=$name,")
append("startToCloseTimeout=$startToCloseTimeout")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = control?.hashCode() ?: 0
result = 31 * result + (decisionTaskCompletedEventId.hashCode())
result = 31 * result + (id.hashCode())
result = 31 * result + (input?.hashCode() ?: 0)
result = 31 * result + (name.hashCode())
result = 31 * result + (startToCloseTimeout?.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 LambdaFunctionScheduledEventAttributes
if (control != other.control) return false
if (decisionTaskCompletedEventId != other.decisionTaskCompletedEventId) return false
if (id != other.id) return false
if (input != other.input) return false
if (name != other.name) return false
if (startToCloseTimeout != other.startToCloseTimeout) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.swf.model.LambdaFunctionScheduledEventAttributes = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* Data attached to the event that the decider can use in subsequent workflow tasks. This data isn't sent to the Lambda task.
*/
public var control: kotlin.String? = null
/**
* The ID of the `LambdaFunctionCompleted` event corresponding to the decision that resulted in scheduling this activity task. To help diagnose issues, use this information to trace back the chain of events leading up to this event.
*/
public var decisionTaskCompletedEventId: kotlin.Long = 0L
/**
* The unique ID of the Lambda task.
*/
public var id: kotlin.String? = null
/**
* The input provided to the Lambda task.
*/
public var input: kotlin.String? = null
/**
* The name of the Lambda function.
*/
public var name: kotlin.String? = null
/**
* The maximum amount of time a worker can take to process the Lambda task.
*/
public var startToCloseTimeout: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.swf.model.LambdaFunctionScheduledEventAttributes) : this() {
this.control = x.control
this.decisionTaskCompletedEventId = x.decisionTaskCompletedEventId
this.id = x.id
this.input = x.input
this.name = x.name
this.startToCloseTimeout = x.startToCloseTimeout
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.swf.model.LambdaFunctionScheduledEventAttributes = LambdaFunctionScheduledEventAttributes(this)
internal fun correctErrors(): Builder {
if (id == null) id = ""
if (name == null) name = ""
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy