/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace IoTWireless { namespace Model { /** *

ABP device object for LoRaWAN specification v1.0.x

See Also:

* AWS * API Reference

*/ class AbpV1_0_x { public: AWS_IOTWIRELESS_API AbpV1_0_x(); AWS_IOTWIRELESS_API AbpV1_0_x(Aws::Utils::Json::JsonView jsonValue); AWS_IOTWIRELESS_API AbpV1_0_x& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_IOTWIRELESS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The DevAddr value.

*/ inline const Aws::String& GetDevAddr() const{ return m_devAddr; } /** *

The DevAddr value.

*/ inline bool DevAddrHasBeenSet() const { return m_devAddrHasBeenSet; } /** *

The DevAddr value.

*/ inline void SetDevAddr(const Aws::String& value) { m_devAddrHasBeenSet = true; m_devAddr = value; } /** *

The DevAddr value.

*/ inline void SetDevAddr(Aws::String&& value) { m_devAddrHasBeenSet = true; m_devAddr = std::move(value); } /** *

The DevAddr value.

*/ inline void SetDevAddr(const char* value) { m_devAddrHasBeenSet = true; m_devAddr.assign(value); } /** *

The DevAddr value.

*/ inline AbpV1_0_x& WithDevAddr(const Aws::String& value) { SetDevAddr(value); return *this;} /** *

The DevAddr value.

*/ inline AbpV1_0_x& WithDevAddr(Aws::String&& value) { SetDevAddr(std::move(value)); return *this;} /** *

The DevAddr value.

*/ inline AbpV1_0_x& WithDevAddr(const char* value) { SetDevAddr(value); return *this;} /** *

Session keys for ABP v1.0.x

*/ inline const SessionKeysAbpV1_0_x& GetSessionKeys() const{ return m_sessionKeys; } /** *

Session keys for ABP v1.0.x

*/ inline bool SessionKeysHasBeenSet() const { return m_sessionKeysHasBeenSet; } /** *

Session keys for ABP v1.0.x

*/ inline void SetSessionKeys(const SessionKeysAbpV1_0_x& value) { m_sessionKeysHasBeenSet = true; m_sessionKeys = value; } /** *

Session keys for ABP v1.0.x

*/ inline void SetSessionKeys(SessionKeysAbpV1_0_x&& value) { m_sessionKeysHasBeenSet = true; m_sessionKeys = std::move(value); } /** *

Session keys for ABP v1.0.x

*/ inline AbpV1_0_x& WithSessionKeys(const SessionKeysAbpV1_0_x& value) { SetSessionKeys(value); return *this;} /** *

Session keys for ABP v1.0.x

*/ inline AbpV1_0_x& WithSessionKeys(SessionKeysAbpV1_0_x&& value) { SetSessionKeys(std::move(value)); return *this;} /** *

The FCnt init value.

*/ inline int GetFCntStart() const{ return m_fCntStart; } /** *

The FCnt init value.

*/ inline bool FCntStartHasBeenSet() const { return m_fCntStartHasBeenSet; } /** *

The FCnt init value.

*/ inline void SetFCntStart(int value) { m_fCntStartHasBeenSet = true; m_fCntStart = value; } /** *

The FCnt init value.

*/ inline AbpV1_0_x& WithFCntStart(int value) { SetFCntStart(value); return *this;} private: Aws::String m_devAddr; bool m_devAddrHasBeenSet = false; SessionKeysAbpV1_0_x m_sessionKeys; bool m_sessionKeysHasBeenSet = false; int m_fCntStart; bool m_fCntStartHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws