Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License. See License.txt in the project root for
license information.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*/
package com.microsoft.azure.management.compute;
import com.microsoft.azure.management.apigeneration.LangDefinition;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
Scale set virtual machine SKU types.
/**
* Scale set virtual machine SKU types.
*/
@LangDefinition
// TODO: This should be called VirtualMachineScaleSetSkuType in the future (compat break from 1.0)
public class VirtualMachineScaleSetSkuTypes {
// This needs to be at the beginning for the initialization to happen correctly
private static final Map<String, VirtualMachineScaleSetSkuTypes> VALUES_BY_NAME = new HashMap<>();
Static value Standard_A0 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A0 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A0 = new VirtualMachineScaleSetSkuTypes("Standard_A0", "Standard");
Static value Standard_A1 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A1 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A1 = new VirtualMachineScaleSetSkuTypes("Standard_A1", "Standard");
Static value Standard_A2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A2 = new VirtualMachineScaleSetSkuTypes("Standard_A2", "Standard");
Static value Standard_A3 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A3 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A3 = new VirtualMachineScaleSetSkuTypes("Standard_A3", "Standard");
Static value Standard_A4 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A4 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A4 = new VirtualMachineScaleSetSkuTypes("Standard_A4", "Standard");
Static value Standard_A5 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A5 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A5 = new VirtualMachineScaleSetSkuTypes("Standard_A5", "Standard");
Static value Standard_A6 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A6 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A6 = new VirtualMachineScaleSetSkuTypes("Standard_A6", "Standard");
Static value Standard_A7 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A7 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A7 = new VirtualMachineScaleSetSkuTypes("Standard_A7", "Standard");
Static value Standard_A8 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A8 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A8 = new VirtualMachineScaleSetSkuTypes("Standard_A8", "Standard");
Static value Standard_A9 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A9 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A9 = new VirtualMachineScaleSetSkuTypes("Standard_A9", "Standard");
Static value Standard_A10 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A10 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A10 = new VirtualMachineScaleSetSkuTypes("Standard_A10", "Standard");
Static value Standard_A11 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_A11 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_A11 = new VirtualMachineScaleSetSkuTypes("Standard_A11", "Standard");
Static value Standard_D1 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D1 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D1 = new VirtualMachineScaleSetSkuTypes("Standard_D1", "Standard");
Static value Standard_D2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D2 = new VirtualMachineScaleSetSkuTypes("Standard_D2", "Standard");
Static value Standard_D3 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D3 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D3 = new VirtualMachineScaleSetSkuTypes("Standard_D3", "Standard");
Static value Standard_D4 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D4 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D4 = new VirtualMachineScaleSetSkuTypes("Standard_D4", "Standard");
Static value Standard_D11 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D11 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D11 = new VirtualMachineScaleSetSkuTypes("Standard_D11", "Standard");
Static value Standard_D12 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D12 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D12 = new VirtualMachineScaleSetSkuTypes("Standard_D12", "Standard");
Static value Standard_D13 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D13 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D13 = new VirtualMachineScaleSetSkuTypes("Standard_D13", "Standard");
Static value Standard_D14 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D14 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D14 = new VirtualMachineScaleSetSkuTypes("Standard_D14", "Standard");
Static value Standard_D1_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D1_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D1_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D1_v2", "Standard");
Static value Standard_D2_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D2_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D2_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D2_v2", "Standard");
Static value Standard_D3_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D3_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D3_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D3_v2", "Standard");
Static value Standard_D4_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D4_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D4_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D4_v2", "Standard");
Static value Standard_D5_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D5_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D5_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D5_v2", "Standard");
Static value Standard_D11_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D11_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D11_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D11_v2", "Standard");
Static value Standard_D12_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D12_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D12_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D12_v2", "Standard");
Static value Standard_D13_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D13_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D13_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D13_v2", "Standard");
Static value Standard_D14_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D14_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D14_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D14_v2", "Standard");
Static value Standard_D15_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_D15_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_D15_V2 = new VirtualMachineScaleSetSkuTypes("Standard_D15_v2", "Standard");
Static value Standard_DS1 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS1 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS1 = new VirtualMachineScaleSetSkuTypes("Standard_DS1", "Standard");
Static value Standard_DS2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS2 = new VirtualMachineScaleSetSkuTypes("Standard_DS2", "Standard");
Static value Standard_DS3 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS3 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS3 = new VirtualMachineScaleSetSkuTypes("Standard_DS3", "Standard");
Static value Standard_DS4 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS4 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS4 = new VirtualMachineScaleSetSkuTypes("Standard_DS4", "Standard");
Static value Standard_DS11 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS11 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS11 = new VirtualMachineScaleSetSkuTypes("Standard_DS11", "Standard");
Static value Standard_DS12 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS12 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS12 = new VirtualMachineScaleSetSkuTypes("Standard_DS12", "Standard");
Static value Standard_DS13 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS13 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS13 = new VirtualMachineScaleSetSkuTypes("Standard_DS13", "Standard");
Static value Standard_DS14 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS14 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS14 = new VirtualMachineScaleSetSkuTypes("Standard_DS14", "Standard");
Static value Standard_DS1_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS1_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS1_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS1_v2", "Standard");
Static value Standard_DS2_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS2_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS2_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS2_v2", "Standard");
Static value Standard_DS3_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS3_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS3_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS3_v2", "Standard");
Static value Standard_DS4_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS4_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS4_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS4_v2", "Standard");
Static value Standard_DS5_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS5_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS5_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS5_v2", "Standard");
Static value Standard_DS11_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS11_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS11_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS11_v2", "Standard");
Static value Standard_DS12_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS12_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS12_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS12_v2", "Standard");
Static value Standard_DS13_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS13_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS13_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS13_v2", "Standard");
Static value Standard_DS14_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS14_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS14_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS14_v2", "Standard");
Static value Standard_DS15_v2 for VirtualMachineScaleSetSkuTypes. /** Static value Standard_DS15_v2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_DS15_V2 = new VirtualMachineScaleSetSkuTypes("Standard_DS15_v2", "Standard");
Static value STANDARD_F1S for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F1S for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F1S = new VirtualMachineScaleSetSkuTypes("STANDARD_F1S", "Standard");
Static value STANDARD_F2S for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F2S for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F2S = new VirtualMachineScaleSetSkuTypes("STANDARD_F2S", "Standard");
Static value STANDARD_F4S for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F4S for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F4S = new VirtualMachineScaleSetSkuTypes("STANDARD_F4S", "Standard");
Static value STANDARD_F8S for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F8S for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F8S = new VirtualMachineScaleSetSkuTypes("STANDARD_F8S", "Standard");
Static value STANDARD_F16S for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F16S for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F16S = new VirtualMachineScaleSetSkuTypes("STANDARD_F16S", "Standard");
Static value STANDARD_F1 for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F1 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F1 = new VirtualMachineScaleSetSkuTypes("STANDARD_F1", "Standard");
Static value STANDARD_F2 for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F2 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F2 = new VirtualMachineScaleSetSkuTypes("STANDARD_F2", "Standard");
Static value STANDARD_F4 for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F4 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F4 = new VirtualMachineScaleSetSkuTypes("STANDARD_F4", "Standard");
Static value STANDARD_F8 for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F8 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F8 = new VirtualMachineScaleSetSkuTypes("STANDARD_F8", "Standard");
Static value STANDARD_F16 for VirtualMachineScaleSetSkuTypes. /** Static value STANDARD_F16 for VirtualMachineScaleSetSkuTypes. */
public static final VirtualMachineScaleSetSkuTypes STANDARD_F16 = new VirtualMachineScaleSetSkuTypes("STANDARD_F16", "Standard");
the SKU corresponding to this size.
/**
* the SKU corresponding to this size.
*/
private final Sku sku;
The string value of the SKU.
/**
* The string value of the SKU.
*/
private final String value;
Returns: predefined virtual machine scale set SKU types
/**
* @return predefined virtual machine scale set SKU types
*/
public static VirtualMachineScaleSetSkuTypes[] values() {
Collection<VirtualMachineScaleSetSkuTypes> valuesCollection = VALUES_BY_NAME.values();
return valuesCollection.toArray(new VirtualMachineScaleSetSkuTypes[valuesCollection.size()]);
}
Creates a custom value for VirtualMachineSizeTypes.
Params: - skuName – a SKU name
- skuTier – a SKU tier
/**
* Creates a custom value for VirtualMachineSizeTypes.
* @param skuName a SKU name
* @param skuTier a SKU tier
*/
public VirtualMachineScaleSetSkuTypes(String skuName, String skuTier) {
// TODO: This constructor should really be private
this(new Sku().withName(skuName).withTier(skuTier));
}
Creates a custom value for VirtualMachineSizeTypes.
Params: - sku – the SKU
/**
* Creates a custom value for VirtualMachineSizeTypes.
* @param sku the SKU
*/
public VirtualMachineScaleSetSkuTypes(Sku sku) {
// TODO: This constructor should really be private
// Store Sku copy since original user provided sku can be modified
// by the user.
//
this.sku = createCopy(sku);
if (this.sku.tier() == null) {
this.value = this.sku.name();
} else {
this.value = this.sku.name() + '_' + this.sku.tier();
}
VALUES_BY_NAME.put(this.value.toLowerCase(), this);
}
Parses a SKU into a VMSS SKU type and creates a new VirtualMachineScaleSetSkuType instance if not found among the existing ones.
Params: - sku – a VMSS SKU
Returns: the parsed or created VMSS SKU type
/**
* Parses a SKU into a VMSS SKU type and creates a new VirtualMachineScaleSetSkuType instance if not found among the existing ones.
*
* @param sku a VMSS SKU
* @return the parsed or created VMSS SKU type
*/
public static VirtualMachineScaleSetSkuTypes fromSku(Sku sku) {
if (sku == null) {
return null;
}
String nameToLookFor = sku.name();
if (sku.tier() != null) {
nameToLookFor += '_' + sku.tier();
}
VirtualMachineScaleSetSkuTypes result = VALUES_BY_NAME.get(nameToLookFor.toLowerCase());
if (result != null) {
return result;
} else {
return new VirtualMachineScaleSetSkuTypes(sku);
}
}
Parses into a VMSS SKU type and creates a new VMSS SKU type instance if not found among the existing ones.
Params: - skuName – a SKU name
- skuTier – a SKU tier
Returns: a VMSS SKU type
/**
* Parses into a VMSS SKU type and creates a new VMSS SKU type instance if not found among the existing ones.
* @param skuName a SKU name
* @param skuTier a SKU tier
* @return a VMSS SKU type
*/
public static VirtualMachineScaleSetSkuTypes fromSkuNameAndTier(String skuName, String skuTier) {
return fromSku(new Sku().withName(skuName).withTier(skuTier));
}
Returns: the SKU
/**
* @return the SKU
*/
public Sku sku() {
// Return copy of sku to guard VirtualMachineScaleSetSkuTypes from ending up with invalid
// sku in case consumer changes the returned Sku instance.
//
return createCopy(this.sku);
}
@Override
public String toString() {
return this.value;
}
@Override
public int hashCode() {
return this.value.hashCode();
}
@Override
public boolean equals(Object obj) {
String value = this.toString();
if (!(obj instanceof VirtualMachineScaleSetSkuTypes)) {
return false;
} else if (obj == this) {
return true;
} else if (value == null) {
return ((VirtualMachineScaleSetSkuTypes) obj).value == null;
} else {
return value.equalsIgnoreCase(((VirtualMachineScaleSetSkuTypes) obj).value.toLowerCase());
}
}
Creates a copy of the given sku.
Params: - sku – the sku to create copy of
Returns: the copy
/**
* Creates a copy of the given sku.
*
* @param sku the sku to create copy of
* @return the copy
*/
private static Sku createCopy(Sku sku) {
return new Sku()
.withName(sku.name())
.withTier(sku.tier())
.withCapacity(sku.capacity());
}
}