/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace EC2 { namespace Model { /** */ class AWS_EC2_API DescribeImagesRequest : public EC2Request { public: DescribeImagesRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DescribeImages"; } Aws::String SerializePayload() const override; protected: void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline const Aws::Vector& GetExecutableUsers() const{ return m_executableUsers; } /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline bool ExecutableUsersHasBeenSet() const { return m_executableUsersHasBeenSet; } /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline void SetExecutableUsers(const Aws::Vector& value) { m_executableUsersHasBeenSet = true; m_executableUsers = value; } /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline void SetExecutableUsers(Aws::Vector&& value) { m_executableUsersHasBeenSet = true; m_executableUsers = std::move(value); } /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline DescribeImagesRequest& WithExecutableUsers(const Aws::Vector& value) { SetExecutableUsers(value); return *this;} /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline DescribeImagesRequest& WithExecutableUsers(Aws::Vector&& value) { SetExecutableUsers(std::move(value)); return *this;} /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline DescribeImagesRequest& AddExecutableUsers(const Aws::String& value) { m_executableUsersHasBeenSet = true; m_executableUsers.push_back(value); return *this; } /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline DescribeImagesRequest& AddExecutableUsers(Aws::String&& value) { m_executableUsersHasBeenSet = true; m_executableUsers.push_back(std::move(value)); return *this; } /** *

Scopes the images by users with explicit launch permissions. Specify an AWS * account ID, self (the sender of the request), or all * (public AMIs).

*/ inline DescribeImagesRequest& AddExecutableUsers(const char* value) { m_executableUsersHasBeenSet = true; m_executableUsers.push_back(value); return *this; } /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline const Aws::Vector& GetFilters() const{ return m_filters; } /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline void SetFilters(const Aws::Vector& value) { m_filtersHasBeenSet = true; m_filters = value; } /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline void SetFilters(Aws::Vector&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); } /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline DescribeImagesRequest& WithFilters(const Aws::Vector& value) { SetFilters(value); return *this;} /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline DescribeImagesRequest& WithFilters(Aws::Vector&& value) { SetFilters(std::move(value)); return *this;} /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline DescribeImagesRequest& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; } /** *

The filters.

  • architecture - The image * architecture (i386 | x86_64 | arm64).

    *
  • block-device-mapping.delete-on-termination - A * Boolean value that indicates whether the Amazon EBS volume is deleted on * instance termination.

  • * block-device-mapping.device-name - The device name specified in the * block device mapping (for example, /dev/sdh or * xvdh).

  • * block-device-mapping.snapshot-id - The ID of the snapshot used for * the EBS volume.

  • block-device-mapping.volume-size * - The volume size of the EBS volume, in GiB.

  • * block-device-mapping.volume-type - The volume type of the EBS * volume (gp2 | io1 | io2 | st1 * | sc1 | standard).

  • * block-device-mapping.encrypted - A Boolean that indicates whether * the EBS volume is encrypted.

  • description - The * description of the image (provided during image creation).

  • * ena-support - A Boolean that indicates whether enhanced networking * with ENA is enabled.

  • hypervisor - The hypervisor * type (ovm | xen).

  • * image-id - The ID of the image.

  • * image-type - The image type (machine | * kernel | ramdisk).

  • * is-public - A Boolean that indicates whether the image is * public.

  • kernel-id - The kernel ID.

  • *
  • manifest-location - The location of the image * manifest.

  • name - The name of the AMI (provided * during image creation).

  • owner-alias - The owner * alias, from an Amazon-maintained list (amazon | * aws-marketplace). This is not the user-configured AWS account alias * set using the IAM console. We recommend that you use the related parameter * instead of this filter.

  • owner-id - The AWS * account ID of the owner. We recommend that you use the related parameter instead * of this filter.

  • platform - The platform. To only * list Windows-based AMIs, use windows.

  • * product-code - The product code.

  • * product-code.type - The type of the product code * (devpay | marketplace).

  • * ramdisk-id - The RAM disk ID.

  • * root-device-name - The device name of the root device volume (for * example, /dev/sda1).

  • * root-device-type - The type of the root device volume * (ebs | instance-store).

  • * state - The state of the image (available | * pending | failed).

  • * state-reason-code - The reason code for the state change.

  • *
  • state-reason-message - The message for the state * change.

  • sriov-net-support - A value of * simple indicates that enhanced networking with the Intel 82599 VF * interface is enabled.

  • tag:<key> - The * key/value combination of a tag assigned to the resource. Use the tag key in the * filter name and the tag value as the filter value. For example, to find all * resources that have a tag with the key Owner and the value * TeamA, specify tag:Owner for the filter name and * TeamA for the filter value.

  • tag-key * - The key of a tag assigned to the resource. Use this filter to find all * resources assigned a tag with a specific key, regardless of the tag value.

    *
  • virtualization-type - The virtualization type * (paravirtual | hvm).

*/ inline DescribeImagesRequest& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(std::move(value)); return *this; } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline const Aws::Vector& GetImageIds() const{ return m_imageIds; } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline bool ImageIdsHasBeenSet() const { return m_imageIdsHasBeenSet; } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline void SetImageIds(const Aws::Vector& value) { m_imageIdsHasBeenSet = true; m_imageIds = value; } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline void SetImageIds(Aws::Vector&& value) { m_imageIdsHasBeenSet = true; m_imageIds = std::move(value); } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline DescribeImagesRequest& WithImageIds(const Aws::Vector& value) { SetImageIds(value); return *this;} /** *

The image IDs.

Default: Describes all images available to you.

*/ inline DescribeImagesRequest& WithImageIds(Aws::Vector&& value) { SetImageIds(std::move(value)); return *this;} /** *

The image IDs.

Default: Describes all images available to you.

*/ inline DescribeImagesRequest& AddImageIds(const Aws::String& value) { m_imageIdsHasBeenSet = true; m_imageIds.push_back(value); return *this; } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline DescribeImagesRequest& AddImageIds(Aws::String&& value) { m_imageIdsHasBeenSet = true; m_imageIds.push_back(std::move(value)); return *this; } /** *

The image IDs.

Default: Describes all images available to you.

*/ inline DescribeImagesRequest& AddImageIds(const char* value) { m_imageIdsHasBeenSet = true; m_imageIds.push_back(value); return *this; } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline const Aws::Vector& GetOwners() const{ return m_owners; } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline bool OwnersHasBeenSet() const { return m_ownersHasBeenSet; } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline void SetOwners(const Aws::Vector& value) { m_ownersHasBeenSet = true; m_owners = value; } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline void SetOwners(Aws::Vector&& value) { m_ownersHasBeenSet = true; m_owners = std::move(value); } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline DescribeImagesRequest& WithOwners(const Aws::Vector& value) { SetOwners(value); return *this;} /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline DescribeImagesRequest& WithOwners(Aws::Vector&& value) { SetOwners(std::move(value)); return *this;} /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline DescribeImagesRequest& AddOwners(const Aws::String& value) { m_ownersHasBeenSet = true; m_owners.push_back(value); return *this; } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline DescribeImagesRequest& AddOwners(Aws::String&& value) { m_ownersHasBeenSet = true; m_owners.push_back(std::move(value)); return *this; } /** *

Scopes the results to images with the specified owners. You can specify a * combination of AWS account IDs, self, amazon, and * aws-marketplace. If you omit this parameter, the results include * all images for which you have launch permissions, regardless of ownership.

*/ inline DescribeImagesRequest& AddOwners(const char* value) { m_ownersHasBeenSet = true; m_owners.push_back(value); return *this; } /** *

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.

*/ inline bool GetDryRun() const{ return m_dryRun; } /** *

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.

*/ inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; } /** *

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.

*/ inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; } /** *

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.

*/ inline DescribeImagesRequest& WithDryRun(bool value) { SetDryRun(value); return *this;} private: Aws::Vector m_executableUsers; bool m_executableUsersHasBeenSet; Aws::Vector m_filters; bool m_filtersHasBeenSet; Aws::Vector m_imageIds; bool m_imageIdsHasBeenSet; Aws::Vector m_owners; bool m_ownersHasBeenSet; bool m_dryRun; bool m_dryRunHasBeenSet; }; } // namespace Model } // namespace EC2 } // namespace Aws