AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
WorkspaceCreationProperties.h
1
6#pragma once
7#include <aws/workspaces/WorkSpaces_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace WorkSpaces
22{
23namespace Model
24{
25
35 {
36 public:
37 AWS_WORKSPACES_API WorkspaceCreationProperties() = default;
40 AWS_WORKSPACES_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline bool GetEnableInternetAccess() const { return m_enableInternetAccess; }
48 inline bool EnableInternetAccessHasBeenSet() const { return m_enableInternetAccessHasBeenSet; }
49 inline void SetEnableInternetAccess(bool value) { m_enableInternetAccessHasBeenSet = true; m_enableInternetAccess = value; }
52
54
68 inline const Aws::String& GetDefaultOu() const { return m_defaultOu; }
69 inline bool DefaultOuHasBeenSet() const { return m_defaultOuHasBeenSet; }
70 template<typename DefaultOuT = Aws::String>
71 void SetDefaultOu(DefaultOuT&& value) { m_defaultOuHasBeenSet = true; m_defaultOu = std::forward<DefaultOuT>(value); }
72 template<typename DefaultOuT = Aws::String>
73 WorkspaceCreationProperties& WithDefaultOu(DefaultOuT&& value) { SetDefaultOu(std::forward<DefaultOuT>(value)); return *this;}
75
77
80 inline const Aws::String& GetCustomSecurityGroupId() const { return m_customSecurityGroupId; }
81 inline bool CustomSecurityGroupIdHasBeenSet() const { return m_customSecurityGroupIdHasBeenSet; }
82 template<typename CustomSecurityGroupIdT = Aws::String>
83 void SetCustomSecurityGroupId(CustomSecurityGroupIdT&& value) { m_customSecurityGroupIdHasBeenSet = true; m_customSecurityGroupId = std::forward<CustomSecurityGroupIdT>(value); }
84 template<typename CustomSecurityGroupIdT = Aws::String>
85 WorkspaceCreationProperties& WithCustomSecurityGroupId(CustomSecurityGroupIdT&& value) { SetCustomSecurityGroupId(std::forward<CustomSecurityGroupIdT>(value)); return *this;}
87
89
92 inline bool GetUserEnabledAsLocalAdministrator() const { return m_userEnabledAsLocalAdministrator; }
93 inline bool UserEnabledAsLocalAdministratorHasBeenSet() const { return m_userEnabledAsLocalAdministratorHasBeenSet; }
94 inline void SetUserEnabledAsLocalAdministrator(bool value) { m_userEnabledAsLocalAdministratorHasBeenSet = true; m_userEnabledAsLocalAdministrator = value; }
97
99
105 inline bool GetEnableMaintenanceMode() const { return m_enableMaintenanceMode; }
106 inline bool EnableMaintenanceModeHasBeenSet() const { return m_enableMaintenanceModeHasBeenSet; }
107 inline void SetEnableMaintenanceMode(bool value) { m_enableMaintenanceModeHasBeenSet = true; m_enableMaintenanceMode = value; }
110
112
115 inline const Aws::String& GetInstanceIamRoleArn() const { return m_instanceIamRoleArn; }
116 inline bool InstanceIamRoleArnHasBeenSet() const { return m_instanceIamRoleArnHasBeenSet; }
117 template<typename InstanceIamRoleArnT = Aws::String>
118 void SetInstanceIamRoleArn(InstanceIamRoleArnT&& value) { m_instanceIamRoleArnHasBeenSet = true; m_instanceIamRoleArn = std::forward<InstanceIamRoleArnT>(value); }
119 template<typename InstanceIamRoleArnT = Aws::String>
120 WorkspaceCreationProperties& WithInstanceIamRoleArn(InstanceIamRoleArnT&& value) { SetInstanceIamRoleArn(std::forward<InstanceIamRoleArnT>(value)); return *this;}
122 private:
123
124 bool m_enableInternetAccess{false};
125 bool m_enableInternetAccessHasBeenSet = false;
126
127 Aws::String m_defaultOu;
128 bool m_defaultOuHasBeenSet = false;
129
130 Aws::String m_customSecurityGroupId;
131 bool m_customSecurityGroupIdHasBeenSet = false;
132
133 bool m_userEnabledAsLocalAdministrator{false};
134 bool m_userEnabledAsLocalAdministratorHasBeenSet = false;
135
136 bool m_enableMaintenanceMode{false};
137 bool m_enableMaintenanceModeHasBeenSet = false;
138
139 Aws::String m_instanceIamRoleArn;
140 bool m_instanceIamRoleArnHasBeenSet = false;
141 };
142
143} // namespace Model
144} // namespace WorkSpaces
145} // namespace Aws
AWS_WORKSPACES_API WorkspaceCreationProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
WorkspaceCreationProperties & WithInstanceIamRoleArn(InstanceIamRoleArnT &&value)
WorkspaceCreationProperties & WithEnableMaintenanceMode(bool value)
AWS_WORKSPACES_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_WORKSPACES_API WorkspaceCreationProperties(Aws::Utils::Json::JsonView jsonValue)
WorkspaceCreationProperties & WithDefaultOu(DefaultOuT &&value)
WorkspaceCreationProperties & WithCustomSecurityGroupId(CustomSecurityGroupIdT &&value)
WorkspaceCreationProperties & WithUserEnabledAsLocalAdministrator(bool value)
AWS_WORKSPACES_API WorkspaceCreationProperties()=default
WorkspaceCreationProperties & WithEnableInternetAccess(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue