
commonMain.aws.sdk.kotlin.services.iot.model.AssociateTargetsWithJobRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.iot.model
public class AssociateTargetsWithJobRequest private constructor(builder: Builder) {
/**
* An optional comment string describing why the job was associated with the targets.
*/
public val comment: kotlin.String? = builder.comment
/**
* The unique identifier you assigned to this job when it was created.
*/
public val jobId: kotlin.String? = builder.jobId
/**
* The namespace used to indicate that a job is a customer-managed job.
*
* When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.
*
* `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
*
* The `namespaceId` feature is in public preview.
*/
public val namespaceId: kotlin.String? = builder.namespaceId
/**
* A list of thing group ARNs that define the targets of the job.
*/
public val targets: List? = builder.targets
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.iot.model.AssociateTargetsWithJobRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("AssociateTargetsWithJobRequest(")
append("comment=$comment,")
append("jobId=$jobId,")
append("namespaceId=$namespaceId,")
append("targets=$targets")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = comment?.hashCode() ?: 0
result = 31 * result + (jobId?.hashCode() ?: 0)
result = 31 * result + (namespaceId?.hashCode() ?: 0)
result = 31 * result + (targets?.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 AssociateTargetsWithJobRequest
if (comment != other.comment) return false
if (jobId != other.jobId) return false
if (namespaceId != other.namespaceId) return false
if (targets != other.targets) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.iot.model.AssociateTargetsWithJobRequest = Builder(this).apply(block).build()
public class Builder {
/**
* An optional comment string describing why the job was associated with the targets.
*/
public var comment: kotlin.String? = null
/**
* The unique identifier you assigned to this job when it was created.
*/
public var jobId: kotlin.String? = null
/**
* The namespace used to indicate that a job is a customer-managed job.
*
* When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.
*
* `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
*
* The `namespaceId` feature is in public preview.
*/
public var namespaceId: kotlin.String? = null
/**
* A list of thing group ARNs that define the targets of the job.
*/
public var targets: List? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.iot.model.AssociateTargetsWithJobRequest) : this() {
this.comment = x.comment
this.jobId = x.jobId
this.namespaceId = x.namespaceId
this.targets = x.targets
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.iot.model.AssociateTargetsWithJobRequest = AssociateTargetsWithJobRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy