/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Defines an action to write to the Amazon DynamoDB table that you created. The
* standard action payload contains all the information about the detector model
* instance and the event that triggered the action. You can customize the payload.
* One column of the DynamoDB table receives all attribute-value pairs in the
* payload that you specify. You must use expressions for all parameters in
*
* Examples For literal values, the expressions must
* contain single quotes. For example, the value for the For references, you
* must specify either variables or input values. For example, the value for the
* For a substitution
* template, you must use In the
* following example, the value for the For a string concatenation,
* you must use In the following example, the value for the
*
* For more information, see Expressions
* in the AWS IoT Events Developer Guide. If the defined payload type
* is a string, DynamoDBAction
. The expressions accept literals, operators,
* functions, references, and substitution templates.
hashKeyType
* parameter can be 'STRING'
.hashKeyField
parameter can be
* $input.GreenhouseInput.name
.${}
, and the template must be in single
* quotes. A substitution template can also contain a combination of literals,
* operators, functions, references, and substitution templates.hashKeyValue
parameter uses a
* substitution template. '${$input.GreenhouseInput.temperature * 6
* / 5 + 32} in Fahrenheit'
+
. A string concatenation can also contain a
* combination of literals, operators, functions, references, and substitution
* templates.tableName
parameter uses a string concatenation. 'GreenhouseTemperatureTable ' + $input.GreenhouseInput.date
DynamoDBAction
writes non-JSON data to the DynamoDB
* table as binary data. The DynamoDB console displays the data as Base64-encoded
* text. The value for the payloadField
parameter is
* <payload-field>_raw
.See Also:
AWS
* API Reference
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The data type for the hash key (also called the partition key). You can * specify the following values:
'STRING'
- The hash
* key is a string.
'NUMBER'
- The hash key is a
* number.
If you don't specify hashKeyType
, the
* default value is 'STRING'
.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The name of the hash key (also called the partition key). The
* hashKeyField
value must match the partition key of the target
* DynamoDB table.
The value of the hash key (also called the partition key).
*/ inline const Aws::String& GetHashKeyValue() const{ return m_hashKeyValue; } /** *The value of the hash key (also called the partition key).
*/ inline bool HashKeyValueHasBeenSet() const { return m_hashKeyValueHasBeenSet; } /** *The value of the hash key (also called the partition key).
*/ inline void SetHashKeyValue(const Aws::String& value) { m_hashKeyValueHasBeenSet = true; m_hashKeyValue = value; } /** *The value of the hash key (also called the partition key).
*/ inline void SetHashKeyValue(Aws::String&& value) { m_hashKeyValueHasBeenSet = true; m_hashKeyValue = std::move(value); } /** *The value of the hash key (also called the partition key).
*/ inline void SetHashKeyValue(const char* value) { m_hashKeyValueHasBeenSet = true; m_hashKeyValue.assign(value); } /** *The value of the hash key (also called the partition key).
*/ inline DynamoDBAction& WithHashKeyValue(const Aws::String& value) { SetHashKeyValue(value); return *this;} /** *The value of the hash key (also called the partition key).
*/ inline DynamoDBAction& WithHashKeyValue(Aws::String&& value) { SetHashKeyValue(std::move(value)); return *this;} /** *The value of the hash key (also called the partition key).
*/ inline DynamoDBAction& WithHashKeyValue(const char* value) { SetHashKeyValue(value); return *this;} /** *The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The data type for the range key (also called the sort key), You can specify * the following values:
'STRING'
- The range key is
* a string.
'NUMBER'
- The range key is
* number.
If you don't specify rangeKeyField
, the
* default value is 'STRING'
.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The name of the range key (also called the sort key). The
* rangeKeyField
value must match the sort key of the target DynamoDB
* table.
The value of the range key (also called the sort key).
*/ inline const Aws::String& GetRangeKeyValue() const{ return m_rangeKeyValue; } /** *The value of the range key (also called the sort key).
*/ inline bool RangeKeyValueHasBeenSet() const { return m_rangeKeyValueHasBeenSet; } /** *The value of the range key (also called the sort key).
*/ inline void SetRangeKeyValue(const Aws::String& value) { m_rangeKeyValueHasBeenSet = true; m_rangeKeyValue = value; } /** *The value of the range key (also called the sort key).
*/ inline void SetRangeKeyValue(Aws::String&& value) { m_rangeKeyValueHasBeenSet = true; m_rangeKeyValue = std::move(value); } /** *The value of the range key (also called the sort key).
*/ inline void SetRangeKeyValue(const char* value) { m_rangeKeyValueHasBeenSet = true; m_rangeKeyValue.assign(value); } /** *The value of the range key (also called the sort key).
*/ inline DynamoDBAction& WithRangeKeyValue(const Aws::String& value) { SetRangeKeyValue(value); return *this;} /** *The value of the range key (also called the sort key).
*/ inline DynamoDBAction& WithRangeKeyValue(Aws::String&& value) { SetRangeKeyValue(std::move(value)); return *this;} /** *The value of the range key (also called the sort key).
*/ inline DynamoDBAction& WithRangeKeyValue(const char* value) { SetRangeKeyValue(value); return *this;} /** *The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The type of operation to perform. You can specify the following values:
* 'INSERT'
- Insert data as a new item into the
* DynamoDB table. This item uses the specified hash key as a partition key. If you
* specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with
* new data. This item's partition key must match the specified hash key. If you
* specified a range key, the range key must match the item's sort key.
'DELETE'
- Delete an existing item of the DynamoDB table.
* This item's partition key must match the specified hash key. If you specified a
* range key, the range key must match the item's sort key.
If
* you don't specify this parameter, AWS IoT Events triggers the
* 'INSERT'
operation.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB column that receives the action payload.
If
* you don't specify this parameter, the name of the DynamoDB column is
* payload
.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.
The name of the DynamoDB table. The tableName
value must match
* the table name of the target DynamoDB table.