/** * 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 { /** *

Event configuration object for a single resource.

See Also:

* AWS * API Reference

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

Resource identifier opted in for event messaging.

*/ inline const Aws::String& GetIdentifier() const{ return m_identifier; } /** *

Resource identifier opted in for event messaging.

*/ inline bool IdentifierHasBeenSet() const { return m_identifierHasBeenSet; } /** *

Resource identifier opted in for event messaging.

*/ inline void SetIdentifier(const Aws::String& value) { m_identifierHasBeenSet = true; m_identifier = value; } /** *

Resource identifier opted in for event messaging.

*/ inline void SetIdentifier(Aws::String&& value) { m_identifierHasBeenSet = true; m_identifier = std::move(value); } /** *

Resource identifier opted in for event messaging.

*/ inline void SetIdentifier(const char* value) { m_identifierHasBeenSet = true; m_identifier.assign(value); } /** *

Resource identifier opted in for event messaging.

*/ inline EventConfigurationItem& WithIdentifier(const Aws::String& value) { SetIdentifier(value); return *this;} /** *

Resource identifier opted in for event messaging.

*/ inline EventConfigurationItem& WithIdentifier(Aws::String&& value) { SetIdentifier(std::move(value)); return *this;} /** *

Resource identifier opted in for event messaging.

*/ inline EventConfigurationItem& WithIdentifier(const char* value) { SetIdentifier(value); return *this;} /** *

Identifier type of the particular resource identifier for event * configuration.

*/ inline const IdentifierType& GetIdentifierType() const{ return m_identifierType; } /** *

Identifier type of the particular resource identifier for event * configuration.

*/ inline bool IdentifierTypeHasBeenSet() const { return m_identifierTypeHasBeenSet; } /** *

Identifier type of the particular resource identifier for event * configuration.

*/ inline void SetIdentifierType(const IdentifierType& value) { m_identifierTypeHasBeenSet = true; m_identifierType = value; } /** *

Identifier type of the particular resource identifier for event * configuration.

*/ inline void SetIdentifierType(IdentifierType&& value) { m_identifierTypeHasBeenSet = true; m_identifierType = std::move(value); } /** *

Identifier type of the particular resource identifier for event * configuration.

*/ inline EventConfigurationItem& WithIdentifierType(const IdentifierType& value) { SetIdentifierType(value); return *this;} /** *

Identifier type of the particular resource identifier for event * configuration.

*/ inline EventConfigurationItem& WithIdentifierType(IdentifierType&& value) { SetIdentifierType(std::move(value)); return *this;} /** *

Partner type of the resource if the identifier type is PartnerAccountId.

*/ inline const EventNotificationPartnerType& GetPartnerType() const{ return m_partnerType; } /** *

Partner type of the resource if the identifier type is PartnerAccountId.

*/ inline bool PartnerTypeHasBeenSet() const { return m_partnerTypeHasBeenSet; } /** *

Partner type of the resource if the identifier type is PartnerAccountId.

*/ inline void SetPartnerType(const EventNotificationPartnerType& value) { m_partnerTypeHasBeenSet = true; m_partnerType = value; } /** *

Partner type of the resource if the identifier type is PartnerAccountId.

*/ inline void SetPartnerType(EventNotificationPartnerType&& value) { m_partnerTypeHasBeenSet = true; m_partnerType = std::move(value); } /** *

Partner type of the resource if the identifier type is PartnerAccountId.

*/ inline EventConfigurationItem& WithPartnerType(const EventNotificationPartnerType& value) { SetPartnerType(value); return *this;} /** *

Partner type of the resource if the identifier type is PartnerAccountId.

*/ inline EventConfigurationItem& WithPartnerType(EventNotificationPartnerType&& value) { SetPartnerType(std::move(value)); return *this;} inline const EventNotificationItemConfigurations& GetEvents() const{ return m_events; } inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } inline void SetEvents(const EventNotificationItemConfigurations& value) { m_eventsHasBeenSet = true; m_events = value; } inline void SetEvents(EventNotificationItemConfigurations&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); } inline EventConfigurationItem& WithEvents(const EventNotificationItemConfigurations& value) { SetEvents(value); return *this;} inline EventConfigurationItem& WithEvents(EventNotificationItemConfigurations&& value) { SetEvents(std::move(value)); return *this;} private: Aws::String m_identifier; bool m_identifierHasBeenSet = false; IdentifierType m_identifierType; bool m_identifierTypeHasBeenSet = false; EventNotificationPartnerType m_partnerType; bool m_partnerTypeHasBeenSet = false; EventNotificationItemConfigurations m_events; bool m_eventsHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws