1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/elasticmapreduce/EMR_EXPORTS.h> 8 #include <aws/elasticmapreduce/EMRRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/elasticmapreduce/model/StepConfig.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace EMR 17 { 18 namespace Model 19 { 20 21 /** 22 * <p> The input argument to the <a>AddJobFlowSteps</a> operation. </p><p><h3>See 23 * Also:</h3> <a 24 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowStepsInput">AWS 25 * API Reference</a></p> 26 */ 27 class AWS_EMR_API AddJobFlowStepsRequest : public EMRRequest 28 { 29 public: 30 AddJobFlowStepsRequest(); 31 32 // Service request name is the Operation name which will send this request out, 33 // each operation should has unique request name, so that we can get operation's name from this request. 34 // Note: this is not true for response, multiple operations may have the same response name, 35 // so we can not get operation's name from response. GetServiceRequestName()36 inline virtual const char* GetServiceRequestName() const override { return "AddJobFlowSteps"; } 37 38 Aws::String SerializePayload() const override; 39 40 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 41 42 43 /** 44 * <p>A string that uniquely identifies the job flow. This identifier is returned 45 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 46 */ GetJobFlowId()47 inline const Aws::String& GetJobFlowId() const{ return m_jobFlowId; } 48 49 /** 50 * <p>A string that uniquely identifies the job flow. This identifier is returned 51 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 52 */ JobFlowIdHasBeenSet()53 inline bool JobFlowIdHasBeenSet() const { return m_jobFlowIdHasBeenSet; } 54 55 /** 56 * <p>A string that uniquely identifies the job flow. This identifier is returned 57 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 58 */ SetJobFlowId(const Aws::String & value)59 inline void SetJobFlowId(const Aws::String& value) { m_jobFlowIdHasBeenSet = true; m_jobFlowId = value; } 60 61 /** 62 * <p>A string that uniquely identifies the job flow. This identifier is returned 63 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 64 */ SetJobFlowId(Aws::String && value)65 inline void SetJobFlowId(Aws::String&& value) { m_jobFlowIdHasBeenSet = true; m_jobFlowId = std::move(value); } 66 67 /** 68 * <p>A string that uniquely identifies the job flow. This identifier is returned 69 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 70 */ SetJobFlowId(const char * value)71 inline void SetJobFlowId(const char* value) { m_jobFlowIdHasBeenSet = true; m_jobFlowId.assign(value); } 72 73 /** 74 * <p>A string that uniquely identifies the job flow. This identifier is returned 75 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 76 */ WithJobFlowId(const Aws::String & value)77 inline AddJobFlowStepsRequest& WithJobFlowId(const Aws::String& value) { SetJobFlowId(value); return *this;} 78 79 /** 80 * <p>A string that uniquely identifies the job flow. This identifier is returned 81 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 82 */ WithJobFlowId(Aws::String && value)83 inline AddJobFlowStepsRequest& WithJobFlowId(Aws::String&& value) { SetJobFlowId(std::move(value)); return *this;} 84 85 /** 86 * <p>A string that uniquely identifies the job flow. This identifier is returned 87 * by <a>RunJobFlow</a> and can also be obtained from <a>ListClusters</a>. </p> 88 */ WithJobFlowId(const char * value)89 inline AddJobFlowStepsRequest& WithJobFlowId(const char* value) { SetJobFlowId(value); return *this;} 90 91 92 /** 93 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 94 */ GetSteps()95 inline const Aws::Vector<StepConfig>& GetSteps() const{ return m_steps; } 96 97 /** 98 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 99 */ StepsHasBeenSet()100 inline bool StepsHasBeenSet() const { return m_stepsHasBeenSet; } 101 102 /** 103 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 104 */ SetSteps(const Aws::Vector<StepConfig> & value)105 inline void SetSteps(const Aws::Vector<StepConfig>& value) { m_stepsHasBeenSet = true; m_steps = value; } 106 107 /** 108 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 109 */ SetSteps(Aws::Vector<StepConfig> && value)110 inline void SetSteps(Aws::Vector<StepConfig>&& value) { m_stepsHasBeenSet = true; m_steps = std::move(value); } 111 112 /** 113 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 114 */ WithSteps(const Aws::Vector<StepConfig> & value)115 inline AddJobFlowStepsRequest& WithSteps(const Aws::Vector<StepConfig>& value) { SetSteps(value); return *this;} 116 117 /** 118 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 119 */ WithSteps(Aws::Vector<StepConfig> && value)120 inline AddJobFlowStepsRequest& WithSteps(Aws::Vector<StepConfig>&& value) { SetSteps(std::move(value)); return *this;} 121 122 /** 123 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 124 */ AddSteps(const StepConfig & value)125 inline AddJobFlowStepsRequest& AddSteps(const StepConfig& value) { m_stepsHasBeenSet = true; m_steps.push_back(value); return *this; } 126 127 /** 128 * <p> A list of <a>StepConfig</a> to be executed by the job flow. </p> 129 */ AddSteps(StepConfig && value)130 inline AddJobFlowStepsRequest& AddSteps(StepConfig&& value) { m_stepsHasBeenSet = true; m_steps.push_back(std::move(value)); return *this; } 131 132 private: 133 134 Aws::String m_jobFlowId; 135 bool m_jobFlowIdHasBeenSet; 136 137 Aws::Vector<StepConfig> m_steps; 138 bool m_stepsHasBeenSet; 139 }; 140 141 } // namespace Model 142 } // namespace EMR 143 } // namespace Aws 144