AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
WorkGroup.h
1
6#pragma once
7#include <aws/athena/Athena_EXPORTS.h>
8#include <aws/athena/model/WorkGroupConfiguration.h>
9#include <aws/athena/model/WorkGroupState.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Athena {
23namespace Model {
24
40class WorkGroup {
41 public:
42 AWS_ATHENA_API WorkGroup() = default;
43 AWS_ATHENA_API WorkGroup(Aws::Utils::Json::JsonView jsonValue);
45 AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const;
46
48
51 inline const Aws::String& GetName() const { return m_name; }
52 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
53 template <typename NameT = Aws::String>
54 void SetName(NameT&& value) {
55 m_nameHasBeenSet = true;
56 m_name = std::forward<NameT>(value);
57 }
58 template <typename NameT = Aws::String>
59 WorkGroup& WithName(NameT&& value) {
60 SetName(std::forward<NameT>(value));
61 return *this;
62 }
64
66
69 inline WorkGroupState GetState() const { return m_state; }
70 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
71 inline void SetState(WorkGroupState value) {
72 m_stateHasBeenSet = true;
73 m_state = value;
74 }
76 SetState(value);
77 return *this;
78 }
80
82
93 inline const WorkGroupConfiguration& GetConfiguration() const { return m_configuration; }
94 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
95 template <typename ConfigurationT = WorkGroupConfiguration>
96 void SetConfiguration(ConfigurationT&& value) {
97 m_configurationHasBeenSet = true;
98 m_configuration = std::forward<ConfigurationT>(value);
99 }
100 template <typename ConfigurationT = WorkGroupConfiguration>
101 WorkGroup& WithConfiguration(ConfigurationT&& value) {
102 SetConfiguration(std::forward<ConfigurationT>(value));
103 return *this;
104 }
106
108
111 inline const Aws::String& GetDescription() const { return m_description; }
112 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
113 template <typename DescriptionT = Aws::String>
114 void SetDescription(DescriptionT&& value) {
115 m_descriptionHasBeenSet = true;
116 m_description = std::forward<DescriptionT>(value);
117 }
118 template <typename DescriptionT = Aws::String>
119 WorkGroup& WithDescription(DescriptionT&& value) {
120 SetDescription(std::forward<DescriptionT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
130 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
131 template <typename CreationTimeT = Aws::Utils::DateTime>
132 void SetCreationTime(CreationTimeT&& value) {
133 m_creationTimeHasBeenSet = true;
134 m_creationTime = std::forward<CreationTimeT>(value);
135 }
136 template <typename CreationTimeT = Aws::Utils::DateTime>
137 WorkGroup& WithCreationTime(CreationTimeT&& value) {
138 SetCreationTime(std::forward<CreationTimeT>(value));
139 return *this;
140 }
142
144
148 inline const Aws::String& GetIdentityCenterApplicationArn() const { return m_identityCenterApplicationArn; }
149 inline bool IdentityCenterApplicationArnHasBeenSet() const { return m_identityCenterApplicationArnHasBeenSet; }
150 template <typename IdentityCenterApplicationArnT = Aws::String>
151 void SetIdentityCenterApplicationArn(IdentityCenterApplicationArnT&& value) {
152 m_identityCenterApplicationArnHasBeenSet = true;
153 m_identityCenterApplicationArn = std::forward<IdentityCenterApplicationArnT>(value);
154 }
155 template <typename IdentityCenterApplicationArnT = Aws::String>
156 WorkGroup& WithIdentityCenterApplicationArn(IdentityCenterApplicationArnT&& value) {
157 SetIdentityCenterApplicationArn(std::forward<IdentityCenterApplicationArnT>(value));
158 return *this;
159 }
161 private:
162 Aws::String m_name;
163
165
166 WorkGroupConfiguration m_configuration;
167
168 Aws::String m_description;
169
170 Aws::Utils::DateTime m_creationTime{};
171
172 Aws::String m_identityCenterApplicationArn;
173 bool m_nameHasBeenSet = false;
174 bool m_stateHasBeenSet = false;
175 bool m_configurationHasBeenSet = false;
176 bool m_descriptionHasBeenSet = false;
177 bool m_creationTimeHasBeenSet = false;
178 bool m_identityCenterApplicationArnHasBeenSet = false;
179};
180
181} // namespace Model
182} // namespace Athena
183} // namespace Aws
bool DescriptionHasBeenSet() const
Definition WorkGroup.h:112
WorkGroup & WithDescription(DescriptionT &&value)
Definition WorkGroup.h:119
const WorkGroupConfiguration & GetConfiguration() const
Definition WorkGroup.h:93
bool ConfigurationHasBeenSet() const
Definition WorkGroup.h:94
AWS_ATHENA_API WorkGroup & operator=(Aws::Utils::Json::JsonView jsonValue)
WorkGroup & WithState(WorkGroupState value)
Definition WorkGroup.h:75
AWS_ATHENA_API WorkGroup()=default
void SetState(WorkGroupState value)
Definition WorkGroup.h:71
bool CreationTimeHasBeenSet() const
Definition WorkGroup.h:130
bool IdentityCenterApplicationArnHasBeenSet() const
Definition WorkGroup.h:149
const Aws::String & GetDescription() const
Definition WorkGroup.h:111
WorkGroup & WithName(NameT &&value)
Definition WorkGroup.h:59
void SetDescription(DescriptionT &&value)
Definition WorkGroup.h:114
WorkGroup & WithConfiguration(ConfigurationT &&value)
Definition WorkGroup.h:101
const Aws::String & GetIdentityCenterApplicationArn() const
Definition WorkGroup.h:148
void SetConfiguration(ConfigurationT &&value)
Definition WorkGroup.h:96
void SetName(NameT &&value)
Definition WorkGroup.h:54
AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Utils::DateTime & GetCreationTime() const
Definition WorkGroup.h:129
WorkGroup & WithIdentityCenterApplicationArn(IdentityCenterApplicationArnT &&value)
Definition WorkGroup.h:156
WorkGroup & WithCreationTime(CreationTimeT &&value)
Definition WorkGroup.h:137
void SetIdentityCenterApplicationArn(IdentityCenterApplicationArnT &&value)
Definition WorkGroup.h:151
void SetCreationTime(CreationTimeT &&value)
Definition WorkGroup.h:132
AWS_ATHENA_API WorkGroup(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
Definition WorkGroup.h:51
WorkGroupState GetState() const
Definition WorkGroup.h:69
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue