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

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

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 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;

/**
 * 

* Describes the launch specification for one or more Spot instances. *

*/ public class SpotFleetLaunchSpecification implements Serializable, Cloneable { /** *

* The ID of the AMI. *

*/ private String imageId; /** *

* The name of the key pair. *

*/ private String keyName; /** *

* 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. *

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

* The user data to make available to the instances. If you are using an AWS * SDK or command line tool, Base64-encoding is performed for you, and you * can load the text from a file. Otherwise, you must provide Base64-encoded * text. *

*/ private String userData; /** *

* Deprecated. *

*/ private String addressingType; /** *

* The instance type. *

*/ private String instanceType; /** *

* The placement information. *

*/ private SpotPlacement placement; /** *

* The ID of the kernel. *

*/ private String kernelId; /** *

* The ID of the RAM disk. *

*/ private String ramdiskId; /** *

* One or more block device mapping entries. *

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

* Enable or disable monitoring for the instances. *

*/ private SpotFleetMonitoring monitoring; /** *

* The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". *

*/ private String subnetId; /** *

* One or more network interfaces. *

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

* The IAM instance profile. *

*/ private IamInstanceProfileSpecification iamInstanceProfile; /** *

* Indicates whether the instances are 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 *

*/ private Boolean ebsOptimized; /** *

* The number of units provided by the specified instance type. These are * the same units that you chose to set the target capacity in terms * (instances or a performance characteristic such as vCPUs, memory, or * I/O). *

*

* If the target capacity divided by this value is not a whole number, we * round the number of instances to the next whole number. If this value is * not specified, the default is 1. *

*/ private Double weightedCapacity; /** *

* The bid price per unit hour for the specified instance type. If this * value is not specified, the default is the Spot bid price specified for * the fleet. To determine the bid price per unit hour, divide the Spot bid * price by the value of WeightedCapacity. *

*/ private String spotPrice; /** *

* The ID of the AMI. *

* * @param imageId * The ID of the AMI. */ public void setImageId(String imageId) { this.imageId = imageId; } /** *

* The ID of the AMI. *

* * @return The ID of the AMI. */ public String getImageId() { return this.imageId; } /** *

* The ID of the AMI. *

* * @param imageId * The ID of the AMI. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withImageId(String imageId) { setImageId(imageId); return this; } /** *

* The name of the key pair. *

* * @param keyName * The name of the key pair. */ public void setKeyName(String keyName) { this.keyName = keyName; } /** *

* The name of the key pair. *

* * @return The name of the key pair. */ public String getKeyName() { return this.keyName; } /** *

* The name of the key pair. *

* * @param keyName * The name of the key pair. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withKeyName(String keyName) { setKeyName(keyName); return this; } /** *

* 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. *

* * @return 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. */ public java.util.List getSecurityGroups() { if (securityGroups == null) { securityGroups = new com.amazonaws.internal.SdkInternalList(); } return securityGroups; } /** *

* 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. *

* * @param securityGroups * 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. */ public void setSecurityGroups( java.util.Collection securityGroups) { if (securityGroups == null) { this.securityGroups = null; return; } this.securityGroups = new com.amazonaws.internal.SdkInternalList( securityGroups); } /** *

* 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 {@link #setSecurityGroups(java.util.Collection)} or * {@link #withSecurityGroups(java.util.Collection)} if you want to override * the existing values. *

* * @param securityGroups * 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. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withSecurityGroups( GroupIdentifier... securityGroups) { if (this.securityGroups == null) { setSecurityGroups(new com.amazonaws.internal.SdkInternalList( securityGroups.length)); } for (GroupIdentifier ele : securityGroups) { this.securityGroups.add(ele); } return this; } /** *

* 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. *

* * @param securityGroups * 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. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withSecurityGroups( java.util.Collection securityGroups) { setSecurityGroups(securityGroups); return this; } /** *

* The user data to make available to the instances. If you are using an AWS * SDK or command line tool, Base64-encoding is performed for you, and you * can load the text from a file. Otherwise, you must provide Base64-encoded * text. *

* * @param userData * The user data to make available to the instances. If you are using * an AWS SDK or command line tool, Base64-encoding is performed for * you, and you can load the text from a file. Otherwise, you must * provide Base64-encoded text. */ public void setUserData(String userData) { this.userData = userData; } /** *

* The user data to make available to the instances. If you are using an AWS * SDK or command line tool, Base64-encoding is performed for you, and you * can load the text from a file. Otherwise, you must provide Base64-encoded * text. *

* * @return The user data to make available to the instances. If you are * using an AWS SDK or command line tool, Base64-encoding is * performed for you, and you can load the text from a file. * Otherwise, you must provide Base64-encoded text. */ public String getUserData() { return this.userData; } /** *

* The user data to make available to the instances. If you are using an AWS * SDK or command line tool, Base64-encoding is performed for you, and you * can load the text from a file. Otherwise, you must provide Base64-encoded * text. *

* * @param userData * The user data to make available to the instances. If you are using * an AWS SDK or command line tool, Base64-encoding is performed for * you, and you can load the text from a file. Otherwise, you must * provide Base64-encoded text. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withUserData(String userData) { setUserData(userData); return this; } /** *

* Deprecated. *

* * @param addressingType * Deprecated. */ public void setAddressingType(String addressingType) { this.addressingType = addressingType; } /** *

* Deprecated. *

* * @return Deprecated. */ public String getAddressingType() { return this.addressingType; } /** *

* Deprecated. *

* * @param addressingType * Deprecated. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withAddressingType(String addressingType) { setAddressingType(addressingType); return this; } /** *

* The instance type. *

* * @param instanceType * The instance type. * @see InstanceType */ public void setInstanceType(String instanceType) { this.instanceType = instanceType; } /** *

* The instance type. *

* * @return The instance type. * @see InstanceType */ public String getInstanceType() { return this.instanceType; } /** *

* The instance type. *

* * @param instanceType * The instance type. * @return Returns a reference to this object so that method calls can be * chained together. * @see InstanceType */ public SpotFleetLaunchSpecification withInstanceType(String instanceType) { setInstanceType(instanceType); return this; } /** *

* The instance type. *

* * @param instanceType * The instance type. * @see InstanceType */ public void setInstanceType(InstanceType instanceType) { this.instanceType = instanceType.toString(); } /** *

* The instance type. *

* * @param instanceType * The instance type. * @return Returns a reference to this object so that method calls can be * chained together. * @see InstanceType */ public SpotFleetLaunchSpecification withInstanceType( InstanceType instanceType) { setInstanceType(instanceType); return this; } /** *

* The placement information. *

* * @param placement * The placement information. */ public void setPlacement(SpotPlacement placement) { this.placement = placement; } /** *

* The placement information. *

* * @return The placement information. */ public SpotPlacement getPlacement() { return this.placement; } /** *

* The placement information. *

* * @param placement * The placement information. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withPlacement(SpotPlacement placement) { setPlacement(placement); return this; } /** *

* The ID of the kernel. *

* * @param kernelId * The ID of the kernel. */ public void setKernelId(String kernelId) { this.kernelId = kernelId; } /** *

* The ID of the kernel. *

* * @return The ID of the kernel. */ public String getKernelId() { return this.kernelId; } /** *

* The ID of the kernel. *

* * @param kernelId * The ID of the kernel. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withKernelId(String kernelId) { setKernelId(kernelId); return this; } /** *

* The ID of the RAM disk. *

* * @param ramdiskId * The ID of the RAM disk. */ public void setRamdiskId(String ramdiskId) { this.ramdiskId = ramdiskId; } /** *

* The ID of the RAM disk. *

* * @return The ID of the RAM disk. */ public String getRamdiskId() { return this.ramdiskId; } /** *

* The ID of the RAM disk. *

* * @param ramdiskId * The ID of the RAM disk. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withRamdiskId(String ramdiskId) { setRamdiskId(ramdiskId); return this; } /** *

* One or more block device mapping entries. *

* * @return One or more block device mapping entries. */ public java.util.List getBlockDeviceMappings() { if (blockDeviceMappings == null) { blockDeviceMappings = new com.amazonaws.internal.SdkInternalList(); } return blockDeviceMappings; } /** *

* One or more block device mapping entries. *

* * @param blockDeviceMappings * One or more block device mapping entries. */ public void setBlockDeviceMappings( java.util.Collection blockDeviceMappings) { if (blockDeviceMappings == null) { this.blockDeviceMappings = null; return; } this.blockDeviceMappings = new com.amazonaws.internal.SdkInternalList( blockDeviceMappings); } /** *

* One or more block device mapping entries. *

*

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

* * @param blockDeviceMappings * One or more block device mapping entries. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withBlockDeviceMappings( BlockDeviceMapping... blockDeviceMappings) { if (this.blockDeviceMappings == null) { setBlockDeviceMappings(new com.amazonaws.internal.SdkInternalList( blockDeviceMappings.length)); } for (BlockDeviceMapping ele : blockDeviceMappings) { this.blockDeviceMappings.add(ele); } return this; } /** *

* One or more block device mapping entries. *

* * @param blockDeviceMappings * One or more block device mapping entries. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withBlockDeviceMappings( java.util.Collection blockDeviceMappings) { setBlockDeviceMappings(blockDeviceMappings); return this; } /** *

* Enable or disable monitoring for the instances. *

* * @param monitoring * Enable or disable monitoring for the instances. */ public void setMonitoring(SpotFleetMonitoring monitoring) { this.monitoring = monitoring; } /** *

* Enable or disable monitoring for the instances. *

* * @return Enable or disable monitoring for the instances. */ public SpotFleetMonitoring getMonitoring() { return this.monitoring; } /** *

* Enable or disable monitoring for the instances. *

* * @param monitoring * Enable or disable monitoring for the instances. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withMonitoring( SpotFleetMonitoring monitoring) { setMonitoring(monitoring); return this; } /** *

* The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". *

* * @param subnetId * The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". */ public void setSubnetId(String subnetId) { this.subnetId = subnetId; } /** *

* The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". *

* * @return The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". */ public String getSubnetId() { return this.subnetId; } /** *

* The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". *

* * @param subnetId * The ID of the subnet in which to launch the instances. To specify * multiple subnets, separate them using commas; for example, * "subnet-a61dafcf, subnet-65ea5f08". * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withSubnetId(String subnetId) { setSubnetId(subnetId); return this; } /** *

* One or more network interfaces. *

* * @return One or more network interfaces. */ public java.util.List getNetworkInterfaces() { if (networkInterfaces == null) { networkInterfaces = new com.amazonaws.internal.SdkInternalList(); } return networkInterfaces; } /** *

* One or more network interfaces. *

* * @param networkInterfaces * One or more network interfaces. */ public void setNetworkInterfaces( java.util.Collection networkInterfaces) { if (networkInterfaces == null) { this.networkInterfaces = null; return; } this.networkInterfaces = new com.amazonaws.internal.SdkInternalList( networkInterfaces); } /** *

* One or more network interfaces. *

*

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

* * @param networkInterfaces * One or more network interfaces. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withNetworkInterfaces( InstanceNetworkInterfaceSpecification... networkInterfaces) { if (this.networkInterfaces == null) { setNetworkInterfaces(new com.amazonaws.internal.SdkInternalList( networkInterfaces.length)); } for (InstanceNetworkInterfaceSpecification ele : networkInterfaces) { this.networkInterfaces.add(ele); } return this; } /** *

* One or more network interfaces. *

* * @param networkInterfaces * One or more network interfaces. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withNetworkInterfaces( java.util.Collection networkInterfaces) { setNetworkInterfaces(networkInterfaces); return this; } /** *

* The IAM instance profile. *

* * @param iamInstanceProfile * The IAM instance profile. */ public void setIamInstanceProfile( IamInstanceProfileSpecification iamInstanceProfile) { this.iamInstanceProfile = iamInstanceProfile; } /** *

* The IAM instance profile. *

* * @return The IAM instance profile. */ public IamInstanceProfileSpecification getIamInstanceProfile() { return this.iamInstanceProfile; } /** *

* The IAM instance profile. *

* * @param iamInstanceProfile * The IAM instance profile. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withIamInstanceProfile( IamInstanceProfileSpecification iamInstanceProfile) { setIamInstanceProfile(iamInstanceProfile); return this; } /** *

* Indicates whether the instances are 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 *

* * @param ebsOptimized * Indicates whether the instances are 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 */ public void setEbsOptimized(Boolean ebsOptimized) { this.ebsOptimized = ebsOptimized; } /** *

* Indicates whether the instances are 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 *

* * @return Indicates whether the instances are 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 */ public Boolean getEbsOptimized() { return this.ebsOptimized; } /** *

* Indicates whether the instances are 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 *

* * @param ebsOptimized * Indicates whether the instances are 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 * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withEbsOptimized(Boolean ebsOptimized) { setEbsOptimized(ebsOptimized); return this; } /** *

* Indicates whether the instances are 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 *

* * @return Indicates whether the instances are 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 */ public Boolean isEbsOptimized() { return this.ebsOptimized; } /** *

* The number of units provided by the specified instance type. These are * the same units that you chose to set the target capacity in terms * (instances or a performance characteristic such as vCPUs, memory, or * I/O). *

*

* If the target capacity divided by this value is not a whole number, we * round the number of instances to the next whole number. If this value is * not specified, the default is 1. *

* * @param weightedCapacity * The number of units provided by the specified instance type. These * are the same units that you chose to set the target capacity in * terms (instances or a performance characteristic such as vCPUs, * memory, or I/O).

*

* If the target capacity divided by this value is not a whole * number, we round the number of instances to the next whole number. * If this value is not specified, the default is 1. */ public void setWeightedCapacity(Double weightedCapacity) { this.weightedCapacity = weightedCapacity; } /** *

* The number of units provided by the specified instance type. These are * the same units that you chose to set the target capacity in terms * (instances or a performance characteristic such as vCPUs, memory, or * I/O). *

*

* If the target capacity divided by this value is not a whole number, we * round the number of instances to the next whole number. If this value is * not specified, the default is 1. *

* * @return The number of units provided by the specified instance type. * These are the same units that you chose to set the target * capacity in terms (instances or a performance characteristic such * as vCPUs, memory, or I/O).

*

* If the target capacity divided by this value is not a whole * number, we round the number of instances to the next whole * number. If this value is not specified, the default is 1. */ public Double getWeightedCapacity() { return this.weightedCapacity; } /** *

* The number of units provided by the specified instance type. These are * the same units that you chose to set the target capacity in terms * (instances or a performance characteristic such as vCPUs, memory, or * I/O). *

*

* If the target capacity divided by this value is not a whole number, we * round the number of instances to the next whole number. If this value is * not specified, the default is 1. *

* * @param weightedCapacity * The number of units provided by the specified instance type. These * are the same units that you chose to set the target capacity in * terms (instances or a performance characteristic such as vCPUs, * memory, or I/O).

*

* If the target capacity divided by this value is not a whole * number, we round the number of instances to the next whole number. * If this value is not specified, the default is 1. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withWeightedCapacity( Double weightedCapacity) { setWeightedCapacity(weightedCapacity); return this; } /** *

* The bid price per unit hour for the specified instance type. If this * value is not specified, the default is the Spot bid price specified for * the fleet. To determine the bid price per unit hour, divide the Spot bid * price by the value of WeightedCapacity. *

* * @param spotPrice * The bid price per unit hour for the specified instance type. If * this value is not specified, the default is the Spot bid price * specified for the fleet. To determine the bid price per unit hour, * divide the Spot bid price by the value of * WeightedCapacity. */ public void setSpotPrice(String spotPrice) { this.spotPrice = spotPrice; } /** *

* The bid price per unit hour for the specified instance type. If this * value is not specified, the default is the Spot bid price specified for * the fleet. To determine the bid price per unit hour, divide the Spot bid * price by the value of WeightedCapacity. *

* * @return The bid price per unit hour for the specified instance type. If * this value is not specified, the default is the Spot bid price * specified for the fleet. To determine the bid price per unit * hour, divide the Spot bid price by the value of * WeightedCapacity. */ public String getSpotPrice() { return this.spotPrice; } /** *

* The bid price per unit hour for the specified instance type. If this * value is not specified, the default is the Spot bid price specified for * the fleet. To determine the bid price per unit hour, divide the Spot bid * price by the value of WeightedCapacity. *

* * @param spotPrice * The bid price per unit hour for the specified instance type. If * this value is not specified, the default is the Spot bid price * specified for the fleet. To determine the bid price per unit hour, * divide the Spot bid price by the value of * WeightedCapacity. * @return Returns a reference to this object so that method calls can be * chained together. */ public SpotFleetLaunchSpecification withSpotPrice(String spotPrice) { setSpotPrice(spotPrice); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getImageId() != null) sb.append("ImageId: " + getImageId() + ","); if (getKeyName() != null) sb.append("KeyName: " + getKeyName() + ","); if (getSecurityGroups() != null) sb.append("SecurityGroups: " + getSecurityGroups() + ","); if (getUserData() != null) sb.append("UserData: " + getUserData() + ","); if (getAddressingType() != null) sb.append("AddressingType: " + getAddressingType() + ","); if (getInstanceType() != null) sb.append("InstanceType: " + getInstanceType() + ","); if (getPlacement() != null) sb.append("Placement: " + getPlacement() + ","); if (getKernelId() != null) sb.append("KernelId: " + getKernelId() + ","); if (getRamdiskId() != null) sb.append("RamdiskId: " + getRamdiskId() + ","); if (getBlockDeviceMappings() != null) sb.append("BlockDeviceMappings: " + getBlockDeviceMappings() + ","); if (getMonitoring() != null) sb.append("Monitoring: " + getMonitoring() + ","); if (getSubnetId() != null) sb.append("SubnetId: " + getSubnetId() + ","); if (getNetworkInterfaces() != null) sb.append("NetworkInterfaces: " + getNetworkInterfaces() + ","); if (getIamInstanceProfile() != null) sb.append("IamInstanceProfile: " + getIamInstanceProfile() + ","); if (getEbsOptimized() != null) sb.append("EbsOptimized: " + getEbsOptimized() + ","); if (getWeightedCapacity() != null) sb.append("WeightedCapacity: " + getWeightedCapacity() + ","); if (getSpotPrice() != null) sb.append("SpotPrice: " + getSpotPrice()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof SpotFleetLaunchSpecification == false) return false; SpotFleetLaunchSpecification other = (SpotFleetLaunchSpecification) obj; if (other.getImageId() == null ^ this.getImageId() == null) return false; if (other.getImageId() != null && other.getImageId().equals(this.getImageId()) == false) return false; if (other.getKeyName() == null ^ this.getKeyName() == null) return false; if (other.getKeyName() != null && other.getKeyName().equals(this.getKeyName()) == false) return false; if (other.getSecurityGroups() == null ^ this.getSecurityGroups() == null) return false; if (other.getSecurityGroups() != null && other.getSecurityGroups().equals(this.getSecurityGroups()) == false) return false; if (other.getUserData() == null ^ this.getUserData() == null) return false; if (other.getUserData() != null && other.getUserData().equals(this.getUserData()) == false) return false; if (other.getAddressingType() == null ^ this.getAddressingType() == null) return false; if (other.getAddressingType() != null && other.getAddressingType().equals(this.getAddressingType()) == false) return false; if (other.getInstanceType() == null ^ this.getInstanceType() == null) return false; if (other.getInstanceType() != null && other.getInstanceType().equals(this.getInstanceType()) == false) return false; if (other.getPlacement() == null ^ this.getPlacement() == null) return false; if (other.getPlacement() != null && other.getPlacement().equals(this.getPlacement()) == false) return false; if (other.getKernelId() == null ^ this.getKernelId() == null) return false; if (other.getKernelId() != null && other.getKernelId().equals(this.getKernelId()) == false) return false; if (other.getRamdiskId() == null ^ this.getRamdiskId() == null) return false; if (other.getRamdiskId() != null && other.getRamdiskId().equals(this.getRamdiskId()) == false) return false; if (other.getBlockDeviceMappings() == null ^ this.getBlockDeviceMappings() == null) return false; if (other.getBlockDeviceMappings() != null && other.getBlockDeviceMappings().equals( this.getBlockDeviceMappings()) == false) return false; if (other.getMonitoring() == null ^ this.getMonitoring() == null) return false; if (other.getMonitoring() != null && other.getMonitoring().equals(this.getMonitoring()) == false) return false; if (other.getSubnetId() == null ^ this.getSubnetId() == null) return false; if (other.getSubnetId() != null && other.getSubnetId().equals(this.getSubnetId()) == false) return false; if (other.getNetworkInterfaces() == null ^ this.getNetworkInterfaces() == null) return false; if (other.getNetworkInterfaces() != null && other.getNetworkInterfaces().equals( this.getNetworkInterfaces()) == false) return false; if (other.getIamInstanceProfile() == null ^ this.getIamInstanceProfile() == null) return false; if (other.getIamInstanceProfile() != null && other.getIamInstanceProfile().equals( this.getIamInstanceProfile()) == false) return false; if (other.getEbsOptimized() == null ^ this.getEbsOptimized() == null) return false; if (other.getEbsOptimized() != null && other.getEbsOptimized().equals(this.getEbsOptimized()) == false) return false; if (other.getWeightedCapacity() == null ^ this.getWeightedCapacity() == null) return false; if (other.getWeightedCapacity() != null && other.getWeightedCapacity().equals( this.getWeightedCapacity()) == false) return false; if (other.getSpotPrice() == null ^ this.getSpotPrice() == null) return false; if (other.getSpotPrice() != null && other.getSpotPrice().equals(this.getSpotPrice()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getImageId() == null) ? 0 : getImageId().hashCode()); hashCode = prime * hashCode + ((getKeyName() == null) ? 0 : getKeyName().hashCode()); hashCode = prime * hashCode + ((getSecurityGroups() == null) ? 0 : getSecurityGroups() .hashCode()); hashCode = prime * hashCode + ((getUserData() == null) ? 0 : getUserData().hashCode()); hashCode = prime * hashCode + ((getAddressingType() == null) ? 0 : getAddressingType() .hashCode()); hashCode = prime * hashCode + ((getInstanceType() == null) ? 0 : getInstanceType() .hashCode()); hashCode = prime * hashCode + ((getPlacement() == null) ? 0 : getPlacement().hashCode()); hashCode = prime * hashCode + ((getKernelId() == null) ? 0 : getKernelId().hashCode()); hashCode = prime * hashCode + ((getRamdiskId() == null) ? 0 : getRamdiskId().hashCode()); hashCode = prime * hashCode + ((getBlockDeviceMappings() == null) ? 0 : getBlockDeviceMappings().hashCode()); hashCode = prime * hashCode + ((getMonitoring() == null) ? 0 : getMonitoring().hashCode()); hashCode = prime * hashCode + ((getSubnetId() == null) ? 0 : getSubnetId().hashCode()); hashCode = prime * hashCode + ((getNetworkInterfaces() == null) ? 0 : getNetworkInterfaces().hashCode()); hashCode = prime * hashCode + ((getIamInstanceProfile() == null) ? 0 : getIamInstanceProfile().hashCode()); hashCode = prime * hashCode + ((getEbsOptimized() == null) ? 0 : getEbsOptimized() .hashCode()); hashCode = prime * hashCode + ((getWeightedCapacity() == null) ? 0 : getWeightedCapacity() .hashCode()); hashCode = prime * hashCode + ((getSpotPrice() == null) ? 0 : getSpotPrice().hashCode()); return hashCode; } @Override public SpotFleetLaunchSpecification clone() { try { return (SpotFleetLaunchSpecification) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy