aws-sdk-bedrockagentcore 1.45.0

AWS SDK for Amazon Bedrock AgentCore
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::start_batch_evaluation::_start_batch_evaluation_input::StartBatchEvaluationInputBuilder;

pub use crate::operation::start_batch_evaluation::_start_batch_evaluation_output::StartBatchEvaluationOutputBuilder;

impl crate::operation::start_batch_evaluation::builders::StartBatchEvaluationInputBuilder {
    /// Sends a request with this input using the given client.
    pub async fn send_with(
        self,
        client: &crate::Client,
    ) -> ::std::result::Result<
        crate::operation::start_batch_evaluation::StartBatchEvaluationOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::start_batch_evaluation::StartBatchEvaluationError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let mut fluent_builder = client.start_batch_evaluation();
        fluent_builder.inner = self;
        fluent_builder.send().await
    }
}
/// Fluent builder constructing a request to `StartBatchEvaluation`.
///
/// <p>Starts a batch evaluation job that evaluates agent performance across multiple sessions. Batch evaluations pull agent traces from CloudWatch Logs or an existing online evaluation configuration and run specified evaluators and insights against them.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct StartBatchEvaluationFluentBuilder {
    handle: ::std::sync::Arc<crate::client::Handle>,
    inner: crate::operation::start_batch_evaluation::builders::StartBatchEvaluationInputBuilder,
    config_override: ::std::option::Option<crate::config::Builder>,
}
impl
    crate::client::customize::internal::CustomizableSend<
        crate::operation::start_batch_evaluation::StartBatchEvaluationOutput,
        crate::operation::start_batch_evaluation::StartBatchEvaluationError,
    > for StartBatchEvaluationFluentBuilder
{
    fn send(
        self,
        config_override: crate::config::Builder,
    ) -> crate::client::customize::internal::BoxFuture<
        crate::client::customize::internal::SendResult<
            crate::operation::start_batch_evaluation::StartBatchEvaluationOutput,
            crate::operation::start_batch_evaluation::StartBatchEvaluationError,
        >,
    > {
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
    }
}
impl StartBatchEvaluationFluentBuilder {
    /// Creates a new `StartBatchEvaluationFluentBuilder`.
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
        Self {
            handle,
            inner: ::std::default::Default::default(),
            config_override: ::std::option::Option::None,
        }
    }
    /// Access the StartBatchEvaluation as a reference.
    pub fn as_input(&self) -> &crate::operation::start_batch_evaluation::builders::StartBatchEvaluationInputBuilder {
        &self.inner
    }
    /// Sends the request and returns the response.
    ///
    /// If an error occurs, an `SdkError` will be returned with additional details that
    /// can be matched against.
    ///
    /// By default, any retryable failures will be retried twice. Retry behavior
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
    /// set when configuring the client.
    pub async fn send(
        self,
    ) -> ::std::result::Result<
        crate::operation::start_batch_evaluation::StartBatchEvaluationOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::start_batch_evaluation::StartBatchEvaluationError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let input = self
            .inner
            .build()
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
        let runtime_plugins = crate::operation::start_batch_evaluation::StartBatchEvaluation::operation_runtime_plugins(
            self.handle.runtime_plugins.clone(),
            &self.handle.conf,
            self.config_override,
        );
        crate::operation::start_batch_evaluation::StartBatchEvaluation::orchestrate(&runtime_plugins, input).await
    }

    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
    pub fn customize(
        self,
    ) -> crate::client::customize::CustomizableOperation<
        crate::operation::start_batch_evaluation::StartBatchEvaluationOutput,
        crate::operation::start_batch_evaluation::StartBatchEvaluationError,
        Self,
    > {
        crate::client::customize::CustomizableOperation::new(self)
    }
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
        self.set_config_override(::std::option::Option::Some(config_override.into()));
        self
    }

    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
        self.config_override = config_override;
        self
    }
    /// <p>The name of the batch evaluation. Must be unique within your account.</p>
    pub fn batch_evaluation_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.batch_evaluation_name(input.into());
        self
    }
    /// <p>The name of the batch evaluation. Must be unique within your account.</p>
    pub fn set_batch_evaluation_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_batch_evaluation_name(input);
        self
    }
    /// <p>The name of the batch evaluation. Must be unique within your account.</p>
    pub fn get_batch_evaluation_name(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_batch_evaluation_name()
    }
    ///
    /// Appends an item to `evaluators`.
    ///
    /// To override the contents of this collection use [`set_evaluators`](Self::set_evaluators).
    ///
    /// <p>The list of evaluators to apply during the batch evaluation. Can include both built-in evaluators and custom evaluators. Maximum of 10 evaluators.</p>
    pub fn evaluators(mut self, input: crate::types::Evaluator) -> Self {
        self.inner = self.inner.evaluators(input);
        self
    }
    /// <p>The list of evaluators to apply during the batch evaluation. Can include both built-in evaluators and custom evaluators. Maximum of 10 evaluators.</p>
    pub fn set_evaluators(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Evaluator>>) -> Self {
        self.inner = self.inner.set_evaluators(input);
        self
    }
    /// <p>The list of evaluators to apply during the batch evaluation. Can include both built-in evaluators and custom evaluators. Maximum of 10 evaluators.</p>
    pub fn get_evaluators(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Evaluator>> {
        self.inner.get_evaluators()
    }
    /// <p>The data source configuration that specifies where to pull agent session traces from for evaluation.</p>
    pub fn data_source_config(mut self, input: crate::types::DataSourceConfig) -> Self {
        self.inner = self.inner.data_source_config(input);
        self
    }
    /// <p>The data source configuration that specifies where to pull agent session traces from for evaluation.</p>
    pub fn set_data_source_config(mut self, input: ::std::option::Option<crate::types::DataSourceConfig>) -> Self {
        self.inner = self.inner.set_data_source_config(input);
        self
    }
    /// <p>The data source configuration that specifies where to pull agent session traces from for evaluation.</p>
    pub fn get_data_source_config(&self) -> &::std::option::Option<crate::types::DataSourceConfig> {
        self.inner.get_data_source_config()
    }
    /// <p>A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error.</p>
    pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.client_token(input.into());
        self
    }
    /// <p>A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error.</p>
    pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_client_token(input);
        self
    }
    /// <p>A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error.</p>
    pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_client_token()
    }
    /// <p>Optional metadata for the evaluation, including session-specific ground truth data and test scenario identifiers.</p>
    pub fn evaluation_metadata(mut self, input: crate::types::EvaluationMetadata) -> Self {
        self.inner = self.inner.evaluation_metadata(input);
        self
    }
    /// <p>Optional metadata for the evaluation, including session-specific ground truth data and test scenario identifiers.</p>
    pub fn set_evaluation_metadata(mut self, input: ::std::option::Option<crate::types::EvaluationMetadata>) -> Self {
        self.inner = self.inner.set_evaluation_metadata(input);
        self
    }
    /// <p>Optional metadata for the evaluation, including session-specific ground truth data and test scenario identifiers.</p>
    pub fn get_evaluation_metadata(&self) -> &::std::option::Option<crate::types::EvaluationMetadata> {
        self.inner.get_evaluation_metadata()
    }
    /// <p>The description of the batch evaluation.</p>
    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.description(input.into());
        self
    }
    /// <p>The description of the batch evaluation.</p>
    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_description(input);
        self
    }
    /// <p>The description of the batch evaluation.</p>
    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_description()
    }
}