/******************************************************************************* * Copyright 2012-2019 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. * ***************************************************************************** * * AWS Tools for Windows (TM) PowerShell (TM) * */ using System; using System.Collections.Generic; using System.Linq; using System.Management.Automation; using System.Text; using Amazon.PowerShell.Common; using Amazon.Runtime; using Amazon.EC2; using Amazon.EC2.Model; namespace Amazon.PowerShell.Cmdlets.EC2 { /// /// Calculates the Spot placement score for a Region or Availability Zone based on the /// specified target capacity and compute requirements. /// /// /// /// You can specify your compute requirements either by using InstanceRequirementsWithMetadata /// and letting Amazon EC2 choose the optimal instance types to fulfill your Spot request, /// or you can specify the instance types by using InstanceTypes. /// /// For more information, see Spot /// placement score in the Amazon EC2 User Guide. ///

This cmdlet automatically pages all available results to the pipeline - parameters related to iteration are only needed if you want to manually control the paginated output. To disable autopagination, use -NoAutoIteration. ///
[Cmdlet("Get", "EC2SpotPlacementScore")] [OutputType("Amazon.EC2.Model.SpotPlacementScore")] [AWSCmdlet("Calls the Amazon Elastic Compute Cloud (EC2) GetSpotPlacementScores API operation.", Operation = new[] {"GetSpotPlacementScores"}, SelectReturnType = typeof(Amazon.EC2.Model.GetSpotPlacementScoresResponse))] [AWSCmdletOutput("Amazon.EC2.Model.SpotPlacementScore or Amazon.EC2.Model.GetSpotPlacementScoresResponse", "This cmdlet returns a collection of Amazon.EC2.Model.SpotPlacementScore objects.", "The service call response (type Amazon.EC2.Model.GetSpotPlacementScoresResponse) can also be referenced from properties attached to the cmdlet entry in the $AWSHistory stack." )] public partial class GetEC2SpotPlacementScoreCmdlet : AmazonEC2ClientCmdlet, IExecutor { #region Parameter InstanceRequirements_AcceleratorManufacturer /// /// /// Indicates whether instance types must have accelerators by specific manufacturers.Default: Any manufacturer /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorManufacturers")] public System.String[] InstanceRequirements_AcceleratorManufacturer { get; set; } #endregion #region Parameter InstanceRequirements_AcceleratorName /// /// /// The accelerators that must be on the instance type.Default: Any accelerator /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorNames")] public System.String[] InstanceRequirements_AcceleratorName { get; set; } #endregion #region Parameter InstanceRequirements_AcceleratorType /// /// /// The accelerator types that must be on the instance type.Default: Any accelerator type /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTypes")] public System.String[] InstanceRequirements_AcceleratorType { get; set; } #endregion #region Parameter InstanceRequirements_AllowedInstanceType /// /// /// The instance types to apply your specified attributes against. All other instance /// types are ignored, even if they match your specified attributes.You can use strings with one or more wild cards, represented by an asterisk (*), /// to allow an instance type, size, or generation. The following are examples: m5.8xlarge, /// c5*.*, m5a.*, r*, *3*.For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance /// family, which includes all C5a and C5n instance types. If you specify m5a.*, /// Amazon EC2 will allow all the M5a instance types, but not the M5n instance types.If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.Default: All instance types /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AllowedInstanceTypes")] public System.String[] InstanceRequirements_AllowedInstanceType { get; set; } #endregion #region Parameter InstanceRequirementsWithMetadata_ArchitectureType /// /// /// The architecture type. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_ArchitectureTypes")] public System.String[] InstanceRequirementsWithMetadata_ArchitectureType { get; set; } #endregion #region Parameter InstanceRequirements_BareMetal /// /// /// Indicates whether bare metal instance types must be included, excluded, or required.Default: excluded /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BareMetal")] [AWSConstantClassSource("Amazon.EC2.BareMetal")] public Amazon.EC2.BareMetal InstanceRequirements_BareMetal { get; set; } #endregion #region Parameter InstanceRequirements_BurstablePerformance /// /// /// Indicates whether burstable performance T instance types are included, excluded, or /// required. For more information, see Burstable /// performance instances.Default: excluded /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BurstablePerformance")] [AWSConstantClassSource("Amazon.EC2.BurstablePerformance")] public Amazon.EC2.BurstablePerformance InstanceRequirements_BurstablePerformance { get; set; } #endregion #region Parameter InstanceRequirements_CpuManufacturer /// /// /// The CPU manufacturers to include.Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched /// with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you /// specify in your launch template.Default: Any manufacturer /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_CpuManufacturers")] public System.String[] InstanceRequirements_CpuManufacturer { get; set; } #endregion #region Parameter InstanceRequirements_ExcludedInstanceType /// /// /// The instance types to exclude.You can use strings with one or more wild cards, represented by an asterisk (*), /// to exclude an instance family, type, size, or generation. The following are examples: /// m5.8xlarge, c5*.*, m5a.*, r*, /// *3*.For example, if you specify c5*,Amazon EC2 will exclude the entire C5 /// instance family, which includes all C5a and C5n instance types. If you specify m5a.*, /// Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types.If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.Default: No excluded instance types /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_ExcludedInstanceTypes")] public System.String[] InstanceRequirements_ExcludedInstanceType { get; set; } #endregion #region Parameter InstanceRequirements_InstanceGeneration /// /// /// Indicates whether current or previous generation instance types are included. The /// current generation instance types are recommended for use. Current generation instance /// types are typically the latest two to three generations in each instance family. For /// more information, see Instance /// types in the Amazon EC2 User Guide.For current generation instance types, specify current.For previous generation instance types, specify previous.Default: Current and previous generation instance types /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_InstanceGenerations")] public System.String[] InstanceRequirements_InstanceGeneration { get; set; } #endregion #region Parameter InstanceType /// /// /// The instance types. We recommend that you specify at least three instance types. If /// you specify one or two instance types, or specify variations of a single instance /// type (for example, an m3.xlarge with and without instance storage), the /// returned placement score will always be low. If you specify InstanceTypes, you can't specify InstanceRequirementsWithMetadata. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceTypes")] public System.String[] InstanceType { get; set; } #endregion #region Parameter InstanceRequirements_LocalStorage /// /// /// Indicates whether instance types with instance store volumes are included, excluded, /// or required. For more information, Amazon /// EC2 instance store in the Amazon EC2 User Guide.Default: included /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_LocalStorage")] [AWSConstantClassSource("Amazon.EC2.LocalStorage")] public Amazon.EC2.LocalStorage InstanceRequirements_LocalStorage { get; set; } #endregion #region Parameter InstanceRequirements_LocalStorageType /// /// /// The type of local storage that is required.Default: hdd and ssd /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_LocalStorageTypes")] public System.String[] InstanceRequirements_LocalStorageType { get; set; } #endregion #region Parameter AcceleratorCount_Max /// /// /// The maximum number of accelerators. To specify no maximum limit, omit this parameter. /// To exclude accelerator-enabled instance types, set Max to 0. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_Max")] public System.Int32? AcceleratorCount_Max { get; set; } #endregion #region Parameter AcceleratorTotalMemoryMiB_Max /// /// /// The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit /// this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_Max")] public System.Int32? AcceleratorTotalMemoryMiB_Max { get; set; } #endregion #region Parameter BaselineEbsBandwidthMbps_Max /// /// /// The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_Max")] public System.Int32? BaselineEbsBandwidthMbps_Max { get; set; } #endregion #region Parameter MemoryGiBPerVCpu_Max /// /// /// The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this /// parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_Max")] public System.Double? MemoryGiBPerVCpu_Max { get; set; } #endregion #region Parameter MemoryMiB_Max /// /// /// The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_Max")] public System.Int32? MemoryMiB_Max { get; set; } #endregion #region Parameter NetworkBandwidthGbps_Max /// /// /// The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit /// this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_Max")] public System.Double? NetworkBandwidthGbps_Max { get; set; } #endregion #region Parameter NetworkInterfaceCount_Max /// /// /// The maximum number of network interfaces. To specify no maximum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_Max")] public System.Int32? NetworkInterfaceCount_Max { get; set; } #endregion #region Parameter TotalLocalStorageGB_Max /// /// /// The maximum amount of total local storage, in GB. To specify no maximum limit, omit /// this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_Max")] public System.Double? TotalLocalStorageGB_Max { get; set; } #endregion #region Parameter VCpuCount_Max /// /// /// The maximum number of vCPUs. To specify no maximum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_Max")] public System.Int32? VCpuCount_Max { get; set; } #endregion #region Parameter AcceleratorCount_Min /// /// /// The minimum number of accelerators. To specify no minimum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_Min")] public System.Int32? AcceleratorCount_Min { get; set; } #endregion #region Parameter AcceleratorTotalMemoryMiB_Min /// /// /// The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit /// this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_Min")] public System.Int32? AcceleratorTotalMemoryMiB_Min { get; set; } #endregion #region Parameter BaselineEbsBandwidthMbps_Min /// /// /// The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_Min")] public System.Int32? BaselineEbsBandwidthMbps_Min { get; set; } #endregion #region Parameter MemoryGiBPerVCpu_Min /// /// /// The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this /// parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_Min")] public System.Double? MemoryGiBPerVCpu_Min { get; set; } #endregion #region Parameter MemoryMiB_Min /// /// /// The minimum amount of memory, in MiB. To specify no minimum limit, specify 0. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_Min")] public System.Int32? MemoryMiB_Min { get; set; } #endregion #region Parameter NetworkBandwidthGbps_Min /// /// /// The minimum amount of network bandwidth, in Gbps. To specify no minimum limit, omit /// this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_Min")] public System.Double? NetworkBandwidthGbps_Min { get; set; } #endregion #region Parameter NetworkInterfaceCount_Min /// /// /// The minimum number of network interfaces. To specify no minimum limit, omit this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_Min")] public System.Int32? NetworkInterfaceCount_Min { get; set; } #endregion #region Parameter TotalLocalStorageGB_Min /// /// /// The minimum amount of total local storage, in GB. To specify no minimum limit, omit /// this parameter. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_Min")] public System.Double? TotalLocalStorageGB_Min { get; set; } #endregion #region Parameter VCpuCount_Min /// /// /// The minimum number of vCPUs. To specify no minimum limit, specify 0. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_Min")] public System.Int32? VCpuCount_Min { get; set; } #endregion #region Parameter InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice /// /// /// The price protection threshold for On-Demand Instances. This is the maximum you’ll /// pay for an On-Demand Instance, expressed as a percentage above the least expensive /// current generation M, C, or R instance type with your specified attributes. When Amazon /// EC2 selects instance types with your attributes, it excludes instance types priced /// above your threshold.The parameter accepts an integer, which Amazon EC2 interprets as a percentage.To turn off price protection, specify a high value, such as 999999.This parameter is not supported for GetSpotPlacementScores /// and GetInstanceTypesFromInstanceRequirements.If you set TargetCapacityUnitType to vcpu or memory-mib, /// the price protection threshold is applied based on the per-vCPU or per-memory price /// instead of the per-instance price.Default: 20 /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice")] public System.Int32? InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice { get; set; } #endregion #region Parameter RegionName /// /// /// The Regions used to narrow down the list of Regions to be scored. Enter the Region /// code, for example, us-east-1. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("RegionNames")] public System.String[] RegionName { get; set; } #endregion #region Parameter InstanceRequirements_RequireHibernateSupport /// /// /// Indicates whether instance types must support hibernation for On-Demand Instances.This parameter is not supported for GetSpotPlacementScores.Default: false /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_RequireHibernateSupport")] public System.Boolean? InstanceRequirements_RequireHibernateSupport { get; set; } #endregion #region Parameter SingleAvailabilityZone /// /// /// Specify true so that the response returns a list of scored Availability /// Zones. Otherwise, the response returns a list of scored Regions.A list of scored Availability Zones is useful if you want to launch all of your Spot /// capacity into a single Availability Zone. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] public System.Boolean? SingleAvailabilityZone { get; set; } #endregion #region Parameter InstanceRequirements_SpotMaxPricePercentageOverLowestPrice /// /// /// The price protection threshold for Spot Instance. This is the maximum you’ll pay for /// an Spot Instance, expressed as a percentage above the least expensive current generation /// M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance /// types with your attributes, it excludes instance types priced above your threshold.The parameter accepts an integer, which Amazon EC2 interprets as a percentage.To turn off price protection, specify a high value, such as 999999.This parameter is not supported for GetSpotPlacementScores /// and GetInstanceTypesFromInstanceRequirements.If you set TargetCapacityUnitType to vcpu or memory-mib, /// the price protection threshold is applied based on the per-vCPU or per-memory price /// instead of the per-instance price.Default: 100 /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_InstanceRequirements_SpotMaxPricePercentageOverLowestPrice")] public System.Int32? InstanceRequirements_SpotMaxPricePercentageOverLowestPrice { get; set; } #endregion #region Parameter TargetCapacity /// /// /// The target capacity. /// /// #if !MODULAR [System.Management.Automation.Parameter(Position = 0, ValueFromPipelineByPropertyName = true, ValueFromPipeline = true)] #else [System.Management.Automation.Parameter(Position = 0, ValueFromPipelineByPropertyName = true, ValueFromPipeline = true, Mandatory = true)] [System.Management.Automation.AllowNull] #endif [Amazon.PowerShell.Common.AWSRequiredParameter] public System.Int32? TargetCapacity { get; set; } #endregion #region Parameter TargetCapacityUnitType /// /// /// The unit for the target capacity.Default: units (translates to number of instances) /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [AWSConstantClassSource("Amazon.EC2.TargetCapacityUnitType")] public Amazon.EC2.TargetCapacityUnitType TargetCapacityUnitType { get; set; } #endregion #region Parameter InstanceRequirementsWithMetadata_VirtualizationType /// /// /// The virtualization type. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("InstanceRequirementsWithMetadata_VirtualizationTypes")] public System.String[] InstanceRequirementsWithMetadata_VirtualizationType { get; set; } #endregion #region Parameter MaxResult /// /// /// 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. /// /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] [Alias("MaxResults")] public System.Int32? MaxResult { get; set; } #endregion #region Parameter NextToken /// /// /// The token returned from a previous paginated request. Pagination continues from the /// end of the items returned by the previous request. /// /// ///
Note: This parameter is only used if you are manually controlling output pagination of the service API call. ///
In order to manually control output pagination, use '-NextToken $null' for the first call and '-NextToken $AWSHistory.LastServiceResponse.NextToken' for subsequent calls. ///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] public System.String NextToken { get; set; } #endregion #region Parameter Select /// /// Use the -Select parameter to control the cmdlet output. The default value is 'SpotPlacementScores'. /// Specifying -Select '*' will result in the cmdlet returning the whole service response (Amazon.EC2.Model.GetSpotPlacementScoresResponse). /// Specifying the name of a property of type Amazon.EC2.Model.GetSpotPlacementScoresResponse will result in that property being returned. /// Specifying -Select '^ParameterName' will result in the cmdlet returning the selected cmdlet parameter value. /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] public string Select { get; set; } = "SpotPlacementScores"; #endregion #region Parameter PassThru /// /// Changes the cmdlet behavior to return the value passed to the TargetCapacity parameter. /// The -PassThru parameter is deprecated, use -Select '^TargetCapacity' instead. This parameter will be removed in a future version. /// [System.Obsolete("The -PassThru parameter is deprecated, use -Select '^TargetCapacity' instead. This parameter will be removed in a future version.")] [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] public SwitchParameter PassThru { get; set; } #endregion #region Parameter NoAutoIteration /// /// By default the cmdlet will auto-iterate and retrieve all results to the pipeline by performing multiple /// service calls. If set, the cmdlet will retrieve only the next 'page' of results using the value of NextToken /// as the start point. /// [System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)] public SwitchParameter NoAutoIteration { get; set; } #endregion protected override void ProcessRecord() { this._AWSSignerType = "v4"; base.ProcessRecord(); var context = new CmdletContext(); // allow for manipulation of parameters prior to loading into context PreExecutionContextLoad(context); #pragma warning disable CS0618, CS0612 //A class member was marked with the Obsolete attribute if (ParameterWasBound(nameof(this.Select))) { context.Select = CreateSelectDelegate(Select) ?? throw new System.ArgumentException("Invalid value for -Select parameter.", nameof(this.Select)); if (this.PassThru.IsPresent) { throw new System.ArgumentException("-PassThru cannot be used when -Select is specified.", nameof(this.Select)); } } else if (this.PassThru.IsPresent) { context.Select = (response, cmdlet) => this.TargetCapacity; } #pragma warning restore CS0618, CS0612 //A class member was marked with the Obsolete attribute if (this.InstanceRequirementsWithMetadata_ArchitectureType != null) { context.InstanceRequirementsWithMetadata_ArchitectureType = new List(this.InstanceRequirementsWithMetadata_ArchitectureType); } context.AcceleratorCount_Max = this.AcceleratorCount_Max; context.AcceleratorCount_Min = this.AcceleratorCount_Min; if (this.InstanceRequirements_AcceleratorManufacturer != null) { context.InstanceRequirements_AcceleratorManufacturer = new List(this.InstanceRequirements_AcceleratorManufacturer); } if (this.InstanceRequirements_AcceleratorName != null) { context.InstanceRequirements_AcceleratorName = new List(this.InstanceRequirements_AcceleratorName); } context.AcceleratorTotalMemoryMiB_Max = this.AcceleratorTotalMemoryMiB_Max; context.AcceleratorTotalMemoryMiB_Min = this.AcceleratorTotalMemoryMiB_Min; if (this.InstanceRequirements_AcceleratorType != null) { context.InstanceRequirements_AcceleratorType = new List(this.InstanceRequirements_AcceleratorType); } if (this.InstanceRequirements_AllowedInstanceType != null) { context.InstanceRequirements_AllowedInstanceType = new List(this.InstanceRequirements_AllowedInstanceType); } context.InstanceRequirements_BareMetal = this.InstanceRequirements_BareMetal; context.BaselineEbsBandwidthMbps_Max = this.BaselineEbsBandwidthMbps_Max; context.BaselineEbsBandwidthMbps_Min = this.BaselineEbsBandwidthMbps_Min; context.InstanceRequirements_BurstablePerformance = this.InstanceRequirements_BurstablePerformance; if (this.InstanceRequirements_CpuManufacturer != null) { context.InstanceRequirements_CpuManufacturer = new List(this.InstanceRequirements_CpuManufacturer); } if (this.InstanceRequirements_ExcludedInstanceType != null) { context.InstanceRequirements_ExcludedInstanceType = new List(this.InstanceRequirements_ExcludedInstanceType); } if (this.InstanceRequirements_InstanceGeneration != null) { context.InstanceRequirements_InstanceGeneration = new List(this.InstanceRequirements_InstanceGeneration); } context.InstanceRequirements_LocalStorage = this.InstanceRequirements_LocalStorage; if (this.InstanceRequirements_LocalStorageType != null) { context.InstanceRequirements_LocalStorageType = new List(this.InstanceRequirements_LocalStorageType); } context.MemoryGiBPerVCpu_Max = this.MemoryGiBPerVCpu_Max; context.MemoryGiBPerVCpu_Min = this.MemoryGiBPerVCpu_Min; context.MemoryMiB_Max = this.MemoryMiB_Max; context.MemoryMiB_Min = this.MemoryMiB_Min; context.NetworkBandwidthGbps_Max = this.NetworkBandwidthGbps_Max; context.NetworkBandwidthGbps_Min = this.NetworkBandwidthGbps_Min; context.NetworkInterfaceCount_Max = this.NetworkInterfaceCount_Max; context.NetworkInterfaceCount_Min = this.NetworkInterfaceCount_Min; context.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice = this.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice; context.InstanceRequirements_RequireHibernateSupport = this.InstanceRequirements_RequireHibernateSupport; context.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice = this.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice; context.TotalLocalStorageGB_Max = this.TotalLocalStorageGB_Max; context.TotalLocalStorageGB_Min = this.TotalLocalStorageGB_Min; context.VCpuCount_Max = this.VCpuCount_Max; context.VCpuCount_Min = this.VCpuCount_Min; if (this.InstanceRequirementsWithMetadata_VirtualizationType != null) { context.InstanceRequirementsWithMetadata_VirtualizationType = new List(this.InstanceRequirementsWithMetadata_VirtualizationType); } if (this.InstanceType != null) { context.InstanceType = new List(this.InstanceType); } context.MaxResult = this.MaxResult; context.NextToken = this.NextToken; if (this.RegionName != null) { context.RegionName = new List(this.RegionName); } context.SingleAvailabilityZone = this.SingleAvailabilityZone; context.TargetCapacity = this.TargetCapacity; #if MODULAR if (this.TargetCapacity == null && ParameterWasBound(nameof(this.TargetCapacity))) { WriteWarning("You are passing $null as a value for parameter TargetCapacity which is marked as required. In case you believe this parameter was incorrectly marked as required, report this by opening an issue at https://github.com/aws/aws-tools-for-powershell/issues."); } #endif context.TargetCapacityUnitType = this.TargetCapacityUnitType; // allow further manipulation of loaded context prior to processing PostExecutionContextLoad(context); var output = Execute(context) as CmdletOutput; ProcessOutput(output); } #region IExecutor Members public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; #pragma warning disable CS0618, CS0612 //A class member was marked with the Obsolete attribute var useParameterSelect = this.Select.StartsWith("^") || this.PassThru.IsPresent; #pragma warning restore CS0618, CS0612 //A class member was marked with the Obsolete attribute // create request and set iteration invariants var request = new Amazon.EC2.Model.GetSpotPlacementScoresRequest(); // populate InstanceRequirementsWithMetadata var requestInstanceRequirementsWithMetadataIsNull = true; request.InstanceRequirementsWithMetadata = new Amazon.EC2.Model.InstanceRequirementsWithMetadataRequest(); List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType = null; if (cmdletContext.InstanceRequirementsWithMetadata_ArchitectureType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType = cmdletContext.InstanceRequirementsWithMetadata_ArchitectureType; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType != null) { request.InstanceRequirementsWithMetadata.ArchitectureTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType; requestInstanceRequirementsWithMetadataIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType = null; if (cmdletContext.InstanceRequirementsWithMetadata_VirtualizationType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType = cmdletContext.InstanceRequirementsWithMetadata_VirtualizationType; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType != null) { request.InstanceRequirementsWithMetadata.VirtualizationTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType; requestInstanceRequirementsWithMetadataIsNull = false; } Amazon.EC2.Model.InstanceRequirementsRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements = null; // populate InstanceRequirements var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements = new Amazon.EC2.Model.InstanceRequirementsRequest(); List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer = null; if (cmdletContext.InstanceRequirements_AcceleratorManufacturer != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer = cmdletContext.InstanceRequirements_AcceleratorManufacturer; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorManufacturers = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName = null; if (cmdletContext.InstanceRequirements_AcceleratorName != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName = cmdletContext.InstanceRequirements_AcceleratorName; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorNames = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType = null; if (cmdletContext.InstanceRequirements_AcceleratorType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType = cmdletContext.InstanceRequirements_AcceleratorType; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType = null; if (cmdletContext.InstanceRequirements_AllowedInstanceType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType = cmdletContext.InstanceRequirements_AllowedInstanceType; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AllowedInstanceTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.BareMetal requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal = null; if (cmdletContext.InstanceRequirements_BareMetal != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal = cmdletContext.InstanceRequirements_BareMetal; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.BareMetal = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.BurstablePerformance requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance = null; if (cmdletContext.InstanceRequirements_BurstablePerformance != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance = cmdletContext.InstanceRequirements_BurstablePerformance; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.BurstablePerformance = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer = null; if (cmdletContext.InstanceRequirements_CpuManufacturer != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer = cmdletContext.InstanceRequirements_CpuManufacturer; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.CpuManufacturers = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType = null; if (cmdletContext.InstanceRequirements_ExcludedInstanceType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType = cmdletContext.InstanceRequirements_ExcludedInstanceType; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.ExcludedInstanceTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration = null; if (cmdletContext.InstanceRequirements_InstanceGeneration != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration = cmdletContext.InstanceRequirements_InstanceGeneration; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.InstanceGenerations = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.LocalStorage requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage = null; if (cmdletContext.InstanceRequirements_LocalStorage != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage = cmdletContext.InstanceRequirements_LocalStorage; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.LocalStorage = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType = null; if (cmdletContext.InstanceRequirements_LocalStorageType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType = cmdletContext.InstanceRequirements_LocalStorageType; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.LocalStorageTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice = null; if (cmdletContext.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice = cmdletContext.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.OnDemandMaxPricePercentageOverLowestPrice = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } System.Boolean? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport = null; if (cmdletContext.InstanceRequirements_RequireHibernateSupport != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport = cmdletContext.InstanceRequirements_RequireHibernateSupport.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.RequireHibernateSupport = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice = null; if (cmdletContext.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice = cmdletContext.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.SpotMaxPricePercentageOverLowestPrice = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.AcceleratorCountRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount = null; // populate AcceleratorCount var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount = new Amazon.EC2.Model.AcceleratorCountRequest(); System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max = null; if (cmdletContext.AcceleratorCount_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max = cmdletContext.AcceleratorCount_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min = null; if (cmdletContext.AcceleratorCount_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min = cmdletContext.AcceleratorCount_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorCount = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.AcceleratorTotalMemoryMiBRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB = null; // populate AcceleratorTotalMemoryMiB var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB = new Amazon.EC2.Model.AcceleratorTotalMemoryMiBRequest(); System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max = null; if (cmdletContext.AcceleratorTotalMemoryMiB_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max = cmdletContext.AcceleratorTotalMemoryMiB_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min = null; if (cmdletContext.AcceleratorTotalMemoryMiB_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min = cmdletContext.AcceleratorTotalMemoryMiB_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorTotalMemoryMiB = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.BaselineEbsBandwidthMbpsRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps = null; // populate BaselineEbsBandwidthMbps var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps = new Amazon.EC2.Model.BaselineEbsBandwidthMbpsRequest(); System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max = null; if (cmdletContext.BaselineEbsBandwidthMbps_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max = cmdletContext.BaselineEbsBandwidthMbps_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min = null; if (cmdletContext.BaselineEbsBandwidthMbps_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min = cmdletContext.BaselineEbsBandwidthMbps_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.BaselineEbsBandwidthMbps = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.MemoryGiBPerVCpuRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu = null; // populate MemoryGiBPerVCpu var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu = new Amazon.EC2.Model.MemoryGiBPerVCpuRequest(); System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max = null; if (cmdletContext.MemoryGiBPerVCpu_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max = cmdletContext.MemoryGiBPerVCpu_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull = false; } System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min = null; if (cmdletContext.MemoryGiBPerVCpu_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min = cmdletContext.MemoryGiBPerVCpu_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.MemoryGiBPerVCpu = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.MemoryMiBRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB = null; // populate MemoryMiB var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB = new Amazon.EC2.Model.MemoryMiBRequest(); System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max = null; if (cmdletContext.MemoryMiB_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max = cmdletContext.MemoryMiB_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min = null; if (cmdletContext.MemoryMiB_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min = cmdletContext.MemoryMiB_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.MemoryMiB = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.NetworkBandwidthGbpsRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps = null; // populate NetworkBandwidthGbps var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps = new Amazon.EC2.Model.NetworkBandwidthGbpsRequest(); System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max = null; if (cmdletContext.NetworkBandwidthGbps_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max = cmdletContext.NetworkBandwidthGbps_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull = false; } System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min = null; if (cmdletContext.NetworkBandwidthGbps_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min = cmdletContext.NetworkBandwidthGbps_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.NetworkBandwidthGbps = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.NetworkInterfaceCountRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount = null; // populate NetworkInterfaceCount var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount = new Amazon.EC2.Model.NetworkInterfaceCountRequest(); System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max = null; if (cmdletContext.NetworkInterfaceCount_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max = cmdletContext.NetworkInterfaceCount_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min = null; if (cmdletContext.NetworkInterfaceCount_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min = cmdletContext.NetworkInterfaceCount_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.NetworkInterfaceCount = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.TotalLocalStorageGBRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB = null; // populate TotalLocalStorageGB var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB = new Amazon.EC2.Model.TotalLocalStorageGBRequest(); System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max = null; if (cmdletContext.TotalLocalStorageGB_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max = cmdletContext.TotalLocalStorageGB_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull = false; } System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min = null; if (cmdletContext.TotalLocalStorageGB_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min = cmdletContext.TotalLocalStorageGB_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.TotalLocalStorageGB = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } Amazon.EC2.Model.VCpuCountRangeRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount = null; // populate VCpuCount var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull = true; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount = new Amazon.EC2.Model.VCpuCountRangeRequest(); System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max = null; if (cmdletContext.VCpuCount_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max = cmdletContext.VCpuCount_Max.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull = false; } System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min = null; if (cmdletContext.VCpuCount_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min = cmdletContext.VCpuCount_Min.Value; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min.Value; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount != null) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.VCpuCount = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount; requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false; } // determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements should be set to null if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull) { requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements = null; } if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements != null) { request.InstanceRequirementsWithMetadata.InstanceRequirements = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements; requestInstanceRequirementsWithMetadataIsNull = false; } // determine if request.InstanceRequirementsWithMetadata should be set to null if (requestInstanceRequirementsWithMetadataIsNull) { request.InstanceRequirementsWithMetadata = null; } if (cmdletContext.InstanceType != null) { request.InstanceTypes = cmdletContext.InstanceType; } if (cmdletContext.MaxResult != null) { request.MaxResults = cmdletContext.MaxResult.Value; } if (cmdletContext.RegionName != null) { request.RegionNames = cmdletContext.RegionName; } if (cmdletContext.SingleAvailabilityZone != null) { request.SingleAvailabilityZone = cmdletContext.SingleAvailabilityZone.Value; } if (cmdletContext.TargetCapacity != null) { request.TargetCapacity = cmdletContext.TargetCapacity.Value; } if (cmdletContext.TargetCapacityUnitType != null) { request.TargetCapacityUnitType = cmdletContext.TargetCapacityUnitType; } // Initialize loop variant and commence piping var _nextToken = cmdletContext.NextToken; var _userControllingPaging = this.NoAutoIteration.IsPresent || ParameterWasBound(nameof(this.NextToken)); var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint); do { request.NextToken = _nextToken; CmdletOutput output; try { var response = CallAWSServiceOperation(client, request); object pipelineOutput = null; if (!useParameterSelect) { pipelineOutput = cmdletContext.Select(response, this); } output = new CmdletOutput { PipelineOutput = pipelineOutput, ServiceResponse = response }; _nextToken = response.NextToken; } catch (Exception e) { output = new CmdletOutput { ErrorResponse = e }; } ProcessOutput(output); } while (!_userControllingPaging && AutoIterationHelpers.HasValue(_nextToken)); if (useParameterSelect) { WriteObject(cmdletContext.Select(null, this)); } return null; } public ExecutorContext CreateContext() { return new CmdletContext(); } #endregion #region AWS Service Operation Call private Amazon.EC2.Model.GetSpotPlacementScoresResponse CallAWSServiceOperation(IAmazonEC2 client, Amazon.EC2.Model.GetSpotPlacementScoresRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Elastic Compute Cloud (EC2)", "GetSpotPlacementScores"); try { #if DESKTOP return client.GetSpotPlacementScores(request); #elif CORECLR return client.GetSpotPlacementScoresAsync(request).GetAwaiter().GetResult(); #else #error "Unknown build edition" #endif } catch (AmazonServiceException exc) { var webException = exc.InnerException as System.Net.WebException; if (webException != null) { throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException); } throw; } } #endregion internal partial class CmdletContext : ExecutorContext { public List InstanceRequirementsWithMetadata_ArchitectureType { get; set; } public System.Int32? AcceleratorCount_Max { get; set; } public System.Int32? AcceleratorCount_Min { get; set; } public List InstanceRequirements_AcceleratorManufacturer { get; set; } public List InstanceRequirements_AcceleratorName { get; set; } public System.Int32? AcceleratorTotalMemoryMiB_Max { get; set; } public System.Int32? AcceleratorTotalMemoryMiB_Min { get; set; } public List InstanceRequirements_AcceleratorType { get; set; } public List InstanceRequirements_AllowedInstanceType { get; set; } public Amazon.EC2.BareMetal InstanceRequirements_BareMetal { get; set; } public System.Int32? BaselineEbsBandwidthMbps_Max { get; set; } public System.Int32? BaselineEbsBandwidthMbps_Min { get; set; } public Amazon.EC2.BurstablePerformance InstanceRequirements_BurstablePerformance { get; set; } public List InstanceRequirements_CpuManufacturer { get; set; } public List InstanceRequirements_ExcludedInstanceType { get; set; } public List InstanceRequirements_InstanceGeneration { get; set; } public Amazon.EC2.LocalStorage InstanceRequirements_LocalStorage { get; set; } public List InstanceRequirements_LocalStorageType { get; set; } public System.Double? MemoryGiBPerVCpu_Max { get; set; } public System.Double? MemoryGiBPerVCpu_Min { get; set; } public System.Int32? MemoryMiB_Max { get; set; } public System.Int32? MemoryMiB_Min { get; set; } public System.Double? NetworkBandwidthGbps_Max { get; set; } public System.Double? NetworkBandwidthGbps_Min { get; set; } public System.Int32? NetworkInterfaceCount_Max { get; set; } public System.Int32? NetworkInterfaceCount_Min { get; set; } public System.Int32? InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice { get; set; } public System.Boolean? InstanceRequirements_RequireHibernateSupport { get; set; } public System.Int32? InstanceRequirements_SpotMaxPricePercentageOverLowestPrice { get; set; } public System.Double? TotalLocalStorageGB_Max { get; set; } public System.Double? TotalLocalStorageGB_Min { get; set; } public System.Int32? VCpuCount_Max { get; set; } public System.Int32? VCpuCount_Min { get; set; } public List InstanceRequirementsWithMetadata_VirtualizationType { get; set; } public List InstanceType { get; set; } public System.Int32? MaxResult { get; set; } public System.String NextToken { get; set; } public List RegionName { get; set; } public System.Boolean? SingleAvailabilityZone { get; set; } public System.Int32? TargetCapacity { get; set; } public Amazon.EC2.TargetCapacityUnitType TargetCapacityUnitType { get; set; } public System.Func Select { get; set; } = (response, cmdlet) => response.SpotPlacementScores; } } }