AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
StartSessionRequest.h
1
6#pragma once
7#include <aws/athena/AthenaRequest.h>
8#include <aws/athena/Athena_EXPORTS.h>
9#include <aws/athena/model/EngineConfiguration.h>
10#include <aws/athena/model/MonitoringConfiguration.h>
11#include <aws/athena/model/Tag.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Athena {
19namespace Model {
20
24 public:
25 AWS_ATHENA_API StartSessionRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "StartSession"; }
32
33 AWS_ATHENA_API Aws::String SerializePayload() const override;
34
36
38
41 inline const Aws::String& GetDescription() const { return m_description; }
42 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
43 template <typename DescriptionT = Aws::String>
44 void SetDescription(DescriptionT&& value) {
45 m_descriptionHasBeenSet = true;
46 m_description = std::forward<DescriptionT>(value);
47 }
48 template <typename DescriptionT = Aws::String>
49 StartSessionRequest& WithDescription(DescriptionT&& value) {
50 SetDescription(std::forward<DescriptionT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetWorkGroup() const { return m_workGroup; }
60 inline bool WorkGroupHasBeenSet() const { return m_workGroupHasBeenSet; }
61 template <typename WorkGroupT = Aws::String>
62 void SetWorkGroup(WorkGroupT&& value) {
63 m_workGroupHasBeenSet = true;
64 m_workGroup = std::forward<WorkGroupT>(value);
65 }
66 template <typename WorkGroupT = Aws::String>
67 StartSessionRequest& WithWorkGroup(WorkGroupT&& value) {
68 SetWorkGroup(std::forward<WorkGroupT>(value));
69 return *this;
70 }
72
74
78 inline const EngineConfiguration& GetEngineConfiguration() const { return m_engineConfiguration; }
79 inline bool EngineConfigurationHasBeenSet() const { return m_engineConfigurationHasBeenSet; }
80 template <typename EngineConfigurationT = EngineConfiguration>
81 void SetEngineConfiguration(EngineConfigurationT&& value) {
82 m_engineConfigurationHasBeenSet = true;
83 m_engineConfiguration = std::forward<EngineConfigurationT>(value);
84 }
85 template <typename EngineConfigurationT = EngineConfiguration>
86 StartSessionRequest& WithEngineConfiguration(EngineConfigurationT&& value) {
87 SetEngineConfiguration(std::forward<EngineConfigurationT>(value));
88 return *this;
89 }
91
93
98 inline const Aws::String& GetExecutionRole() const { return m_executionRole; }
99 inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; }
100 template <typename ExecutionRoleT = Aws::String>
101 void SetExecutionRole(ExecutionRoleT&& value) {
102 m_executionRoleHasBeenSet = true;
103 m_executionRole = std::forward<ExecutionRoleT>(value);
104 }
105 template <typename ExecutionRoleT = Aws::String>
106 StartSessionRequest& WithExecutionRole(ExecutionRoleT&& value) {
107 SetExecutionRole(std::forward<ExecutionRoleT>(value));
108 return *this;
109 }
111
113
117 inline const MonitoringConfiguration& GetMonitoringConfiguration() const { return m_monitoringConfiguration; }
118 inline bool MonitoringConfigurationHasBeenSet() const { return m_monitoringConfigurationHasBeenSet; }
119 template <typename MonitoringConfigurationT = MonitoringConfiguration>
120 void SetMonitoringConfiguration(MonitoringConfigurationT&& value) {
121 m_monitoringConfigurationHasBeenSet = true;
122 m_monitoringConfiguration = std::forward<MonitoringConfigurationT>(value);
123 }
124 template <typename MonitoringConfigurationT = MonitoringConfiguration>
125 StartSessionRequest& WithMonitoringConfiguration(MonitoringConfigurationT&& value) {
126 SetMonitoringConfiguration(std::forward<MonitoringConfigurationT>(value));
127 return *this;
128 }
130
132
140 inline const Aws::String& GetNotebookVersion() const { return m_notebookVersion; }
141 inline bool NotebookVersionHasBeenSet() const { return m_notebookVersionHasBeenSet; }
142 template <typename NotebookVersionT = Aws::String>
143 void SetNotebookVersion(NotebookVersionT&& value) {
144 m_notebookVersionHasBeenSet = true;
145 m_notebookVersion = std::forward<NotebookVersionT>(value);
146 }
147 template <typename NotebookVersionT = Aws::String>
148 StartSessionRequest& WithNotebookVersion(NotebookVersionT&& value) {
149 SetNotebookVersion(std::forward<NotebookVersionT>(value));
150 return *this;
151 }
153
155
158 inline int GetSessionIdleTimeoutInMinutes() const { return m_sessionIdleTimeoutInMinutes; }
159 inline bool SessionIdleTimeoutInMinutesHasBeenSet() const { return m_sessionIdleTimeoutInMinutesHasBeenSet; }
160 inline void SetSessionIdleTimeoutInMinutes(int value) {
161 m_sessionIdleTimeoutInMinutesHasBeenSet = true;
162 m_sessionIdleTimeoutInMinutes = value;
163 }
166 return *this;
167 }
169
171
182 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
183 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
184 template <typename ClientRequestTokenT = Aws::String>
185 void SetClientRequestToken(ClientRequestTokenT&& value) {
186 m_clientRequestTokenHasBeenSet = true;
187 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
188 }
189 template <typename ClientRequestTokenT = Aws::String>
190 StartSessionRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
191 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
192 return *this;
193 }
195
197
200 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
201 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
202 template <typename TagsT = Aws::Vector<Tag>>
203 void SetTags(TagsT&& value) {
204 m_tagsHasBeenSet = true;
205 m_tags = std::forward<TagsT>(value);
206 }
207 template <typename TagsT = Aws::Vector<Tag>>
209 SetTags(std::forward<TagsT>(value));
210 return *this;
211 }
212 template <typename TagsT = Tag>
213 StartSessionRequest& AddTags(TagsT&& value) {
214 m_tagsHasBeenSet = true;
215 m_tags.emplace_back(std::forward<TagsT>(value));
216 return *this;
217 }
219
221
224 inline bool GetCopyWorkGroupTags() const { return m_copyWorkGroupTags; }
225 inline bool CopyWorkGroupTagsHasBeenSet() const { return m_copyWorkGroupTagsHasBeenSet; }
226 inline void SetCopyWorkGroupTags(bool value) {
227 m_copyWorkGroupTagsHasBeenSet = true;
228 m_copyWorkGroupTags = value;
229 }
232 return *this;
233 }
235 private:
236 Aws::String m_description;
237
238 Aws::String m_workGroup;
239
240 EngineConfiguration m_engineConfiguration;
241
242 Aws::String m_executionRole;
243
244 MonitoringConfiguration m_monitoringConfiguration;
245
246 Aws::String m_notebookVersion;
247
248 int m_sessionIdleTimeoutInMinutes{0};
249
250 Aws::String m_clientRequestToken;
251
252 Aws::Vector<Tag> m_tags;
253
254 bool m_copyWorkGroupTags{false};
255 bool m_descriptionHasBeenSet = false;
256 bool m_workGroupHasBeenSet = false;
257 bool m_engineConfigurationHasBeenSet = false;
258 bool m_executionRoleHasBeenSet = false;
259 bool m_monitoringConfigurationHasBeenSet = false;
260 bool m_notebookVersionHasBeenSet = false;
261 bool m_sessionIdleTimeoutInMinutesHasBeenSet = false;
262 bool m_clientRequestTokenHasBeenSet = false;
263 bool m_tagsHasBeenSet = false;
264 bool m_copyWorkGroupTagsHasBeenSet = false;
265};
266
267} // namespace Model
268} // namespace Athena
269} // namespace Aws
const Aws::String & GetExecutionRole() const
AWS_ATHENA_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const EngineConfiguration & GetEngineConfiguration() const
StartSessionRequest & WithTags(TagsT &&value)
const Aws::String & GetClientRequestToken() const
AWS_ATHENA_API Aws::String SerializePayload() const override
void SetEngineConfiguration(EngineConfigurationT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
StartSessionRequest & WithWorkGroup(WorkGroupT &&value)
const Aws::Vector< Tag > & GetTags() const
StartSessionRequest & WithExecutionRole(ExecutionRoleT &&value)
virtual const char * GetServiceRequestName() const override
StartSessionRequest & WithClientRequestToken(ClientRequestTokenT &&value)
void SetExecutionRole(ExecutionRoleT &&value)
StartSessionRequest & WithNotebookVersion(NotebookVersionT &&value)
StartSessionRequest & WithMonitoringConfiguration(MonitoringConfigurationT &&value)
void SetMonitoringConfiguration(MonitoringConfigurationT &&value)
StartSessionRequest & WithDescription(DescriptionT &&value)
StartSessionRequest & WithCopyWorkGroupTags(bool value)
const Aws::String & GetNotebookVersion() const
const MonitoringConfiguration & GetMonitoringConfiguration() const
StartSessionRequest & WithEngineConfiguration(EngineConfigurationT &&value)
AWS_ATHENA_API StartSessionRequest()=default
void SetNotebookVersion(NotebookVersionT &&value)
const Aws::String & GetDescription() const
StartSessionRequest & WithSessionIdleTimeoutInMinutes(int value)
StartSessionRequest & AddTags(TagsT &&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