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

Sends information about the detector model instance and the event that * triggered the action to a specified asset property in AWS IoT SiteWise.

*

You must use expressions for all parameters in * IotSiteWiseAction. The expressions accept literals, operators, * functions, references, and substitutions templates.

* Examples

  • For literal values, the expressions must * contain single quotes. For example, the value for the propertyAlias * parameter can be '/company/windfarm/3/turbine/7/temperature'.

    *
  • For references, you must specify either variables or input values. * For example, the value for the assetId parameter can be * $input.TurbineInput.assetId1.

  • For a substitution * template, you must use ${}, and the template must be in single * quotes. A substitution template can also contain a combination of literals, * operators, functions, references, and substitution templates.

    In the * following example, the value for the propertyAlias parameter uses a * substitution template.

    * 'company/windfarm/${$input.TemperatureInput.sensorData.windfarmID}/turbine/ * ${$input.TemperatureInput.sensorData.turbineID}/temperature'

  • *

You must specify either propertyAlias or both * assetId and propertyId to identify the target asset * property in AWS IoT SiteWise.

For more information, see Expressions * in the AWS IoT Events Developer Guide.

See Also:

AWS * API Reference

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

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline const Aws::String& GetEntryId() const{ return m_entryId; } /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline bool EntryIdHasBeenSet() const { return m_entryIdHasBeenSet; } /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline void SetEntryId(const Aws::String& value) { m_entryIdHasBeenSet = true; m_entryId = value; } /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline void SetEntryId(Aws::String&& value) { m_entryIdHasBeenSet = true; m_entryId = std::move(value); } /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline void SetEntryId(const char* value) { m_entryIdHasBeenSet = true; m_entryId.assign(value); } /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline IotSiteWiseAction& WithEntryId(const Aws::String& value) { SetEntryId(value); return *this;} /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline IotSiteWiseAction& WithEntryId(Aws::String&& value) { SetEntryId(std::move(value)); return *this;} /** *

A unique identifier for this entry. You can use the entry ID to track which * data entry causes an error in case of failure. The default is a new unique * identifier.

*/ inline IotSiteWiseAction& WithEntryId(const char* value) { SetEntryId(value); return *this;} /** *

The ID of the asset that has the specified property.

*/ inline const Aws::String& GetAssetId() const{ return m_assetId; } /** *

The ID of the asset that has the specified property.

*/ inline bool AssetIdHasBeenSet() const { return m_assetIdHasBeenSet; } /** *

The ID of the asset that has the specified property.

*/ inline void SetAssetId(const Aws::String& value) { m_assetIdHasBeenSet = true; m_assetId = value; } /** *

The ID of the asset that has the specified property.

*/ inline void SetAssetId(Aws::String&& value) { m_assetIdHasBeenSet = true; m_assetId = std::move(value); } /** *

The ID of the asset that has the specified property.

*/ inline void SetAssetId(const char* value) { m_assetIdHasBeenSet = true; m_assetId.assign(value); } /** *

The ID of the asset that has the specified property.

*/ inline IotSiteWiseAction& WithAssetId(const Aws::String& value) { SetAssetId(value); return *this;} /** *

The ID of the asset that has the specified property.

*/ inline IotSiteWiseAction& WithAssetId(Aws::String&& value) { SetAssetId(std::move(value)); return *this;} /** *

The ID of the asset that has the specified property.

*/ inline IotSiteWiseAction& WithAssetId(const char* value) { SetAssetId(value); return *this;} /** *

The ID of the asset property.

*/ inline const Aws::String& GetPropertyId() const{ return m_propertyId; } /** *

The ID of the asset property.

*/ inline bool PropertyIdHasBeenSet() const { return m_propertyIdHasBeenSet; } /** *

The ID of the asset property.

*/ inline void SetPropertyId(const Aws::String& value) { m_propertyIdHasBeenSet = true; m_propertyId = value; } /** *

The ID of the asset property.

*/ inline void SetPropertyId(Aws::String&& value) { m_propertyIdHasBeenSet = true; m_propertyId = std::move(value); } /** *

The ID of the asset property.

*/ inline void SetPropertyId(const char* value) { m_propertyIdHasBeenSet = true; m_propertyId.assign(value); } /** *

The ID of the asset property.

*/ inline IotSiteWiseAction& WithPropertyId(const Aws::String& value) { SetPropertyId(value); return *this;} /** *

The ID of the asset property.

*/ inline IotSiteWiseAction& WithPropertyId(Aws::String&& value) { SetPropertyId(std::move(value)); return *this;} /** *

The ID of the asset property.

*/ inline IotSiteWiseAction& WithPropertyId(const char* value) { SetPropertyId(value); return *this;} /** *

The alias of the asset property.

*/ inline const Aws::String& GetPropertyAlias() const{ return m_propertyAlias; } /** *

The alias of the asset property.

*/ inline bool PropertyAliasHasBeenSet() const { return m_propertyAliasHasBeenSet; } /** *

The alias of the asset property.

*/ inline void SetPropertyAlias(const Aws::String& value) { m_propertyAliasHasBeenSet = true; m_propertyAlias = value; } /** *

The alias of the asset property.

*/ inline void SetPropertyAlias(Aws::String&& value) { m_propertyAliasHasBeenSet = true; m_propertyAlias = std::move(value); } /** *

The alias of the asset property.

*/ inline void SetPropertyAlias(const char* value) { m_propertyAliasHasBeenSet = true; m_propertyAlias.assign(value); } /** *

The alias of the asset property.

*/ inline IotSiteWiseAction& WithPropertyAlias(const Aws::String& value) { SetPropertyAlias(value); return *this;} /** *

The alias of the asset property.

*/ inline IotSiteWiseAction& WithPropertyAlias(Aws::String&& value) { SetPropertyAlias(std::move(value)); return *this;} /** *

The alias of the asset property.

*/ inline IotSiteWiseAction& WithPropertyAlias(const char* value) { SetPropertyAlias(value); return *this;} /** *

The value to send to the asset property. This value contains timestamp, * quality, and value (TQV) information.

*/ inline const AssetPropertyValue& GetPropertyValue() const{ return m_propertyValue; } /** *

The value to send to the asset property. This value contains timestamp, * quality, and value (TQV) information.

*/ inline bool PropertyValueHasBeenSet() const { return m_propertyValueHasBeenSet; } /** *

The value to send to the asset property. This value contains timestamp, * quality, and value (TQV) information.

*/ inline void SetPropertyValue(const AssetPropertyValue& value) { m_propertyValueHasBeenSet = true; m_propertyValue = value; } /** *

The value to send to the asset property. This value contains timestamp, * quality, and value (TQV) information.

*/ inline void SetPropertyValue(AssetPropertyValue&& value) { m_propertyValueHasBeenSet = true; m_propertyValue = std::move(value); } /** *

The value to send to the asset property. This value contains timestamp, * quality, and value (TQV) information.

*/ inline IotSiteWiseAction& WithPropertyValue(const AssetPropertyValue& value) { SetPropertyValue(value); return *this;} /** *

The value to send to the asset property. This value contains timestamp, * quality, and value (TQV) information.

*/ inline IotSiteWiseAction& WithPropertyValue(AssetPropertyValue&& value) { SetPropertyValue(std::move(value)); return *this;} private: Aws::String m_entryId; bool m_entryIdHasBeenSet = false; Aws::String m_assetId; bool m_assetIdHasBeenSet = false; Aws::String m_propertyId; bool m_propertyIdHasBeenSet = false; Aws::String m_propertyAlias; bool m_propertyAliasHasBeenSet = false; AssetPropertyValue m_propertyValue; bool m_propertyValueHasBeenSet = false; }; } // namespace Model } // namespace IoTEvents } // namespace Aws