AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
RedshiftIdcApplication.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/redshift/Redshift_EXPORTS.h>
11#include <aws/redshift/model/ApplicationType.h>
12#include <aws/redshift/model/AuthorizedTokenIssuer.h>
13#include <aws/redshift/model/ServiceIntegrationsUnion.h>
14#include <aws/redshift/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Xml {
21class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace Redshift {
25namespace Model {
26
34 public:
35 AWS_REDSHIFT_API RedshiftIdcApplication() = default;
36 AWS_REDSHIFT_API RedshiftIdcApplication(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
43
47 inline const Aws::String& GetIdcInstanceArn() const { return m_idcInstanceArn; }
48 inline bool IdcInstanceArnHasBeenSet() const { return m_idcInstanceArnHasBeenSet; }
49 template <typename IdcInstanceArnT = Aws::String>
50 void SetIdcInstanceArn(IdcInstanceArnT&& value) {
51 m_idcInstanceArnHasBeenSet = true;
52 m_idcInstanceArn = std::forward<IdcInstanceArnT>(value);
53 }
54 template <typename IdcInstanceArnT = Aws::String>
55 RedshiftIdcApplication& WithIdcInstanceArn(IdcInstanceArnT&& value) {
56 SetIdcInstanceArn(std::forward<IdcInstanceArnT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetRedshiftIdcApplicationName() const { return m_redshiftIdcApplicationName; }
66 inline bool RedshiftIdcApplicationNameHasBeenSet() const { return m_redshiftIdcApplicationNameHasBeenSet; }
67 template <typename RedshiftIdcApplicationNameT = Aws::String>
68 void SetRedshiftIdcApplicationName(RedshiftIdcApplicationNameT&& value) {
69 m_redshiftIdcApplicationNameHasBeenSet = true;
70 m_redshiftIdcApplicationName = std::forward<RedshiftIdcApplicationNameT>(value);
71 }
72 template <typename RedshiftIdcApplicationNameT = Aws::String>
73 RedshiftIdcApplication& WithRedshiftIdcApplicationName(RedshiftIdcApplicationNameT&& value) {
74 SetRedshiftIdcApplicationName(std::forward<RedshiftIdcApplicationNameT>(value));
75 return *this;
76 }
78
80
84 inline const Aws::String& GetRedshiftIdcApplicationArn() const { return m_redshiftIdcApplicationArn; }
85 inline bool RedshiftIdcApplicationArnHasBeenSet() const { return m_redshiftIdcApplicationArnHasBeenSet; }
86 template <typename RedshiftIdcApplicationArnT = Aws::String>
87 void SetRedshiftIdcApplicationArn(RedshiftIdcApplicationArnT&& value) {
88 m_redshiftIdcApplicationArnHasBeenSet = true;
89 m_redshiftIdcApplicationArn = std::forward<RedshiftIdcApplicationArnT>(value);
90 }
91 template <typename RedshiftIdcApplicationArnT = Aws::String>
92 RedshiftIdcApplication& WithRedshiftIdcApplicationArn(RedshiftIdcApplicationArnT&& value) {
93 SetRedshiftIdcApplicationArn(std::forward<RedshiftIdcApplicationArnT>(value));
94 return *this;
95 }
97
99
104 inline const Aws::String& GetIdentityNamespace() const { return m_identityNamespace; }
105 inline bool IdentityNamespaceHasBeenSet() const { return m_identityNamespaceHasBeenSet; }
106 template <typename IdentityNamespaceT = Aws::String>
107 void SetIdentityNamespace(IdentityNamespaceT&& value) {
108 m_identityNamespaceHasBeenSet = true;
109 m_identityNamespace = std::forward<IdentityNamespaceT>(value);
110 }
111 template <typename IdentityNamespaceT = Aws::String>
112 RedshiftIdcApplication& WithIdentityNamespace(IdentityNamespaceT&& value) {
113 SetIdentityNamespace(std::forward<IdentityNamespaceT>(value));
114 return *this;
115 }
117
119
123 inline const Aws::String& GetIdcDisplayName() const { return m_idcDisplayName; }
124 inline bool IdcDisplayNameHasBeenSet() const { return m_idcDisplayNameHasBeenSet; }
125 template <typename IdcDisplayNameT = Aws::String>
126 void SetIdcDisplayName(IdcDisplayNameT&& value) {
127 m_idcDisplayNameHasBeenSet = true;
128 m_idcDisplayName = std::forward<IdcDisplayNameT>(value);
129 }
130 template <typename IdcDisplayNameT = Aws::String>
131 RedshiftIdcApplication& WithIdcDisplayName(IdcDisplayNameT&& value) {
132 SetIdcDisplayName(std::forward<IdcDisplayNameT>(value));
133 return *this;
134 }
136
138
142 inline const Aws::String& GetIamRoleArn() const { return m_iamRoleArn; }
143 inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; }
144 template <typename IamRoleArnT = Aws::String>
145 void SetIamRoleArn(IamRoleArnT&& value) {
146 m_iamRoleArnHasBeenSet = true;
147 m_iamRoleArn = std::forward<IamRoleArnT>(value);
148 }
149 template <typename IamRoleArnT = Aws::String>
151 SetIamRoleArn(std::forward<IamRoleArnT>(value));
152 return *this;
153 }
155
157
160 inline const Aws::String& GetIdcManagedApplicationArn() const { return m_idcManagedApplicationArn; }
161 inline bool IdcManagedApplicationArnHasBeenSet() const { return m_idcManagedApplicationArnHasBeenSet; }
162 template <typename IdcManagedApplicationArnT = Aws::String>
163 void SetIdcManagedApplicationArn(IdcManagedApplicationArnT&& value) {
164 m_idcManagedApplicationArnHasBeenSet = true;
165 m_idcManagedApplicationArn = std::forward<IdcManagedApplicationArnT>(value);
166 }
167 template <typename IdcManagedApplicationArnT = Aws::String>
168 RedshiftIdcApplication& WithIdcManagedApplicationArn(IdcManagedApplicationArnT&& value) {
169 SetIdcManagedApplicationArn(std::forward<IdcManagedApplicationArnT>(value));
170 return *this;
171 }
173
175
179 inline const Aws::String& GetIdcOnboardStatus() const { return m_idcOnboardStatus; }
180 inline bool IdcOnboardStatusHasBeenSet() const { return m_idcOnboardStatusHasBeenSet; }
181 template <typename IdcOnboardStatusT = Aws::String>
182 void SetIdcOnboardStatus(IdcOnboardStatusT&& value) {
183 m_idcOnboardStatusHasBeenSet = true;
184 m_idcOnboardStatus = std::forward<IdcOnboardStatusT>(value);
185 }
186 template <typename IdcOnboardStatusT = Aws::String>
187 RedshiftIdcApplication& WithIdcOnboardStatus(IdcOnboardStatusT&& value) {
188 SetIdcOnboardStatus(std::forward<IdcOnboardStatusT>(value));
189 return *this;
190 }
192
194
198 inline const Aws::Vector<AuthorizedTokenIssuer>& GetAuthorizedTokenIssuerList() const { return m_authorizedTokenIssuerList; }
199 inline bool AuthorizedTokenIssuerListHasBeenSet() const { return m_authorizedTokenIssuerListHasBeenSet; }
200 template <typename AuthorizedTokenIssuerListT = Aws::Vector<AuthorizedTokenIssuer>>
201 void SetAuthorizedTokenIssuerList(AuthorizedTokenIssuerListT&& value) {
202 m_authorizedTokenIssuerListHasBeenSet = true;
203 m_authorizedTokenIssuerList = std::forward<AuthorizedTokenIssuerListT>(value);
204 }
205 template <typename AuthorizedTokenIssuerListT = Aws::Vector<AuthorizedTokenIssuer>>
206 RedshiftIdcApplication& WithAuthorizedTokenIssuerList(AuthorizedTokenIssuerListT&& value) {
207 SetAuthorizedTokenIssuerList(std::forward<AuthorizedTokenIssuerListT>(value));
208 return *this;
209 }
210 template <typename AuthorizedTokenIssuerListT = AuthorizedTokenIssuer>
211 RedshiftIdcApplication& AddAuthorizedTokenIssuerList(AuthorizedTokenIssuerListT&& value) {
212 m_authorizedTokenIssuerListHasBeenSet = true;
213 m_authorizedTokenIssuerList.emplace_back(std::forward<AuthorizedTokenIssuerListT>(value));
214 return *this;
215 }
217
219
223 inline const Aws::Vector<ServiceIntegrationsUnion>& GetServiceIntegrations() const { return m_serviceIntegrations; }
224 inline bool ServiceIntegrationsHasBeenSet() const { return m_serviceIntegrationsHasBeenSet; }
225 template <typename ServiceIntegrationsT = Aws::Vector<ServiceIntegrationsUnion>>
226 void SetServiceIntegrations(ServiceIntegrationsT&& value) {
227 m_serviceIntegrationsHasBeenSet = true;
228 m_serviceIntegrations = std::forward<ServiceIntegrationsT>(value);
229 }
230 template <typename ServiceIntegrationsT = Aws::Vector<ServiceIntegrationsUnion>>
231 RedshiftIdcApplication& WithServiceIntegrations(ServiceIntegrationsT&& value) {
232 SetServiceIntegrations(std::forward<ServiceIntegrationsT>(value));
233 return *this;
234 }
235 template <typename ServiceIntegrationsT = ServiceIntegrationsUnion>
236 RedshiftIdcApplication& AddServiceIntegrations(ServiceIntegrationsT&& value) {
237 m_serviceIntegrationsHasBeenSet = true;
238 m_serviceIntegrations.emplace_back(std::forward<ServiceIntegrationsT>(value));
239 return *this;
240 }
242
244
249 inline ApplicationType GetApplicationType() const { return m_applicationType; }
250 inline bool ApplicationTypeHasBeenSet() const { return m_applicationTypeHasBeenSet; }
252 m_applicationTypeHasBeenSet = true;
253 m_applicationType = value;
254 }
256 SetApplicationType(value);
257 return *this;
258 }
260
262
265 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
266 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
267 template <typename TagsT = Aws::Vector<Tag>>
268 void SetTags(TagsT&& value) {
269 m_tagsHasBeenSet = true;
270 m_tags = std::forward<TagsT>(value);
271 }
272 template <typename TagsT = Aws::Vector<Tag>>
274 SetTags(std::forward<TagsT>(value));
275 return *this;
276 }
277 template <typename TagsT = Tag>
279 m_tagsHasBeenSet = true;
280 m_tags.emplace_back(std::forward<TagsT>(value));
281 return *this;
282 }
284
286
291 inline const Aws::Vector<Aws::String>& GetSsoTagKeys() const { return m_ssoTagKeys; }
292 inline bool SsoTagKeysHasBeenSet() const { return m_ssoTagKeysHasBeenSet; }
293 template <typename SsoTagKeysT = Aws::Vector<Aws::String>>
294 void SetSsoTagKeys(SsoTagKeysT&& value) {
295 m_ssoTagKeysHasBeenSet = true;
296 m_ssoTagKeys = std::forward<SsoTagKeysT>(value);
297 }
298 template <typename SsoTagKeysT = Aws::Vector<Aws::String>>
300 SetSsoTagKeys(std::forward<SsoTagKeysT>(value));
301 return *this;
302 }
303 template <typename SsoTagKeysT = Aws::String>
304 RedshiftIdcApplication& AddSsoTagKeys(SsoTagKeysT&& value) {
305 m_ssoTagKeysHasBeenSet = true;
306 m_ssoTagKeys.emplace_back(std::forward<SsoTagKeysT>(value));
307 return *this;
308 }
310 private:
311 Aws::String m_idcInstanceArn;
312
313 Aws::String m_redshiftIdcApplicationName;
314
315 Aws::String m_redshiftIdcApplicationArn;
316
317 Aws::String m_identityNamespace;
318
319 Aws::String m_idcDisplayName;
320
321 Aws::String m_iamRoleArn;
322
323 Aws::String m_idcManagedApplicationArn;
324
325 Aws::String m_idcOnboardStatus;
326
327 Aws::Vector<AuthorizedTokenIssuer> m_authorizedTokenIssuerList;
328
329 Aws::Vector<ServiceIntegrationsUnion> m_serviceIntegrations;
330
331 ApplicationType m_applicationType{ApplicationType::NOT_SET};
332
333 Aws::Vector<Tag> m_tags;
334
335 Aws::Vector<Aws::String> m_ssoTagKeys;
336 bool m_idcInstanceArnHasBeenSet = false;
337 bool m_redshiftIdcApplicationNameHasBeenSet = false;
338 bool m_redshiftIdcApplicationArnHasBeenSet = false;
339 bool m_identityNamespaceHasBeenSet = false;
340 bool m_idcDisplayNameHasBeenSet = false;
341 bool m_iamRoleArnHasBeenSet = false;
342 bool m_idcManagedApplicationArnHasBeenSet = false;
343 bool m_idcOnboardStatusHasBeenSet = false;
344 bool m_authorizedTokenIssuerListHasBeenSet = false;
345 bool m_serviceIntegrationsHasBeenSet = false;
346 bool m_applicationTypeHasBeenSet = false;
347 bool m_tagsHasBeenSet = false;
348 bool m_ssoTagKeysHasBeenSet = false;
349};
350
351} // namespace Model
352} // namespace Redshift
353} // namespace Aws
RedshiftIdcApplication & WithIdcInstanceArn(IdcInstanceArnT &&value)
AWS_REDSHIFT_API RedshiftIdcApplication & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
RedshiftIdcApplication & WithIdentityNamespace(IdentityNamespaceT &&value)
RedshiftIdcApplication & WithRedshiftIdcApplicationArn(RedshiftIdcApplicationArnT &&value)
RedshiftIdcApplication & AddAuthorizedTokenIssuerList(AuthorizedTokenIssuerListT &&value)
const Aws::Vector< AuthorizedTokenIssuer > & GetAuthorizedTokenIssuerList() const
const Aws::String & GetRedshiftIdcApplicationName() const
void SetIdcManagedApplicationArn(IdcManagedApplicationArnT &&value)
RedshiftIdcApplication & WithSsoTagKeys(SsoTagKeysT &&value)
RedshiftIdcApplication & WithIdcOnboardStatus(IdcOnboardStatusT &&value)
AWS_REDSHIFT_API RedshiftIdcApplication()=default
RedshiftIdcApplication & AddSsoTagKeys(SsoTagKeysT &&value)
RedshiftIdcApplication & WithIdcManagedApplicationArn(IdcManagedApplicationArnT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
RedshiftIdcApplication & WithIdcDisplayName(IdcDisplayNameT &&value)
RedshiftIdcApplication & WithTags(TagsT &&value)
RedshiftIdcApplication & AddTags(TagsT &&value)
void SetRedshiftIdcApplicationName(RedshiftIdcApplicationNameT &&value)
RedshiftIdcApplication & WithIamRoleArn(IamRoleArnT &&value)
void SetAuthorizedTokenIssuerList(AuthorizedTokenIssuerListT &&value)
const Aws::Vector< ServiceIntegrationsUnion > & GetServiceIntegrations() const
void SetIdentityNamespace(IdentityNamespaceT &&value)
void SetServiceIntegrations(ServiceIntegrationsT &&value)
RedshiftIdcApplication & AddServiceIntegrations(ServiceIntegrationsT &&value)
AWS_REDSHIFT_API RedshiftIdcApplication(const Aws::Utils::Xml::XmlNode &xmlNode)
RedshiftIdcApplication & WithServiceIntegrations(ServiceIntegrationsT &&value)
RedshiftIdcApplication & WithApplicationType(ApplicationType value)
RedshiftIdcApplication & WithRedshiftIdcApplicationName(RedshiftIdcApplicationNameT &&value)
const Aws::Vector< Aws::String > & GetSsoTagKeys() const
void SetIdcOnboardStatus(IdcOnboardStatusT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
RedshiftIdcApplication & WithAuthorizedTokenIssuerList(AuthorizedTokenIssuerListT &&value)
void SetRedshiftIdcApplicationArn(RedshiftIdcApplicationArnT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream