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

Information required to run the containerAction to produce * dataset contents.

See Also:

AWS * API Reference

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

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline const Aws::String& GetImage() const{ return m_image; } /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; } /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline void SetImage(const Aws::String& value) { m_imageHasBeenSet = true; m_image = value; } /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline void SetImage(Aws::String&& value) { m_imageHasBeenSet = true; m_image = std::move(value); } /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline void SetImage(const char* value) { m_imageHasBeenSet = true; m_image.assign(value); } /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline ContainerDatasetAction& WithImage(const Aws::String& value) { SetImage(value); return *this;} /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline ContainerDatasetAction& WithImage(Aws::String&& value) { SetImage(std::move(value)); return *this;} /** *

The ARN of the Docker container stored in your account. The Docker container * contains an application and required support libraries and is used to generate * dataset contents.

*/ inline ContainerDatasetAction& WithImage(const char* value) { SetImage(value); return *this;} /** *

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

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

The ARN of the role that gives permission to the system to access required * resources to run the containerAction. This includes, at minimum, * permission to retrieve the dataset contents that are the input to the * containerized application.

*/ inline ContainerDatasetAction& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;} /** *

Configuration of the resource that executes the * containerAction.

*/ inline const ResourceConfiguration& GetResourceConfiguration() const{ return m_resourceConfiguration; } /** *

Configuration of the resource that executes the * containerAction.

*/ inline bool ResourceConfigurationHasBeenSet() const { return m_resourceConfigurationHasBeenSet; } /** *

Configuration of the resource that executes the * containerAction.

*/ inline void SetResourceConfiguration(const ResourceConfiguration& value) { m_resourceConfigurationHasBeenSet = true; m_resourceConfiguration = value; } /** *

Configuration of the resource that executes the * containerAction.

*/ inline void SetResourceConfiguration(ResourceConfiguration&& value) { m_resourceConfigurationHasBeenSet = true; m_resourceConfiguration = std::move(value); } /** *

Configuration of the resource that executes the * containerAction.

*/ inline ContainerDatasetAction& WithResourceConfiguration(const ResourceConfiguration& value) { SetResourceConfiguration(value); return *this;} /** *

Configuration of the resource that executes the * containerAction.

*/ inline ContainerDatasetAction& WithResourceConfiguration(ResourceConfiguration&& value) { SetResourceConfiguration(std::move(value)); return *this;} /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline const Aws::Vector& GetVariables() const{ return m_variables; } /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline bool VariablesHasBeenSet() const { return m_variablesHasBeenSet; } /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline void SetVariables(const Aws::Vector& value) { m_variablesHasBeenSet = true; m_variables = value; } /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline void SetVariables(Aws::Vector&& value) { m_variablesHasBeenSet = true; m_variables = std::move(value); } /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline ContainerDatasetAction& WithVariables(const Aws::Vector& value) { SetVariables(value); return *this;} /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline ContainerDatasetAction& WithVariables(Aws::Vector&& value) { SetVariables(std::move(value)); return *this;} /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline ContainerDatasetAction& AddVariables(const Variable& value) { m_variablesHasBeenSet = true; m_variables.push_back(value); return *this; } /** *

The values of variables used in the context of the execution of the * containerized application (basically, parameters passed to the application). * Each variable must have a name and a value given by one of * stringValue, datasetContentVersionValue, or * outputFileUriValue.

*/ inline ContainerDatasetAction& AddVariables(Variable&& value) { m_variablesHasBeenSet = true; m_variables.push_back(std::move(value)); return *this; } private: Aws::String m_image; bool m_imageHasBeenSet = false; Aws::String m_executionRoleArn; bool m_executionRoleArnHasBeenSet = false; ResourceConfiguration m_resourceConfiguration; bool m_resourceConfigurationHasBeenSet = false; Aws::Vector m_variables; bool m_variablesHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws