1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// 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): <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>
    ///   - [`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): <p>The name of the thing type.</p>
    ///   - [`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): <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>
    ///   - [`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): <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>
    ///   - [`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): <p>Remove a thing type association. If <b>true</b>, the association is removed.</p>
    /// - 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())
    }
}