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

The LoRaWAN information used with the multicast session.

See * Also:

AWS * API Reference

*/ class LoRaWANMulticastSession { public: AWS_IOTWIRELESS_API LoRaWANMulticastSession(); AWS_IOTWIRELESS_API LoRaWANMulticastSession(Aws::Utils::Json::JsonView jsonValue); AWS_IOTWIRELESS_API LoRaWANMulticastSession& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_IOTWIRELESS_API Aws::Utils::Json::JsonValue Jsonize() const; inline int GetDlDr() const{ return m_dlDr; } inline bool DlDrHasBeenSet() const { return m_dlDrHasBeenSet; } inline void SetDlDr(int value) { m_dlDrHasBeenSet = true; m_dlDr = value; } inline LoRaWANMulticastSession& WithDlDr(int value) { SetDlDr(value); return *this;} inline int GetDlFreq() const{ return m_dlFreq; } inline bool DlFreqHasBeenSet() const { return m_dlFreqHasBeenSet; } inline void SetDlFreq(int value) { m_dlFreqHasBeenSet = true; m_dlFreq = value; } inline LoRaWANMulticastSession& WithDlFreq(int value) { SetDlFreq(value); return *this;} inline const Aws::Utils::DateTime& GetSessionStartTime() const{ return m_sessionStartTime; } inline bool SessionStartTimeHasBeenSet() const { return m_sessionStartTimeHasBeenSet; } inline void SetSessionStartTime(const Aws::Utils::DateTime& value) { m_sessionStartTimeHasBeenSet = true; m_sessionStartTime = value; } inline void SetSessionStartTime(Aws::Utils::DateTime&& value) { m_sessionStartTimeHasBeenSet = true; m_sessionStartTime = std::move(value); } inline LoRaWANMulticastSession& WithSessionStartTime(const Aws::Utils::DateTime& value) { SetSessionStartTime(value); return *this;} inline LoRaWANMulticastSession& WithSessionStartTime(Aws::Utils::DateTime&& value) { SetSessionStartTime(std::move(value)); return *this;} inline int GetSessionTimeout() const{ return m_sessionTimeout; } inline bool SessionTimeoutHasBeenSet() const { return m_sessionTimeoutHasBeenSet; } inline void SetSessionTimeout(int value) { m_sessionTimeoutHasBeenSet = true; m_sessionTimeout = value; } inline LoRaWANMulticastSession& WithSessionTimeout(int value) { SetSessionTimeout(value); return *this;} /** *

The PingSlotPeriod value.

*/ inline int GetPingSlotPeriod() const{ return m_pingSlotPeriod; } /** *

The PingSlotPeriod value.

*/ inline bool PingSlotPeriodHasBeenSet() const { return m_pingSlotPeriodHasBeenSet; } /** *

The PingSlotPeriod value.

*/ inline void SetPingSlotPeriod(int value) { m_pingSlotPeriodHasBeenSet = true; m_pingSlotPeriod = value; } /** *

The PingSlotPeriod value.

*/ inline LoRaWANMulticastSession& WithPingSlotPeriod(int value) { SetPingSlotPeriod(value); return *this;} private: int m_dlDr; bool m_dlDrHasBeenSet = false; int m_dlFreq; bool m_dlFreqHasBeenSet = false; Aws::Utils::DateTime m_sessionStartTime; bool m_sessionStartTimeHasBeenSet = false; int m_sessionTimeout; bool m_sessionTimeoutHasBeenSet = false; int m_pingSlotPeriod; bool m_pingSlotPeriodHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws