#[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_channel_created(&self) -> crate::waiters::channel_created::ChannelCreatedFluentBuilder;
fn wait_until_channel_deleted(&self) -> crate::waiters::channel_deleted::ChannelDeletedFluentBuilder;
fn wait_until_channel_running(&self) -> crate::waiters::channel_running::ChannelRunningFluentBuilder;
fn wait_until_channel_stopped(&self) -> crate::waiters::channel_stopped::ChannelStoppedFluentBuilder;
fn wait_until_channel_placement_group_assigned(
&self,
) -> crate::waiters::channel_placement_group_assigned::ChannelPlacementGroupAssignedFluentBuilder;
fn wait_until_channel_placement_group_deleted(
&self,
) -> crate::waiters::channel_placement_group_deleted::ChannelPlacementGroupDeletedFluentBuilder;
fn wait_until_channel_placement_group_unassigned(
&self,
) -> crate::waiters::channel_placement_group_unassigned::ChannelPlacementGroupUnassignedFluentBuilder;
fn wait_until_cluster_created(&self) -> crate::waiters::cluster_created::ClusterCreatedFluentBuilder;
fn wait_until_cluster_deleted(&self) -> crate::waiters::cluster_deleted::ClusterDeletedFluentBuilder;
fn wait_until_input_attached(&self) -> crate::waiters::input_attached::InputAttachedFluentBuilder;
fn wait_until_input_deleted(&self) -> crate::waiters::input_deleted::InputDeletedFluentBuilder;
fn wait_until_input_detached(&self) -> crate::waiters::input_detached::InputDetachedFluentBuilder;
fn wait_until_multiplex_created(&self) -> crate::waiters::multiplex_created::MultiplexCreatedFluentBuilder;
fn wait_until_multiplex_deleted(&self) -> crate::waiters::multiplex_deleted::MultiplexDeletedFluentBuilder;
fn wait_until_multiplex_running(&self) -> crate::waiters::multiplex_running::MultiplexRunningFluentBuilder;
fn wait_until_multiplex_stopped(&self) -> crate::waiters::multiplex_stopped::MultiplexStoppedFluentBuilder;
fn wait_until_node_deregistered(&self) -> crate::waiters::node_deregistered::NodeDeregisteredFluentBuilder;
fn wait_until_node_registered(&self) -> crate::waiters::node_registered::NodeRegisteredFluentBuilder;
fn wait_until_signal_map_created(&self) -> crate::waiters::signal_map_created::SignalMapCreatedFluentBuilder;
fn wait_until_signal_map_monitor_deleted(&self) -> crate::waiters::signal_map_monitor_deleted::SignalMapMonitorDeletedFluentBuilder;
fn wait_until_signal_map_monitor_deployed(&self) -> crate::waiters::signal_map_monitor_deployed::SignalMapMonitorDeployedFluentBuilder;
fn wait_until_signal_map_updated(&self) -> crate::waiters::signal_map_updated::SignalMapUpdatedFluentBuilder;
}
impl Waiters for Client {
fn wait_until_channel_created(&self) -> crate::waiters::channel_created::ChannelCreatedFluentBuilder {
crate::waiters::channel_created::ChannelCreatedFluentBuilder::new(self.handle.clone())
}
fn wait_until_channel_deleted(&self) -> crate::waiters::channel_deleted::ChannelDeletedFluentBuilder {
crate::waiters::channel_deleted::ChannelDeletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_channel_running(&self) -> crate::waiters::channel_running::ChannelRunningFluentBuilder {
crate::waiters::channel_running::ChannelRunningFluentBuilder::new(self.handle.clone())
}
fn wait_until_channel_stopped(&self) -> crate::waiters::channel_stopped::ChannelStoppedFluentBuilder {
crate::waiters::channel_stopped::ChannelStoppedFluentBuilder::new(self.handle.clone())
}
fn wait_until_channel_placement_group_assigned(
&self,
) -> crate::waiters::channel_placement_group_assigned::ChannelPlacementGroupAssignedFluentBuilder {
crate::waiters::channel_placement_group_assigned::ChannelPlacementGroupAssignedFluentBuilder::new(self.handle.clone())
}
fn wait_until_channel_placement_group_deleted(
&self,
) -> crate::waiters::channel_placement_group_deleted::ChannelPlacementGroupDeletedFluentBuilder {
crate::waiters::channel_placement_group_deleted::ChannelPlacementGroupDeletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_channel_placement_group_unassigned(
&self,
) -> crate::waiters::channel_placement_group_unassigned::ChannelPlacementGroupUnassignedFluentBuilder {
crate::waiters::channel_placement_group_unassigned::ChannelPlacementGroupUnassignedFluentBuilder::new(self.handle.clone())
}
fn wait_until_cluster_created(&self) -> crate::waiters::cluster_created::ClusterCreatedFluentBuilder {
crate::waiters::cluster_created::ClusterCreatedFluentBuilder::new(self.handle.clone())
}
fn wait_until_cluster_deleted(&self) -> crate::waiters::cluster_deleted::ClusterDeletedFluentBuilder {
crate::waiters::cluster_deleted::ClusterDeletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_input_attached(&self) -> crate::waiters::input_attached::InputAttachedFluentBuilder {
crate::waiters::input_attached::InputAttachedFluentBuilder::new(self.handle.clone())
}
fn wait_until_input_deleted(&self) -> crate::waiters::input_deleted::InputDeletedFluentBuilder {
crate::waiters::input_deleted::InputDeletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_input_detached(&self) -> crate::waiters::input_detached::InputDetachedFluentBuilder {
crate::waiters::input_detached::InputDetachedFluentBuilder::new(self.handle.clone())
}
fn wait_until_multiplex_created(&self) -> crate::waiters::multiplex_created::MultiplexCreatedFluentBuilder {
crate::waiters::multiplex_created::MultiplexCreatedFluentBuilder::new(self.handle.clone())
}
fn wait_until_multiplex_deleted(&self) -> crate::waiters::multiplex_deleted::MultiplexDeletedFluentBuilder {
crate::waiters::multiplex_deleted::MultiplexDeletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_multiplex_running(&self) -> crate::waiters::multiplex_running::MultiplexRunningFluentBuilder {
crate::waiters::multiplex_running::MultiplexRunningFluentBuilder::new(self.handle.clone())
}
fn wait_until_multiplex_stopped(&self) -> crate::waiters::multiplex_stopped::MultiplexStoppedFluentBuilder {
crate::waiters::multiplex_stopped::MultiplexStoppedFluentBuilder::new(self.handle.clone())
}
fn wait_until_node_deregistered(&self) -> crate::waiters::node_deregistered::NodeDeregisteredFluentBuilder {
crate::waiters::node_deregistered::NodeDeregisteredFluentBuilder::new(self.handle.clone())
}
fn wait_until_node_registered(&self) -> crate::waiters::node_registered::NodeRegisteredFluentBuilder {
crate::waiters::node_registered::NodeRegisteredFluentBuilder::new(self.handle.clone())
}
fn wait_until_signal_map_created(&self) -> crate::waiters::signal_map_created::SignalMapCreatedFluentBuilder {
crate::waiters::signal_map_created::SignalMapCreatedFluentBuilder::new(self.handle.clone())
}
fn wait_until_signal_map_monitor_deleted(&self) -> crate::waiters::signal_map_monitor_deleted::SignalMapMonitorDeletedFluentBuilder {
crate::waiters::signal_map_monitor_deleted::SignalMapMonitorDeletedFluentBuilder::new(self.handle.clone())
}
fn wait_until_signal_map_monitor_deployed(&self) -> crate::waiters::signal_map_monitor_deployed::SignalMapMonitorDeployedFluentBuilder {
crate::waiters::signal_map_monitor_deployed::SignalMapMonitorDeployedFluentBuilder::new(self.handle.clone())
}
fn wait_until_signal_map_updated(&self) -> crate::waiters::signal_map_updated::SignalMapUpdatedFluentBuilder {
crate::waiters::signal_map_updated::SignalMapUpdatedFluentBuilder::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 accept_input_device_transfer;
mod batch_delete;
mod batch_start;
mod batch_stop;
mod batch_update_schedule;
mod cancel_input_device_transfer;
mod claim_device;
mod create_channel;
mod create_channel_placement_group;
mod create_cloud_watch_alarm_template;
mod create_cloud_watch_alarm_template_group;
mod create_cluster;
mod create_event_bridge_rule_template;
mod create_event_bridge_rule_template_group;
mod create_input;
mod create_input_security_group;
mod create_multiplex;
mod create_multiplex_program;
mod create_network;
mod create_node;
mod create_node_registration_script;
mod create_partner_input;
mod create_signal_map;
mod create_tags;
pub mod customize;
mod delete_channel;
mod delete_channel_placement_group;
mod delete_cloud_watch_alarm_template;
mod delete_cloud_watch_alarm_template_group;
mod delete_cluster;
mod delete_event_bridge_rule_template;
mod delete_event_bridge_rule_template_group;
mod delete_input;
mod delete_input_security_group;
mod delete_multiplex;
mod delete_multiplex_program;
mod delete_network;
mod delete_node;
mod delete_reservation;
mod delete_schedule;
mod delete_signal_map;
mod delete_tags;
mod describe_account_configuration;
mod describe_channel;
mod describe_channel_placement_group;
mod describe_cluster;
mod describe_input;
mod describe_input_device;
mod describe_input_device_thumbnail;
mod describe_input_security_group;
mod describe_multiplex;
mod describe_multiplex_program;
mod describe_network;
mod describe_node;
mod describe_offering;
mod describe_reservation;
mod describe_schedule;
mod describe_thumbnails;
mod get_cloud_watch_alarm_template;
mod get_cloud_watch_alarm_template_group;
mod get_event_bridge_rule_template;
mod get_event_bridge_rule_template_group;
mod get_signal_map;
mod list_channel_placement_groups;
mod list_channels;
mod list_cloud_watch_alarm_template_groups;
mod list_cloud_watch_alarm_templates;
mod list_clusters;
mod list_event_bridge_rule_template_groups;
mod list_event_bridge_rule_templates;
mod list_input_device_transfers;
mod list_input_devices;
mod list_input_security_groups;
mod list_inputs;
mod list_multiplex_programs;
mod list_multiplexes;
mod list_networks;
mod list_nodes;
mod list_offerings;
mod list_reservations;
mod list_signal_maps;
mod list_tags_for_resource;
mod list_versions;
mod purchase_offering;
mod reboot_input_device;
mod reject_input_device_transfer;
mod restart_channel_pipelines;
mod start_channel;
mod start_delete_monitor_deployment;
mod start_input_device;
mod start_input_device_maintenance_window;
mod start_monitor_deployment;
mod start_multiplex;
mod start_update_signal_map;
mod stop_channel;
mod stop_input_device;
mod stop_multiplex;
mod transfer_input_device;
mod update_account_configuration;
mod update_channel;
mod update_channel_class;
mod update_channel_placement_group;
mod update_cloud_watch_alarm_template;
mod update_cloud_watch_alarm_template_group;
mod update_cluster;
mod update_event_bridge_rule_template;
mod update_event_bridge_rule_template_group;
mod update_input;
mod update_input_device;
mod update_input_security_group;
mod update_multiplex;
mod update_multiplex_program;
mod update_network;
mod update_node;
mod update_node_state;
mod update_reservation;