/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the parameters for ModifyImageAttribute.See Also:
* AWS
* API Reference
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
The name of the attribute to modify.
Valid values:
* description
| imdsSupport
|
* launchPermission
A new description for the AMI.
*/ inline const AttributeValue& GetDescription() const{ return m_description; } /** *A new description for the AMI.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *A new description for the AMI.
*/ inline void SetDescription(const AttributeValue& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *A new description for the AMI.
*/ inline void SetDescription(AttributeValue&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *A new description for the AMI.
*/ inline ModifyImageAttributeRequest& WithDescription(const AttributeValue& value) { SetDescription(value); return *this;} /** *A new description for the AMI.
*/ inline ModifyImageAttributeRequest& WithDescription(AttributeValue&& value) { SetDescription(std::move(value)); return *this;} /** *The ID of the AMI.
*/ inline const Aws::String& GetImageId() const{ return m_imageId; } /** *The ID of the AMI.
*/ inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; } /** *The ID of the AMI.
*/ inline void SetImageId(const Aws::String& value) { m_imageIdHasBeenSet = true; m_imageId = value; } /** *The ID of the AMI.
*/ inline void SetImageId(Aws::String&& value) { m_imageIdHasBeenSet = true; m_imageId = std::move(value); } /** *The ID of the AMI.
*/ inline void SetImageId(const char* value) { m_imageIdHasBeenSet = true; m_imageId.assign(value); } /** *The ID of the AMI.
*/ inline ModifyImageAttributeRequest& WithImageId(const Aws::String& value) { SetImageId(value); return *this;} /** *The ID of the AMI.
*/ inline ModifyImageAttributeRequest& WithImageId(Aws::String&& value) { SetImageId(std::move(value)); return *this;} /** *The ID of the AMI.
*/ inline ModifyImageAttributeRequest& WithImageId(const char* value) { SetImageId(value); return *this;} /** *A new launch permission for the AMI.
*/ inline const LaunchPermissionModifications& GetLaunchPermission() const{ return m_launchPermission; } /** *A new launch permission for the AMI.
*/ inline bool LaunchPermissionHasBeenSet() const { return m_launchPermissionHasBeenSet; } /** *A new launch permission for the AMI.
*/ inline void SetLaunchPermission(const LaunchPermissionModifications& value) { m_launchPermissionHasBeenSet = true; m_launchPermission = value; } /** *A new launch permission for the AMI.
*/ inline void SetLaunchPermission(LaunchPermissionModifications&& value) { m_launchPermissionHasBeenSet = true; m_launchPermission = std::move(value); } /** *A new launch permission for the AMI.
*/ inline ModifyImageAttributeRequest& WithLaunchPermission(const LaunchPermissionModifications& value) { SetLaunchPermission(value); return *this;} /** *A new launch permission for the AMI.
*/ inline ModifyImageAttributeRequest& WithLaunchPermission(LaunchPermissionModifications&& value) { SetLaunchPermission(std::move(value)); return *this;} /** *The operation type. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The operation type. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The operation type. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The operation type. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The operation type. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The operation type. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
Not supported.
*/ inline const Aws::VectorNot supported.
*/ inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; } /** *Not supported.
*/ inline void SetProductCodes(const Aws::VectorNot supported.
*/ inline void SetProductCodes(Aws::VectorNot supported.
*/ inline ModifyImageAttributeRequest& WithProductCodes(const Aws::VectorNot supported.
*/ inline ModifyImageAttributeRequest& WithProductCodes(Aws::VectorNot supported.
*/ inline ModifyImageAttributeRequest& AddProductCodes(const Aws::String& value) { m_productCodesHasBeenSet = true; m_productCodes.push_back(value); return *this; } /** *Not supported.
*/ inline ModifyImageAttributeRequest& AddProductCodes(Aws::String&& value) { m_productCodesHasBeenSet = true; m_productCodes.push_back(std::move(value)); return *this; } /** *Not supported.
*/ inline ModifyImageAttributeRequest& AddProductCodes(const char* value) { m_productCodesHasBeenSet = true; m_productCodes.push_back(value); return *this; } /** *The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The user groups. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The Amazon Web Services account IDs. This parameter can be used only when the
* Attribute
parameter is launchPermission
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
The value of the attribute being modified. This parameter can be used only
* when the Attribute
parameter is description
or
* imdsSupport
.
Checks whether you have the required permissions for the action, without
* actually making the request, and provides an error response. If you have the
* required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without
* actually making the request, and provides an error response. If you have the
* required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without
* actually making the request, and provides an error response. If you have the
* required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without
* actually making the request, and provides an error response. If you have the
* required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used
* only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter
* can be used only when the Attribute
parameter is
* launchPermission
.
Set to v2.0
to indicate that IMDSv2 is specified in the AMI.
* Instances launched from this AMI will have HttpTokens
automatically
* set to required
so that, by default, the instance requires that
* IMDSv2 is used when requesting instance metadata. In addition,
* HttpPutResponseHopLimit
is set to 2
. For more
* information, see Configure
* the AMI in the Amazon EC2 User Guide.
Do not use
* this parameter unless your AMI software supports IMDSv2. After you set the value
* to v2.0
, you can't undo it. The only way to “reset” your AMI is to
* create a new AMI from the underlying snapshot.
Set to v2.0
to indicate that IMDSv2 is specified in the AMI.
* Instances launched from this AMI will have HttpTokens
automatically
* set to required
so that, by default, the instance requires that
* IMDSv2 is used when requesting instance metadata. In addition,
* HttpPutResponseHopLimit
is set to 2
. For more
* information, see Configure
* the AMI in the Amazon EC2 User Guide.
Do not use
* this parameter unless your AMI software supports IMDSv2. After you set the value
* to v2.0
, you can't undo it. The only way to “reset” your AMI is to
* create a new AMI from the underlying snapshot.
Set to v2.0
to indicate that IMDSv2 is specified in the AMI.
* Instances launched from this AMI will have HttpTokens
automatically
* set to required
so that, by default, the instance requires that
* IMDSv2 is used when requesting instance metadata. In addition,
* HttpPutResponseHopLimit
is set to 2
. For more
* information, see Configure
* the AMI in the Amazon EC2 User Guide.
Do not use
* this parameter unless your AMI software supports IMDSv2. After you set the value
* to v2.0
, you can't undo it. The only way to “reset” your AMI is to
* create a new AMI from the underlying snapshot.
Set to v2.0
to indicate that IMDSv2 is specified in the AMI.
* Instances launched from this AMI will have HttpTokens
automatically
* set to required
so that, by default, the instance requires that
* IMDSv2 is used when requesting instance metadata. In addition,
* HttpPutResponseHopLimit
is set to 2
. For more
* information, see Configure
* the AMI in the Amazon EC2 User Guide.
Do not use
* this parameter unless your AMI software supports IMDSv2. After you set the value
* to v2.0
, you can't undo it. The only way to “reset” your AMI is to
* create a new AMI from the underlying snapshot.
Set to v2.0
to indicate that IMDSv2 is specified in the AMI.
* Instances launched from this AMI will have HttpTokens
automatically
* set to required
so that, by default, the instance requires that
* IMDSv2 is used when requesting instance metadata. In addition,
* HttpPutResponseHopLimit
is set to 2
. For more
* information, see Configure
* the AMI in the Amazon EC2 User Guide.
Do not use
* this parameter unless your AMI software supports IMDSv2. After you set the value
* to v2.0
, you can't undo it. The only way to “reset” your AMI is to
* create a new AMI from the underlying snapshot.
Set to v2.0
to indicate that IMDSv2 is specified in the AMI.
* Instances launched from this AMI will have HttpTokens
automatically
* set to required
so that, by default, the instance requires that
* IMDSv2 is used when requesting instance metadata. In addition,
* HttpPutResponseHopLimit
is set to 2
. For more
* information, see Configure
* the AMI in the Amazon EC2 User Guide.
Do not use
* this parameter unless your AMI software supports IMDSv2. After you set the value
* to v2.0
, you can't undo it. The only way to “reset” your AMI is to
* create a new AMI from the underlying snapshot.