public function withInstancePatternInfo()

in src/Ess/V20140828/EssApiResolver.php [5260:5336]


	public function withInstancePatternInfo(array $instancePatternInfo)
	{
	    $this->data['InstancePatternInfo'] = $instancePatternInfo;
		foreach ($instancePatternInfo as $depth1 => $depth1Value) {
			foreach ($depth1Value['InstanceCategories'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.InstanceCategories.' . ($i + 1)] = $iValue;
			}
			if(isset($depth1Value['Memory'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.Memory'] = $depth1Value['Memory'];
			}
			if(isset($depth1Value['MaximumCpuCoreCount'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MaximumCpuCoreCount'] = $depth1Value['MaximumCpuCoreCount'];
			}
			if(isset($depth1Value['MaxPrice'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MaxPrice'] = $depth1Value['MaxPrice'];
			}
			if(isset($depth1Value['MinimumGpuAmount'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumGpuAmount'] = $depth1Value['MinimumGpuAmount'];
			}
			if(isset($depth1Value['MaximumGpuAmount'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MaximumGpuAmount'] = $depth1Value['MaximumGpuAmount'];
			}
			if(isset($depth1Value['MaximumMemorySize'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MaximumMemorySize'] = $depth1Value['MaximumMemorySize'];
			}
			if(isset($depth1Value['MinimumInitialCredit'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumInitialCredit'] = $depth1Value['MinimumInitialCredit'];
			}
			foreach ($depth1Value['ExcludedInstanceType'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.ExcludedInstanceType.' . ($i + 1)] = $iValue;
			}
			if(isset($depth1Value['MinimumEniIpv6AddressQuantity'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumEniIpv6AddressQuantity'] = $depth1Value['MinimumEniIpv6AddressQuantity'];
			}
			if(isset($depth1Value['MinimumEniPrivateIpAddressQuantity'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumEniPrivateIpAddressQuantity'] = $depth1Value['MinimumEniPrivateIpAddressQuantity'];
			}
			if(isset($depth1Value['BurstablePerformance'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.BurstablePerformance'] = $depth1Value['BurstablePerformance'];
			}
			foreach ($depth1Value['PhysicalProcessorModels'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.PhysicalProcessorModels.' . ($i + 1)] = $iValue;
			}
			if(isset($depth1Value['MinimumCpuCoreCount'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumCpuCoreCount'] = $depth1Value['MinimumCpuCoreCount'];
			}
			foreach ($depth1Value['GpuSpecs'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.GpuSpecs.' . ($i + 1)] = $iValue;
			}
			if(isset($depth1Value['MinimumEniQuantity'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumEniQuantity'] = $depth1Value['MinimumEniQuantity'];
			}
			if(isset($depth1Value['MinimumMemorySize'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumMemorySize'] = $depth1Value['MinimumMemorySize'];
			}
			if(isset($depth1Value['Cores'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.Cores'] = $depth1Value['Cores'];
			}
			if(isset($depth1Value['InstanceFamilyLevel'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.InstanceFamilyLevel'] = $depth1Value['InstanceFamilyLevel'];
			}
			foreach ($depth1Value['InstanceTypeFamilies'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.InstanceTypeFamilies.' . ($i + 1)] = $iValue;
			}
			if(isset($depth1Value['MinimumBaselineCredit'])){
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.MinimumBaselineCredit'] = $depth1Value['MinimumBaselineCredit'];
			}
			foreach ($depth1Value['CpuArchitectures'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.CpuArchitectures.' . ($i + 1)] = $iValue;
			}
			foreach ($depth1Value['Architecture'] as $i => $iValue) {
				$this->options['query']['InstancePatternInfo.' . ($depth1 + 1) . '.Architecture.' . ($i + 1)] = $iValue;
			}
		}

		return $this;
    }