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

LoRaWAN object for update functions.

See Also:

AWS * API Reference

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

The ID of the device profile for the wireless device.

*/ inline const Aws::String& GetDeviceProfileId() const{ return m_deviceProfileId; } /** *

The ID of the device profile for the wireless device.

*/ inline bool DeviceProfileIdHasBeenSet() const { return m_deviceProfileIdHasBeenSet; } /** *

The ID of the device profile for the wireless device.

*/ inline void SetDeviceProfileId(const Aws::String& value) { m_deviceProfileIdHasBeenSet = true; m_deviceProfileId = value; } /** *

The ID of the device profile for the wireless device.

*/ inline void SetDeviceProfileId(Aws::String&& value) { m_deviceProfileIdHasBeenSet = true; m_deviceProfileId = std::move(value); } /** *

The ID of the device profile for the wireless device.

*/ inline void SetDeviceProfileId(const char* value) { m_deviceProfileIdHasBeenSet = true; m_deviceProfileId.assign(value); } /** *

The ID of the device profile for the wireless device.

*/ inline LoRaWANUpdateDevice& WithDeviceProfileId(const Aws::String& value) { SetDeviceProfileId(value); return *this;} /** *

The ID of the device profile for the wireless device.

*/ inline LoRaWANUpdateDevice& WithDeviceProfileId(Aws::String&& value) { SetDeviceProfileId(std::move(value)); return *this;} /** *

The ID of the device profile for the wireless device.

*/ inline LoRaWANUpdateDevice& WithDeviceProfileId(const char* value) { SetDeviceProfileId(value); return *this;} /** *

The ID of the service profile.

*/ inline const Aws::String& GetServiceProfileId() const{ return m_serviceProfileId; } /** *

The ID of the service profile.

*/ inline bool ServiceProfileIdHasBeenSet() const { return m_serviceProfileIdHasBeenSet; } /** *

The ID of the service profile.

*/ inline void SetServiceProfileId(const Aws::String& value) { m_serviceProfileIdHasBeenSet = true; m_serviceProfileId = value; } /** *

The ID of the service profile.

*/ inline void SetServiceProfileId(Aws::String&& value) { m_serviceProfileIdHasBeenSet = true; m_serviceProfileId = std::move(value); } /** *

The ID of the service profile.

*/ inline void SetServiceProfileId(const char* value) { m_serviceProfileIdHasBeenSet = true; m_serviceProfileId.assign(value); } /** *

The ID of the service profile.

*/ inline LoRaWANUpdateDevice& WithServiceProfileId(const Aws::String& value) { SetServiceProfileId(value); return *this;} /** *

The ID of the service profile.

*/ inline LoRaWANUpdateDevice& WithServiceProfileId(Aws::String&& value) { SetServiceProfileId(std::move(value)); return *this;} /** *

The ID of the service profile.

*/ inline LoRaWANUpdateDevice& WithServiceProfileId(const char* value) { SetServiceProfileId(value); return *this;} /** *

ABP device object for update APIs for v1.1

*/ inline const UpdateAbpV1_1& GetAbpV1_1() const{ return m_abpV1_1; } /** *

ABP device object for update APIs for v1.1

*/ inline bool AbpV1_1HasBeenSet() const { return m_abpV1_1HasBeenSet; } /** *

ABP device object for update APIs for v1.1

*/ inline void SetAbpV1_1(const UpdateAbpV1_1& value) { m_abpV1_1HasBeenSet = true; m_abpV1_1 = value; } /** *

ABP device object for update APIs for v1.1

*/ inline void SetAbpV1_1(UpdateAbpV1_1&& value) { m_abpV1_1HasBeenSet = true; m_abpV1_1 = std::move(value); } /** *

ABP device object for update APIs for v1.1

*/ inline LoRaWANUpdateDevice& WithAbpV1_1(const UpdateAbpV1_1& value) { SetAbpV1_1(value); return *this;} /** *

ABP device object for update APIs for v1.1

*/ inline LoRaWANUpdateDevice& WithAbpV1_1(UpdateAbpV1_1&& value) { SetAbpV1_1(std::move(value)); return *this;} /** *

ABP device object for update APIs for v1.0.x

*/ inline const UpdateAbpV1_0_x& GetAbpV1_0_x() const{ return m_abpV1_0_x; } /** *

ABP device object for update APIs for v1.0.x

*/ inline bool AbpV1_0_xHasBeenSet() const { return m_abpV1_0_xHasBeenSet; } /** *

ABP device object for update APIs for v1.0.x

*/ inline void SetAbpV1_0_x(const UpdateAbpV1_0_x& value) { m_abpV1_0_xHasBeenSet = true; m_abpV1_0_x = value; } /** *

ABP device object for update APIs for v1.0.x

*/ inline void SetAbpV1_0_x(UpdateAbpV1_0_x&& value) { m_abpV1_0_xHasBeenSet = true; m_abpV1_0_x = std::move(value); } /** *

ABP device object for update APIs for v1.0.x

*/ inline LoRaWANUpdateDevice& WithAbpV1_0_x(const UpdateAbpV1_0_x& value) { SetAbpV1_0_x(value); return *this;} /** *

ABP device object for update APIs for v1.0.x

*/ inline LoRaWANUpdateDevice& WithAbpV1_0_x(UpdateAbpV1_0_x&& value) { SetAbpV1_0_x(std::move(value)); return *this;} /** *

FPorts object for the positioning information of the device.

*/ inline const UpdateFPorts& GetFPorts() const{ return m_fPorts; } /** *

FPorts object for the positioning information of the device.

*/ inline bool FPortsHasBeenSet() const { return m_fPortsHasBeenSet; } /** *

FPorts object for the positioning information of the device.

*/ inline void SetFPorts(const UpdateFPorts& value) { m_fPortsHasBeenSet = true; m_fPorts = value; } /** *

FPorts object for the positioning information of the device.

*/ inline void SetFPorts(UpdateFPorts&& value) { m_fPortsHasBeenSet = true; m_fPorts = std::move(value); } /** *

FPorts object for the positioning information of the device.

*/ inline LoRaWANUpdateDevice& WithFPorts(const UpdateFPorts& value) { SetFPorts(value); return *this;} /** *

FPorts object for the positioning information of the device.

*/ inline LoRaWANUpdateDevice& WithFPorts(UpdateFPorts&& value) { SetFPorts(std::move(value)); return *this;} private: Aws::String m_deviceProfileId; bool m_deviceProfileIdHasBeenSet = false; Aws::String m_serviceProfileId; bool m_serviceProfileIdHasBeenSet = false; UpdateAbpV1_1 m_abpV1_1; bool m_abpV1_1HasBeenSet = false; UpdateAbpV1_0_x m_abpV1_0_x; bool m_abpV1_0_xHasBeenSet = false; UpdateFPorts m_fPorts; bool m_fPortsHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws