
commonMain.aws.sdk.kotlin.services.gamelift.model.StartMatchmakingRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.gamelift.model
public class StartMatchmakingRequest private constructor(builder: Builder) {
/**
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in the same Region as this request. You can use either the configuration name or ARN value.
*/
public val configurationName: kotlin.String? = builder.configurationName
/**
* Information on each player to be matched. This information must include a player ID, and may contain player attributes and latency data to be used in the matchmaking process. After a successful match, `Player` objects contain the name of the team the player is assigned to.
*
* You can include up to 10 `Players` in a `StartMatchmaking` request.
*/
public val players: List? = builder.players
/**
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will generate one in the form of a UUID. Use this identifier to track the matchmaking ticket status and retrieve match results.
*/
public val ticketId: kotlin.String? = builder.ticketId
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.gamelift.model.StartMatchmakingRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("StartMatchmakingRequest(")
append("configurationName=$configurationName,")
append("players=$players,")
append("ticketId=$ticketId")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = configurationName?.hashCode() ?: 0
result = 31 * result + (players?.hashCode() ?: 0)
result = 31 * result + (ticketId?.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 StartMatchmakingRequest
if (configurationName != other.configurationName) return false
if (players != other.players) return false
if (ticketId != other.ticketId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.gamelift.model.StartMatchmakingRequest = Builder(this).apply(block).build()
public class Builder {
/**
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in the same Region as this request. You can use either the configuration name or ARN value.
*/
public var configurationName: kotlin.String? = null
/**
* Information on each player to be matched. This information must include a player ID, and may contain player attributes and latency data to be used in the matchmaking process. After a successful match, `Player` objects contain the name of the team the player is assigned to.
*
* You can include up to 10 `Players` in a `StartMatchmaking` request.
*/
public var players: List? = null
/**
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will generate one in the form of a UUID. Use this identifier to track the matchmaking ticket status and retrieve match results.
*/
public var ticketId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.gamelift.model.StartMatchmakingRequest) : this() {
this.configurationName = x.configurationName
this.players = x.players
this.ticketId = x.ticketId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.gamelift.model.StartMatchmakingRequest = StartMatchmakingRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy