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

The definition of the input.

See Also:

AWS * API Reference

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

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline const Aws::Vector& GetAttributes() const{ return m_attributes; } /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; } /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline void SetAttributes(const Aws::Vector& value) { m_attributesHasBeenSet = true; m_attributes = value; } /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline void SetAttributes(Aws::Vector&& value) { m_attributesHasBeenSet = true; m_attributes = std::move(value); } /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline InputDefinition& WithAttributes(const Aws::Vector& value) { SetAttributes(value); return *this;} /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline InputDefinition& WithAttributes(Aws::Vector&& value) { SetAttributes(std::move(value)); return *this;} /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline InputDefinition& AddAttributes(const Attribute& value) { m_attributesHasBeenSet = true; m_attributes.push_back(value); return *this; } /** *

The attributes from the JSON payload that are made available by the input. * Inputs are derived from messages sent to the AWS IoT Events system using * BatchPutMessage. Each such message contains a JSON payload, and * those attributes (and their paired values) specified here are available for use * in the condition expressions used by detectors that monitor this * input.

*/ inline InputDefinition& AddAttributes(Attribute&& value) { m_attributesHasBeenSet = true; m_attributes.push_back(std::move(value)); return *this; } private: Aws::Vector m_attributes; bool m_attributesHasBeenSet = false; }; } // namespace Model } // namespace IoTEvents } // namespace Aws