/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the iot-2015-05-28.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.IoT.Model
{
///
/// The output from the DescribeThing operation.
///
public partial class DescribeThingResponse : AmazonWebServiceResponse
{
private Dictionary _attributes = new Dictionary();
private string _billingGroupName;
private string _defaultClientId;
private string _thingArn;
private string _thingId;
private string _thingName;
private string _thingTypeName;
private long? _version;
///
/// Gets and sets the property Attributes.
///
/// The thing attributes.
///
///
public Dictionary Attributes
{
get { return this._attributes; }
set { this._attributes = value; }
}
// Check to see if Attributes property is set
internal bool IsSetAttributes()
{
return this._attributes != null && this._attributes.Count > 0;
}
///
/// Gets and sets the property BillingGroupName.
///
/// The name of the billing group the thing belongs to.
///
///
[AWSProperty(Min=1, Max=128)]
public string BillingGroupName
{
get { return this._billingGroupName; }
set { this._billingGroupName = value; }
}
// Check to see if BillingGroupName property is set
internal bool IsSetBillingGroupName()
{
return this._billingGroupName != null;
}
///
/// Gets and sets the property DefaultClientId.
///
/// The default MQTT client ID. For a typical device, the thing name is also used as the
/// default MQTT client ID. Although we don’t require a mapping between a thing's registry
/// name and its use of MQTT client IDs, certificates, or shadow state, we recommend that
/// you choose a thing name and use it as the MQTT client ID for the registry and the
/// Device Shadow service.
///
///
///
/// This lets you better organize your IoT fleet without removing the flexibility of the
/// underlying device certificate model or shadows.
///
///
public string DefaultClientId
{
get { return this._defaultClientId; }
set { this._defaultClientId = value; }
}
// Check to see if DefaultClientId property is set
internal bool IsSetDefaultClientId()
{
return this._defaultClientId != null;
}
///
/// Gets and sets the property ThingArn.
///
/// The ARN of the thing to describe.
///
///
public string ThingArn
{
get { return this._thingArn; }
set { this._thingArn = value; }
}
// Check to see if ThingArn property is set
internal bool IsSetThingArn()
{
return this._thingArn != null;
}
///
/// Gets and sets the property ThingId.
///
/// The ID of the thing to describe.
///
///
public string ThingId
{
get { return this._thingId; }
set { this._thingId = value; }
}
// Check to see if ThingId property is set
internal bool IsSetThingId()
{
return this._thingId != null;
}
///
/// Gets and sets the property ThingName.
///
/// The name of the thing.
///
///
[AWSProperty(Min=1, Max=128)]
public string ThingName
{
get { return this._thingName; }
set { this._thingName = value; }
}
// Check to see if ThingName property is set
internal bool IsSetThingName()
{
return this._thingName != null;
}
///
/// Gets and sets the property ThingTypeName.
///
/// The thing type name.
///
///
[AWSProperty(Min=1, Max=128)]
public string ThingTypeName
{
get { return this._thingTypeName; }
set { this._thingTypeName = value; }
}
// Check to see if ThingTypeName property is set
internal bool IsSetThingTypeName()
{
return this._thingTypeName != null;
}
///
/// Gets and sets the property Version.
///
/// The current version of the thing record in the registry.
///
///
///
/// To avoid unintentional changes to the information in the registry, you can pass the
/// version information in the expectedVersion
parameter of the UpdateThing
/// and DeleteThing
calls.
///
///
///
public long Version
{
get { return this._version.GetValueOrDefault(); }
set { this._version = value; }
}
// Check to see if Version property is set
internal bool IsSetVersion()
{
return this._version.HasValue;
}
}
}