AWS SDK for C++

AWS SDK for C++ Version 1.11.781

Loading...
Searching...
No Matches
CreateWorkspaceRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/grafana/ManagedGrafanaRequest.h>
12#include <aws/grafana/ManagedGrafana_EXPORTS.h>
13#include <aws/grafana/model/AccountAccessType.h>
14#include <aws/grafana/model/AuthenticationProviderTypes.h>
15#include <aws/grafana/model/DataSourceType.h>
16#include <aws/grafana/model/NetworkAccessConfiguration.h>
17#include <aws/grafana/model/NotificationDestinationType.h>
18#include <aws/grafana/model/PermissionType.h>
19#include <aws/grafana/model/VpcConfiguration.h>
20
21#include <utility>
22
23namespace Aws {
24namespace ManagedGrafana {
25namespace Model {
26
30 public:
31 AWS_MANAGEDGRAFANA_API CreateWorkspaceRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateWorkspace"; }
38
39 AWS_MANAGEDGRAFANA_API Aws::String SerializePayload() const override;
40
42
50 inline AccountAccessType GetAccountAccessType() const { return m_accountAccessType; }
51 inline bool AccountAccessTypeHasBeenSet() const { return m_accountAccessTypeHasBeenSet; }
53 m_accountAccessTypeHasBeenSet = true;
54 m_accountAccessType = value;
55 }
58 return *this;
59 }
61
63
67 inline const Aws::String& GetClientToken() const { return m_clientToken; }
68 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
69 template <typename ClientTokenT = Aws::String>
70 void SetClientToken(ClientTokenT&& value) {
71 m_clientTokenHasBeenSet = true;
72 m_clientToken = std::forward<ClientTokenT>(value);
73 }
74 template <typename ClientTokenT = Aws::String>
75 CreateWorkspaceRequest& WithClientToken(ClientTokenT&& value) {
76 SetClientToken(std::forward<ClientTokenT>(value));
77 return *this;
78 }
80
82
87 inline const Aws::String& GetOrganizationRoleName() const { return m_organizationRoleName; }
88 inline bool OrganizationRoleNameHasBeenSet() const { return m_organizationRoleNameHasBeenSet; }
89 template <typename OrganizationRoleNameT = Aws::String>
90 void SetOrganizationRoleName(OrganizationRoleNameT&& value) {
91 m_organizationRoleNameHasBeenSet = true;
92 m_organizationRoleName = std::forward<OrganizationRoleNameT>(value);
93 }
94 template <typename OrganizationRoleNameT = Aws::String>
95 CreateWorkspaceRequest& WithOrganizationRoleName(OrganizationRoleNameT&& value) {
96 SetOrganizationRoleName(std::forward<OrganizationRoleNameT>(value));
97 return *this;
98 }
100
102
119 inline PermissionType GetPermissionType() const { return m_permissionType; }
120 inline bool PermissionTypeHasBeenSet() const { return m_permissionTypeHasBeenSet; }
122 m_permissionTypeHasBeenSet = true;
123 m_permissionType = value;
124 }
126 SetPermissionType(value);
127 return *this;
128 }
130
132
136 inline const Aws::String& GetStackSetName() const { return m_stackSetName; }
137 inline bool StackSetNameHasBeenSet() const { return m_stackSetNameHasBeenSet; }
138 template <typename StackSetNameT = Aws::String>
139 void SetStackSetName(StackSetNameT&& value) {
140 m_stackSetNameHasBeenSet = true;
141 m_stackSetName = std::forward<StackSetNameT>(value);
142 }
143 template <typename StackSetNameT = Aws::String>
144 CreateWorkspaceRequest& WithStackSetName(StackSetNameT&& value) {
145 SetStackSetName(std::forward<StackSetNameT>(value));
146 return *this;
147 }
149
151
154 inline const Aws::Vector<DataSourceType>& GetWorkspaceDataSources() const { return m_workspaceDataSources; }
155 inline bool WorkspaceDataSourcesHasBeenSet() const { return m_workspaceDataSourcesHasBeenSet; }
156 template <typename WorkspaceDataSourcesT = Aws::Vector<DataSourceType>>
157 void SetWorkspaceDataSources(WorkspaceDataSourcesT&& value) {
158 m_workspaceDataSourcesHasBeenSet = true;
159 m_workspaceDataSources = std::forward<WorkspaceDataSourcesT>(value);
160 }
161 template <typename WorkspaceDataSourcesT = Aws::Vector<DataSourceType>>
162 CreateWorkspaceRequest& WithWorkspaceDataSources(WorkspaceDataSourcesT&& value) {
163 SetWorkspaceDataSources(std::forward<WorkspaceDataSourcesT>(value));
164 return *this;
165 }
167 m_workspaceDataSourcesHasBeenSet = true;
168 m_workspaceDataSources.push_back(value);
169 return *this;
170 }
172
174
179 inline const Aws::String& GetWorkspaceDescription() const { return m_workspaceDescription; }
180 inline bool WorkspaceDescriptionHasBeenSet() const { return m_workspaceDescriptionHasBeenSet; }
181 template <typename WorkspaceDescriptionT = Aws::String>
182 void SetWorkspaceDescription(WorkspaceDescriptionT&& value) {
183 m_workspaceDescriptionHasBeenSet = true;
184 m_workspaceDescription = std::forward<WorkspaceDescriptionT>(value);
185 }
186 template <typename WorkspaceDescriptionT = Aws::String>
187 CreateWorkspaceRequest& WithWorkspaceDescription(WorkspaceDescriptionT&& value) {
188 SetWorkspaceDescription(std::forward<WorkspaceDescriptionT>(value));
189 return *this;
190 }
192
194
197 inline const Aws::String& GetWorkspaceName() const { return m_workspaceName; }
198 inline bool WorkspaceNameHasBeenSet() const { return m_workspaceNameHasBeenSet; }
199 template <typename WorkspaceNameT = Aws::String>
200 void SetWorkspaceName(WorkspaceNameT&& value) {
201 m_workspaceNameHasBeenSet = true;
202 m_workspaceName = std::forward<WorkspaceNameT>(value);
203 }
204 template <typename WorkspaceNameT = Aws::String>
205 CreateWorkspaceRequest& WithWorkspaceName(WorkspaceNameT&& value) {
206 SetWorkspaceName(std::forward<WorkspaceNameT>(value));
207 return *this;
208 }
210
212
219 return m_workspaceNotificationDestinations;
220 }
221 inline bool WorkspaceNotificationDestinationsHasBeenSet() const { return m_workspaceNotificationDestinationsHasBeenSet; }
222 template <typename WorkspaceNotificationDestinationsT = Aws::Vector<NotificationDestinationType>>
223 void SetWorkspaceNotificationDestinations(WorkspaceNotificationDestinationsT&& value) {
224 m_workspaceNotificationDestinationsHasBeenSet = true;
225 m_workspaceNotificationDestinations = std::forward<WorkspaceNotificationDestinationsT>(value);
226 }
227 template <typename WorkspaceNotificationDestinationsT = Aws::Vector<NotificationDestinationType>>
228 CreateWorkspaceRequest& WithWorkspaceNotificationDestinations(WorkspaceNotificationDestinationsT&& value) {
229 SetWorkspaceNotificationDestinations(std::forward<WorkspaceNotificationDestinationsT>(value));
230 return *this;
231 }
233 m_workspaceNotificationDestinationsHasBeenSet = true;
234 m_workspaceNotificationDestinations.push_back(value);
235 return *this;
236 }
238
240
245 inline const Aws::Vector<Aws::String>& GetWorkspaceOrganizationalUnits() const { return m_workspaceOrganizationalUnits; }
246 inline bool WorkspaceOrganizationalUnitsHasBeenSet() const { return m_workspaceOrganizationalUnitsHasBeenSet; }
247 template <typename WorkspaceOrganizationalUnitsT = Aws::Vector<Aws::String>>
248 void SetWorkspaceOrganizationalUnits(WorkspaceOrganizationalUnitsT&& value) {
249 m_workspaceOrganizationalUnitsHasBeenSet = true;
250 m_workspaceOrganizationalUnits = std::forward<WorkspaceOrganizationalUnitsT>(value);
251 }
252 template <typename WorkspaceOrganizationalUnitsT = Aws::Vector<Aws::String>>
253 CreateWorkspaceRequest& WithWorkspaceOrganizationalUnits(WorkspaceOrganizationalUnitsT&& value) {
254 SetWorkspaceOrganizationalUnits(std::forward<WorkspaceOrganizationalUnitsT>(value));
255 return *this;
256 }
257 template <typename WorkspaceOrganizationalUnitsT = Aws::String>
258 CreateWorkspaceRequest& AddWorkspaceOrganizationalUnits(WorkspaceOrganizationalUnitsT&& value) {
259 m_workspaceOrganizationalUnitsHasBeenSet = true;
260 m_workspaceOrganizationalUnits.emplace_back(std::forward<WorkspaceOrganizationalUnitsT>(value));
261 return *this;
262 }
264
266
272 inline const Aws::String& GetWorkspaceRoleArn() const { return m_workspaceRoleArn; }
273 inline bool WorkspaceRoleArnHasBeenSet() const { return m_workspaceRoleArnHasBeenSet; }
274 template <typename WorkspaceRoleArnT = Aws::String>
275 void SetWorkspaceRoleArn(WorkspaceRoleArnT&& value) {
276 m_workspaceRoleArnHasBeenSet = true;
277 m_workspaceRoleArn = std::forward<WorkspaceRoleArnT>(value);
278 }
279 template <typename WorkspaceRoleArnT = Aws::String>
280 CreateWorkspaceRequest& WithWorkspaceRoleArn(WorkspaceRoleArnT&& value) {
281 SetWorkspaceRoleArn(std::forward<WorkspaceRoleArnT>(value));
282 return *this;
283 }
285
287
294 inline const Aws::Vector<AuthenticationProviderTypes>& GetAuthenticationProviders() const { return m_authenticationProviders; }
295 inline bool AuthenticationProvidersHasBeenSet() const { return m_authenticationProvidersHasBeenSet; }
296 template <typename AuthenticationProvidersT = Aws::Vector<AuthenticationProviderTypes>>
297 void SetAuthenticationProviders(AuthenticationProvidersT&& value) {
298 m_authenticationProvidersHasBeenSet = true;
299 m_authenticationProviders = std::forward<AuthenticationProvidersT>(value);
300 }
301 template <typename AuthenticationProvidersT = Aws::Vector<AuthenticationProviderTypes>>
302 CreateWorkspaceRequest& WithAuthenticationProviders(AuthenticationProvidersT&& value) {
303 SetAuthenticationProviders(std::forward<AuthenticationProvidersT>(value));
304 return *this;
305 }
307 m_authenticationProvidersHasBeenSet = true;
308 m_authenticationProviders.push_back(value);
309 return *this;
310 }
312
314
317 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
318 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
319 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
320 void SetTags(TagsT&& value) {
321 m_tagsHasBeenSet = true;
322 m_tags = std::forward<TagsT>(value);
323 }
324 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
326 SetTags(std::forward<TagsT>(value));
327 return *this;
328 }
329 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
330 CreateWorkspaceRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
331 m_tagsHasBeenSet = true;
332 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
333 return *this;
334 }
336
338
344 inline const VpcConfiguration& GetVpcConfiguration() const { return m_vpcConfiguration; }
345 inline bool VpcConfigurationHasBeenSet() const { return m_vpcConfigurationHasBeenSet; }
346 template <typename VpcConfigurationT = VpcConfiguration>
347 void SetVpcConfiguration(VpcConfigurationT&& value) {
348 m_vpcConfigurationHasBeenSet = true;
349 m_vpcConfiguration = std::forward<VpcConfigurationT>(value);
350 }
351 template <typename VpcConfigurationT = VpcConfiguration>
352 CreateWorkspaceRequest& WithVpcConfiguration(VpcConfigurationT&& value) {
353 SetVpcConfiguration(std::forward<VpcConfigurationT>(value));
354 return *this;
355 }
357
359
365 inline const Aws::String& GetConfiguration() const { return m_configuration; }
366 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
367 template <typename ConfigurationT = Aws::String>
368 void SetConfiguration(ConfigurationT&& value) {
369 m_configurationHasBeenSet = true;
370 m_configuration = std::forward<ConfigurationT>(value);
371 }
372 template <typename ConfigurationT = Aws::String>
373 CreateWorkspaceRequest& WithConfiguration(ConfigurationT&& value) {
374 SetConfiguration(std::forward<ConfigurationT>(value));
375 return *this;
376 }
378
380
388 inline const NetworkAccessConfiguration& GetNetworkAccessControl() const { return m_networkAccessControl; }
389 inline bool NetworkAccessControlHasBeenSet() const { return m_networkAccessControlHasBeenSet; }
390 template <typename NetworkAccessControlT = NetworkAccessConfiguration>
391 void SetNetworkAccessControl(NetworkAccessControlT&& value) {
392 m_networkAccessControlHasBeenSet = true;
393 m_networkAccessControl = std::forward<NetworkAccessControlT>(value);
394 }
395 template <typename NetworkAccessControlT = NetworkAccessConfiguration>
396 CreateWorkspaceRequest& WithNetworkAccessControl(NetworkAccessControlT&& value) {
397 SetNetworkAccessControl(std::forward<NetworkAccessControlT>(value));
398 return *this;
399 }
401
403
408 inline const Aws::String& GetGrafanaVersion() const { return m_grafanaVersion; }
409 inline bool GrafanaVersionHasBeenSet() const { return m_grafanaVersionHasBeenSet; }
410 template <typename GrafanaVersionT = Aws::String>
411 void SetGrafanaVersion(GrafanaVersionT&& value) {
412 m_grafanaVersionHasBeenSet = true;
413 m_grafanaVersion = std::forward<GrafanaVersionT>(value);
414 }
415 template <typename GrafanaVersionT = Aws::String>
416 CreateWorkspaceRequest& WithGrafanaVersion(GrafanaVersionT&& value) {
417 SetGrafanaVersion(std::forward<GrafanaVersionT>(value));
418 return *this;
419 }
421
423
427 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
428 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
429 template <typename KmsKeyIdT = Aws::String>
430 void SetKmsKeyId(KmsKeyIdT&& value) {
431 m_kmsKeyIdHasBeenSet = true;
432 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
433 }
434 template <typename KmsKeyIdT = Aws::String>
436 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
437 return *this;
438 }
440 private:
442
444
445 Aws::String m_organizationRoleName;
446
447 PermissionType m_permissionType{PermissionType::NOT_SET};
448
449 Aws::String m_stackSetName;
450
451 Aws::Vector<DataSourceType> m_workspaceDataSources;
452
453 Aws::String m_workspaceDescription;
454
455 Aws::String m_workspaceName;
456
457 Aws::Vector<NotificationDestinationType> m_workspaceNotificationDestinations;
458
459 Aws::Vector<Aws::String> m_workspaceOrganizationalUnits;
460
461 Aws::String m_workspaceRoleArn;
462
463 Aws::Vector<AuthenticationProviderTypes> m_authenticationProviders;
464
466
467 VpcConfiguration m_vpcConfiguration;
468
469 Aws::String m_configuration;
470
471 NetworkAccessConfiguration m_networkAccessControl;
472
473 Aws::String m_grafanaVersion;
474
475 Aws::String m_kmsKeyId;
476 bool m_accountAccessTypeHasBeenSet = false;
477 bool m_clientTokenHasBeenSet = true;
478 bool m_organizationRoleNameHasBeenSet = false;
479 bool m_permissionTypeHasBeenSet = false;
480 bool m_stackSetNameHasBeenSet = false;
481 bool m_workspaceDataSourcesHasBeenSet = false;
482 bool m_workspaceDescriptionHasBeenSet = false;
483 bool m_workspaceNameHasBeenSet = false;
484 bool m_workspaceNotificationDestinationsHasBeenSet = false;
485 bool m_workspaceOrganizationalUnitsHasBeenSet = false;
486 bool m_workspaceRoleArnHasBeenSet = false;
487 bool m_authenticationProvidersHasBeenSet = false;
488 bool m_tagsHasBeenSet = false;
489 bool m_vpcConfigurationHasBeenSet = false;
490 bool m_configurationHasBeenSet = false;
491 bool m_networkAccessControlHasBeenSet = false;
492 bool m_grafanaVersionHasBeenSet = false;
493 bool m_kmsKeyIdHasBeenSet = false;
494};
495
496} // namespace Model
497} // namespace ManagedGrafana
498} // namespace Aws
CreateWorkspaceRequest & WithOrganizationRoleName(OrganizationRoleNameT &&value)
CreateWorkspaceRequest & WithNetworkAccessControl(NetworkAccessControlT &&value)
CreateWorkspaceRequest & WithGrafanaVersion(GrafanaVersionT &&value)
CreateWorkspaceRequest & WithWorkspaceDescription(WorkspaceDescriptionT &&value)
CreateWorkspaceRequest & AddWorkspaceNotificationDestinations(NotificationDestinationType value)
CreateWorkspaceRequest & WithWorkspaceRoleArn(WorkspaceRoleArnT &&value)
const Aws::Vector< NotificationDestinationType > & GetWorkspaceNotificationDestinations() const
void SetNetworkAccessControl(NetworkAccessControlT &&value)
void SetAuthenticationProviders(AuthenticationProvidersT &&value)
const Aws::Vector< DataSourceType > & GetWorkspaceDataSources() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateWorkspaceRequest & AddWorkspaceOrganizationalUnits(WorkspaceOrganizationalUnitsT &&value)
void SetOrganizationRoleName(OrganizationRoleNameT &&value)
CreateWorkspaceRequest & WithVpcConfiguration(VpcConfigurationT &&value)
CreateWorkspaceRequest & WithConfiguration(ConfigurationT &&value)
const Aws::Vector< AuthenticationProviderTypes > & GetAuthenticationProviders() const
CreateWorkspaceRequest & AddWorkspaceDataSources(DataSourceType value)
void SetWorkspaceDescription(WorkspaceDescriptionT &&value)
CreateWorkspaceRequest & WithWorkspaceOrganizationalUnits(WorkspaceOrganizationalUnitsT &&value)
virtual const char * GetServiceRequestName() const override
CreateWorkspaceRequest & WithAccountAccessType(AccountAccessType value)
CreateWorkspaceRequest & WithTags(TagsT &&value)
CreateWorkspaceRequest & WithClientToken(ClientTokenT &&value)
CreateWorkspaceRequest & AddAuthenticationProviders(AuthenticationProviderTypes value)
const Aws::Vector< Aws::String > & GetWorkspaceOrganizationalUnits() const
CreateWorkspaceRequest & WithWorkspaceDataSources(WorkspaceDataSourcesT &&value)
CreateWorkspaceRequest & WithStackSetName(StackSetNameT &&value)
CreateWorkspaceRequest & WithWorkspaceName(WorkspaceNameT &&value)
CreateWorkspaceRequest & WithWorkspaceNotificationDestinations(WorkspaceNotificationDestinationsT &&value)
void SetWorkspaceDataSources(WorkspaceDataSourcesT &&value)
AWS_MANAGEDGRAFANA_API Aws::String SerializePayload() const override
CreateWorkspaceRequest & WithAuthenticationProviders(AuthenticationProvidersT &&value)
CreateWorkspaceRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const NetworkAccessConfiguration & GetNetworkAccessControl() const
void SetWorkspaceOrganizationalUnits(WorkspaceOrganizationalUnitsT &&value)
CreateWorkspaceRequest & WithPermissionType(PermissionType value)
void SetWorkspaceNotificationDestinations(WorkspaceNotificationDestinationsT &&value)
AWS_MANAGEDGRAFANA_API CreateWorkspaceRequest()=default
CreateWorkspaceRequest & WithKmsKeyId(KmsKeyIdT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector