All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.aws.sdk.kotlin.services.iam.model.GetServiceLastAccessedDetailsRequest.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.iam.model



public class GetServiceLastAccessedDetailsRequest private constructor(builder: Builder) {
    /**
     * The ID of the request generated by the GenerateServiceLastAccessedDetails operation. The `JobId` returned by `GenerateServiceLastAccessedDetail` must be used by the same role within a session, or by the same user when used to call `GetServiceLastAccessedDetail`.
     */
    public val jobId: kotlin.String? = builder.jobId
    /**
     * Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the `Marker` element in the response that you received to indicate where the next call should start.
     */
    public val marker: kotlin.String? = builder.marker
    /**
     * Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the `IsTruncated` response element is `true`.
     *
     * If you do not include this parameter, the number of items defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the `IsTruncated` response element returns `true`, and `Marker` contains a value to include in the subsequent call that tells the service where to continue from.
     */
    public val maxItems: kotlin.Int? = builder.maxItems

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.iam.model.GetServiceLastAccessedDetailsRequest = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("GetServiceLastAccessedDetailsRequest(")
        append("jobId=$jobId,")
        append("marker=$marker,")
        append("maxItems=$maxItems")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = jobId?.hashCode() ?: 0
        result = 31 * result + (marker?.hashCode() ?: 0)
        result = 31 * result + (maxItems ?: 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 GetServiceLastAccessedDetailsRequest

        if (jobId != other.jobId) return false
        if (marker != other.marker) return false
        if (maxItems != other.maxItems) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.iam.model.GetServiceLastAccessedDetailsRequest = Builder(this).apply(block).build()

    public class Builder {
        /**
         * The ID of the request generated by the GenerateServiceLastAccessedDetails operation. The `JobId` returned by `GenerateServiceLastAccessedDetail` must be used by the same role within a session, or by the same user when used to call `GetServiceLastAccessedDetail`.
         */
        public var jobId: kotlin.String? = null
        /**
         * Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the `Marker` element in the response that you received to indicate where the next call should start.
         */
        public var marker: kotlin.String? = null
        /**
         * Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the `IsTruncated` response element is `true`.
         *
         * If you do not include this parameter, the number of items defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the `IsTruncated` response element returns `true`, and `Marker` contains a value to include in the subsequent call that tells the service where to continue from.
         */
        public var maxItems: kotlin.Int? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.iam.model.GetServiceLastAccessedDetailsRequest) : this() {
            this.jobId = x.jobId
            this.marker = x.marker
            this.maxItems = x.maxItems
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.iam.model.GetServiceLastAccessedDetailsRequest = GetServiceLastAccessedDetailsRequest(this)

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy