// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateRoom`](crate::operation::update_room::builders::UpdateRoomFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`identifier(impl Into<String>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::identifier) / [`set_identifier(Option<String>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::set_identifier):<br>required: **true**<br><p>Identifier of the room to be updated. Currently this must be an ARN.</p><br>
/// - [`name(impl Into<String>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::set_name):<br>required: **false**<br><p>Room name. The value does not need to be unique.</p><br>
/// - [`maximum_message_rate_per_second(i32)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::maximum_message_rate_per_second) / [`set_maximum_message_rate_per_second(Option<i32>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::set_maximum_message_rate_per_second):<br>required: **false**<br><p>Maximum number of messages per second that can be sent to the room (by all clients). Default: 10.</p><br>
/// - [`maximum_message_length(i32)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::maximum_message_length) / [`set_maximum_message_length(Option<i32>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::set_maximum_message_length):<br>required: **false**<br><p>The maximum number of characters in a single message. Messages are expected to be UTF-8 encoded and this limit applies specifically to rune/code-point count, not number of bytes. Default: 500.</p><br>
/// - [`message_review_handler(MessageReviewHandler)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::message_review_handler) / [`set_message_review_handler(Option<MessageReviewHandler>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::set_message_review_handler):<br>required: **false**<br><p>Configuration information for optional review of messages. Specify an empty <code>uri</code> string to disassociate a message review handler from the specified room.</p><br>
/// - [`logging_configuration_identifiers(impl Into<String>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::logging_configuration_identifiers) / [`set_logging_configuration_identifiers(Option<Vec::<String>>)`](crate::operation::update_room::builders::UpdateRoomFluentBuilder::set_logging_configuration_identifiers):<br>required: **false**<br><p>Array of logging-configuration identifiers attached to the room.</p><br>
/// - On success, responds with [`UpdateRoomOutput`](crate::operation::update_room::UpdateRoomOutput) with field(s):
/// - [`arn(Option<String>)`](crate::operation::update_room::UpdateRoomOutput::arn): <p>Room ARN, from the request (if <code>identifier</code> was an ARN).</p>
/// - [`id(Option<String>)`](crate::operation::update_room::UpdateRoomOutput::id): <p>Room ID, generated by the system. This is a relative identifier, the part of the ARN that uniquely identifies the room.</p>
/// - [`name(Option<String>)`](crate::operation::update_room::UpdateRoomOutput::name): <p>Room name, from the request (if specified).</p>
/// - [`create_time(Option<DateTime>)`](crate::operation::update_room::UpdateRoomOutput::create_time): <p>Time when the room was created. This is an ISO 8601 timestamp; <i>note that this is returned as a string</i>.</p>
/// - [`update_time(Option<DateTime>)`](crate::operation::update_room::UpdateRoomOutput::update_time): <p>Time of the room’s last update. This is an ISO 8601 timestamp; <i>note that this is returned as a string</i>.</p>
/// - [`maximum_message_rate_per_second(Option<i32>)`](crate::operation::update_room::UpdateRoomOutput::maximum_message_rate_per_second): <p>Maximum number of messages per second that can be sent to the room (by all clients), from the request (if specified).</p>
/// - [`maximum_message_length(Option<i32>)`](crate::operation::update_room::UpdateRoomOutput::maximum_message_length): <p>Maximum number of characters in a single message, from the request (if specified).</p>
/// - [`message_review_handler(Option<MessageReviewHandler>)`](crate::operation::update_room::UpdateRoomOutput::message_review_handler): <p>Configuration information for optional review of messages.</p>
/// - [`tags(Option<HashMap::<String, String>>)`](crate::operation::update_room::UpdateRoomOutput::tags): <p>Tags attached to the resource. Array of maps, each of the form <code>string:string (key:value)</code>.</p>
/// - [`logging_configuration_identifiers(Option<Vec::<String>>)`](crate::operation::update_room::UpdateRoomOutput::logging_configuration_identifiers): <p>Array of logging configurations attached to the room, from the request (if specified).</p>
/// - On failure, responds with [`SdkError<UpdateRoomError>`](crate::operation::update_room::UpdateRoomError)
pub fn update_room(&self) -> crate::operation::update_room::builders::UpdateRoomFluentBuilder {
crate::operation::update_room::builders::UpdateRoomFluentBuilder::new(self.handle.clone())
}
}