commonMain.aws.sdk.kotlin.services.glue.model.CreateWorkflowRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.glue.model
import aws.smithy.kotlin.runtime.SdkDsl
public class CreateWorkflowRequest private constructor(builder: Builder) {
/**
* A collection of properties to be used as part of each execution of the workflow.
*/
public val defaultRunProperties: Map? = builder.defaultRunProperties
/**
* A description of the workflow.
*/
public val description: kotlin.String? = builder.description
/**
* You can use this parameter to prevent unwanted multiple updates to data, to control costs, or in some cases, to prevent exceeding the maximum number of concurrent runs of any of the component jobs. If you leave this parameter blank, there is no limit to the number of concurrent workflow runs.
*/
public val maxConcurrentRuns: kotlin.Int? = builder.maxConcurrentRuns
/**
* The name to be assigned to the workflow. It should be unique within your account.
*/
public val name: kotlin.String? = builder.name
/**
* The tags to be used with this workflow.
*/
public val tags: Map? = builder.tags
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.glue.model.CreateWorkflowRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("CreateWorkflowRequest(")
append("defaultRunProperties=$defaultRunProperties,")
append("description=$description,")
append("maxConcurrentRuns=$maxConcurrentRuns,")
append("name=$name,")
append("tags=$tags")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = defaultRunProperties?.hashCode() ?: 0
result = 31 * result + (description?.hashCode() ?: 0)
result = 31 * result + (maxConcurrentRuns ?: 0)
result = 31 * result + (name?.hashCode() ?: 0)
result = 31 * result + (tags?.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 CreateWorkflowRequest
if (defaultRunProperties != other.defaultRunProperties) return false
if (description != other.description) return false
if (maxConcurrentRuns != other.maxConcurrentRuns) return false
if (name != other.name) return false
if (tags != other.tags) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.glue.model.CreateWorkflowRequest = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* A collection of properties to be used as part of each execution of the workflow.
*/
public var defaultRunProperties: Map? = null
/**
* A description of the workflow.
*/
public var description: kotlin.String? = null
/**
* You can use this parameter to prevent unwanted multiple updates to data, to control costs, or in some cases, to prevent exceeding the maximum number of concurrent runs of any of the component jobs. If you leave this parameter blank, there is no limit to the number of concurrent workflow runs.
*/
public var maxConcurrentRuns: kotlin.Int? = null
/**
* The name to be assigned to the workflow. It should be unique within your account.
*/
public var name: kotlin.String? = null
/**
* The tags to be used with this workflow.
*/
public var tags: Map? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.glue.model.CreateWorkflowRequest) : this() {
this.defaultRunProperties = x.defaultRunProperties
this.description = x.description
this.maxConcurrentRuns = x.maxConcurrentRuns
this.name = x.name
this.tags = x.tags
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.glue.model.CreateWorkflowRequest = CreateWorkflowRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}