commonMain.aws.sdk.kotlin.services.wafv2.model.RateLimitIp.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of wafv2-jvm Show documentation
Show all versions of wafv2-jvm Show documentation
The AWS Kotlin client for WAFV2
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.wafv2.model
import aws.smithy.kotlin.runtime.SdkDsl
/**
* Specifies the IP address in the web request as an aggregate key for a rate-based rule. Each distinct IP address contributes to the aggregation instance.
*
* This setting is used only in the `RateBasedStatementCustomKey` specification of a rate-based rule statement. To use this in the custom key settings, you must specify at least one other key to use, along with the IP address. To aggregate on only the IP address, in your rate-based statement's `AggregateKeyType`, specify `IP`.
*
* JSON specification: `"RateLimitIP": {}`
*/
public class RateLimitIp private constructor(builder: Builder) {
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.wafv2.model.RateLimitIp = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("RateLimitIp(")
append(")")
}
override fun hashCode(): kotlin.Int {
return this::class.hashCode()
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as RateLimitIp
return true
}
@SdkDsl
public class Builder {
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.wafv2.model.RateLimitIp) : this() {
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.wafv2.model.RateLimitIp = RateLimitIp(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy