
commonMain.aws.sdk.kotlin.services.route53resolver.model.PutResolverQueryLogConfigPolicyRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.route53resolver.model
public class PutResolverQueryLogConfigPolicyRequest private constructor(builder: Builder) {
/**
* The Amazon Resource Name (ARN) of the account that you want to share rules with.
*/
public val arn: kotlin.String? = builder.arn
/**
* An Identity and Access Management policy statement that lists the query logging configurations that you want to share with another Amazon Web Services account and the operations that you want the account to be able to perform. You can specify the following operations in the `Actions` section of the statement:
* + `route53resolver:AssociateResolverQueryLogConfig`
* + `route53resolver:DisassociateResolverQueryLogConfig`
* + `route53resolver:ListResolverQueryLogConfigs`
*
* In the `Resource` section of the statement, you specify the ARNs for the query logging configurations that you want to share with the account that you specified in `Arn`.
*/
public val resolverQueryLogConfigPolicy: kotlin.String? = builder.resolverQueryLogConfigPolicy
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.route53resolver.model.PutResolverQueryLogConfigPolicyRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("PutResolverQueryLogConfigPolicyRequest(")
append("arn=$arn,")
append("resolverQueryLogConfigPolicy=$resolverQueryLogConfigPolicy")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = arn?.hashCode() ?: 0
result = 31 * result + (resolverQueryLogConfigPolicy?.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 PutResolverQueryLogConfigPolicyRequest
if (arn != other.arn) return false
if (resolverQueryLogConfigPolicy != other.resolverQueryLogConfigPolicy) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.route53resolver.model.PutResolverQueryLogConfigPolicyRequest = Builder(this).apply(block).build()
public class Builder {
/**
* The Amazon Resource Name (ARN) of the account that you want to share rules with.
*/
public var arn: kotlin.String? = null
/**
* An Identity and Access Management policy statement that lists the query logging configurations that you want to share with another Amazon Web Services account and the operations that you want the account to be able to perform. You can specify the following operations in the `Actions` section of the statement:
* + `route53resolver:AssociateResolverQueryLogConfig`
* + `route53resolver:DisassociateResolverQueryLogConfig`
* + `route53resolver:ListResolverQueryLogConfigs`
*
* In the `Resource` section of the statement, you specify the ARNs for the query logging configurations that you want to share with the account that you specified in `Arn`.
*/
public var resolverQueryLogConfigPolicy: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.route53resolver.model.PutResolverQueryLogConfigPolicyRequest) : this() {
this.arn = x.arn
this.resolverQueryLogConfigPolicy = x.resolverQueryLogConfigPolicy
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.route53resolver.model.PutResolverQueryLogConfigPolicyRequest = PutResolverQueryLogConfigPolicyRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy