/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the ec2-2016-11-15.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.EC2.Model
{
///
/// Container for the parameters to the DescribeImages operation.
/// Describes the specified images (AMIs, AKIs, and ARIs) available to you or all of the
/// images available to you.
///
///
///
/// The images available to you include public images, private images that you own, and
/// private images owned by other Amazon Web Services accounts for which you have explicit
/// launch permissions.
///
///
///
/// Recently deregistered images appear in the returned results for a short interval and
/// then return empty results. After all instances that reference a deregistered AMI are
/// terminated, specifying the ID of the image will eventually return an error indicating
/// that the AMI ID cannot be found.
///
///
public partial class DescribeImagesRequest : AmazonEC2Request
{
private List _executableUsers = new List();
private List _filters = new List();
private List _imageIds = new List();
private bool? _includeDeprecated;
private int? _maxResults;
private string _nextToken;
private List _owners = new List();
///
/// Gets and sets the property ExecutableUsers.
///
/// Scopes the images by users with explicit launch permissions. Specify an Amazon Web
/// Services account ID, self
(the sender of the request), or all
/// (public AMIs).
///
/// -
///
/// If you specify an Amazon Web Services account ID that is not your own, only AMIs shared
/// with that specific Amazon Web Services account ID are returned. However, AMIs that
/// are shared with the account’s organization or organizational unit (OU) are not returned.
///
///
-
///
/// If you specify
self
or your own Amazon Web Services account ID, AMIs
/// shared with your account are returned. In addition, AMIs that are shared with the
/// organization or OU of which you are member are also returned.
///
/// -
///
/// If you specify
all
, all public AMIs are returned.
///
///
///
public List ExecutableUsers
{
get { return this._executableUsers; }
set { this._executableUsers = value; }
}
// Check to see if ExecutableUsers property is set
internal bool IsSetExecutableUsers()
{
return this._executableUsers != null && this._executableUsers.Count > 0;
}
///
/// Gets and sets the property Filters.
///
/// The filters.
///
/// -
///
///
architecture
- The image architecture (i386
| x86_64
/// | arm64
| x86_64_mac
| arm64_mac
).
///
/// -
///
///
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
/// Amazon EBS volume.
///
/// -
///
///
block-device-mapping.volume-size
- The volume size of the Amazon EBS
/// volume, in GiB.
///
/// -
///
///
block-device-mapping.volume-type
- The volume type of the Amazon EBS
/// volume (io1
| io2
| gp2
| gp3
/// | sc1
| st1
| standard
).
///
/// -
///
///
block-device-mapping.encrypted
- A Boolean that indicates whether the
/// Amazon EBS volume is encrypted.
///
/// -
///
///
creation-date
- The time when the image was created, in the ISO 8601
/// format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z
.
/// You can use a wildcard (*
), for example, 2021-09-29T*
, which
/// matches an entire day.
///
/// -
///
///
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 (amazon
| aws-marketplace
).
/// The valid aliases are defined in an Amazon-maintained list. This is not the Amazon
/// Web Services account alias that can be set using the IAM console. We recommend that
/// you use the Owner request parameter instead of this filter.
///
/// -
///
///
owner-id
- The Amazon Web Services account ID of the owner. We recommend
/// that you use the Owner request parameter instead of this filter.
///
/// -
///
///
platform
- The platform. The only supported value is windows
.
///
/// -
///
///
product-code
- The product code.
///
/// -
///
///
product-code.type
- The type of the product code (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
).
///
///
///
public List Filters
{
get { return this._filters; }
set { this._filters = value; }
}
// Check to see if Filters property is set
internal bool IsSetFilters()
{
return this._filters != null && this._filters.Count > 0;
}
///
/// Gets and sets the property ImageIds.
///
/// The image IDs.
///
///
///
/// Default: Describes all images available to you.
///
///
public List ImageIds
{
get { return this._imageIds; }
set { this._imageIds = value; }
}
// Check to see if ImageIds property is set
internal bool IsSetImageIds()
{
return this._imageIds != null && this._imageIds.Count > 0;
}
///
/// Gets and sets the property IncludeDeprecated.
///
/// Specifies whether to include deprecated AMIs.
///
///
///
/// Default: No deprecated AMIs are included in the response.
///
///
///
/// If you are the AMI owner, all deprecated AMIs appear in the response regardless of
/// what you specify for this parameter.
///
///
///
public bool IncludeDeprecated
{
get { return this._includeDeprecated.GetValueOrDefault(); }
set { this._includeDeprecated = value; }
}
// Check to see if IncludeDeprecated property is set
internal bool IsSetIncludeDeprecated()
{
return this._includeDeprecated.HasValue;
}
///
/// Gets and sets the property MaxResults.
///
/// The maximum number of items to return for this request. To get the next page of items,
/// make another request with the token returned in the output. For more information,
/// see Pagination.
///
///
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property NextToken.
///
/// The token returned from a previous paginated request. Pagination continues from the
/// end of the items returned by the previous request.
///
///
public string NextToken
{
get { return this._nextToken; }
set { this._nextToken = value; }
}
// Check to see if NextToken property is set
internal bool IsSetNextToken()
{
return this._nextToken != null;
}
///
/// Gets and sets the property Owners.
///
/// Scopes the results to images with the specified owners. You can specify a combination
/// of Amazon Web Services 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.
///
///
public List Owners
{
get { return this._owners; }
set { this._owners = value; }
}
// Check to see if Owners property is set
internal bool IsSetOwners()
{
return this._owners != null && this._owners.Count > 0;
}
}
}