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

commonMain.aws.sdk.kotlin.services.bedrockagent.model.UpdateAgentActionGroupRequest.kt Maven / Gradle / Ivy

There is a newer version: 1.3.77
Show newest version
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.bedrockagent.model

import aws.smithy.kotlin.runtime.SdkDsl

public class UpdateAgentActionGroupRequest private constructor(builder: Builder) {
    /**
     * The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.
     */
    public val actionGroupExecutor: aws.sdk.kotlin.services.bedrockagent.model.ActionGroupExecutor? = builder.actionGroupExecutor
    /**
     * The unique identifier of the action group.
     */
    public val actionGroupId: kotlin.String? = builder.actionGroupId
    /**
     * Specifies a new name for the action group.
     */
    public val actionGroupName: kotlin.String? = builder.actionGroupName
    /**
     * Specifies whether the action group is available for the agent to invoke or not when sending an [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html) request.
     */
    public val actionGroupState: aws.sdk.kotlin.services.bedrockagent.model.ActionGroupState? = builder.actionGroupState
    /**
     * The unique identifier of the agent for which to update the action group.
     */
    public val agentId: kotlin.String? = builder.agentId
    /**
     * The unique identifier of the agent version for which to update the action group.
     */
    public val agentVersion: kotlin.String? = builder.agentVersion
    /**
     * Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema. For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html).
     */
    public val apiSchema: aws.sdk.kotlin.services.bedrockagent.model.ApiSchema? = builder.apiSchema
    /**
     * Specifies a new name for the action group.
     */
    public val description: kotlin.String? = builder.description
    /**
     * Contains details about the function schema for the action group or the JSON or YAML-formatted payload defining the schema.
     */
    public val functionSchema: aws.sdk.kotlin.services.bedrockagent.model.FunctionSchema? = builder.functionSchema
    /**
     * To allow your agent to request the user for additional information when trying to complete a task, set this field to `AMAZON.UserInput`. You must leave the `description`, `apiSchema`, and `actionGroupExecutor` fields blank for this action group.
     *
     * During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an [Observation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Observation.html) reprompting the user for more information.
     */
    public val parentActionGroupSignature: aws.sdk.kotlin.services.bedrockagent.model.ActionGroupSignature? = builder.parentActionGroupSignature

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

    override fun toString(): kotlin.String = buildString {
        append("UpdateAgentActionGroupRequest(")
        append("actionGroupExecutor=$actionGroupExecutor,")
        append("actionGroupId=$actionGroupId,")
        append("actionGroupName=$actionGroupName,")
        append("actionGroupState=$actionGroupState,")
        append("agentId=$agentId,")
        append("agentVersion=$agentVersion,")
        append("apiSchema=$apiSchema,")
        append("description=$description,")
        append("functionSchema=$functionSchema,")
        append("parentActionGroupSignature=$parentActionGroupSignature")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = actionGroupExecutor?.hashCode() ?: 0
        result = 31 * result + (actionGroupId?.hashCode() ?: 0)
        result = 31 * result + (actionGroupName?.hashCode() ?: 0)
        result = 31 * result + (actionGroupState?.hashCode() ?: 0)
        result = 31 * result + (agentId?.hashCode() ?: 0)
        result = 31 * result + (agentVersion?.hashCode() ?: 0)
        result = 31 * result + (apiSchema?.hashCode() ?: 0)
        result = 31 * result + (description?.hashCode() ?: 0)
        result = 31 * result + (functionSchema?.hashCode() ?: 0)
        result = 31 * result + (parentActionGroupSignature?.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 UpdateAgentActionGroupRequest

        if (actionGroupExecutor != other.actionGroupExecutor) return false
        if (actionGroupId != other.actionGroupId) return false
        if (actionGroupName != other.actionGroupName) return false
        if (actionGroupState != other.actionGroupState) return false
        if (agentId != other.agentId) return false
        if (agentVersion != other.agentVersion) return false
        if (apiSchema != other.apiSchema) return false
        if (description != other.description) return false
        if (functionSchema != other.functionSchema) return false
        if (parentActionGroupSignature != other.parentActionGroupSignature) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.
         */
        public var actionGroupExecutor: aws.sdk.kotlin.services.bedrockagent.model.ActionGroupExecutor? = null
        /**
         * The unique identifier of the action group.
         */
        public var actionGroupId: kotlin.String? = null
        /**
         * Specifies a new name for the action group.
         */
        public var actionGroupName: kotlin.String? = null
        /**
         * Specifies whether the action group is available for the agent to invoke or not when sending an [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html) request.
         */
        public var actionGroupState: aws.sdk.kotlin.services.bedrockagent.model.ActionGroupState? = null
        /**
         * The unique identifier of the agent for which to update the action group.
         */
        public var agentId: kotlin.String? = null
        /**
         * The unique identifier of the agent version for which to update the action group.
         */
        public var agentVersion: kotlin.String? = null
        /**
         * Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema. For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-api-schema.html).
         */
        public var apiSchema: aws.sdk.kotlin.services.bedrockagent.model.ApiSchema? = null
        /**
         * Specifies a new name for the action group.
         */
        public var description: kotlin.String? = null
        /**
         * Contains details about the function schema for the action group or the JSON or YAML-formatted payload defining the schema.
         */
        public var functionSchema: aws.sdk.kotlin.services.bedrockagent.model.FunctionSchema? = null
        /**
         * To allow your agent to request the user for additional information when trying to complete a task, set this field to `AMAZON.UserInput`. You must leave the `description`, `apiSchema`, and `actionGroupExecutor` fields blank for this action group.
         *
         * During orchestration, if your agent determines that it needs to invoke an API in an action group, but doesn't have enough information to complete the API request, it will invoke this action group instead and return an [Observation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Observation.html) reprompting the user for more information.
         */
        public var parentActionGroupSignature: aws.sdk.kotlin.services.bedrockagent.model.ActionGroupSignature? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.bedrockagent.model.UpdateAgentActionGroupRequest) : this() {
            this.actionGroupExecutor = x.actionGroupExecutor
            this.actionGroupId = x.actionGroupId
            this.actionGroupName = x.actionGroupName
            this.actionGroupState = x.actionGroupState
            this.agentId = x.agentId
            this.agentVersion = x.agentVersion
            this.apiSchema = x.apiSchema
            this.description = x.description
            this.functionSchema = x.functionSchema
            this.parentActionGroupSignature = x.parentActionGroupSignature
        }

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy