All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.ec2.model.InstanceTypeInfo Maven / Gradle / Ivy

/*
 * Copyright 2017-2022 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.
 */
package com.amazonaws.services.ec2.model;

import java.io.Serializable;
import javax.annotation.Generated;

/**
 * 

* Describes the instance type. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class InstanceTypeInfo implements Serializable, Cloneable { /** *

* The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. *

*/ private String instanceType; /** *

* Indicates whether the instance type is current generation. *

*/ private Boolean currentGeneration; /** *

* Indicates whether the instance type is eligible for the free tier. *

*/ private Boolean freeTierEligible; /** *

* Indicates whether the instance type is offered for spot or On-Demand. *

*/ private com.amazonaws.internal.SdkInternalList supportedUsageClasses; /** *

* The supported root device types. *

*/ private com.amazonaws.internal.SdkInternalList supportedRootDeviceTypes; /** *

* The supported virtualization types. *

*/ private com.amazonaws.internal.SdkInternalList supportedVirtualizationTypes; /** *

* Indicates whether the instance is a bare metal instance type. *

*/ private Boolean bareMetal; /** *

* The hypervisor for the instance type. *

*/ private String hypervisor; /** *

* Describes the processor. *

*/ private ProcessorInfo processorInfo; /** *

* Describes the vCPU configurations for the instance type. *

*/ private VCpuInfo vCpuInfo; /** *

* Describes the memory for the instance type. *

*/ private MemoryInfo memoryInfo; /** *

* Indicates whether instance storage is supported. *

*/ private Boolean instanceStorageSupported; /** *

* Describes the instance storage for the instance type. *

*/ private InstanceStorageInfo instanceStorageInfo; /** *

* Describes the Amazon EBS settings for the instance type. *

*/ private EbsInfo ebsInfo; /** *

* Describes the network settings for the instance type. *

*/ private NetworkInfo networkInfo; /** *

* Describes the GPU accelerator settings for the instance type. *

*/ private GpuInfo gpuInfo; /** *

* Describes the FPGA accelerator settings for the instance type. *

*/ private FpgaInfo fpgaInfo; /** *

* Describes the placement group settings for the instance type. *

*/ private PlacementGroupInfo placementGroupInfo; /** *

* Describes the Inference accelerator settings for the instance type. *

*/ private InferenceAcceleratorInfo inferenceAcceleratorInfo; /** *

* Indicates whether On-Demand hibernation is supported. *

*/ private Boolean hibernationSupported; /** *

* Indicates whether the instance type is a burstable performance instance type. *

*/ private Boolean burstablePerformanceSupported; /** *

* Indicates whether Dedicated Hosts are supported on the instance type. *

*/ private Boolean dedicatedHostsSupported; /** *

* Indicates whether auto recovery is supported. *

*/ private Boolean autoRecoverySupported; /** *

* The supported boot modes. For more information, see Boot modes in the Amazon EC2 User * Guide. *

*/ private com.amazonaws.internal.SdkInternalList supportedBootModes; /** *

* The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. *

* * @param instanceType * The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. * @see InstanceType */ public void setInstanceType(String instanceType) { this.instanceType = instanceType; } /** *

* The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. *

* * @return The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. * @see InstanceType */ public String getInstanceType() { return this.instanceType; } /** *

* The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. *

* * @param instanceType * The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see InstanceType */ public InstanceTypeInfo withInstanceType(String instanceType) { setInstanceType(instanceType); return this; } /** *

* The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. *

* * @param instanceType * The instance type. For more information, see Instance types in the * Amazon EC2 User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see InstanceType */ public InstanceTypeInfo withInstanceType(InstanceType instanceType) { this.instanceType = instanceType.toString(); return this; } /** *

* Indicates whether the instance type is current generation. *

* * @param currentGeneration * Indicates whether the instance type is current generation. */ public void setCurrentGeneration(Boolean currentGeneration) { this.currentGeneration = currentGeneration; } /** *

* Indicates whether the instance type is current generation. *

* * @return Indicates whether the instance type is current generation. */ public Boolean getCurrentGeneration() { return this.currentGeneration; } /** *

* Indicates whether the instance type is current generation. *

* * @param currentGeneration * Indicates whether the instance type is current generation. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withCurrentGeneration(Boolean currentGeneration) { setCurrentGeneration(currentGeneration); return this; } /** *

* Indicates whether the instance type is current generation. *

* * @return Indicates whether the instance type is current generation. */ public Boolean isCurrentGeneration() { return this.currentGeneration; } /** *

* Indicates whether the instance type is eligible for the free tier. *

* * @param freeTierEligible * Indicates whether the instance type is eligible for the free tier. */ public void setFreeTierEligible(Boolean freeTierEligible) { this.freeTierEligible = freeTierEligible; } /** *

* Indicates whether the instance type is eligible for the free tier. *

* * @return Indicates whether the instance type is eligible for the free tier. */ public Boolean getFreeTierEligible() { return this.freeTierEligible; } /** *

* Indicates whether the instance type is eligible for the free tier. *

* * @param freeTierEligible * Indicates whether the instance type is eligible for the free tier. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withFreeTierEligible(Boolean freeTierEligible) { setFreeTierEligible(freeTierEligible); return this; } /** *

* Indicates whether the instance type is eligible for the free tier. *

* * @return Indicates whether the instance type is eligible for the free tier. */ public Boolean isFreeTierEligible() { return this.freeTierEligible; } /** *

* Indicates whether the instance type is offered for spot or On-Demand. *

* * @return Indicates whether the instance type is offered for spot or On-Demand. * @see UsageClassType */ public java.util.List getSupportedUsageClasses() { if (supportedUsageClasses == null) { supportedUsageClasses = new com.amazonaws.internal.SdkInternalList(); } return supportedUsageClasses; } /** *

* Indicates whether the instance type is offered for spot or On-Demand. *

* * @param supportedUsageClasses * Indicates whether the instance type is offered for spot or On-Demand. * @see UsageClassType */ public void setSupportedUsageClasses(java.util.Collection supportedUsageClasses) { if (supportedUsageClasses == null) { this.supportedUsageClasses = null; return; } this.supportedUsageClasses = new com.amazonaws.internal.SdkInternalList(supportedUsageClasses); } /** *

* Indicates whether the instance type is offered for spot or On-Demand. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSupportedUsageClasses(java.util.Collection)} or * {@link #withSupportedUsageClasses(java.util.Collection)} if you want to override the existing values. *

* * @param supportedUsageClasses * Indicates whether the instance type is offered for spot or On-Demand. * @return Returns a reference to this object so that method calls can be chained together. * @see UsageClassType */ public InstanceTypeInfo withSupportedUsageClasses(String... supportedUsageClasses) { if (this.supportedUsageClasses == null) { setSupportedUsageClasses(new com.amazonaws.internal.SdkInternalList(supportedUsageClasses.length)); } for (String ele : supportedUsageClasses) { this.supportedUsageClasses.add(ele); } return this; } /** *

* Indicates whether the instance type is offered for spot or On-Demand. *

* * @param supportedUsageClasses * Indicates whether the instance type is offered for spot or On-Demand. * @return Returns a reference to this object so that method calls can be chained together. * @see UsageClassType */ public InstanceTypeInfo withSupportedUsageClasses(java.util.Collection supportedUsageClasses) { setSupportedUsageClasses(supportedUsageClasses); return this; } /** *

* Indicates whether the instance type is offered for spot or On-Demand. *

* * @param supportedUsageClasses * Indicates whether the instance type is offered for spot or On-Demand. * @return Returns a reference to this object so that method calls can be chained together. * @see UsageClassType */ public InstanceTypeInfo withSupportedUsageClasses(UsageClassType... supportedUsageClasses) { com.amazonaws.internal.SdkInternalList supportedUsageClassesCopy = new com.amazonaws.internal.SdkInternalList( supportedUsageClasses.length); for (UsageClassType value : supportedUsageClasses) { supportedUsageClassesCopy.add(value.toString()); } if (getSupportedUsageClasses() == null) { setSupportedUsageClasses(supportedUsageClassesCopy); } else { getSupportedUsageClasses().addAll(supportedUsageClassesCopy); } return this; } /** *

* The supported root device types. *

* * @return The supported root device types. * @see RootDeviceType */ public java.util.List getSupportedRootDeviceTypes() { if (supportedRootDeviceTypes == null) { supportedRootDeviceTypes = new com.amazonaws.internal.SdkInternalList(); } return supportedRootDeviceTypes; } /** *

* The supported root device types. *

* * @param supportedRootDeviceTypes * The supported root device types. * @see RootDeviceType */ public void setSupportedRootDeviceTypes(java.util.Collection supportedRootDeviceTypes) { if (supportedRootDeviceTypes == null) { this.supportedRootDeviceTypes = null; return; } this.supportedRootDeviceTypes = new com.amazonaws.internal.SdkInternalList(supportedRootDeviceTypes); } /** *

* The supported root device types. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSupportedRootDeviceTypes(java.util.Collection)} or * {@link #withSupportedRootDeviceTypes(java.util.Collection)} if you want to override the existing values. *

* * @param supportedRootDeviceTypes * The supported root device types. * @return Returns a reference to this object so that method calls can be chained together. * @see RootDeviceType */ public InstanceTypeInfo withSupportedRootDeviceTypes(String... supportedRootDeviceTypes) { if (this.supportedRootDeviceTypes == null) { setSupportedRootDeviceTypes(new com.amazonaws.internal.SdkInternalList(supportedRootDeviceTypes.length)); } for (String ele : supportedRootDeviceTypes) { this.supportedRootDeviceTypes.add(ele); } return this; } /** *

* The supported root device types. *

* * @param supportedRootDeviceTypes * The supported root device types. * @return Returns a reference to this object so that method calls can be chained together. * @see RootDeviceType */ public InstanceTypeInfo withSupportedRootDeviceTypes(java.util.Collection supportedRootDeviceTypes) { setSupportedRootDeviceTypes(supportedRootDeviceTypes); return this; } /** *

* The supported root device types. *

* * @param supportedRootDeviceTypes * The supported root device types. * @return Returns a reference to this object so that method calls can be chained together. * @see RootDeviceType */ public InstanceTypeInfo withSupportedRootDeviceTypes(RootDeviceType... supportedRootDeviceTypes) { com.amazonaws.internal.SdkInternalList supportedRootDeviceTypesCopy = new com.amazonaws.internal.SdkInternalList( supportedRootDeviceTypes.length); for (RootDeviceType value : supportedRootDeviceTypes) { supportedRootDeviceTypesCopy.add(value.toString()); } if (getSupportedRootDeviceTypes() == null) { setSupportedRootDeviceTypes(supportedRootDeviceTypesCopy); } else { getSupportedRootDeviceTypes().addAll(supportedRootDeviceTypesCopy); } return this; } /** *

* The supported virtualization types. *

* * @return The supported virtualization types. * @see VirtualizationType */ public java.util.List getSupportedVirtualizationTypes() { if (supportedVirtualizationTypes == null) { supportedVirtualizationTypes = new com.amazonaws.internal.SdkInternalList(); } return supportedVirtualizationTypes; } /** *

* The supported virtualization types. *

* * @param supportedVirtualizationTypes * The supported virtualization types. * @see VirtualizationType */ public void setSupportedVirtualizationTypes(java.util.Collection supportedVirtualizationTypes) { if (supportedVirtualizationTypes == null) { this.supportedVirtualizationTypes = null; return; } this.supportedVirtualizationTypes = new com.amazonaws.internal.SdkInternalList(supportedVirtualizationTypes); } /** *

* The supported virtualization types. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSupportedVirtualizationTypes(java.util.Collection)} or * {@link #withSupportedVirtualizationTypes(java.util.Collection)} if you want to override the existing values. *

* * @param supportedVirtualizationTypes * The supported virtualization types. * @return Returns a reference to this object so that method calls can be chained together. * @see VirtualizationType */ public InstanceTypeInfo withSupportedVirtualizationTypes(String... supportedVirtualizationTypes) { if (this.supportedVirtualizationTypes == null) { setSupportedVirtualizationTypes(new com.amazonaws.internal.SdkInternalList(supportedVirtualizationTypes.length)); } for (String ele : supportedVirtualizationTypes) { this.supportedVirtualizationTypes.add(ele); } return this; } /** *

* The supported virtualization types. *

* * @param supportedVirtualizationTypes * The supported virtualization types. * @return Returns a reference to this object so that method calls can be chained together. * @see VirtualizationType */ public InstanceTypeInfo withSupportedVirtualizationTypes(java.util.Collection supportedVirtualizationTypes) { setSupportedVirtualizationTypes(supportedVirtualizationTypes); return this; } /** *

* The supported virtualization types. *

* * @param supportedVirtualizationTypes * The supported virtualization types. * @return Returns a reference to this object so that method calls can be chained together. * @see VirtualizationType */ public InstanceTypeInfo withSupportedVirtualizationTypes(VirtualizationType... supportedVirtualizationTypes) { com.amazonaws.internal.SdkInternalList supportedVirtualizationTypesCopy = new com.amazonaws.internal.SdkInternalList( supportedVirtualizationTypes.length); for (VirtualizationType value : supportedVirtualizationTypes) { supportedVirtualizationTypesCopy.add(value.toString()); } if (getSupportedVirtualizationTypes() == null) { setSupportedVirtualizationTypes(supportedVirtualizationTypesCopy); } else { getSupportedVirtualizationTypes().addAll(supportedVirtualizationTypesCopy); } return this; } /** *

* Indicates whether the instance is a bare metal instance type. *

* * @param bareMetal * Indicates whether the instance is a bare metal instance type. */ public void setBareMetal(Boolean bareMetal) { this.bareMetal = bareMetal; } /** *

* Indicates whether the instance is a bare metal instance type. *

* * @return Indicates whether the instance is a bare metal instance type. */ public Boolean getBareMetal() { return this.bareMetal; } /** *

* Indicates whether the instance is a bare metal instance type. *

* * @param bareMetal * Indicates whether the instance is a bare metal instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withBareMetal(Boolean bareMetal) { setBareMetal(bareMetal); return this; } /** *

* Indicates whether the instance is a bare metal instance type. *

* * @return Indicates whether the instance is a bare metal instance type. */ public Boolean isBareMetal() { return this.bareMetal; } /** *

* The hypervisor for the instance type. *

* * @param hypervisor * The hypervisor for the instance type. * @see InstanceTypeHypervisor */ public void setHypervisor(String hypervisor) { this.hypervisor = hypervisor; } /** *

* The hypervisor for the instance type. *

* * @return The hypervisor for the instance type. * @see InstanceTypeHypervisor */ public String getHypervisor() { return this.hypervisor; } /** *

* The hypervisor for the instance type. *

* * @param hypervisor * The hypervisor for the instance type. * @return Returns a reference to this object so that method calls can be chained together. * @see InstanceTypeHypervisor */ public InstanceTypeInfo withHypervisor(String hypervisor) { setHypervisor(hypervisor); return this; } /** *

* The hypervisor for the instance type. *

* * @param hypervisor * The hypervisor for the instance type. * @return Returns a reference to this object so that method calls can be chained together. * @see InstanceTypeHypervisor */ public InstanceTypeInfo withHypervisor(InstanceTypeHypervisor hypervisor) { this.hypervisor = hypervisor.toString(); return this; } /** *

* Describes the processor. *

* * @param processorInfo * Describes the processor. */ public void setProcessorInfo(ProcessorInfo processorInfo) { this.processorInfo = processorInfo; } /** *

* Describes the processor. *

* * @return Describes the processor. */ public ProcessorInfo getProcessorInfo() { return this.processorInfo; } /** *

* Describes the processor. *

* * @param processorInfo * Describes the processor. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withProcessorInfo(ProcessorInfo processorInfo) { setProcessorInfo(processorInfo); return this; } /** *

* Describes the vCPU configurations for the instance type. *

* * @param vCpuInfo * Describes the vCPU configurations for the instance type. */ public void setVCpuInfo(VCpuInfo vCpuInfo) { this.vCpuInfo = vCpuInfo; } /** *

* Describes the vCPU configurations for the instance type. *

* * @return Describes the vCPU configurations for the instance type. */ public VCpuInfo getVCpuInfo() { return this.vCpuInfo; } /** *

* Describes the vCPU configurations for the instance type. *

* * @param vCpuInfo * Describes the vCPU configurations for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withVCpuInfo(VCpuInfo vCpuInfo) { setVCpuInfo(vCpuInfo); return this; } /** *

* Describes the memory for the instance type. *

* * @param memoryInfo * Describes the memory for the instance type. */ public void setMemoryInfo(MemoryInfo memoryInfo) { this.memoryInfo = memoryInfo; } /** *

* Describes the memory for the instance type. *

* * @return Describes the memory for the instance type. */ public MemoryInfo getMemoryInfo() { return this.memoryInfo; } /** *

* Describes the memory for the instance type. *

* * @param memoryInfo * Describes the memory for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withMemoryInfo(MemoryInfo memoryInfo) { setMemoryInfo(memoryInfo); return this; } /** *

* Indicates whether instance storage is supported. *

* * @param instanceStorageSupported * Indicates whether instance storage is supported. */ public void setInstanceStorageSupported(Boolean instanceStorageSupported) { this.instanceStorageSupported = instanceStorageSupported; } /** *

* Indicates whether instance storage is supported. *

* * @return Indicates whether instance storage is supported. */ public Boolean getInstanceStorageSupported() { return this.instanceStorageSupported; } /** *

* Indicates whether instance storage is supported. *

* * @param instanceStorageSupported * Indicates whether instance storage is supported. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withInstanceStorageSupported(Boolean instanceStorageSupported) { setInstanceStorageSupported(instanceStorageSupported); return this; } /** *

* Indicates whether instance storage is supported. *

* * @return Indicates whether instance storage is supported. */ public Boolean isInstanceStorageSupported() { return this.instanceStorageSupported; } /** *

* Describes the instance storage for the instance type. *

* * @param instanceStorageInfo * Describes the instance storage for the instance type. */ public void setInstanceStorageInfo(InstanceStorageInfo instanceStorageInfo) { this.instanceStorageInfo = instanceStorageInfo; } /** *

* Describes the instance storage for the instance type. *

* * @return Describes the instance storage for the instance type. */ public InstanceStorageInfo getInstanceStorageInfo() { return this.instanceStorageInfo; } /** *

* Describes the instance storage for the instance type. *

* * @param instanceStorageInfo * Describes the instance storage for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withInstanceStorageInfo(InstanceStorageInfo instanceStorageInfo) { setInstanceStorageInfo(instanceStorageInfo); return this; } /** *

* Describes the Amazon EBS settings for the instance type. *

* * @param ebsInfo * Describes the Amazon EBS settings for the instance type. */ public void setEbsInfo(EbsInfo ebsInfo) { this.ebsInfo = ebsInfo; } /** *

* Describes the Amazon EBS settings for the instance type. *

* * @return Describes the Amazon EBS settings for the instance type. */ public EbsInfo getEbsInfo() { return this.ebsInfo; } /** *

* Describes the Amazon EBS settings for the instance type. *

* * @param ebsInfo * Describes the Amazon EBS settings for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withEbsInfo(EbsInfo ebsInfo) { setEbsInfo(ebsInfo); return this; } /** *

* Describes the network settings for the instance type. *

* * @param networkInfo * Describes the network settings for the instance type. */ public void setNetworkInfo(NetworkInfo networkInfo) { this.networkInfo = networkInfo; } /** *

* Describes the network settings for the instance type. *

* * @return Describes the network settings for the instance type. */ public NetworkInfo getNetworkInfo() { return this.networkInfo; } /** *

* Describes the network settings for the instance type. *

* * @param networkInfo * Describes the network settings for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withNetworkInfo(NetworkInfo networkInfo) { setNetworkInfo(networkInfo); return this; } /** *

* Describes the GPU accelerator settings for the instance type. *

* * @param gpuInfo * Describes the GPU accelerator settings for the instance type. */ public void setGpuInfo(GpuInfo gpuInfo) { this.gpuInfo = gpuInfo; } /** *

* Describes the GPU accelerator settings for the instance type. *

* * @return Describes the GPU accelerator settings for the instance type. */ public GpuInfo getGpuInfo() { return this.gpuInfo; } /** *

* Describes the GPU accelerator settings for the instance type. *

* * @param gpuInfo * Describes the GPU accelerator settings for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withGpuInfo(GpuInfo gpuInfo) { setGpuInfo(gpuInfo); return this; } /** *

* Describes the FPGA accelerator settings for the instance type. *

* * @param fpgaInfo * Describes the FPGA accelerator settings for the instance type. */ public void setFpgaInfo(FpgaInfo fpgaInfo) { this.fpgaInfo = fpgaInfo; } /** *

* Describes the FPGA accelerator settings for the instance type. *

* * @return Describes the FPGA accelerator settings for the instance type. */ public FpgaInfo getFpgaInfo() { return this.fpgaInfo; } /** *

* Describes the FPGA accelerator settings for the instance type. *

* * @param fpgaInfo * Describes the FPGA accelerator settings for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withFpgaInfo(FpgaInfo fpgaInfo) { setFpgaInfo(fpgaInfo); return this; } /** *

* Describes the placement group settings for the instance type. *

* * @param placementGroupInfo * Describes the placement group settings for the instance type. */ public void setPlacementGroupInfo(PlacementGroupInfo placementGroupInfo) { this.placementGroupInfo = placementGroupInfo; } /** *

* Describes the placement group settings for the instance type. *

* * @return Describes the placement group settings for the instance type. */ public PlacementGroupInfo getPlacementGroupInfo() { return this.placementGroupInfo; } /** *

* Describes the placement group settings for the instance type. *

* * @param placementGroupInfo * Describes the placement group settings for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withPlacementGroupInfo(PlacementGroupInfo placementGroupInfo) { setPlacementGroupInfo(placementGroupInfo); return this; } /** *

* Describes the Inference accelerator settings for the instance type. *

* * @param inferenceAcceleratorInfo * Describes the Inference accelerator settings for the instance type. */ public void setInferenceAcceleratorInfo(InferenceAcceleratorInfo inferenceAcceleratorInfo) { this.inferenceAcceleratorInfo = inferenceAcceleratorInfo; } /** *

* Describes the Inference accelerator settings for the instance type. *

* * @return Describes the Inference accelerator settings for the instance type. */ public InferenceAcceleratorInfo getInferenceAcceleratorInfo() { return this.inferenceAcceleratorInfo; } /** *

* Describes the Inference accelerator settings for the instance type. *

* * @param inferenceAcceleratorInfo * Describes the Inference accelerator settings for the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withInferenceAcceleratorInfo(InferenceAcceleratorInfo inferenceAcceleratorInfo) { setInferenceAcceleratorInfo(inferenceAcceleratorInfo); return this; } /** *

* Indicates whether On-Demand hibernation is supported. *

* * @param hibernationSupported * Indicates whether On-Demand hibernation is supported. */ public void setHibernationSupported(Boolean hibernationSupported) { this.hibernationSupported = hibernationSupported; } /** *

* Indicates whether On-Demand hibernation is supported. *

* * @return Indicates whether On-Demand hibernation is supported. */ public Boolean getHibernationSupported() { return this.hibernationSupported; } /** *

* Indicates whether On-Demand hibernation is supported. *

* * @param hibernationSupported * Indicates whether On-Demand hibernation is supported. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withHibernationSupported(Boolean hibernationSupported) { setHibernationSupported(hibernationSupported); return this; } /** *

* Indicates whether On-Demand hibernation is supported. *

* * @return Indicates whether On-Demand hibernation is supported. */ public Boolean isHibernationSupported() { return this.hibernationSupported; } /** *

* Indicates whether the instance type is a burstable performance instance type. *

* * @param burstablePerformanceSupported * Indicates whether the instance type is a burstable performance instance type. */ public void setBurstablePerformanceSupported(Boolean burstablePerformanceSupported) { this.burstablePerformanceSupported = burstablePerformanceSupported; } /** *

* Indicates whether the instance type is a burstable performance instance type. *

* * @return Indicates whether the instance type is a burstable performance instance type. */ public Boolean getBurstablePerformanceSupported() { return this.burstablePerformanceSupported; } /** *

* Indicates whether the instance type is a burstable performance instance type. *

* * @param burstablePerformanceSupported * Indicates whether the instance type is a burstable performance instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withBurstablePerformanceSupported(Boolean burstablePerformanceSupported) { setBurstablePerformanceSupported(burstablePerformanceSupported); return this; } /** *

* Indicates whether the instance type is a burstable performance instance type. *

* * @return Indicates whether the instance type is a burstable performance instance type. */ public Boolean isBurstablePerformanceSupported() { return this.burstablePerformanceSupported; } /** *

* Indicates whether Dedicated Hosts are supported on the instance type. *

* * @param dedicatedHostsSupported * Indicates whether Dedicated Hosts are supported on the instance type. */ public void setDedicatedHostsSupported(Boolean dedicatedHostsSupported) { this.dedicatedHostsSupported = dedicatedHostsSupported; } /** *

* Indicates whether Dedicated Hosts are supported on the instance type. *

* * @return Indicates whether Dedicated Hosts are supported on the instance type. */ public Boolean getDedicatedHostsSupported() { return this.dedicatedHostsSupported; } /** *

* Indicates whether Dedicated Hosts are supported on the instance type. *

* * @param dedicatedHostsSupported * Indicates whether Dedicated Hosts are supported on the instance type. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withDedicatedHostsSupported(Boolean dedicatedHostsSupported) { setDedicatedHostsSupported(dedicatedHostsSupported); return this; } /** *

* Indicates whether Dedicated Hosts are supported on the instance type. *

* * @return Indicates whether Dedicated Hosts are supported on the instance type. */ public Boolean isDedicatedHostsSupported() { return this.dedicatedHostsSupported; } /** *

* Indicates whether auto recovery is supported. *

* * @param autoRecoverySupported * Indicates whether auto recovery is supported. */ public void setAutoRecoverySupported(Boolean autoRecoverySupported) { this.autoRecoverySupported = autoRecoverySupported; } /** *

* Indicates whether auto recovery is supported. *

* * @return Indicates whether auto recovery is supported. */ public Boolean getAutoRecoverySupported() { return this.autoRecoverySupported; } /** *

* Indicates whether auto recovery is supported. *

* * @param autoRecoverySupported * Indicates whether auto recovery is supported. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceTypeInfo withAutoRecoverySupported(Boolean autoRecoverySupported) { setAutoRecoverySupported(autoRecoverySupported); return this; } /** *

* Indicates whether auto recovery is supported. *

* * @return Indicates whether auto recovery is supported. */ public Boolean isAutoRecoverySupported() { return this.autoRecoverySupported; } /** *

* The supported boot modes. For more information, see Boot modes in the Amazon EC2 User * Guide. *

* * @return The supported boot modes. For more information, see Boot modes in the Amazon * EC2 User Guide. * @see BootModeType */ public java.util.List getSupportedBootModes() { if (supportedBootModes == null) { supportedBootModes = new com.amazonaws.internal.SdkInternalList(); } return supportedBootModes; } /** *

* The supported boot modes. For more information, see Boot modes in the Amazon EC2 User * Guide. *

* * @param supportedBootModes * The supported boot modes. For more information, see Boot modes in the Amazon * EC2 User Guide. * @see BootModeType */ public void setSupportedBootModes(java.util.Collection supportedBootModes) { if (supportedBootModes == null) { this.supportedBootModes = null; return; } this.supportedBootModes = new com.amazonaws.internal.SdkInternalList(supportedBootModes); } /** *

* The supported boot modes. For more information, see Boot modes in the Amazon EC2 User * Guide. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSupportedBootModes(java.util.Collection)} or {@link #withSupportedBootModes(java.util.Collection)} if * you want to override the existing values. *

* * @param supportedBootModes * The supported boot modes. For more information, see Boot modes in the Amazon * EC2 User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see BootModeType */ public InstanceTypeInfo withSupportedBootModes(String... supportedBootModes) { if (this.supportedBootModes == null) { setSupportedBootModes(new com.amazonaws.internal.SdkInternalList(supportedBootModes.length)); } for (String ele : supportedBootModes) { this.supportedBootModes.add(ele); } return this; } /** *

* The supported boot modes. For more information, see Boot modes in the Amazon EC2 User * Guide. *

* * @param supportedBootModes * The supported boot modes. For more information, see Boot modes in the Amazon * EC2 User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see BootModeType */ public InstanceTypeInfo withSupportedBootModes(java.util.Collection supportedBootModes) { setSupportedBootModes(supportedBootModes); return this; } /** *

* The supported boot modes. For more information, see Boot modes in the Amazon EC2 User * Guide. *

* * @param supportedBootModes * The supported boot modes. For more information, see Boot modes in the Amazon * EC2 User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see BootModeType */ public InstanceTypeInfo withSupportedBootModes(BootModeType... supportedBootModes) { com.amazonaws.internal.SdkInternalList supportedBootModesCopy = new com.amazonaws.internal.SdkInternalList(supportedBootModes.length); for (BootModeType value : supportedBootModes) { supportedBootModesCopy.add(value.toString()); } if (getSupportedBootModes() == null) { setSupportedBootModes(supportedBootModesCopy); } else { getSupportedBootModes().addAll(supportedBootModesCopy); } return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getInstanceType() != null) sb.append("InstanceType: ").append(getInstanceType()).append(","); if (getCurrentGeneration() != null) sb.append("CurrentGeneration: ").append(getCurrentGeneration()).append(","); if (getFreeTierEligible() != null) sb.append("FreeTierEligible: ").append(getFreeTierEligible()).append(","); if (getSupportedUsageClasses() != null) sb.append("SupportedUsageClasses: ").append(getSupportedUsageClasses()).append(","); if (getSupportedRootDeviceTypes() != null) sb.append("SupportedRootDeviceTypes: ").append(getSupportedRootDeviceTypes()).append(","); if (getSupportedVirtualizationTypes() != null) sb.append("SupportedVirtualizationTypes: ").append(getSupportedVirtualizationTypes()).append(","); if (getBareMetal() != null) sb.append("BareMetal: ").append(getBareMetal()).append(","); if (getHypervisor() != null) sb.append("Hypervisor: ").append(getHypervisor()).append(","); if (getProcessorInfo() != null) sb.append("ProcessorInfo: ").append(getProcessorInfo()).append(","); if (getVCpuInfo() != null) sb.append("VCpuInfo: ").append(getVCpuInfo()).append(","); if (getMemoryInfo() != null) sb.append("MemoryInfo: ").append(getMemoryInfo()).append(","); if (getInstanceStorageSupported() != null) sb.append("InstanceStorageSupported: ").append(getInstanceStorageSupported()).append(","); if (getInstanceStorageInfo() != null) sb.append("InstanceStorageInfo: ").append(getInstanceStorageInfo()).append(","); if (getEbsInfo() != null) sb.append("EbsInfo: ").append(getEbsInfo()).append(","); if (getNetworkInfo() != null) sb.append("NetworkInfo: ").append(getNetworkInfo()).append(","); if (getGpuInfo() != null) sb.append("GpuInfo: ").append(getGpuInfo()).append(","); if (getFpgaInfo() != null) sb.append("FpgaInfo: ").append(getFpgaInfo()).append(","); if (getPlacementGroupInfo() != null) sb.append("PlacementGroupInfo: ").append(getPlacementGroupInfo()).append(","); if (getInferenceAcceleratorInfo() != null) sb.append("InferenceAcceleratorInfo: ").append(getInferenceAcceleratorInfo()).append(","); if (getHibernationSupported() != null) sb.append("HibernationSupported: ").append(getHibernationSupported()).append(","); if (getBurstablePerformanceSupported() != null) sb.append("BurstablePerformanceSupported: ").append(getBurstablePerformanceSupported()).append(","); if (getDedicatedHostsSupported() != null) sb.append("DedicatedHostsSupported: ").append(getDedicatedHostsSupported()).append(","); if (getAutoRecoverySupported() != null) sb.append("AutoRecoverySupported: ").append(getAutoRecoverySupported()).append(","); if (getSupportedBootModes() != null) sb.append("SupportedBootModes: ").append(getSupportedBootModes()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof InstanceTypeInfo == false) return false; InstanceTypeInfo other = (InstanceTypeInfo) obj; if (other.getInstanceType() == null ^ this.getInstanceType() == null) return false; if (other.getInstanceType() != null && other.getInstanceType().equals(this.getInstanceType()) == false) return false; if (other.getCurrentGeneration() == null ^ this.getCurrentGeneration() == null) return false; if (other.getCurrentGeneration() != null && other.getCurrentGeneration().equals(this.getCurrentGeneration()) == false) return false; if (other.getFreeTierEligible() == null ^ this.getFreeTierEligible() == null) return false; if (other.getFreeTierEligible() != null && other.getFreeTierEligible().equals(this.getFreeTierEligible()) == false) return false; if (other.getSupportedUsageClasses() == null ^ this.getSupportedUsageClasses() == null) return false; if (other.getSupportedUsageClasses() != null && other.getSupportedUsageClasses().equals(this.getSupportedUsageClasses()) == false) return false; if (other.getSupportedRootDeviceTypes() == null ^ this.getSupportedRootDeviceTypes() == null) return false; if (other.getSupportedRootDeviceTypes() != null && other.getSupportedRootDeviceTypes().equals(this.getSupportedRootDeviceTypes()) == false) return false; if (other.getSupportedVirtualizationTypes() == null ^ this.getSupportedVirtualizationTypes() == null) return false; if (other.getSupportedVirtualizationTypes() != null && other.getSupportedVirtualizationTypes().equals(this.getSupportedVirtualizationTypes()) == false) return false; if (other.getBareMetal() == null ^ this.getBareMetal() == null) return false; if (other.getBareMetal() != null && other.getBareMetal().equals(this.getBareMetal()) == false) return false; if (other.getHypervisor() == null ^ this.getHypervisor() == null) return false; if (other.getHypervisor() != null && other.getHypervisor().equals(this.getHypervisor()) == false) return false; if (other.getProcessorInfo() == null ^ this.getProcessorInfo() == null) return false; if (other.getProcessorInfo() != null && other.getProcessorInfo().equals(this.getProcessorInfo()) == false) return false; if (other.getVCpuInfo() == null ^ this.getVCpuInfo() == null) return false; if (other.getVCpuInfo() != null && other.getVCpuInfo().equals(this.getVCpuInfo()) == false) return false; if (other.getMemoryInfo() == null ^ this.getMemoryInfo() == null) return false; if (other.getMemoryInfo() != null && other.getMemoryInfo().equals(this.getMemoryInfo()) == false) return false; if (other.getInstanceStorageSupported() == null ^ this.getInstanceStorageSupported() == null) return false; if (other.getInstanceStorageSupported() != null && other.getInstanceStorageSupported().equals(this.getInstanceStorageSupported()) == false) return false; if (other.getInstanceStorageInfo() == null ^ this.getInstanceStorageInfo() == null) return false; if (other.getInstanceStorageInfo() != null && other.getInstanceStorageInfo().equals(this.getInstanceStorageInfo()) == false) return false; if (other.getEbsInfo() == null ^ this.getEbsInfo() == null) return false; if (other.getEbsInfo() != null && other.getEbsInfo().equals(this.getEbsInfo()) == false) return false; if (other.getNetworkInfo() == null ^ this.getNetworkInfo() == null) return false; if (other.getNetworkInfo() != null && other.getNetworkInfo().equals(this.getNetworkInfo()) == false) return false; if (other.getGpuInfo() == null ^ this.getGpuInfo() == null) return false; if (other.getGpuInfo() != null && other.getGpuInfo().equals(this.getGpuInfo()) == false) return false; if (other.getFpgaInfo() == null ^ this.getFpgaInfo() == null) return false; if (other.getFpgaInfo() != null && other.getFpgaInfo().equals(this.getFpgaInfo()) == false) return false; if (other.getPlacementGroupInfo() == null ^ this.getPlacementGroupInfo() == null) return false; if (other.getPlacementGroupInfo() != null && other.getPlacementGroupInfo().equals(this.getPlacementGroupInfo()) == false) return false; if (other.getInferenceAcceleratorInfo() == null ^ this.getInferenceAcceleratorInfo() == null) return false; if (other.getInferenceAcceleratorInfo() != null && other.getInferenceAcceleratorInfo().equals(this.getInferenceAcceleratorInfo()) == false) return false; if (other.getHibernationSupported() == null ^ this.getHibernationSupported() == null) return false; if (other.getHibernationSupported() != null && other.getHibernationSupported().equals(this.getHibernationSupported()) == false) return false; if (other.getBurstablePerformanceSupported() == null ^ this.getBurstablePerformanceSupported() == null) return false; if (other.getBurstablePerformanceSupported() != null && other.getBurstablePerformanceSupported().equals(this.getBurstablePerformanceSupported()) == false) return false; if (other.getDedicatedHostsSupported() == null ^ this.getDedicatedHostsSupported() == null) return false; if (other.getDedicatedHostsSupported() != null && other.getDedicatedHostsSupported().equals(this.getDedicatedHostsSupported()) == false) return false; if (other.getAutoRecoverySupported() == null ^ this.getAutoRecoverySupported() == null) return false; if (other.getAutoRecoverySupported() != null && other.getAutoRecoverySupported().equals(this.getAutoRecoverySupported()) == false) return false; if (other.getSupportedBootModes() == null ^ this.getSupportedBootModes() == null) return false; if (other.getSupportedBootModes() != null && other.getSupportedBootModes().equals(this.getSupportedBootModes()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getInstanceType() == null) ? 0 : getInstanceType().hashCode()); hashCode = prime * hashCode + ((getCurrentGeneration() == null) ? 0 : getCurrentGeneration().hashCode()); hashCode = prime * hashCode + ((getFreeTierEligible() == null) ? 0 : getFreeTierEligible().hashCode()); hashCode = prime * hashCode + ((getSupportedUsageClasses() == null) ? 0 : getSupportedUsageClasses().hashCode()); hashCode = prime * hashCode + ((getSupportedRootDeviceTypes() == null) ? 0 : getSupportedRootDeviceTypes().hashCode()); hashCode = prime * hashCode + ((getSupportedVirtualizationTypes() == null) ? 0 : getSupportedVirtualizationTypes().hashCode()); hashCode = prime * hashCode + ((getBareMetal() == null) ? 0 : getBareMetal().hashCode()); hashCode = prime * hashCode + ((getHypervisor() == null) ? 0 : getHypervisor().hashCode()); hashCode = prime * hashCode + ((getProcessorInfo() == null) ? 0 : getProcessorInfo().hashCode()); hashCode = prime * hashCode + ((getVCpuInfo() == null) ? 0 : getVCpuInfo().hashCode()); hashCode = prime * hashCode + ((getMemoryInfo() == null) ? 0 : getMemoryInfo().hashCode()); hashCode = prime * hashCode + ((getInstanceStorageSupported() == null) ? 0 : getInstanceStorageSupported().hashCode()); hashCode = prime * hashCode + ((getInstanceStorageInfo() == null) ? 0 : getInstanceStorageInfo().hashCode()); hashCode = prime * hashCode + ((getEbsInfo() == null) ? 0 : getEbsInfo().hashCode()); hashCode = prime * hashCode + ((getNetworkInfo() == null) ? 0 : getNetworkInfo().hashCode()); hashCode = prime * hashCode + ((getGpuInfo() == null) ? 0 : getGpuInfo().hashCode()); hashCode = prime * hashCode + ((getFpgaInfo() == null) ? 0 : getFpgaInfo().hashCode()); hashCode = prime * hashCode + ((getPlacementGroupInfo() == null) ? 0 : getPlacementGroupInfo().hashCode()); hashCode = prime * hashCode + ((getInferenceAcceleratorInfo() == null) ? 0 : getInferenceAcceleratorInfo().hashCode()); hashCode = prime * hashCode + ((getHibernationSupported() == null) ? 0 : getHibernationSupported().hashCode()); hashCode = prime * hashCode + ((getBurstablePerformanceSupported() == null) ? 0 : getBurstablePerformanceSupported().hashCode()); hashCode = prime * hashCode + ((getDedicatedHostsSupported() == null) ? 0 : getDedicatedHostsSupported().hashCode()); hashCode = prime * hashCode + ((getAutoRecoverySupported() == null) ? 0 : getAutoRecoverySupported().hashCode()); hashCode = prime * hashCode + ((getSupportedBootModes() == null) ? 0 : getSupportedBootModes().hashCode()); return hashCode; } @Override public InstanceTypeInfo clone() { try { return (InstanceTypeInfo) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy