Class LaunchSpecification

java.lang.Object
com.amazonaws.services.ec2.model.LaunchSpecification
All Implemented Interfaces:
Serializable, Cloneable

public class LaunchSpecification extends Object implements Serializable, Cloneable

Describes the launch specification for an instance.

See Also:
  • Constructor Details

    • LaunchSpecification

      public LaunchSpecification()
  • Method Details

    • setImageId

      public void setImageId(String imageId)

      The ID of the AMI.

      Parameters:
      imageId - The ID of the AMI.
    • getImageId

      public String getImageId()

      The ID of the AMI.

      Returns:
      The ID of the AMI.
    • withImageId

      public LaunchSpecification withImageId(String imageId)

      The ID of the AMI.

      Parameters:
      imageId - The ID of the AMI.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setKeyName

      public void setKeyName(String keyName)

      The name of the key pair.

      Parameters:
      keyName - The name of the key pair.
    • getKeyName

      public String getKeyName()

      The name of the key pair.

      Returns:
      The name of the key pair.
    • withKeyName

      public LaunchSpecification withKeyName(String keyName)

      The name of the key pair.

      Parameters:
      keyName - The name of the key pair.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setUserData

      public void setUserData(String userData)

      The Base64-encoded MIME user data to make available to the instances.

      Parameters:
      userData - The Base64-encoded MIME user data to make available to the instances.
    • getUserData

      public String getUserData()

      The Base64-encoded MIME user data to make available to the instances.

      Returns:
      The Base64-encoded MIME user data to make available to the instances.
    • withUserData

      public LaunchSpecification withUserData(String userData)

      The Base64-encoded MIME user data to make available to the instances.

      Parameters:
      userData - The Base64-encoded MIME user data to make available to the instances.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setAddressingType

      public void setAddressingType(String addressingType)

      Deprecated.

      Parameters:
      addressingType - Deprecated.
    • getAddressingType

      public String getAddressingType()

      Deprecated.

      Returns:
      Deprecated.
    • withAddressingType

      public LaunchSpecification withAddressingType(String addressingType)

      Deprecated.

      Parameters:
      addressingType - Deprecated.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setInstanceType

      public void setInstanceType(String instanceType)

      The instance type.

      Parameters:
      instanceType - The instance type.
      See Also:
    • getInstanceType

      public String getInstanceType()

      The instance type.

      Returns:
      The instance type.
      See Also:
    • withInstanceType

      public LaunchSpecification withInstanceType(String instanceType)

      The instance type.

      Parameters:
      instanceType - The instance type.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • setInstanceType

      public void setInstanceType(InstanceType instanceType)

      The instance type.

      Parameters:
      instanceType - The instance type.
      See Also:
    • withInstanceType

      public LaunchSpecification withInstanceType(InstanceType instanceType)

      The instance type.

      Parameters:
      instanceType - The instance type.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • setPlacement

      public void setPlacement(SpotPlacement placement)

      The placement information for the instance.

      Parameters:
      placement - The placement information for the instance.
    • getPlacement

      public SpotPlacement getPlacement()

      The placement information for the instance.

      Returns:
      The placement information for the instance.
    • withPlacement

      public LaunchSpecification withPlacement(SpotPlacement placement)

      The placement information for the instance.

      Parameters:
      placement - The placement information for the instance.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setKernelId

      public void setKernelId(String kernelId)

      The ID of the kernel.

      Parameters:
      kernelId - The ID of the kernel.
    • getKernelId

      public String getKernelId()

      The ID of the kernel.

      Returns:
      The ID of the kernel.
    • withKernelId

      public LaunchSpecification withKernelId(String kernelId)

      The ID of the kernel.

      Parameters:
      kernelId - The ID of the kernel.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setRamdiskId

      public void setRamdiskId(String ramdiskId)

      The ID of the RAM disk.

      Parameters:
      ramdiskId - The ID of the RAM disk.
    • getRamdiskId

      public String getRamdiskId()

      The ID of the RAM disk.

      Returns:
      The ID of the RAM disk.
    • withRamdiskId

      public LaunchSpecification withRamdiskId(String ramdiskId)

      The ID of the RAM disk.

      Parameters:
      ramdiskId - The ID of the RAM disk.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • getBlockDeviceMappings

      public List<BlockDeviceMapping> getBlockDeviceMappings()

      One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

      Returns:
      One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

    • setBlockDeviceMappings

      public void setBlockDeviceMappings(Collection<BlockDeviceMapping> blockDeviceMappings)

      One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

      Parameters:
      blockDeviceMappings - One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

    • withBlockDeviceMappings

      public LaunchSpecification withBlockDeviceMappings(BlockDeviceMapping... blockDeviceMappings)

      One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

      NOTE: This method appends the values to the existing list (if any). Use setBlockDeviceMappings(java.util.Collection) or withBlockDeviceMappings(java.util.Collection) if you want to override the existing values.

      Parameters:
      blockDeviceMappings - One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • withBlockDeviceMappings

      public LaunchSpecification withBlockDeviceMappings(Collection<BlockDeviceMapping> blockDeviceMappings)

      One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

      Parameters:
      blockDeviceMappings - One or more block device mapping entries.

      Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setSubnetId

      public void setSubnetId(String subnetId)

      The ID of the subnet in which to launch the instance.

      Parameters:
      subnetId - The ID of the subnet in which to launch the instance.
    • getSubnetId

      public String getSubnetId()

      The ID of the subnet in which to launch the instance.

      Returns:
      The ID of the subnet in which to launch the instance.
    • withSubnetId

      public LaunchSpecification withSubnetId(String subnetId)

      The ID of the subnet in which to launch the instance.

      Parameters:
      subnetId - The ID of the subnet in which to launch the instance.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • getNetworkInterfaces

      public List<InstanceNetworkInterfaceSpecification> getNetworkInterfaces()

      One or more network interfaces.

      Returns:
      One or more network interfaces.
    • setNetworkInterfaces

      public void setNetworkInterfaces(Collection<InstanceNetworkInterfaceSpecification> networkInterfaces)

      One or more network interfaces.

      Parameters:
      networkInterfaces - One or more network interfaces.
    • withNetworkInterfaces

      public LaunchSpecification withNetworkInterfaces(InstanceNetworkInterfaceSpecification... networkInterfaces)

      One or more network interfaces.

      NOTE: This method appends the values to the existing list (if any). Use setNetworkInterfaces(java.util.Collection) or withNetworkInterfaces(java.util.Collection) if you want to override the existing values.

      Parameters:
      networkInterfaces - One or more network interfaces.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • withNetworkInterfaces

      public LaunchSpecification withNetworkInterfaces(Collection<InstanceNetworkInterfaceSpecification> networkInterfaces)

      One or more network interfaces.

      Parameters:
      networkInterfaces - One or more network interfaces.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setIamInstanceProfile

      public void setIamInstanceProfile(IamInstanceProfileSpecification iamInstanceProfile)

      The IAM instance profile.

      Parameters:
      iamInstanceProfile - The IAM instance profile.
    • getIamInstanceProfile

      public IamInstanceProfileSpecification getIamInstanceProfile()

      The IAM instance profile.

      Returns:
      The IAM instance profile.
    • withIamInstanceProfile

      public LaunchSpecification withIamInstanceProfile(IamInstanceProfileSpecification iamInstanceProfile)

      The IAM instance profile.

      Parameters:
      iamInstanceProfile - The IAM instance profile.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setEbsOptimized

      public void setEbsOptimized(Boolean ebsOptimized)

      Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

      Parameters:
      ebsOptimized - Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

    • getEbsOptimized

      public Boolean getEbsOptimized()

      Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

      Returns:
      Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

    • withEbsOptimized

      public LaunchSpecification withEbsOptimized(Boolean ebsOptimized)

      Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

      Parameters:
      ebsOptimized - Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • isEbsOptimized

      public Boolean isEbsOptimized()

      Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

      Returns:
      Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

      Default: false

    • getAllSecurityGroups

      public List<GroupIdentifier> getAllSecurityGroups()

      One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

      Returns:
      One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
    • setAllSecurityGroups

      public void setAllSecurityGroups(Collection<GroupIdentifier> allSecurityGroups)

      One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

      Parameters:
      allSecurityGroups - One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
    • withAllSecurityGroups

      public LaunchSpecification withAllSecurityGroups(GroupIdentifier... allSecurityGroups)

      One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

      NOTE: This method appends the values to the existing list (if any). Use setAllSecurityGroups(java.util.Collection) or withAllSecurityGroups(java.util.Collection) if you want to override the existing values.

      Parameters:
      allSecurityGroups - One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • withAllSecurityGroups

      public LaunchSpecification withAllSecurityGroups(Collection<GroupIdentifier> allSecurityGroups)

      One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

      Parameters:
      allSecurityGroups - One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setMonitoringEnabled

      public void setMonitoringEnabled(Boolean monitoringEnabled)
      Parameters:
      monitoringEnabled -
    • getMonitoringEnabled

      public Boolean getMonitoringEnabled()
      Returns:
    • withMonitoringEnabled

      public LaunchSpecification withMonitoringEnabled(Boolean monitoringEnabled)
      Parameters:
      monitoringEnabled -
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • isMonitoringEnabled

      public Boolean isMonitoringEnabled()
      Returns:
    • getSecurityGroups

      public List<String> getSecurityGroups()

      One or more security group names.

      Returns:
      One or more security group names.
    • setSecurityGroups

      public void setSecurityGroups(Collection<String> securityGroups)

      One or more security group names.

      Parameters:
      securityGroups - One or more security group names.
    • withSecurityGroups

      public LaunchSpecification withSecurityGroups(String... securityGroups)

      One or more security group names.

      NOTE: This method appends the values to the existing list (if any). Use setSecurityGroups(java.util.Collection) or withSecurityGroups(java.util.Collection) if you want to override the existing values.

      Parameters:
      securityGroups - One or more security group names.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • withSecurityGroups

      public LaunchSpecification withSecurityGroups(Collection<String> securityGroups)

      One or more security group names.

      Parameters:
      securityGroups - One or more security group names.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • toString

      public String toString()
      Returns a string representation of this object; useful for testing and debugging.
      Overrides:
      toString in class Object
      Returns:
      A string representation of this object.
      See Also:
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • clone

      public LaunchSpecification clone()
      Overrides:
      clone in class Object