commonMain.aws.sdk.kotlin.services.autoscaling.serde.InstancesDistributionDocumentDeserializer.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of autoscaling-jvm Show documentation
Show all versions of autoscaling-jvm Show documentation
The AWS SDK for Kotlin client for Auto Scaling
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.autoscaling.serde
import aws.sdk.kotlin.services.autoscaling.model.InstancesDistribution
import aws.smithy.kotlin.runtime.serde.getOrDeserializeErr
import aws.smithy.kotlin.runtime.serde.parseInt
import aws.smithy.kotlin.runtime.serde.xml.XmlTagReader
import aws.smithy.kotlin.runtime.serde.xml.tryData
internal fun deserializeInstancesDistributionDocument(reader: XmlTagReader): InstancesDistribution {
val builder = InstancesDistribution.Builder()
loop@while (true) {
val curr = reader.nextTag() ?: break@loop
when (curr.tagName) {
// OnDemandAllocationStrategy com.amazonaws.autoscaling#InstancesDistribution$OnDemandAllocationStrategy
"OnDemandAllocationStrategy" -> builder.onDemandAllocationStrategy = curr.tryData()
.getOrDeserializeErr { "expected (string: `com.amazonaws.autoscaling#XmlString`)" }
// OnDemandBaseCapacity com.amazonaws.autoscaling#InstancesDistribution$OnDemandBaseCapacity
"OnDemandBaseCapacity" -> builder.onDemandBaseCapacity = curr.tryData()
.parseInt()
.getOrDeserializeErr { "expected (integer: `com.amazonaws.autoscaling#OnDemandBaseCapacity`)" }
// OnDemandPercentageAboveBaseCapacity com.amazonaws.autoscaling#InstancesDistribution$OnDemandPercentageAboveBaseCapacity
"OnDemandPercentageAboveBaseCapacity" -> builder.onDemandPercentageAboveBaseCapacity = curr.tryData()
.parseInt()
.getOrDeserializeErr { "expected (integer: `com.amazonaws.autoscaling#OnDemandPercentageAboveBaseCapacity`)" }
// SpotAllocationStrategy com.amazonaws.autoscaling#InstancesDistribution$SpotAllocationStrategy
"SpotAllocationStrategy" -> builder.spotAllocationStrategy = curr.tryData()
.getOrDeserializeErr { "expected (string: `com.amazonaws.autoscaling#XmlString`)" }
// SpotInstancePools com.amazonaws.autoscaling#InstancesDistribution$SpotInstancePools
"SpotInstancePools" -> builder.spotInstancePools = curr.tryData()
.parseInt()
.getOrDeserializeErr { "expected (integer: `com.amazonaws.autoscaling#SpotInstancePools`)" }
// SpotMaxPrice com.amazonaws.autoscaling#InstancesDistribution$SpotMaxPrice
"SpotMaxPrice" -> builder.spotMaxPrice = curr.tryData()
.getOrDeserializeErr { "expected (string: `com.amazonaws.autoscaling#MixedInstanceSpotPrice`)" }
else -> {}
}
curr.drop()
}
builder.correctErrors()
return builder.build()
}