AWS SDK for C++

AWS SDK for C++ Version 1.11.830

Loading...
Searching...
No Matches
StartSessionRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/elasticmapreduce/EMRRequest.h>
10#include <aws/elasticmapreduce/EMR_EXPORTS.h>
11#include <aws/elasticmapreduce/model/Configuration.h>
12#include <aws/elasticmapreduce/model/SessionMonitoringConfiguration.h>
13#include <aws/elasticmapreduce/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EMR {
19namespace Model {
20
28 public:
29 AWS_EMR_API StartSessionRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "StartSession"; }
36
37 AWS_EMR_API Aws::String SerializePayload() const override;
38
40
42
45 inline const Aws::String& GetName() const { return m_name; }
46 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
47 template <typename NameT = Aws::String>
48 void SetName(NameT&& value) {
49 m_nameHasBeenSet = true;
50 m_name = std::forward<NameT>(value);
51 }
52 template <typename NameT = Aws::String>
53 StartSessionRequest& WithName(NameT&& value) {
54 SetName(std::forward<NameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetClusterId() const { return m_clusterId; }
64 inline bool ClusterIdHasBeenSet() const { return m_clusterIdHasBeenSet; }
65 template <typename ClusterIdT = Aws::String>
66 void SetClusterId(ClusterIdT&& value) {
67 m_clusterIdHasBeenSet = true;
68 m_clusterId = std::forward<ClusterIdT>(value);
69 }
70 template <typename ClusterIdT = Aws::String>
71 StartSessionRequest& WithClusterId(ClusterIdT&& value) {
72 SetClusterId(std::forward<ClusterIdT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetExecutionRoleArn() const { return m_executionRoleArn; }
83 inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
84 template <typename ExecutionRoleArnT = Aws::String>
85 void SetExecutionRoleArn(ExecutionRoleArnT&& value) {
86 m_executionRoleArnHasBeenSet = true;
87 m_executionRoleArn = std::forward<ExecutionRoleArnT>(value);
88 }
89 template <typename ExecutionRoleArnT = Aws::String>
90 StartSessionRequest& WithExecutionRoleArn(ExecutionRoleArnT&& value) {
91 SetExecutionRoleArn(std::forward<ExecutionRoleArnT>(value));
92 return *this;
93 }
95
97
101 inline const Aws::Vector<Configuration>& GetEngineConfigurations() const { return m_engineConfigurations; }
102 inline bool EngineConfigurationsHasBeenSet() const { return m_engineConfigurationsHasBeenSet; }
103 template <typename EngineConfigurationsT = Aws::Vector<Configuration>>
104 void SetEngineConfigurations(EngineConfigurationsT&& value) {
105 m_engineConfigurationsHasBeenSet = true;
106 m_engineConfigurations = std::forward<EngineConfigurationsT>(value);
107 }
108 template <typename EngineConfigurationsT = Aws::Vector<Configuration>>
109 StartSessionRequest& WithEngineConfigurations(EngineConfigurationsT&& value) {
110 SetEngineConfigurations(std::forward<EngineConfigurationsT>(value));
111 return *this;
112 }
113 template <typename EngineConfigurationsT = Configuration>
114 StartSessionRequest& AddEngineConfigurations(EngineConfigurationsT&& value) {
115 m_engineConfigurationsHasBeenSet = true;
116 m_engineConfigurations.emplace_back(std::forward<EngineConfigurationsT>(value));
117 return *this;
118 }
120
122
126 inline const SessionMonitoringConfiguration& GetMonitoringConfiguration() const { return m_monitoringConfiguration; }
127 inline bool MonitoringConfigurationHasBeenSet() const { return m_monitoringConfigurationHasBeenSet; }
128 template <typename MonitoringConfigurationT = SessionMonitoringConfiguration>
129 void SetMonitoringConfiguration(MonitoringConfigurationT&& value) {
130 m_monitoringConfigurationHasBeenSet = true;
131 m_monitoringConfiguration = std::forward<MonitoringConfigurationT>(value);
132 }
133 template <typename MonitoringConfigurationT = SessionMonitoringConfiguration>
134 StartSessionRequest& WithMonitoringConfiguration(MonitoringConfigurationT&& value) {
135 SetMonitoringConfiguration(std::forward<MonitoringConfigurationT>(value));
136 return *this;
137 }
139
141
145 inline long long GetSessionIdleTimeoutInMinutes() const { return m_sessionIdleTimeoutInMinutes; }
146 inline bool SessionIdleTimeoutInMinutesHasBeenSet() const { return m_sessionIdleTimeoutInMinutesHasBeenSet; }
147 inline void SetSessionIdleTimeoutInMinutes(long long value) {
148 m_sessionIdleTimeoutInMinutesHasBeenSet = true;
149 m_sessionIdleTimeoutInMinutes = value;
150 }
153 return *this;
154 }
156
158
164 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
165 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
166 template <typename ClientRequestTokenT = Aws::String>
167 void SetClientRequestToken(ClientRequestTokenT&& value) {
168 m_clientRequestTokenHasBeenSet = true;
169 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
170 }
171 template <typename ClientRequestTokenT = Aws::String>
172 StartSessionRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
173 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
174 return *this;
175 }
177
179
182 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
183 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
184 template <typename TagsT = Aws::Vector<Tag>>
185 void SetTags(TagsT&& value) {
186 m_tagsHasBeenSet = true;
187 m_tags = std::forward<TagsT>(value);
188 }
189 template <typename TagsT = Aws::Vector<Tag>>
191 SetTags(std::forward<TagsT>(value));
192 return *this;
193 }
194 template <typename TagsT = Tag>
195 StartSessionRequest& AddTags(TagsT&& value) {
196 m_tagsHasBeenSet = true;
197 m_tags.emplace_back(std::forward<TagsT>(value));
198 return *this;
199 }
201 private:
202 Aws::String m_name;
203
204 Aws::String m_clusterId;
205
206 Aws::String m_executionRoleArn;
207
208 Aws::Vector<Configuration> m_engineConfigurations;
209
210 SessionMonitoringConfiguration m_monitoringConfiguration;
211
212 long long m_sessionIdleTimeoutInMinutes{0};
213
214 Aws::String m_clientRequestToken;
215
216 Aws::Vector<Tag> m_tags;
217 bool m_nameHasBeenSet = false;
218 bool m_clusterIdHasBeenSet = false;
219 bool m_executionRoleArnHasBeenSet = false;
220 bool m_engineConfigurationsHasBeenSet = false;
221 bool m_monitoringConfigurationHasBeenSet = false;
222 bool m_sessionIdleTimeoutInMinutesHasBeenSet = false;
223 bool m_clientRequestTokenHasBeenSet = false;
224 bool m_tagsHasBeenSet = false;
225};
226
227} // namespace Model
228} // namespace EMR
229} // namespace Aws
const Aws::Vector< Configuration > & GetEngineConfigurations() const
StartSessionRequest & AddEngineConfigurations(EngineConfigurationsT &&value)
void SetMonitoringConfiguration(MonitoringConfigurationT &&value)
const SessionMonitoringConfiguration & GetMonitoringConfiguration() const
StartSessionRequest & AddTags(TagsT &&value)
StartSessionRequest & WithClientRequestToken(ClientRequestTokenT &&value)
StartSessionRequest & WithExecutionRoleArn(ExecutionRoleArnT &&value)
void SetSessionIdleTimeoutInMinutes(long long value)
AWS_EMR_API StartSessionRequest()=default
const Aws::Vector< Tag > & GetTags() const
void SetClientRequestToken(ClientRequestTokenT &&value)
const Aws::String & GetExecutionRoleArn() const
AWS_EMR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::String & GetClusterId() const
StartSessionRequest & WithTags(TagsT &&value)
AWS_EMR_API Aws::String SerializePayload() const override
virtual const char * GetServiceRequestName() const override
void SetEngineConfigurations(EngineConfigurationsT &&value)
StartSessionRequest & WithMonitoringConfiguration(MonitoringConfigurationT &&value)
const Aws::String & GetName() const
const Aws::String & GetClientRequestToken() const
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
StartSessionRequest & WithEngineConfigurations(EngineConfigurationsT &&value)
StartSessionRequest & WithSessionIdleTimeoutInMinutes(long long value)
StartSessionRequest & WithName(NameT &&value)
StartSessionRequest & WithClusterId(ClusterIdT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector