1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`UpdateThing`](crate::operation::update_thing::builders::UpdateThingFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`thing_name(impl Into<String>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::thing_name) / [`set_thing_name(Option<String>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::set_thing_name):<br>required: **true**<br><p>The name of the thing to update.</p> <p>You can't change a thing's name. To change a thing's name, you must create a new thing, give it the new name, and then delete the old thing.</p><br>
    ///   - [`thing_type_name(impl Into<String>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::thing_type_name) / [`set_thing_type_name(Option<String>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::set_thing_type_name):<br>required: **false**<br><p>The name of the thing type.</p><br>
    ///   - [`attribute_payload(AttributePayload)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::attribute_payload) / [`set_attribute_payload(Option<AttributePayload>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::set_attribute_payload):<br>required: **false**<br><p>A list of thing attributes, a JSON string containing name-value pairs. For example:</p> <p><code>{\"attributes\":{\"name1\":\"value2\"}}</code></p> <p>This data is used to add new attributes or update existing attributes.</p><br>
    ///   - [`expected_version(i64)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::expected_version) / [`set_expected_version(Option<i64>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::set_expected_version):<br>required: **false**<br><p>The expected version of the thing record in the registry. If the version of the record in the registry does not match the expected version specified in the request, the <code>UpdateThing</code> request is rejected with a <code>VersionConflictException</code>.</p><br>
    ///   - [`remove_thing_type(bool)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::remove_thing_type) / [`set_remove_thing_type(Option<bool>)`](crate::operation::update_thing::builders::UpdateThingFluentBuilder::set_remove_thing_type):<br>required: **false**<br><p>Remove a thing type association. If <b>true</b>, the association is removed.</p><br>
    /// - On success, responds with [`UpdateThingOutput`](crate::operation::update_thing::UpdateThingOutput)
    /// - On failure, responds with [`SdkError<UpdateThingError>`](crate::operation::update_thing::UpdateThingError)
    pub fn update_thing(&self) -> crate::operation::update_thing::builders::UpdateThingFluentBuilder {
        crate::operation::update_thing::builders::UpdateThingFluentBuilder::new(self.handle.clone())
    }
}