AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
UpdateAppBlockBuilderRequest.h
1
6#pragma once
7#include <aws/appstream/AppStream_EXPORTS.h>
8#include <aws/appstream/AppStreamRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/appstream/model/PlatformType.h>
11#include <aws/appstream/model/VpcConfig.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/appstream/model/AccessEndpoint.h>
14#include <aws/appstream/model/AppBlockBuilderAttribute.h>
15#include <utility>
16
17namespace Aws
18{
19namespace AppStream
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_APPSTREAM_API UpdateAppBlockBuilderRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "UpdateAppBlockBuilder"; }
36
37 AWS_APPSTREAM_API Aws::String SerializePayload() const override;
38
40
41
43
46 inline const Aws::String& GetName() const { return m_name; }
47 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
48 template<typename NameT = Aws::String>
49 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
50 template<typename NameT = Aws::String>
51 UpdateAppBlockBuilderRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
53
55
58 inline const Aws::String& GetDescription() const { return m_description; }
59 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
60 template<typename DescriptionT = Aws::String>
61 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
62 template<typename DescriptionT = Aws::String>
63 UpdateAppBlockBuilderRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
65
67
70 inline const Aws::String& GetDisplayName() const { return m_displayName; }
71 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
72 template<typename DisplayNameT = Aws::String>
73 void SetDisplayName(DisplayNameT&& value) { m_displayNameHasBeenSet = true; m_displayName = std::forward<DisplayNameT>(value); }
74 template<typename DisplayNameT = Aws::String>
75 UpdateAppBlockBuilderRequest& WithDisplayName(DisplayNameT&& value) { SetDisplayName(std::forward<DisplayNameT>(value)); return *this;}
77
79
83 inline PlatformType GetPlatform() const { return m_platform; }
84 inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; }
85 inline void SetPlatform(PlatformType value) { m_platformHasBeenSet = true; m_platform = value; }
86 inline UpdateAppBlockBuilderRequest& WithPlatform(PlatformType value) { SetPlatform(value); return *this;}
88
90
97 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
98 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
99 template<typename InstanceTypeT = Aws::String>
100 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
101 template<typename InstanceTypeT = Aws::String>
102 UpdateAppBlockBuilderRequest& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
104
106
111 inline const VpcConfig& GetVpcConfig() const { return m_vpcConfig; }
112 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
113 template<typename VpcConfigT = VpcConfig>
114 void SetVpcConfig(VpcConfigT&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::forward<VpcConfigT>(value); }
115 template<typename VpcConfigT = VpcConfig>
116 UpdateAppBlockBuilderRequest& WithVpcConfig(VpcConfigT&& value) { SetVpcConfig(std::forward<VpcConfigT>(value)); return *this;}
118
120
123 inline bool GetEnableDefaultInternetAccess() const { return m_enableDefaultInternetAccess; }
124 inline bool EnableDefaultInternetAccessHasBeenSet() const { return m_enableDefaultInternetAccessHasBeenSet; }
125 inline void SetEnableDefaultInternetAccess(bool value) { m_enableDefaultInternetAccessHasBeenSet = true; m_enableDefaultInternetAccess = value; }
128
130
143 inline const Aws::String& GetIamRoleArn() const { return m_iamRoleArn; }
144 inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; }
145 template<typename IamRoleArnT = Aws::String>
146 void SetIamRoleArn(IamRoleArnT&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::forward<IamRoleArnT>(value); }
147 template<typename IamRoleArnT = Aws::String>
148 UpdateAppBlockBuilderRequest& WithIamRoleArn(IamRoleArnT&& value) { SetIamRoleArn(std::forward<IamRoleArnT>(value)); return *this;}
150
152
157 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
158 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
159 template<typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
160 void SetAccessEndpoints(AccessEndpointsT&& value) { m_accessEndpointsHasBeenSet = true; m_accessEndpoints = std::forward<AccessEndpointsT>(value); }
161 template<typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
162 UpdateAppBlockBuilderRequest& WithAccessEndpoints(AccessEndpointsT&& value) { SetAccessEndpoints(std::forward<AccessEndpointsT>(value)); return *this;}
163 template<typename AccessEndpointsT = AccessEndpoint>
164 UpdateAppBlockBuilderRequest& AddAccessEndpoints(AccessEndpointsT&& value) { m_accessEndpointsHasBeenSet = true; m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value)); return *this; }
166
168
171 inline const Aws::Vector<AppBlockBuilderAttribute>& GetAttributesToDelete() const { return m_attributesToDelete; }
172 inline bool AttributesToDeleteHasBeenSet() const { return m_attributesToDeleteHasBeenSet; }
173 template<typename AttributesToDeleteT = Aws::Vector<AppBlockBuilderAttribute>>
174 void SetAttributesToDelete(AttributesToDeleteT&& value) { m_attributesToDeleteHasBeenSet = true; m_attributesToDelete = std::forward<AttributesToDeleteT>(value); }
175 template<typename AttributesToDeleteT = Aws::Vector<AppBlockBuilderAttribute>>
176 UpdateAppBlockBuilderRequest& WithAttributesToDelete(AttributesToDeleteT&& value) { SetAttributesToDelete(std::forward<AttributesToDeleteT>(value)); return *this;}
177 inline UpdateAppBlockBuilderRequest& AddAttributesToDelete(AppBlockBuilderAttribute value) { m_attributesToDeleteHasBeenSet = true; m_attributesToDelete.push_back(value); return *this; }
179 private:
180
181 Aws::String m_name;
182 bool m_nameHasBeenSet = false;
183
184 Aws::String m_description;
185 bool m_descriptionHasBeenSet = false;
186
187 Aws::String m_displayName;
188 bool m_displayNameHasBeenSet = false;
189
191 bool m_platformHasBeenSet = false;
192
193 Aws::String m_instanceType;
194 bool m_instanceTypeHasBeenSet = false;
195
196 VpcConfig m_vpcConfig;
197 bool m_vpcConfigHasBeenSet = false;
198
199 bool m_enableDefaultInternetAccess{false};
200 bool m_enableDefaultInternetAccessHasBeenSet = false;
201
202 Aws::String m_iamRoleArn;
203 bool m_iamRoleArnHasBeenSet = false;
204
205 Aws::Vector<AccessEndpoint> m_accessEndpoints;
206 bool m_accessEndpointsHasBeenSet = false;
207
208 Aws::Vector<AppBlockBuilderAttribute> m_attributesToDelete;
209 bool m_attributesToDeleteHasBeenSet = false;
210 };
211
212} // namespace Model
213} // namespace AppStream
214} // namespace Aws
AWS_APPSTREAM_API UpdateAppBlockBuilderRequest()=default
AWS_APPSTREAM_API Aws::String SerializePayload() const override
UpdateAppBlockBuilderRequest & WithAccessEndpoints(AccessEndpointsT &&value)
UpdateAppBlockBuilderRequest & WithDisplayName(DisplayNameT &&value)
UpdateAppBlockBuilderRequest & WithEnableDefaultInternetAccess(bool value)
UpdateAppBlockBuilderRequest & WithInstanceType(InstanceTypeT &&value)
UpdateAppBlockBuilderRequest & WithDescription(DescriptionT &&value)
UpdateAppBlockBuilderRequest & WithAttributesToDelete(AttributesToDeleteT &&value)
AWS_APPSTREAM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UpdateAppBlockBuilderRequest & WithVpcConfig(VpcConfigT &&value)
UpdateAppBlockBuilderRequest & AddAccessEndpoints(AccessEndpointsT &&value)
const Aws::Vector< AccessEndpoint > & GetAccessEndpoints() const
const Aws::Vector< AppBlockBuilderAttribute > & GetAttributesToDelete() const
UpdateAppBlockBuilderRequest & AddAttributesToDelete(AppBlockBuilderAttribute value)
UpdateAppBlockBuilderRequest & WithName(NameT &&value)
UpdateAppBlockBuilderRequest & WithIamRoleArn(IamRoleArnT &&value)
UpdateAppBlockBuilderRequest & WithPlatform(PlatformType 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