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

A DatasetAction object that specifies how dataset contents are * automatically created.

See Also:

AWS * API Reference

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

The name of the dataset action by which dataset contents are automatically * created.

*/ inline const Aws::String& GetActionName() const{ return m_actionName; } /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline bool ActionNameHasBeenSet() const { return m_actionNameHasBeenSet; } /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline void SetActionName(const Aws::String& value) { m_actionNameHasBeenSet = true; m_actionName = value; } /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline void SetActionName(Aws::String&& value) { m_actionNameHasBeenSet = true; m_actionName = std::move(value); } /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline void SetActionName(const char* value) { m_actionNameHasBeenSet = true; m_actionName.assign(value); } /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline DatasetAction& WithActionName(const Aws::String& value) { SetActionName(value); return *this;} /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline DatasetAction& WithActionName(Aws::String&& value) { SetActionName(std::move(value)); return *this;} /** *

The name of the dataset action by which dataset contents are automatically * created.

*/ inline DatasetAction& WithActionName(const char* value) { SetActionName(value); return *this;} /** *

An SqlQueryDatasetAction object that uses an SQL query to * automatically create dataset contents.

*/ inline const SqlQueryDatasetAction& GetQueryAction() const{ return m_queryAction; } /** *

An SqlQueryDatasetAction object that uses an SQL query to * automatically create dataset contents.

*/ inline bool QueryActionHasBeenSet() const { return m_queryActionHasBeenSet; } /** *

An SqlQueryDatasetAction object that uses an SQL query to * automatically create dataset contents.

*/ inline void SetQueryAction(const SqlQueryDatasetAction& value) { m_queryActionHasBeenSet = true; m_queryAction = value; } /** *

An SqlQueryDatasetAction object that uses an SQL query to * automatically create dataset contents.

*/ inline void SetQueryAction(SqlQueryDatasetAction&& value) { m_queryActionHasBeenSet = true; m_queryAction = std::move(value); } /** *

An SqlQueryDatasetAction object that uses an SQL query to * automatically create dataset contents.

*/ inline DatasetAction& WithQueryAction(const SqlQueryDatasetAction& value) { SetQueryAction(value); return *this;} /** *

An SqlQueryDatasetAction object that uses an SQL query to * automatically create dataset contents.

*/ inline DatasetAction& WithQueryAction(SqlQueryDatasetAction&& value) { SetQueryAction(std::move(value)); return *this;} /** *

Information that allows the system to run a containerized application to * create the dataset contents. The application must be in a Docker container along * with any required support libraries.

*/ inline const ContainerDatasetAction& GetContainerAction() const{ return m_containerAction; } /** *

Information that allows the system to run a containerized application to * create the dataset contents. The application must be in a Docker container along * with any required support libraries.

*/ inline bool ContainerActionHasBeenSet() const { return m_containerActionHasBeenSet; } /** *

Information that allows the system to run a containerized application to * create the dataset contents. The application must be in a Docker container along * with any required support libraries.

*/ inline void SetContainerAction(const ContainerDatasetAction& value) { m_containerActionHasBeenSet = true; m_containerAction = value; } /** *

Information that allows the system to run a containerized application to * create the dataset contents. The application must be in a Docker container along * with any required support libraries.

*/ inline void SetContainerAction(ContainerDatasetAction&& value) { m_containerActionHasBeenSet = true; m_containerAction = std::move(value); } /** *

Information that allows the system to run a containerized application to * create the dataset contents. The application must be in a Docker container along * with any required support libraries.

*/ inline DatasetAction& WithContainerAction(const ContainerDatasetAction& value) { SetContainerAction(value); return *this;} /** *

Information that allows the system to run a containerized application to * create the dataset contents. The application must be in a Docker container along * with any required support libraries.

*/ inline DatasetAction& WithContainerAction(ContainerDatasetAction&& value) { SetContainerAction(std::move(value)); return *this;} private: Aws::String m_actionName; bool m_actionNameHasBeenSet = false; SqlQueryDatasetAction m_queryAction; bool m_queryActionHasBeenSet = false; ContainerDatasetAction m_containerAction; bool m_containerActionHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws