/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace IoTWireless { namespace Model { class GetResourceEventConfigurationResult { public: AWS_IOTWIRELESS_API GetResourceEventConfigurationResult(); AWS_IOTWIRELESS_API GetResourceEventConfigurationResult(const Aws::AmazonWebServiceResult& result); AWS_IOTWIRELESS_API GetResourceEventConfigurationResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Event configuration for the device registration state event.

*/ inline const DeviceRegistrationStateEventConfiguration& GetDeviceRegistrationState() const{ return m_deviceRegistrationState; } /** *

Event configuration for the device registration state event.

*/ inline void SetDeviceRegistrationState(const DeviceRegistrationStateEventConfiguration& value) { m_deviceRegistrationState = value; } /** *

Event configuration for the device registration state event.

*/ inline void SetDeviceRegistrationState(DeviceRegistrationStateEventConfiguration&& value) { m_deviceRegistrationState = std::move(value); } /** *

Event configuration for the device registration state event.

*/ inline GetResourceEventConfigurationResult& WithDeviceRegistrationState(const DeviceRegistrationStateEventConfiguration& value) { SetDeviceRegistrationState(value); return *this;} /** *

Event configuration for the device registration state event.

*/ inline GetResourceEventConfigurationResult& WithDeviceRegistrationState(DeviceRegistrationStateEventConfiguration&& value) { SetDeviceRegistrationState(std::move(value)); return *this;} /** *

Event configuration for the proximity event.

*/ inline const ProximityEventConfiguration& GetProximity() const{ return m_proximity; } /** *

Event configuration for the proximity event.

*/ inline void SetProximity(const ProximityEventConfiguration& value) { m_proximity = value; } /** *

Event configuration for the proximity event.

*/ inline void SetProximity(ProximityEventConfiguration&& value) { m_proximity = std::move(value); } /** *

Event configuration for the proximity event.

*/ inline GetResourceEventConfigurationResult& WithProximity(const ProximityEventConfiguration& value) { SetProximity(value); return *this;} /** *

Event configuration for the proximity event.

*/ inline GetResourceEventConfigurationResult& WithProximity(ProximityEventConfiguration&& value) { SetProximity(std::move(value)); return *this;} /** *

Event configuration for the join event.

*/ inline const JoinEventConfiguration& GetJoin() const{ return m_join; } /** *

Event configuration for the join event.

*/ inline void SetJoin(const JoinEventConfiguration& value) { m_join = value; } /** *

Event configuration for the join event.

*/ inline void SetJoin(JoinEventConfiguration&& value) { m_join = std::move(value); } /** *

Event configuration for the join event.

*/ inline GetResourceEventConfigurationResult& WithJoin(const JoinEventConfiguration& value) { SetJoin(value); return *this;} /** *

Event configuration for the join event.

*/ inline GetResourceEventConfigurationResult& WithJoin(JoinEventConfiguration&& value) { SetJoin(std::move(value)); return *this;} /** *

Event configuration for the connection status event.

*/ inline const ConnectionStatusEventConfiguration& GetConnectionStatus() const{ return m_connectionStatus; } /** *

Event configuration for the connection status event.

*/ inline void SetConnectionStatus(const ConnectionStatusEventConfiguration& value) { m_connectionStatus = value; } /** *

Event configuration for the connection status event.

*/ inline void SetConnectionStatus(ConnectionStatusEventConfiguration&& value) { m_connectionStatus = std::move(value); } /** *

Event configuration for the connection status event.

*/ inline GetResourceEventConfigurationResult& WithConnectionStatus(const ConnectionStatusEventConfiguration& value) { SetConnectionStatus(value); return *this;} /** *

Event configuration for the connection status event.

*/ inline GetResourceEventConfigurationResult& WithConnectionStatus(ConnectionStatusEventConfiguration&& value) { SetConnectionStatus(std::move(value)); return *this;} /** *

Event configuration for the message delivery status event.

*/ inline const MessageDeliveryStatusEventConfiguration& GetMessageDeliveryStatus() const{ return m_messageDeliveryStatus; } /** *

Event configuration for the message delivery status event.

*/ inline void SetMessageDeliveryStatus(const MessageDeliveryStatusEventConfiguration& value) { m_messageDeliveryStatus = value; } /** *

Event configuration for the message delivery status event.

*/ inline void SetMessageDeliveryStatus(MessageDeliveryStatusEventConfiguration&& value) { m_messageDeliveryStatus = std::move(value); } /** *

Event configuration for the message delivery status event.

*/ inline GetResourceEventConfigurationResult& WithMessageDeliveryStatus(const MessageDeliveryStatusEventConfiguration& value) { SetMessageDeliveryStatus(value); return *this;} /** *

Event configuration for the message delivery status event.

*/ inline GetResourceEventConfigurationResult& WithMessageDeliveryStatus(MessageDeliveryStatusEventConfiguration&& value) { SetMessageDeliveryStatus(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetResourceEventConfigurationResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetResourceEventConfigurationResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetResourceEventConfigurationResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: DeviceRegistrationStateEventConfiguration m_deviceRegistrationState; ProximityEventConfiguration m_proximity; JoinEventConfiguration m_join; ConnectionStatusEventConfiguration m_connectionStatus; MessageDeliveryStatusEventConfiguration m_messageDeliveryStatus; Aws::String m_requestId; }; } // namespace Model } // namespace IoTWireless } // namespace Aws