// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateNodeState`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`cluster_id(impl Into<String>)`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::cluster_id) / [`set_cluster_id(Option<String>)`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::set_cluster_id):<br>required: **true**<br>The ID of the cluster<br>
/// - [`node_id(impl Into<String>)`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::node_id) / [`set_node_id(Option<String>)`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::set_node_id):<br>required: **true**<br>The ID of the node.<br>
/// - [`state(UpdateNodeStateShape)`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::state) / [`set_state(Option<UpdateNodeStateShape>)`](crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::set_state):<br>required: **false**<br>The state to apply to the Node. Set to ACTIVE (COMMISSIONED) to indicate that the Node is deployable. MediaLive Anywhere will consider this node it needs a Node to run a Channel on, or when it needs a Node to promote from a backup node to an active node. Set to DRAINING to isolate the Node so that MediaLive Anywhere won't use it.<br>
/// - On success, responds with [`UpdateNodeStateOutput`](crate::operation::update_node_state::UpdateNodeStateOutput) with field(s):
/// - [`arn(Option<String>)`](crate::operation::update_node_state::UpdateNodeStateOutput::arn): The ARN of the Node. It is automatically assigned when the Node is created.
/// - [`channel_placement_groups(Option<Vec::<String>>)`](crate::operation::update_node_state::UpdateNodeStateOutput::channel_placement_groups): An array of IDs. Each ID is one ChannelPlacementGroup that is associated with this Node. Empty if the Node is not yet associated with any groups.
/// - [`cluster_id(Option<String>)`](crate::operation::update_node_state::UpdateNodeStateOutput::cluster_id): The ID of the Cluster that the Node belongs to.
/// - [`connection_state(Option<NodeConnectionState>)`](crate::operation::update_node_state::UpdateNodeStateOutput::connection_state): The current connection state of the Node.
/// - [`id(Option<String>)`](crate::operation::update_node_state::UpdateNodeStateOutput::id): The unique ID of the Node. Unique in the Cluster. The ID is the resource-id portion of the ARN.
/// - [`instance_arn(Option<String>)`](crate::operation::update_node_state::UpdateNodeStateOutput::instance_arn): The ARN of the EC2 instance hosting the Node.
/// - [`name(Option<String>)`](crate::operation::update_node_state::UpdateNodeStateOutput::name): The name that you specified for the Node.
/// - [`node_interface_mappings(Option<Vec::<NodeInterfaceMapping>>)`](crate::operation::update_node_state::UpdateNodeStateOutput::node_interface_mappings): Documentation update needed
/// - [`role(Option<NodeRole>)`](crate::operation::update_node_state::UpdateNodeStateOutput::role): The initial role current role of the Node in the Cluster. ACTIVE means the Node is available for encoding. BACKUP means the Node is a redundant Node and might get used if an ACTIVE Node fails.
/// - [`state(Option<NodeState>)`](crate::operation::update_node_state::UpdateNodeStateOutput::state): The current state of the Node.
/// - On failure, responds with [`SdkError<UpdateNodeStateError>`](crate::operation::update_node_state::UpdateNodeStateError)
pub fn update_node_state(&self) -> crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder {
crate::operation::update_node_state::builders::UpdateNodeStateFluentBuilder::new(self.handle.clone())
}
}