#[derive(Debug)]
pub(crate) struct Handle {
pub(crate) conf: crate::Config,
#[allow(dead_code)] pub(crate) runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
}
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct Client {
handle: ::std::sync::Arc<Handle>,
}
impl Client {
#[track_caller]
pub fn from_conf(conf: crate::Config) -> Self {
let handle = Handle {
conf: conf.clone(),
runtime_plugins: crate::config::base_client_runtime_plugins(conf),
};
if let Err(err) = Self::validate_config(&handle) {
panic!("Invalid client configuration: {err}");
}
Self {
handle: ::std::sync::Arc::new(handle),
}
}
pub fn config(&self) -> &crate::Config {
&self.handle.conf
}
fn validate_config(handle: &Handle) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
let mut cfg = ::aws_smithy_types::config_bag::ConfigBag::base();
handle
.runtime_plugins
.apply_client_configuration(&mut cfg)?
.validate_base_client_config(&cfg)?;
Ok(())
}
}
pub trait Waiters {
fn wait_until_bot_available(&self) -> crate::waiters::bot_available::BotAvailableFluentBuilder;
fn wait_until_bot_alias_available(&self) -> crate::waiters::bot_alias_available::BotAliasAvailableFluentBuilder;
fn wait_until_bot_locale_built(&self) -> crate::waiters::bot_locale_built::BotLocaleBuiltFluentBuilder;
fn wait_until_bot_locale_created(&self) -> crate::waiters::bot_locale_created::BotLocaleCreatedFluentBuilder;
fn wait_until_bot_locale_express_testing_available(
&self,
) -> crate::waiters::bot_locale_express_testing_available::BotLocaleExpressTestingAvailableFluentBuilder;
fn wait_until_bot_version_available(&self) -> crate::waiters::bot_version_available::BotVersionAvailableFluentBuilder;
fn wait_until_bot_export_completed(&self) -> crate::waiters::bot_export_completed::BotExportCompletedFluentBuilder;
fn wait_until_bot_import_completed(&self) -> crate::waiters::bot_import_completed::BotImportCompletedFluentBuilder;
}
impl Waiters for Client {
fn wait_until_bot_available(&self) -> crate::waiters::bot_available::BotAvailableFluentBuilder {
crate::waiters::bot_available::BotAvailableFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_alias_available(&self) -> crate::waiters::bot_alias_available::BotAliasAvailableFluentBuilder {
crate::waiters::bot_alias_available::BotAliasAvailableFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_locale_built(&self) -> crate::waiters::bot_locale_built::BotLocaleBuiltFluentBuilder {
crate::waiters::bot_locale_built::BotLocaleBuiltFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_locale_created(&self) -> crate::waiters::bot_locale_created::BotLocaleCreatedFluentBuilder {
crate::waiters::bot_locale_created::BotLocaleCreatedFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_locale_express_testing_available(
&self,
) -> crate::waiters::bot_locale_express_testing_available::BotLocaleExpressTestingAvailableFluentBuilder {
crate::waiters::bot_locale_express_testing_available::BotLocaleExpressTestingAvailableFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_version_available(&self) -> crate::waiters::bot_version_available::BotVersionAvailableFluentBuilder {
crate::waiters::bot_version_available::BotVersionAvailableFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_export_completed(&self) -> crate::waiters::bot_export_completed::BotExportCompletedFluentBuilder {
crate::waiters::bot_export_completed::BotExportCompletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_bot_import_completed(&self) -> crate::waiters::bot_import_completed::BotImportCompletedFluentBuilder {
crate::waiters::bot_import_completed::BotImportCompletedFluentBuilder::new(self.handle.clone())
}
}
impl Client {
#[track_caller]
pub fn new(sdk_config: &::aws_types::sdk_config::SdkConfig) -> Self {
Self::from_conf(sdk_config.into())
}
}
mod batch_create_custom_vocabulary_item;
mod batch_delete_custom_vocabulary_item;
mod batch_update_custom_vocabulary_item;
mod build_bot_locale;
mod create_bot;
mod create_bot_alias;
mod create_bot_locale;
mod create_bot_replica;
mod create_bot_version;
mod create_export;
mod create_intent;
mod create_resource_policy;
mod create_resource_policy_statement;
mod create_slot;
mod create_slot_type;
mod create_test_set_discrepancy_report;
mod create_upload_url;
pub mod customize;
mod delete_bot;
mod delete_bot_alias;
mod delete_bot_analyzer_recommendation;
mod delete_bot_locale;
mod delete_bot_replica;
mod delete_bot_version;
mod delete_custom_vocabulary;
mod delete_export;
mod delete_import;
mod delete_intent;
mod delete_resource_policy;
mod delete_resource_policy_statement;
mod delete_slot;
mod delete_slot_type;
mod delete_test_set;
mod delete_utterances;
mod describe_bot;
mod describe_bot_alias;
mod describe_bot_analyzer_recommendation;
mod describe_bot_locale;
mod describe_bot_recommendation;
mod describe_bot_replica;
mod describe_bot_resource_generation;
mod describe_bot_version;
mod describe_custom_vocabulary_metadata;
mod describe_export;
mod describe_import;
mod describe_intent;
mod describe_resource_policy;
mod describe_slot;
mod describe_slot_type;
mod describe_test_execution;
mod describe_test_set;
mod describe_test_set_discrepancy_report;
mod describe_test_set_generation;
mod generate_bot_element;
mod get_test_execution_artifacts_url;
mod list_aggregated_utterances;
mod list_bot_alias_replicas;
mod list_bot_aliases;
mod list_bot_analyzer_history;
mod list_bot_locales;
mod list_bot_recommendations;
mod list_bot_replicas;
mod list_bot_resource_generations;
mod list_bot_version_replicas;
mod list_bot_versions;
mod list_bots;
mod list_built_in_intents;
mod list_built_in_slot_types;
mod list_custom_vocabulary_items;
mod list_exports;
mod list_imports;
mod list_intent_metrics;
mod list_intent_paths;
mod list_intent_stage_metrics;
mod list_intents;
mod list_recommended_intents;
mod list_session_analytics_data;
mod list_session_metrics;
mod list_slot_types;
mod list_slots;
mod list_tags_for_resource;
mod list_test_execution_result_items;
mod list_test_executions;
mod list_test_set_records;
mod list_test_sets;
mod list_utterance_analytics_data;
mod list_utterance_metrics;
mod search_associated_transcripts;
mod start_bot_analyzer;
mod start_bot_recommendation;
mod start_bot_resource_generation;
mod start_import;
mod start_test_execution;
mod start_test_set_generation;
mod stop_bot_analyzer;
mod stop_bot_recommendation;
mod tag_resource;
mod untag_resource;
mod update_bot;
mod update_bot_alias;
mod update_bot_locale;
mod update_bot_recommendation;
mod update_export;
mod update_intent;
mod update_resource_policy;
mod update_slot;
mod update_slot_type;
mod update_test_set;