/*
* 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 iotwireless-2020-11-22.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.IoTWireless.Model
{
///
/// LoRaWANDeviceProfile object.
///
public partial class LoRaWANDeviceProfile
{
private int? _classBTimeout;
private int? _classCTimeout;
private List _factoryPresetFreqsList = new List();
private string _macVersion;
private int? _maxDutyCycle;
private int? _maxEirp;
private int? _pingSlotDr;
private int? _pingSlotFreq;
private int? _pingSlotPeriod;
private string _regParamsRevision;
private string _rfRegion;
private int? _rxDataRate2;
private int? _rxDelay1;
private int? _rxDrOffset1;
private int? _rxFreq2;
private bool? _supports32BitFCnt;
private bool? _supportsClassB;
private bool? _supportsClassC;
private bool? _supportsJoin;
///
/// Gets and sets the property ClassBTimeout.
///
/// The ClassBTimeout value.
///
///
[AWSProperty(Min=0, Max=1000)]
public int ClassBTimeout
{
get { return this._classBTimeout.GetValueOrDefault(); }
set { this._classBTimeout = value; }
}
// Check to see if ClassBTimeout property is set
internal bool IsSetClassBTimeout()
{
return this._classBTimeout.HasValue;
}
///
/// Gets and sets the property ClassCTimeout.
///
/// The ClassCTimeout value.
///
///
[AWSProperty(Min=0, Max=1000)]
public int ClassCTimeout
{
get { return this._classCTimeout.GetValueOrDefault(); }
set { this._classCTimeout = value; }
}
// Check to see if ClassCTimeout property is set
internal bool IsSetClassCTimeout()
{
return this._classCTimeout.HasValue;
}
///
/// Gets and sets the property FactoryPresetFreqsList.
///
/// The list of values that make up the FactoryPresetFreqs value.
///
///
[AWSProperty(Min=0, Max=20)]
public List FactoryPresetFreqsList
{
get { return this._factoryPresetFreqsList; }
set { this._factoryPresetFreqsList = value; }
}
// Check to see if FactoryPresetFreqsList property is set
internal bool IsSetFactoryPresetFreqsList()
{
return this._factoryPresetFreqsList != null && this._factoryPresetFreqsList.Count > 0;
}
///
/// Gets and sets the property MacVersion.
///
/// The MAC version (such as OTAA 1.1 or OTAA 1.0.3) to use with this device profile.
///
///
[AWSProperty(Max=64)]
public string MacVersion
{
get { return this._macVersion; }
set { this._macVersion = value; }
}
// Check to see if MacVersion property is set
internal bool IsSetMacVersion()
{
return this._macVersion != null;
}
///
/// Gets and sets the property MaxDutyCycle.
///
/// The MaxDutyCycle value.
///
///
[AWSProperty(Min=0, Max=100)]
public int MaxDutyCycle
{
get { return this._maxDutyCycle.GetValueOrDefault(); }
set { this._maxDutyCycle = value; }
}
// Check to see if MaxDutyCycle property is set
internal bool IsSetMaxDutyCycle()
{
return this._maxDutyCycle.HasValue;
}
///
/// Gets and sets the property MaxEirp.
///
/// The MaxEIRP value.
///
///
[AWSProperty(Min=0, Max=15)]
public int MaxEirp
{
get { return this._maxEirp.GetValueOrDefault(); }
set { this._maxEirp = value; }
}
// Check to see if MaxEirp property is set
internal bool IsSetMaxEirp()
{
return this._maxEirp.HasValue;
}
///
/// Gets and sets the property PingSlotDr.
///
/// The PingSlotDR value.
///
///
[AWSProperty(Min=0, Max=15)]
public int PingSlotDr
{
get { return this._pingSlotDr.GetValueOrDefault(); }
set { this._pingSlotDr = value; }
}
// Check to see if PingSlotDr property is set
internal bool IsSetPingSlotDr()
{
return this._pingSlotDr.HasValue;
}
///
/// Gets and sets the property PingSlotFreq.
///
/// The PingSlotFreq value.
///
///
[AWSProperty(Min=1000000, Max=16700000)]
public int PingSlotFreq
{
get { return this._pingSlotFreq.GetValueOrDefault(); }
set { this._pingSlotFreq = value; }
}
// Check to see if PingSlotFreq property is set
internal bool IsSetPingSlotFreq()
{
return this._pingSlotFreq.HasValue;
}
///
/// Gets and sets the property PingSlotPeriod.
///
/// The PingSlotPeriod value.
///
///
[AWSProperty(Min=32, Max=4096)]
public int PingSlotPeriod
{
get { return this._pingSlotPeriod.GetValueOrDefault(); }
set { this._pingSlotPeriod = value; }
}
// Check to see if PingSlotPeriod property is set
internal bool IsSetPingSlotPeriod()
{
return this._pingSlotPeriod.HasValue;
}
///
/// Gets and sets the property RegParamsRevision.
///
/// The version of regional parameters.
///
///
[AWSProperty(Max=64)]
public string RegParamsRevision
{
get { return this._regParamsRevision; }
set { this._regParamsRevision = value; }
}
// Check to see if RegParamsRevision property is set
internal bool IsSetRegParamsRevision()
{
return this._regParamsRevision != null;
}
///
/// Gets and sets the property RfRegion.
///
/// The frequency band (RFRegion) value.
///
///
[AWSProperty(Max=64)]
public string RfRegion
{
get { return this._rfRegion; }
set { this._rfRegion = value; }
}
// Check to see if RfRegion property is set
internal bool IsSetRfRegion()
{
return this._rfRegion != null;
}
///
/// Gets and sets the property RxDataRate2.
///
/// The RXDataRate2 value.
///
///
[AWSProperty(Min=0, Max=15)]
public int RxDataRate2
{
get { return this._rxDataRate2.GetValueOrDefault(); }
set { this._rxDataRate2 = value; }
}
// Check to see if RxDataRate2 property is set
internal bool IsSetRxDataRate2()
{
return this._rxDataRate2.HasValue;
}
///
/// Gets and sets the property RxDelay1.
///
/// The RXDelay1 value.
///
///
[AWSProperty(Min=0, Max=15)]
public int RxDelay1
{
get { return this._rxDelay1.GetValueOrDefault(); }
set { this._rxDelay1 = value; }
}
// Check to see if RxDelay1 property is set
internal bool IsSetRxDelay1()
{
return this._rxDelay1.HasValue;
}
///
/// Gets and sets the property RxDrOffset1.
///
/// The RXDROffset1 value.
///
///
[AWSProperty(Min=0, Max=7)]
public int RxDrOffset1
{
get { return this._rxDrOffset1.GetValueOrDefault(); }
set { this._rxDrOffset1 = value; }
}
// Check to see if RxDrOffset1 property is set
internal bool IsSetRxDrOffset1()
{
return this._rxDrOffset1.HasValue;
}
///
/// Gets and sets the property RxFreq2.
///
/// The RXFreq2 value.
///
///
[AWSProperty(Min=1000000, Max=16700000)]
public int RxFreq2
{
get { return this._rxFreq2.GetValueOrDefault(); }
set { this._rxFreq2 = value; }
}
// Check to see if RxFreq2 property is set
internal bool IsSetRxFreq2()
{
return this._rxFreq2.HasValue;
}
///
/// Gets and sets the property Supports32BitFCnt.
///
/// The Supports32BitFCnt value.
///
///
public bool Supports32BitFCnt
{
get { return this._supports32BitFCnt.GetValueOrDefault(); }
set { this._supports32BitFCnt = value; }
}
// Check to see if Supports32BitFCnt property is set
internal bool IsSetSupports32BitFCnt()
{
return this._supports32BitFCnt.HasValue;
}
///
/// Gets and sets the property SupportsClassB.
///
/// The SupportsClassB value.
///
///
public bool SupportsClassB
{
get { return this._supportsClassB.GetValueOrDefault(); }
set { this._supportsClassB = value; }
}
// Check to see if SupportsClassB property is set
internal bool IsSetSupportsClassB()
{
return this._supportsClassB.HasValue;
}
///
/// Gets and sets the property SupportsClassC.
///
/// The SupportsClassC value.
///
///
public bool SupportsClassC
{
get { return this._supportsClassC.GetValueOrDefault(); }
set { this._supportsClassC = value; }
}
// Check to see if SupportsClassC property is set
internal bool IsSetSupportsClassC()
{
return this._supportsClassC.HasValue;
}
///
/// Gets and sets the property SupportsJoin.
///
/// The SupportsJoin value.
///
///
public bool SupportsJoin
{
get { return this._supportsJoin.GetValueOrDefault(); }
set { this._supportsJoin = value; }
}
// Check to see if SupportsJoin property is set
internal bool IsSetSupportsJoin()
{
return this._supportsJoin.HasValue;
}
}
}