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

Object for updating the FPorts information.

See Also:

AWS * API Reference

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

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

*/ inline const Positioning& GetPositioning() const{ return m_positioning; } /** *

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

*/ inline bool PositioningHasBeenSet() const { return m_positioningHasBeenSet; } /** *

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

*/ inline void SetPositioning(const Positioning& value) { m_positioningHasBeenSet = true; m_positioning = value; } /** *

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

*/ inline void SetPositioning(Positioning&& value) { m_positioningHasBeenSet = true; m_positioning = std::move(value); } /** *

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

*/ inline UpdateFPorts& WithPositioning(const Positioning& value) { SetPositioning(value); return *this;} /** *

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

*/ inline UpdateFPorts& WithPositioning(Positioning&& value) { SetPositioning(std::move(value)); return *this;} /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline const Aws::Vector& GetApplications() const{ return m_applications; } /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline bool ApplicationsHasBeenSet() const { return m_applicationsHasBeenSet; } /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline void SetApplications(const Aws::Vector& value) { m_applicationsHasBeenSet = true; m_applications = value; } /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline void SetApplications(Aws::Vector&& value) { m_applicationsHasBeenSet = true; m_applications = std::move(value); } /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline UpdateFPorts& WithApplications(const Aws::Vector& value) { SetApplications(value); return *this;} /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline UpdateFPorts& WithApplications(Aws::Vector&& value) { SetApplications(std::move(value)); return *this;} /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline UpdateFPorts& AddApplications(const ApplicationConfig& value) { m_applicationsHasBeenSet = true; m_applications.push_back(value); return *this; } /** *

LoRaWAN application, which can be used for geolocation by activating * positioning.

*/ inline UpdateFPorts& AddApplications(ApplicationConfig&& value) { m_applicationsHasBeenSet = true; m_applications.push_back(std::move(value)); return *this; } private: Positioning m_positioning; bool m_positioningHasBeenSet = false; Aws::Vector m_applications; bool m_applicationsHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws