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

The Amazon Timestream table where the Amazon Web Services IoT FleetWise * campaign sends data. Timestream stores and organizes data to optimize query * processing time and to reduce storage costs. For more information, see Data * modeling in the Amazon Timestream Developer Guide.

See * Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline const Aws::String& GetTimestreamTableArn() const{ return m_timestreamTableArn; } /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline bool TimestreamTableArnHasBeenSet() const { return m_timestreamTableArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline void SetTimestreamTableArn(const Aws::String& value) { m_timestreamTableArnHasBeenSet = true; m_timestreamTableArn = value; } /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline void SetTimestreamTableArn(Aws::String&& value) { m_timestreamTableArnHasBeenSet = true; m_timestreamTableArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline void SetTimestreamTableArn(const char* value) { m_timestreamTableArnHasBeenSet = true; m_timestreamTableArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline TimestreamConfig& WithTimestreamTableArn(const Aws::String& value) { SetTimestreamTableArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline TimestreamConfig& WithTimestreamTableArn(Aws::String&& value) { SetTimestreamTableArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Timestream table.

*/ inline TimestreamConfig& WithTimestreamTableArn(const char* value) { SetTimestreamTableArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline const Aws::String& GetExecutionRoleArn() const{ return m_executionRoleArn; } /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline void SetExecutionRoleArn(const Aws::String& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = value; } /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline void SetExecutionRoleArn(Aws::String&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline void SetExecutionRoleArn(const char* value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline TimestreamConfig& WithExecutionRoleArn(const Aws::String& value) { SetExecutionRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline TimestreamConfig& WithExecutionRoleArn(Aws::String&& value) { SetExecutionRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution role that grants Amazon * Web Services IoT FleetWise permission to deliver data to the Amazon Timestream * table.

*/ inline TimestreamConfig& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;} private: Aws::String m_timestreamTableArn; bool m_timestreamTableArnHasBeenSet = false; Aws::String m_executionRoleArn; bool m_executionRoleArnHasBeenSet = false; }; } // namespace Model } // namespace IoTFleetWise } // namespace Aws