1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 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/ComputeCapacity.h> 11 #include <aws/appstream/model/VpcConfig.h> 12 #include <aws/appstream/model/DomainJoinInfo.h> 13 #include <aws/core/utils/memory/stl/AWSVector.h> 14 #include <aws/appstream/model/StreamView.h> 15 #include <aws/appstream/model/FleetAttribute.h> 16 #include <utility> 17 18 namespace Aws 19 { 20 namespace AppStream 21 { 22 namespace Model 23 { 24 25 /** 26 */ 27 class AWS_APPSTREAM_API UpdateFleetRequest : public AppStreamRequest 28 { 29 public: 30 UpdateFleetRequest(); 31 32 // Service request name is the Operation name which will send this request out, 33 // each operation should has unique request name, so that we can get operation's name from this request. 34 // Note: this is not true for response, multiple operations may have the same response name, 35 // so we can not get operation's name from response. GetServiceRequestName()36 inline virtual const char* GetServiceRequestName() const override { return "UpdateFleet"; } 37 38 Aws::String SerializePayload() const override; 39 40 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 41 42 43 /** 44 * <p>The name of the image used to create the fleet.</p> 45 */ GetImageName()46 inline const Aws::String& GetImageName() const{ return m_imageName; } 47 48 /** 49 * <p>The name of the image used to create the fleet.</p> 50 */ ImageNameHasBeenSet()51 inline bool ImageNameHasBeenSet() const { return m_imageNameHasBeenSet; } 52 53 /** 54 * <p>The name of the image used to create the fleet.</p> 55 */ SetImageName(const Aws::String & value)56 inline void SetImageName(const Aws::String& value) { m_imageNameHasBeenSet = true; m_imageName = value; } 57 58 /** 59 * <p>The name of the image used to create the fleet.</p> 60 */ SetImageName(Aws::String && value)61 inline void SetImageName(Aws::String&& value) { m_imageNameHasBeenSet = true; m_imageName = std::move(value); } 62 63 /** 64 * <p>The name of the image used to create the fleet.</p> 65 */ SetImageName(const char * value)66 inline void SetImageName(const char* value) { m_imageNameHasBeenSet = true; m_imageName.assign(value); } 67 68 /** 69 * <p>The name of the image used to create the fleet.</p> 70 */ WithImageName(const Aws::String & value)71 inline UpdateFleetRequest& WithImageName(const Aws::String& value) { SetImageName(value); return *this;} 72 73 /** 74 * <p>The name of the image used to create the fleet.</p> 75 */ WithImageName(Aws::String && value)76 inline UpdateFleetRequest& WithImageName(Aws::String&& value) { SetImageName(std::move(value)); return *this;} 77 78 /** 79 * <p>The name of the image used to create the fleet.</p> 80 */ WithImageName(const char * value)81 inline UpdateFleetRequest& WithImageName(const char* value) { SetImageName(value); return *this;} 82 83 84 /** 85 * <p>The ARN of the public, private, or shared image to use.</p> 86 */ GetImageArn()87 inline const Aws::String& GetImageArn() const{ return m_imageArn; } 88 89 /** 90 * <p>The ARN of the public, private, or shared image to use.</p> 91 */ ImageArnHasBeenSet()92 inline bool ImageArnHasBeenSet() const { return m_imageArnHasBeenSet; } 93 94 /** 95 * <p>The ARN of the public, private, or shared image to use.</p> 96 */ SetImageArn(const Aws::String & value)97 inline void SetImageArn(const Aws::String& value) { m_imageArnHasBeenSet = true; m_imageArn = value; } 98 99 /** 100 * <p>The ARN of the public, private, or shared image to use.</p> 101 */ SetImageArn(Aws::String && value)102 inline void SetImageArn(Aws::String&& value) { m_imageArnHasBeenSet = true; m_imageArn = std::move(value); } 103 104 /** 105 * <p>The ARN of the public, private, or shared image to use.</p> 106 */ SetImageArn(const char * value)107 inline void SetImageArn(const char* value) { m_imageArnHasBeenSet = true; m_imageArn.assign(value); } 108 109 /** 110 * <p>The ARN of the public, private, or shared image to use.</p> 111 */ WithImageArn(const Aws::String & value)112 inline UpdateFleetRequest& WithImageArn(const Aws::String& value) { SetImageArn(value); return *this;} 113 114 /** 115 * <p>The ARN of the public, private, or shared image to use.</p> 116 */ WithImageArn(Aws::String && value)117 inline UpdateFleetRequest& WithImageArn(Aws::String&& value) { SetImageArn(std::move(value)); return *this;} 118 119 /** 120 * <p>The ARN of the public, private, or shared image to use.</p> 121 */ WithImageArn(const char * value)122 inline UpdateFleetRequest& WithImageArn(const char* value) { SetImageArn(value); return *this;} 123 124 125 /** 126 * <p>A unique name for the fleet.</p> 127 */ GetName()128 inline const Aws::String& GetName() const{ return m_name; } 129 130 /** 131 * <p>A unique name for the fleet.</p> 132 */ NameHasBeenSet()133 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 134 135 /** 136 * <p>A unique name for the fleet.</p> 137 */ SetName(const Aws::String & value)138 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 139 140 /** 141 * <p>A unique name for the fleet.</p> 142 */ SetName(Aws::String && value)143 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 144 145 /** 146 * <p>A unique name for the fleet.</p> 147 */ SetName(const char * value)148 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 149 150 /** 151 * <p>A unique name for the fleet.</p> 152 */ WithName(const Aws::String & value)153 inline UpdateFleetRequest& WithName(const Aws::String& value) { SetName(value); return *this;} 154 155 /** 156 * <p>A unique name for the fleet.</p> 157 */ WithName(Aws::String && value)158 inline UpdateFleetRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 159 160 /** 161 * <p>A unique name for the fleet.</p> 162 */ WithName(const char * value)163 inline UpdateFleetRequest& WithName(const char* value) { SetName(value); return *this;} 164 165 166 /** 167 * <p>The instance type to use when launching fleet instances. The following 168 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 169 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 170 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 171 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 172 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 173 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 174 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 175 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 176 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 177 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 178 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 179 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 180 * <p>stream.graphics-design.xlarge</p> </li> <li> 181 * <p>stream.graphics-design.2xlarge</p> </li> <li> 182 * <p>stream.graphics-design.4xlarge</p> </li> <li> 183 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 184 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 185 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 186 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 187 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 188 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 189 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 190 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 191 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 192 */ GetInstanceType()193 inline const Aws::String& GetInstanceType() const{ return m_instanceType; } 194 195 /** 196 * <p>The instance type to use when launching fleet instances. The following 197 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 198 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 199 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 200 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 201 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 202 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 203 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 204 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 205 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 206 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 207 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 208 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 209 * <p>stream.graphics-design.xlarge</p> </li> <li> 210 * <p>stream.graphics-design.2xlarge</p> </li> <li> 211 * <p>stream.graphics-design.4xlarge</p> </li> <li> 212 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 213 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 214 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 215 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 216 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 217 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 218 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 219 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 220 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 221 */ InstanceTypeHasBeenSet()222 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; } 223 224 /** 225 * <p>The instance type to use when launching fleet instances. The following 226 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 227 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 228 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 229 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 230 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 231 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 232 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 233 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 234 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 235 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 236 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 237 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 238 * <p>stream.graphics-design.xlarge</p> </li> <li> 239 * <p>stream.graphics-design.2xlarge</p> </li> <li> 240 * <p>stream.graphics-design.4xlarge</p> </li> <li> 241 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 242 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 243 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 244 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 245 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 246 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 247 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 248 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 249 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 250 */ SetInstanceType(const Aws::String & value)251 inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; } 252 253 /** 254 * <p>The instance type to use when launching fleet instances. The following 255 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 256 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 257 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 258 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 259 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 260 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 261 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 262 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 263 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 264 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 265 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 266 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 267 * <p>stream.graphics-design.xlarge</p> </li> <li> 268 * <p>stream.graphics-design.2xlarge</p> </li> <li> 269 * <p>stream.graphics-design.4xlarge</p> </li> <li> 270 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 271 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 272 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 273 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 274 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 275 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 276 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 277 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 278 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 279 */ SetInstanceType(Aws::String && value)280 inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); } 281 282 /** 283 * <p>The instance type to use when launching fleet instances. The following 284 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 285 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 286 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 287 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 288 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 289 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 290 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 291 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 292 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 293 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 294 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 295 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 296 * <p>stream.graphics-design.xlarge</p> </li> <li> 297 * <p>stream.graphics-design.2xlarge</p> </li> <li> 298 * <p>stream.graphics-design.4xlarge</p> </li> <li> 299 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 300 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 301 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 302 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 303 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 304 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 305 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 306 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 307 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 308 */ SetInstanceType(const char * value)309 inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); } 310 311 /** 312 * <p>The instance type to use when launching fleet instances. The following 313 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 314 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 315 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 316 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 317 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 318 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 319 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 320 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 321 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 322 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 323 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 324 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 325 * <p>stream.graphics-design.xlarge</p> </li> <li> 326 * <p>stream.graphics-design.2xlarge</p> </li> <li> 327 * <p>stream.graphics-design.4xlarge</p> </li> <li> 328 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 329 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 330 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 331 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 332 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 333 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 334 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 335 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 336 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 337 */ WithInstanceType(const Aws::String & value)338 inline UpdateFleetRequest& WithInstanceType(const Aws::String& value) { SetInstanceType(value); return *this;} 339 340 /** 341 * <p>The instance type to use when launching fleet instances. The following 342 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 343 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 344 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 345 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 346 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 347 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 348 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 349 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 350 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 351 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 352 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 353 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 354 * <p>stream.graphics-design.xlarge</p> </li> <li> 355 * <p>stream.graphics-design.2xlarge</p> </li> <li> 356 * <p>stream.graphics-design.4xlarge</p> </li> <li> 357 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 358 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 359 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 360 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 361 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 362 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 363 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 364 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 365 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 366 */ WithInstanceType(Aws::String && value)367 inline UpdateFleetRequest& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;} 368 369 /** 370 * <p>The instance type to use when launching fleet instances. The following 371 * instance types are available:</p> <ul> <li> <p>stream.standard.small</p> </li> 372 * <li> <p>stream.standard.medium</p> </li> <li> <p>stream.standard.large</p> </li> 373 * <li> <p>stream.compute.large</p> </li> <li> <p>stream.compute.xlarge</p> </li> 374 * <li> <p>stream.compute.2xlarge</p> </li> <li> <p>stream.compute.4xlarge</p> 375 * </li> <li> <p>stream.compute.8xlarge</p> </li> <li> <p>stream.memory.large</p> 376 * </li> <li> <p>stream.memory.xlarge</p> </li> <li> <p>stream.memory.2xlarge</p> 377 * </li> <li> <p>stream.memory.4xlarge</p> </li> <li> <p>stream.memory.8xlarge</p> 378 * </li> <li> <p>stream.memory.z1d.large</p> </li> <li> 379 * <p>stream.memory.z1d.xlarge</p> </li> <li> <p>stream.memory.z1d.2xlarge</p> 380 * </li> <li> <p>stream.memory.z1d.3xlarge</p> </li> <li> 381 * <p>stream.memory.z1d.6xlarge</p> </li> <li> <p>stream.memory.z1d.12xlarge</p> 382 * </li> <li> <p>stream.graphics-design.large</p> </li> <li> 383 * <p>stream.graphics-design.xlarge</p> </li> <li> 384 * <p>stream.graphics-design.2xlarge</p> </li> <li> 385 * <p>stream.graphics-design.4xlarge</p> </li> <li> 386 * <p>stream.graphics-desktop.2xlarge</p> </li> <li> 387 * <p>stream.graphics.g4dn.xlarge</p> </li> <li> 388 * <p>stream.graphics.g4dn.2xlarge</p> </li> <li> 389 * <p>stream.graphics.g4dn.4xlarge</p> </li> <li> 390 * <p>stream.graphics.g4dn.8xlarge</p> </li> <li> 391 * <p>stream.graphics.g4dn.12xlarge</p> </li> <li> 392 * <p>stream.graphics.g4dn.16xlarge</p> </li> <li> 393 * <p>stream.graphics-pro.4xlarge</p> </li> <li> <p>stream.graphics-pro.8xlarge</p> 394 * </li> <li> <p>stream.graphics-pro.16xlarge</p> </li> </ul> 395 */ WithInstanceType(const char * value)396 inline UpdateFleetRequest& WithInstanceType(const char* value) { SetInstanceType(value); return *this;} 397 398 399 /** 400 * <p>The desired capacity for the fleet.</p> 401 */ GetComputeCapacity()402 inline const ComputeCapacity& GetComputeCapacity() const{ return m_computeCapacity; } 403 404 /** 405 * <p>The desired capacity for the fleet.</p> 406 */ ComputeCapacityHasBeenSet()407 inline bool ComputeCapacityHasBeenSet() const { return m_computeCapacityHasBeenSet; } 408 409 /** 410 * <p>The desired capacity for the fleet.</p> 411 */ SetComputeCapacity(const ComputeCapacity & value)412 inline void SetComputeCapacity(const ComputeCapacity& value) { m_computeCapacityHasBeenSet = true; m_computeCapacity = value; } 413 414 /** 415 * <p>The desired capacity for the fleet.</p> 416 */ SetComputeCapacity(ComputeCapacity && value)417 inline void SetComputeCapacity(ComputeCapacity&& value) { m_computeCapacityHasBeenSet = true; m_computeCapacity = std::move(value); } 418 419 /** 420 * <p>The desired capacity for the fleet.</p> 421 */ WithComputeCapacity(const ComputeCapacity & value)422 inline UpdateFleetRequest& WithComputeCapacity(const ComputeCapacity& value) { SetComputeCapacity(value); return *this;} 423 424 /** 425 * <p>The desired capacity for the fleet.</p> 426 */ WithComputeCapacity(ComputeCapacity && value)427 inline UpdateFleetRequest& WithComputeCapacity(ComputeCapacity&& value) { SetComputeCapacity(std::move(value)); return *this;} 428 429 430 /** 431 * <p>The VPC configuration for the fleet.</p> 432 */ GetVpcConfig()433 inline const VpcConfig& GetVpcConfig() const{ return m_vpcConfig; } 434 435 /** 436 * <p>The VPC configuration for the fleet.</p> 437 */ VpcConfigHasBeenSet()438 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; } 439 440 /** 441 * <p>The VPC configuration for the fleet.</p> 442 */ SetVpcConfig(const VpcConfig & value)443 inline void SetVpcConfig(const VpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; } 444 445 /** 446 * <p>The VPC configuration for the fleet.</p> 447 */ SetVpcConfig(VpcConfig && value)448 inline void SetVpcConfig(VpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); } 449 450 /** 451 * <p>The VPC configuration for the fleet.</p> 452 */ WithVpcConfig(const VpcConfig & value)453 inline UpdateFleetRequest& WithVpcConfig(const VpcConfig& value) { SetVpcConfig(value); return *this;} 454 455 /** 456 * <p>The VPC configuration for the fleet.</p> 457 */ WithVpcConfig(VpcConfig && value)458 inline UpdateFleetRequest& WithVpcConfig(VpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;} 459 460 461 /** 462 * <p>The maximum amount of time that a streaming session can remain active, in 463 * seconds. If users are still connected to a streaming instance five minutes 464 * before this limit is reached, they are prompted to save any open documents 465 * before being disconnected. After this time elapses, the instance is terminated 466 * and replaced by a new instance.</p> <p>Specify a value between 600 and 467 * 360000.</p> 468 */ GetMaxUserDurationInSeconds()469 inline int GetMaxUserDurationInSeconds() const{ return m_maxUserDurationInSeconds; } 470 471 /** 472 * <p>The maximum amount of time that a streaming session can remain active, in 473 * seconds. If users are still connected to a streaming instance five minutes 474 * before this limit is reached, they are prompted to save any open documents 475 * before being disconnected. After this time elapses, the instance is terminated 476 * and replaced by a new instance.</p> <p>Specify a value between 600 and 477 * 360000.</p> 478 */ MaxUserDurationInSecondsHasBeenSet()479 inline bool MaxUserDurationInSecondsHasBeenSet() const { return m_maxUserDurationInSecondsHasBeenSet; } 480 481 /** 482 * <p>The maximum amount of time that a streaming session can remain active, in 483 * seconds. If users are still connected to a streaming instance five minutes 484 * before this limit is reached, they are prompted to save any open documents 485 * before being disconnected. After this time elapses, the instance is terminated 486 * and replaced by a new instance.</p> <p>Specify a value between 600 and 487 * 360000.</p> 488 */ SetMaxUserDurationInSeconds(int value)489 inline void SetMaxUserDurationInSeconds(int value) { m_maxUserDurationInSecondsHasBeenSet = true; m_maxUserDurationInSeconds = value; } 490 491 /** 492 * <p>The maximum amount of time that a streaming session can remain active, in 493 * seconds. If users are still connected to a streaming instance five minutes 494 * before this limit is reached, they are prompted to save any open documents 495 * before being disconnected. After this time elapses, the instance is terminated 496 * and replaced by a new instance.</p> <p>Specify a value between 600 and 497 * 360000.</p> 498 */ WithMaxUserDurationInSeconds(int value)499 inline UpdateFleetRequest& WithMaxUserDurationInSeconds(int value) { SetMaxUserDurationInSeconds(value); return *this;} 500 501 502 /** 503 * <p>The amount of time that a streaming session remains active after users 504 * disconnect. If users try to reconnect to the streaming session after a 505 * disconnection or network interruption within this time interval, they are 506 * connected to their previous session. Otherwise, they are connected to a new 507 * session with a new streaming instance. </p> <p>Specify a value between 60 and 508 * 360000.</p> 509 */ GetDisconnectTimeoutInSeconds()510 inline int GetDisconnectTimeoutInSeconds() const{ return m_disconnectTimeoutInSeconds; } 511 512 /** 513 * <p>The amount of time that a streaming session remains active after users 514 * disconnect. If users try to reconnect to the streaming session after a 515 * disconnection or network interruption within this time interval, they are 516 * connected to their previous session. Otherwise, they are connected to a new 517 * session with a new streaming instance. </p> <p>Specify a value between 60 and 518 * 360000.</p> 519 */ DisconnectTimeoutInSecondsHasBeenSet()520 inline bool DisconnectTimeoutInSecondsHasBeenSet() const { return m_disconnectTimeoutInSecondsHasBeenSet; } 521 522 /** 523 * <p>The amount of time that a streaming session remains active after users 524 * disconnect. If users try to reconnect to the streaming session after a 525 * disconnection or network interruption within this time interval, they are 526 * connected to their previous session. Otherwise, they are connected to a new 527 * session with a new streaming instance. </p> <p>Specify a value between 60 and 528 * 360000.</p> 529 */ SetDisconnectTimeoutInSeconds(int value)530 inline void SetDisconnectTimeoutInSeconds(int value) { m_disconnectTimeoutInSecondsHasBeenSet = true; m_disconnectTimeoutInSeconds = value; } 531 532 /** 533 * <p>The amount of time that a streaming session remains active after users 534 * disconnect. If users try to reconnect to the streaming session after a 535 * disconnection or network interruption within this time interval, they are 536 * connected to their previous session. Otherwise, they are connected to a new 537 * session with a new streaming instance. </p> <p>Specify a value between 60 and 538 * 360000.</p> 539 */ WithDisconnectTimeoutInSeconds(int value)540 inline UpdateFleetRequest& WithDisconnectTimeoutInSeconds(int value) { SetDisconnectTimeoutInSeconds(value); return *this;} 541 542 543 /** 544 * <p>The description to display.</p> 545 */ GetDescription()546 inline const Aws::String& GetDescription() const{ return m_description; } 547 548 /** 549 * <p>The description to display.</p> 550 */ DescriptionHasBeenSet()551 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } 552 553 /** 554 * <p>The description to display.</p> 555 */ SetDescription(const Aws::String & value)556 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } 557 558 /** 559 * <p>The description to display.</p> 560 */ SetDescription(Aws::String && value)561 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } 562 563 /** 564 * <p>The description to display.</p> 565 */ SetDescription(const char * value)566 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } 567 568 /** 569 * <p>The description to display.</p> 570 */ WithDescription(const Aws::String & value)571 inline UpdateFleetRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} 572 573 /** 574 * <p>The description to display.</p> 575 */ WithDescription(Aws::String && value)576 inline UpdateFleetRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} 577 578 /** 579 * <p>The description to display.</p> 580 */ WithDescription(const char * value)581 inline UpdateFleetRequest& WithDescription(const char* value) { SetDescription(value); return *this;} 582 583 584 /** 585 * <p>The fleet name to display.</p> 586 */ GetDisplayName()587 inline const Aws::String& GetDisplayName() const{ return m_displayName; } 588 589 /** 590 * <p>The fleet name to display.</p> 591 */ DisplayNameHasBeenSet()592 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; } 593 594 /** 595 * <p>The fleet name to display.</p> 596 */ SetDisplayName(const Aws::String & value)597 inline void SetDisplayName(const Aws::String& value) { m_displayNameHasBeenSet = true; m_displayName = value; } 598 599 /** 600 * <p>The fleet name to display.</p> 601 */ SetDisplayName(Aws::String && value)602 inline void SetDisplayName(Aws::String&& value) { m_displayNameHasBeenSet = true; m_displayName = std::move(value); } 603 604 /** 605 * <p>The fleet name to display.</p> 606 */ SetDisplayName(const char * value)607 inline void SetDisplayName(const char* value) { m_displayNameHasBeenSet = true; m_displayName.assign(value); } 608 609 /** 610 * <p>The fleet name to display.</p> 611 */ WithDisplayName(const Aws::String & value)612 inline UpdateFleetRequest& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;} 613 614 /** 615 * <p>The fleet name to display.</p> 616 */ WithDisplayName(Aws::String && value)617 inline UpdateFleetRequest& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;} 618 619 /** 620 * <p>The fleet name to display.</p> 621 */ WithDisplayName(const char * value)622 inline UpdateFleetRequest& WithDisplayName(const char* value) { SetDisplayName(value); return *this;} 623 624 625 /** 626 * <p>Enables or disables default internet access for the fleet.</p> 627 */ GetEnableDefaultInternetAccess()628 inline bool GetEnableDefaultInternetAccess() const{ return m_enableDefaultInternetAccess; } 629 630 /** 631 * <p>Enables or disables default internet access for the fleet.</p> 632 */ EnableDefaultInternetAccessHasBeenSet()633 inline bool EnableDefaultInternetAccessHasBeenSet() const { return m_enableDefaultInternetAccessHasBeenSet; } 634 635 /** 636 * <p>Enables or disables default internet access for the fleet.</p> 637 */ SetEnableDefaultInternetAccess(bool value)638 inline void SetEnableDefaultInternetAccess(bool value) { m_enableDefaultInternetAccessHasBeenSet = true; m_enableDefaultInternetAccess = value; } 639 640 /** 641 * <p>Enables or disables default internet access for the fleet.</p> 642 */ WithEnableDefaultInternetAccess(bool value)643 inline UpdateFleetRequest& WithEnableDefaultInternetAccess(bool value) { SetEnableDefaultInternetAccess(value); return *this;} 644 645 646 /** 647 * <p>The name of the directory and organizational unit (OU) to use to join the 648 * fleet to a Microsoft Active Directory domain. </p> 649 */ GetDomainJoinInfo()650 inline const DomainJoinInfo& GetDomainJoinInfo() const{ return m_domainJoinInfo; } 651 652 /** 653 * <p>The name of the directory and organizational unit (OU) to use to join the 654 * fleet to a Microsoft Active Directory domain. </p> 655 */ DomainJoinInfoHasBeenSet()656 inline bool DomainJoinInfoHasBeenSet() const { return m_domainJoinInfoHasBeenSet; } 657 658 /** 659 * <p>The name of the directory and organizational unit (OU) to use to join the 660 * fleet to a Microsoft Active Directory domain. </p> 661 */ SetDomainJoinInfo(const DomainJoinInfo & value)662 inline void SetDomainJoinInfo(const DomainJoinInfo& value) { m_domainJoinInfoHasBeenSet = true; m_domainJoinInfo = value; } 663 664 /** 665 * <p>The name of the directory and organizational unit (OU) to use to join the 666 * fleet to a Microsoft Active Directory domain. </p> 667 */ SetDomainJoinInfo(DomainJoinInfo && value)668 inline void SetDomainJoinInfo(DomainJoinInfo&& value) { m_domainJoinInfoHasBeenSet = true; m_domainJoinInfo = std::move(value); } 669 670 /** 671 * <p>The name of the directory and organizational unit (OU) to use to join the 672 * fleet to a Microsoft Active Directory domain. </p> 673 */ WithDomainJoinInfo(const DomainJoinInfo & value)674 inline UpdateFleetRequest& WithDomainJoinInfo(const DomainJoinInfo& value) { SetDomainJoinInfo(value); return *this;} 675 676 /** 677 * <p>The name of the directory and organizational unit (OU) to use to join the 678 * fleet to a Microsoft Active Directory domain. </p> 679 */ WithDomainJoinInfo(DomainJoinInfo && value)680 inline UpdateFleetRequest& WithDomainJoinInfo(DomainJoinInfo&& value) { SetDomainJoinInfo(std::move(value)); return *this;} 681 682 683 /** 684 * <p>The amount of time that users can be idle (inactive) before they are 685 * disconnected from their streaming session and the 686 * <code>DisconnectTimeoutInSeconds</code> time interval begins. Users are notified 687 * before they are disconnected due to inactivity. If users try to reconnect to the 688 * streaming session before the time interval specified in 689 * <code>DisconnectTimeoutInSeconds</code> elapses, they are connected to their 690 * previous session. Users are considered idle when they stop providing keyboard or 691 * mouse input during their streaming session. File uploads and downloads, audio 692 * in, audio out, and pixels changing do not qualify as user activity. If users 693 * continue to be idle after the time interval in 694 * <code>IdleDisconnectTimeoutInSeconds</code> elapses, they are disconnected. </p> 695 * <p>To prevent users from being disconnected due to inactivity, specify a value 696 * of 0. Otherwise, specify a value between 60 and 3600. The default value is 697 * 0.</p> <p>If you enable this feature, we recommend that you specify a 698 * value that corresponds exactly to a whole number of minutes (for example, 60, 699 * 120, and 180). If you don't do this, the value is rounded to the nearest minute. 700 * For example, if you specify a value of 70, users are disconnected after 1 minute 701 * of inactivity. If you specify a value that is at the midpoint between two 702 * different minutes, the value is rounded up. For example, if you specify a value 703 * of 90, users are disconnected after 2 minutes of inactivity. </p> 704 */ GetIdleDisconnectTimeoutInSeconds()705 inline int GetIdleDisconnectTimeoutInSeconds() const{ return m_idleDisconnectTimeoutInSeconds; } 706 707 /** 708 * <p>The amount of time that users can be idle (inactive) before they are 709 * disconnected from their streaming session and the 710 * <code>DisconnectTimeoutInSeconds</code> time interval begins. Users are notified 711 * before they are disconnected due to inactivity. If users try to reconnect to the 712 * streaming session before the time interval specified in 713 * <code>DisconnectTimeoutInSeconds</code> elapses, they are connected to their 714 * previous session. Users are considered idle when they stop providing keyboard or 715 * mouse input during their streaming session. File uploads and downloads, audio 716 * in, audio out, and pixels changing do not qualify as user activity. If users 717 * continue to be idle after the time interval in 718 * <code>IdleDisconnectTimeoutInSeconds</code> elapses, they are disconnected. </p> 719 * <p>To prevent users from being disconnected due to inactivity, specify a value 720 * of 0. Otherwise, specify a value between 60 and 3600. The default value is 721 * 0.</p> <p>If you enable this feature, we recommend that you specify a 722 * value that corresponds exactly to a whole number of minutes (for example, 60, 723 * 120, and 180). If you don't do this, the value is rounded to the nearest minute. 724 * For example, if you specify a value of 70, users are disconnected after 1 minute 725 * of inactivity. If you specify a value that is at the midpoint between two 726 * different minutes, the value is rounded up. For example, if you specify a value 727 * of 90, users are disconnected after 2 minutes of inactivity. </p> 728 */ IdleDisconnectTimeoutInSecondsHasBeenSet()729 inline bool IdleDisconnectTimeoutInSecondsHasBeenSet() const { return m_idleDisconnectTimeoutInSecondsHasBeenSet; } 730 731 /** 732 * <p>The amount of time that users can be idle (inactive) before they are 733 * disconnected from their streaming session and the 734 * <code>DisconnectTimeoutInSeconds</code> time interval begins. Users are notified 735 * before they are disconnected due to inactivity. If users try to reconnect to the 736 * streaming session before the time interval specified in 737 * <code>DisconnectTimeoutInSeconds</code> elapses, they are connected to their 738 * previous session. Users are considered idle when they stop providing keyboard or 739 * mouse input during their streaming session. File uploads and downloads, audio 740 * in, audio out, and pixels changing do not qualify as user activity. If users 741 * continue to be idle after the time interval in 742 * <code>IdleDisconnectTimeoutInSeconds</code> elapses, they are disconnected. </p> 743 * <p>To prevent users from being disconnected due to inactivity, specify a value 744 * of 0. Otherwise, specify a value between 60 and 3600. The default value is 745 * 0.</p> <p>If you enable this feature, we recommend that you specify a 746 * value that corresponds exactly to a whole number of minutes (for example, 60, 747 * 120, and 180). If you don't do this, the value is rounded to the nearest minute. 748 * For example, if you specify a value of 70, users are disconnected after 1 minute 749 * of inactivity. If you specify a value that is at the midpoint between two 750 * different minutes, the value is rounded up. For example, if you specify a value 751 * of 90, users are disconnected after 2 minutes of inactivity. </p> 752 */ SetIdleDisconnectTimeoutInSeconds(int value)753 inline void SetIdleDisconnectTimeoutInSeconds(int value) { m_idleDisconnectTimeoutInSecondsHasBeenSet = true; m_idleDisconnectTimeoutInSeconds = value; } 754 755 /** 756 * <p>The amount of time that users can be idle (inactive) before they are 757 * disconnected from their streaming session and the 758 * <code>DisconnectTimeoutInSeconds</code> time interval begins. Users are notified 759 * before they are disconnected due to inactivity. If users try to reconnect to the 760 * streaming session before the time interval specified in 761 * <code>DisconnectTimeoutInSeconds</code> elapses, they are connected to their 762 * previous session. Users are considered idle when they stop providing keyboard or 763 * mouse input during their streaming session. File uploads and downloads, audio 764 * in, audio out, and pixels changing do not qualify as user activity. If users 765 * continue to be idle after the time interval in 766 * <code>IdleDisconnectTimeoutInSeconds</code> elapses, they are disconnected. </p> 767 * <p>To prevent users from being disconnected due to inactivity, specify a value 768 * of 0. Otherwise, specify a value between 60 and 3600. The default value is 769 * 0.</p> <p>If you enable this feature, we recommend that you specify a 770 * value that corresponds exactly to a whole number of minutes (for example, 60, 771 * 120, and 180). If you don't do this, the value is rounded to the nearest minute. 772 * For example, if you specify a value of 70, users are disconnected after 1 minute 773 * of inactivity. If you specify a value that is at the midpoint between two 774 * different minutes, the value is rounded up. For example, if you specify a value 775 * of 90, users are disconnected after 2 minutes of inactivity. </p> 776 */ WithIdleDisconnectTimeoutInSeconds(int value)777 inline UpdateFleetRequest& WithIdleDisconnectTimeoutInSeconds(int value) { SetIdleDisconnectTimeoutInSeconds(value); return *this;} 778 779 780 /** 781 * <p>The fleet attributes to delete.</p> 782 */ GetAttributesToDelete()783 inline const Aws::Vector<FleetAttribute>& GetAttributesToDelete() const{ return m_attributesToDelete; } 784 785 /** 786 * <p>The fleet attributes to delete.</p> 787 */ AttributesToDeleteHasBeenSet()788 inline bool AttributesToDeleteHasBeenSet() const { return m_attributesToDeleteHasBeenSet; } 789 790 /** 791 * <p>The fleet attributes to delete.</p> 792 */ SetAttributesToDelete(const Aws::Vector<FleetAttribute> & value)793 inline void SetAttributesToDelete(const Aws::Vector<FleetAttribute>& value) { m_attributesToDeleteHasBeenSet = true; m_attributesToDelete = value; } 794 795 /** 796 * <p>The fleet attributes to delete.</p> 797 */ SetAttributesToDelete(Aws::Vector<FleetAttribute> && value)798 inline void SetAttributesToDelete(Aws::Vector<FleetAttribute>&& value) { m_attributesToDeleteHasBeenSet = true; m_attributesToDelete = std::move(value); } 799 800 /** 801 * <p>The fleet attributes to delete.</p> 802 */ WithAttributesToDelete(const Aws::Vector<FleetAttribute> & value)803 inline UpdateFleetRequest& WithAttributesToDelete(const Aws::Vector<FleetAttribute>& value) { SetAttributesToDelete(value); return *this;} 804 805 /** 806 * <p>The fleet attributes to delete.</p> 807 */ WithAttributesToDelete(Aws::Vector<FleetAttribute> && value)808 inline UpdateFleetRequest& WithAttributesToDelete(Aws::Vector<FleetAttribute>&& value) { SetAttributesToDelete(std::move(value)); return *this;} 809 810 /** 811 * <p>The fleet attributes to delete.</p> 812 */ AddAttributesToDelete(const FleetAttribute & value)813 inline UpdateFleetRequest& AddAttributesToDelete(const FleetAttribute& value) { m_attributesToDeleteHasBeenSet = true; m_attributesToDelete.push_back(value); return *this; } 814 815 /** 816 * <p>The fleet attributes to delete.</p> 817 */ AddAttributesToDelete(FleetAttribute && value)818 inline UpdateFleetRequest& AddAttributesToDelete(FleetAttribute&& value) { m_attributesToDeleteHasBeenSet = true; m_attributesToDelete.push_back(std::move(value)); return *this; } 819 820 821 /** 822 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 823 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 824 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 825 * operation creates a new session with temporary credentials. AppStream 2.0 826 * retrieves the temporary credentials and creates the 827 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 828 * more information, see <a 829 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 830 * an IAM Role to Grant Permissions to Applications and Scripts Running on 831 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 832 * Administration Guide</i>.</p> 833 */ GetIamRoleArn()834 inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } 835 836 /** 837 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 838 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 839 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 840 * operation creates a new session with temporary credentials. AppStream 2.0 841 * retrieves the temporary credentials and creates the 842 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 843 * more information, see <a 844 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 845 * an IAM Role to Grant Permissions to Applications and Scripts Running on 846 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 847 * Administration Guide</i>.</p> 848 */ IamRoleArnHasBeenSet()849 inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } 850 851 /** 852 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 853 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 854 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 855 * operation creates a new session with temporary credentials. AppStream 2.0 856 * retrieves the temporary credentials and creates the 857 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 858 * more information, see <a 859 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 860 * an IAM Role to Grant Permissions to Applications and Scripts Running on 861 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 862 * Administration Guide</i>.</p> 863 */ SetIamRoleArn(const Aws::String & value)864 inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } 865 866 /** 867 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 868 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 869 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 870 * operation creates a new session with temporary credentials. AppStream 2.0 871 * retrieves the temporary credentials and creates the 872 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 873 * more information, see <a 874 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 875 * an IAM Role to Grant Permissions to Applications and Scripts Running on 876 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 877 * Administration Guide</i>.</p> 878 */ SetIamRoleArn(Aws::String && value)879 inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } 880 881 /** 882 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 883 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 884 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 885 * operation creates a new session with temporary credentials. AppStream 2.0 886 * retrieves the temporary credentials and creates the 887 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 888 * more information, see <a 889 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 890 * an IAM Role to Grant Permissions to Applications and Scripts Running on 891 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 892 * Administration Guide</i>.</p> 893 */ SetIamRoleArn(const char * value)894 inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } 895 896 /** 897 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 898 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 899 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 900 * operation creates a new session with temporary credentials. AppStream 2.0 901 * retrieves the temporary credentials and creates the 902 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 903 * more information, see <a 904 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 905 * an IAM Role to Grant Permissions to Applications and Scripts Running on 906 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 907 * Administration Guide</i>.</p> 908 */ WithIamRoleArn(const Aws::String & value)909 inline UpdateFleetRequest& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} 910 911 /** 912 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 913 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 914 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 915 * operation creates a new session with temporary credentials. AppStream 2.0 916 * retrieves the temporary credentials and creates the 917 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 918 * more information, see <a 919 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 920 * an IAM Role to Grant Permissions to Applications and Scripts Running on 921 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 922 * Administration Guide</i>.</p> 923 */ WithIamRoleArn(Aws::String && value)924 inline UpdateFleetRequest& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} 925 926 /** 927 * <p>The Amazon Resource Name (ARN) of the IAM role to apply to the fleet. To 928 * assume a role, a fleet instance calls the AWS Security Token Service (STS) 929 * <code>AssumeRole</code> API operation and passes the ARN of the role to use. The 930 * operation creates a new session with temporary credentials. AppStream 2.0 931 * retrieves the temporary credentials and creates the 932 * <b>appstream_machine_role</b> credential profile on the instance.</p> <p>For 933 * more information, see <a 934 * href="https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html">Using 935 * an IAM Role to Grant Permissions to Applications and Scripts Running on 936 * AppStream 2.0 Streaming Instances</a> in the <i>Amazon AppStream 2.0 937 * Administration Guide</i>.</p> 938 */ WithIamRoleArn(const char * value)939 inline UpdateFleetRequest& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} 940 941 942 /** 943 * <p>The AppStream 2.0 view that is displayed to your users when they stream from 944 * the fleet. When <code>APP</code> is specified, only the windows of applications 945 * opened by users display. When <code>DESKTOP</code> is specified, the standard 946 * desktop that is provided by the operating system displays.</p> <p>The default 947 * value is <code>APP</code>.</p> 948 */ GetStreamView()949 inline const StreamView& GetStreamView() const{ return m_streamView; } 950 951 /** 952 * <p>The AppStream 2.0 view that is displayed to your users when they stream from 953 * the fleet. When <code>APP</code> is specified, only the windows of applications 954 * opened by users display. When <code>DESKTOP</code> is specified, the standard 955 * desktop that is provided by the operating system displays.</p> <p>The default 956 * value is <code>APP</code>.</p> 957 */ StreamViewHasBeenSet()958 inline bool StreamViewHasBeenSet() const { return m_streamViewHasBeenSet; } 959 960 /** 961 * <p>The AppStream 2.0 view that is displayed to your users when they stream from 962 * the fleet. When <code>APP</code> is specified, only the windows of applications 963 * opened by users display. When <code>DESKTOP</code> is specified, the standard 964 * desktop that is provided by the operating system displays.</p> <p>The default 965 * value is <code>APP</code>.</p> 966 */ SetStreamView(const StreamView & value)967 inline void SetStreamView(const StreamView& value) { m_streamViewHasBeenSet = true; m_streamView = value; } 968 969 /** 970 * <p>The AppStream 2.0 view that is displayed to your users when they stream from 971 * the fleet. When <code>APP</code> is specified, only the windows of applications 972 * opened by users display. When <code>DESKTOP</code> is specified, the standard 973 * desktop that is provided by the operating system displays.</p> <p>The default 974 * value is <code>APP</code>.</p> 975 */ SetStreamView(StreamView && value)976 inline void SetStreamView(StreamView&& value) { m_streamViewHasBeenSet = true; m_streamView = std::move(value); } 977 978 /** 979 * <p>The AppStream 2.0 view that is displayed to your users when they stream from 980 * the fleet. When <code>APP</code> is specified, only the windows of applications 981 * opened by users display. When <code>DESKTOP</code> is specified, the standard 982 * desktop that is provided by the operating system displays.</p> <p>The default 983 * value is <code>APP</code>.</p> 984 */ WithStreamView(const StreamView & value)985 inline UpdateFleetRequest& WithStreamView(const StreamView& value) { SetStreamView(value); return *this;} 986 987 /** 988 * <p>The AppStream 2.0 view that is displayed to your users when they stream from 989 * the fleet. When <code>APP</code> is specified, only the windows of applications 990 * opened by users display. When <code>DESKTOP</code> is specified, the standard 991 * desktop that is provided by the operating system displays.</p> <p>The default 992 * value is <code>APP</code>.</p> 993 */ WithStreamView(StreamView && value)994 inline UpdateFleetRequest& WithStreamView(StreamView&& value) { SetStreamView(std::move(value)); return *this;} 995 996 private: 997 998 Aws::String m_imageName; 999 bool m_imageNameHasBeenSet; 1000 1001 Aws::String m_imageArn; 1002 bool m_imageArnHasBeenSet; 1003 1004 Aws::String m_name; 1005 bool m_nameHasBeenSet; 1006 1007 Aws::String m_instanceType; 1008 bool m_instanceTypeHasBeenSet; 1009 1010 ComputeCapacity m_computeCapacity; 1011 bool m_computeCapacityHasBeenSet; 1012 1013 VpcConfig m_vpcConfig; 1014 bool m_vpcConfigHasBeenSet; 1015 1016 int m_maxUserDurationInSeconds; 1017 bool m_maxUserDurationInSecondsHasBeenSet; 1018 1019 int m_disconnectTimeoutInSeconds; 1020 bool m_disconnectTimeoutInSecondsHasBeenSet; 1021 1022 Aws::String m_description; 1023 bool m_descriptionHasBeenSet; 1024 1025 Aws::String m_displayName; 1026 bool m_displayNameHasBeenSet; 1027 1028 bool m_enableDefaultInternetAccess; 1029 bool m_enableDefaultInternetAccessHasBeenSet; 1030 1031 DomainJoinInfo m_domainJoinInfo; 1032 bool m_domainJoinInfoHasBeenSet; 1033 1034 int m_idleDisconnectTimeoutInSeconds; 1035 bool m_idleDisconnectTimeoutInSecondsHasBeenSet; 1036 1037 Aws::Vector<FleetAttribute> m_attributesToDelete; 1038 bool m_attributesToDeleteHasBeenSet; 1039 1040 Aws::String m_iamRoleArn; 1041 bool m_iamRoleArnHasBeenSet; 1042 1043 StreamView m_streamView; 1044 bool m_streamViewHasBeenSet; 1045 }; 1046 1047 } // namespace Model 1048 } // namespace AppStream 1049 } // namespace Aws 1050