
commonMain.aws.sdk.kotlin.services.route53resolver.model.AssociateFirewallRuleGroupRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.route53resolver.model
public class AssociateFirewallRuleGroupRequest private constructor(builder: Builder) {
/**
* A unique string that identifies the request and that allows failed requests to be retried without the risk of running the operation twice. `CreatorRequestId` can be any unique string, for example, a date/time stamp.
*/
public val creatorRequestId: kotlin.String? = builder.creatorRequestId
/**
* The unique identifier of the firewall rule group.
*/
public val firewallRuleGroupId: kotlin.String? = builder.firewallRuleGroupId
/**
* If enabled, this setting disallows modification or removal of the association, to help prevent against accidentally altering DNS firewall protections. When you create the association, the default setting is `DISABLED`.
*/
public val mutationProtection: aws.sdk.kotlin.services.route53resolver.model.MutationProtectionStatus? = builder.mutationProtection
/**
* A name that lets you identify the association, to manage and use it.
*/
public val name: kotlin.String? = builder.name
/**
* The setting that determines the processing order of the rule group among the rule groups that you associate with the specified VPC. DNS Firewall filters VPC traffic starting from the rule group with the lowest numeric priority setting.
*
* You must specify a unique priority for each rule group that you associate with a single VPC. To make it easier to insert rule groups later, leave space between the numbers, for example, use 101, 200, and so on. You can change the priority setting for a rule group association after you create it.
*
* The allowed values for `Priority` are between 100 and 9900.
*/
public val priority: kotlin.Int? = builder.priority
/**
* A list of the tag keys and values that you want to associate with the rule group association.
*/
public val tags: List? = builder.tags
/**
* The unique identifier of the VPC that you want to associate with the rule group.
*/
public val vpcId: kotlin.String? = builder.vpcId
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.route53resolver.model.AssociateFirewallRuleGroupRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("AssociateFirewallRuleGroupRequest(")
append("creatorRequestId=$creatorRequestId,")
append("firewallRuleGroupId=$firewallRuleGroupId,")
append("mutationProtection=$mutationProtection,")
append("name=$name,")
append("priority=$priority,")
append("tags=$tags,")
append("vpcId=$vpcId")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = creatorRequestId?.hashCode() ?: 0
result = 31 * result + (firewallRuleGroupId?.hashCode() ?: 0)
result = 31 * result + (mutationProtection?.hashCode() ?: 0)
result = 31 * result + (name?.hashCode() ?: 0)
result = 31 * result + (priority ?: 0)
result = 31 * result + (tags?.hashCode() ?: 0)
result = 31 * result + (vpcId?.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 AssociateFirewallRuleGroupRequest
if (creatorRequestId != other.creatorRequestId) return false
if (firewallRuleGroupId != other.firewallRuleGroupId) return false
if (mutationProtection != other.mutationProtection) return false
if (name != other.name) return false
if (priority != other.priority) return false
if (tags != other.tags) return false
if (vpcId != other.vpcId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.route53resolver.model.AssociateFirewallRuleGroupRequest = Builder(this).apply(block).build()
public class Builder {
/**
* A unique string that identifies the request and that allows failed requests to be retried without the risk of running the operation twice. `CreatorRequestId` can be any unique string, for example, a date/time stamp.
*/
public var creatorRequestId: kotlin.String? = null
/**
* The unique identifier of the firewall rule group.
*/
public var firewallRuleGroupId: kotlin.String? = null
/**
* If enabled, this setting disallows modification or removal of the association, to help prevent against accidentally altering DNS firewall protections. When you create the association, the default setting is `DISABLED`.
*/
public var mutationProtection: aws.sdk.kotlin.services.route53resolver.model.MutationProtectionStatus? = null
/**
* A name that lets you identify the association, to manage and use it.
*/
public var name: kotlin.String? = null
/**
* The setting that determines the processing order of the rule group among the rule groups that you associate with the specified VPC. DNS Firewall filters VPC traffic starting from the rule group with the lowest numeric priority setting.
*
* You must specify a unique priority for each rule group that you associate with a single VPC. To make it easier to insert rule groups later, leave space between the numbers, for example, use 101, 200, and so on. You can change the priority setting for a rule group association after you create it.
*
* The allowed values for `Priority` are between 100 and 9900.
*/
public var priority: kotlin.Int? = null
/**
* A list of the tag keys and values that you want to associate with the rule group association.
*/
public var tags: List? = null
/**
* The unique identifier of the VPC that you want to associate with the rule group.
*/
public var vpcId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.route53resolver.model.AssociateFirewallRuleGroupRequest) : this() {
this.creatorRequestId = x.creatorRequestId
this.firewallRuleGroupId = x.firewallRuleGroupId
this.mutationProtection = x.mutationProtection
this.name = x.name
this.priority = x.priority
this.tags = x.tags
this.vpcId = x.vpcId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.route53resolver.model.AssociateFirewallRuleGroupRequest = AssociateFirewallRuleGroupRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy