1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`DescribeDevice`](crate::operation::describe_device::builders::DescribeDeviceFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`device_id(impl Into<String>)`](crate::operation::describe_device::builders::DescribeDeviceFluentBuilder::device_id) / [`set_device_id(Option<String>)`](crate::operation::describe_device::builders::DescribeDeviceFluentBuilder::set_device_id):<br>required: **true**<br><p>The device's ID.</p><br>
    /// - On success, responds with [`DescribeDeviceOutput`](crate::operation::describe_device::DescribeDeviceOutput) with field(s):
    ///   - [`device_id(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::device_id): <p>The device's ID.</p>
    ///   - [`name(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::name): <p>The device's name.</p>
    ///   - [`arn(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::arn): <p>The device's ARN.</p>
    ///   - [`description(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::description): <p>The device's description.</p>
    ///   - [`r#type(Option<DeviceType>)`](crate::operation::describe_device::DescribeDeviceOutput::type): <p>The device's type.</p>
    ///   - [`device_connection_status(Option<DeviceConnectionStatus>)`](crate::operation::describe_device::DescribeDeviceOutput::device_connection_status): <p>The device's connection status.</p>
    ///   - [`created_time(Option<DateTime>)`](crate::operation::describe_device::DescribeDeviceOutput::created_time): <p>When the device was created.</p>
    ///   - [`provisioning_status(Option<DeviceStatus>)`](crate::operation::describe_device::DescribeDeviceOutput::provisioning_status): <p>The device's provisioning status.</p>
    ///   - [`latest_software(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::latest_software): <p>The latest software version available for the device.</p>
    ///   - [`current_software(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::current_software): <p>The device's current software version.</p>
    ///   - [`serial_number(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::serial_number): <p>The device's serial number.</p>
    ///   - [`tags(Option<HashMap::<String, String>>)`](crate::operation::describe_device::DescribeDeviceOutput::tags): <p>The device's tags.</p>
    ///   - [`networking_configuration(Option<NetworkPayload>)`](crate::operation::describe_device::DescribeDeviceOutput::networking_configuration): <p>The device's networking configuration.</p>
    ///   - [`current_networking_status(Option<NetworkStatus>)`](crate::operation::describe_device::DescribeDeviceOutput::current_networking_status): <p>The device's networking status.</p>
    ///   - [`lease_expiration_time(Option<DateTime>)`](crate::operation::describe_device::DescribeDeviceOutput::lease_expiration_time): <p>The device's lease expiration time.</p>
    ///   - [`alternate_softwares(Option<Vec::<AlternateSoftwareMetadata>>)`](crate::operation::describe_device::DescribeDeviceOutput::alternate_softwares): <p>Beta software releases available for the device.</p>
    ///   - [`latest_alternate_software(Option<String>)`](crate::operation::describe_device::DescribeDeviceOutput::latest_alternate_software): <p>The most recent beta software release.</p>
    ///   - [`brand(Option<DeviceBrand>)`](crate::operation::describe_device::DescribeDeviceOutput::brand): <p>The device's maker.</p>
    ///   - [`latest_device_job(Option<LatestDeviceJob>)`](crate::operation::describe_device::DescribeDeviceOutput::latest_device_job): <p>A device's latest job. Includes the target image version, and the job status.</p>
    ///   - [`device_aggregated_status(Option<DeviceAggregatedStatus>)`](crate::operation::describe_device::DescribeDeviceOutput::device_aggregated_status): <p>A device's aggregated status. Including the device's connection status, provisioning status, and lease status.</p>
    /// - On failure, responds with [`SdkError<DescribeDeviceError>`](crate::operation::describe_device::DescribeDeviceError)
    pub fn describe_device(&self) -> crate::operation::describe_device::builders::DescribeDeviceFluentBuilder {
        crate::operation::describe_device::builders::DescribeDeviceFluentBuilder::new(self.handle.clone())
    }
}