/** * 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 EMR { namespace Model { /** *

Specifies the execution engine (cluster) to run the notebook and perform the * notebook execution, for example, an Amazon EMR cluster.

See Also:

* AWS * API Reference

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

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline ExecutionEngineConfig& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline ExecutionEngineConfig& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The unique identifier of the execution engine. For an Amazon EMR cluster, * this is the cluster ID.

*/ inline ExecutionEngineConfig& WithId(const char* value) { SetId(value); return *this;} /** *

The type of execution engine. A value of EMR specifies an Amazon * EMR cluster.

*/ inline const ExecutionEngineType& GetType() const{ return m_type; } /** *

The type of execution engine. A value of EMR specifies an Amazon * EMR cluster.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of execution engine. A value of EMR specifies an Amazon * EMR cluster.

*/ inline void SetType(const ExecutionEngineType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of execution engine. A value of EMR specifies an Amazon * EMR cluster.

*/ inline void SetType(ExecutionEngineType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of execution engine. A value of EMR specifies an Amazon * EMR cluster.

*/ inline ExecutionEngineConfig& WithType(const ExecutionEngineType& value) { SetType(value); return *this;} /** *

The type of execution engine. A value of EMR specifies an Amazon * EMR cluster.

*/ inline ExecutionEngineConfig& WithType(ExecutionEngineType&& value) { SetType(std::move(value)); return *this;} /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline const Aws::String& GetMasterInstanceSecurityGroupId() const{ return m_masterInstanceSecurityGroupId; } /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline bool MasterInstanceSecurityGroupIdHasBeenSet() const { return m_masterInstanceSecurityGroupIdHasBeenSet; } /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline void SetMasterInstanceSecurityGroupId(const Aws::String& value) { m_masterInstanceSecurityGroupIdHasBeenSet = true; m_masterInstanceSecurityGroupId = value; } /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline void SetMasterInstanceSecurityGroupId(Aws::String&& value) { m_masterInstanceSecurityGroupIdHasBeenSet = true; m_masterInstanceSecurityGroupId = std::move(value); } /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline void SetMasterInstanceSecurityGroupId(const char* value) { m_masterInstanceSecurityGroupIdHasBeenSet = true; m_masterInstanceSecurityGroupId.assign(value); } /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline ExecutionEngineConfig& WithMasterInstanceSecurityGroupId(const Aws::String& value) { SetMasterInstanceSecurityGroupId(value); return *this;} /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline ExecutionEngineConfig& WithMasterInstanceSecurityGroupId(Aws::String&& value) { SetMasterInstanceSecurityGroupId(std::move(value)); return *this;} /** *

An optional unique ID of an Amazon EC2 security group to associate with the * master instance of the Amazon EMR cluster for this notebook execution. For more * information see Specifying * Amazon EC2 Security Groups for Amazon EMR Notebooks in the EMR Management * Guide.

*/ inline ExecutionEngineConfig& WithMasterInstanceSecurityGroupId(const char* value) { SetMasterInstanceSecurityGroupId(value); return *this;} /** *

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

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

The execution role ARN required for the notebook execution.

*/ inline ExecutionEngineConfig& WithExecutionRoleArn(const char* value) { SetExecutionRoleArn(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; ExecutionEngineType m_type; bool m_typeHasBeenSet = false; Aws::String m_masterInstanceSecurityGroupId; bool m_masterInstanceSecurityGroupIdHasBeenSet = false; Aws::String m_executionRoleArn; bool m_executionRoleArnHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws