diff --git a/sdk/compute/mgmt-v2020_06_01/pom.xml b/sdk/compute/mgmt-v2020_06_01/pom.xml
index 6c70a47e1d3f..1049bb9b5573 100644
--- a/sdk/compute/mgmt-v2020_06_01/pom.xml
+++ b/sdk/compute/mgmt-v2020_06_01/pom.xml
@@ -11,8 +11,8 @@
com.microsoft.azure
azure-arm-parent
- 1.3.2
- ../../parents/azure-arm-parent/pom.xml
+ 1.1.0
+ ../../../pom.management.xml
azure-mgmt-compute
1.0.0-beta
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroup.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroup.java
index 751484a154c5..30a9ffdd8369 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroup.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroup.java
@@ -90,7 +90,7 @@ interface WithPlatformFaultDomainCount {
interface WithSupportAutomaticPlacement {
/**
* Specifies supportAutomaticPlacement.
- * @param supportAutomaticPlacement Specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'true' when not provided. <br><br>Minimum api-version: 2020-06-01
+ * @param supportAutomaticPlacement Specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'false' when not provided. <br><br>Minimum api-version: 2020-06-01
* @return the next definition stage
*/
WithCreate withSupportAutomaticPlacement(Boolean supportAutomaticPlacement);
@@ -132,7 +132,7 @@ interface UpdateStages {
interface WithSupportAutomaticPlacement {
/**
* Specifies supportAutomaticPlacement.
- * @param supportAutomaticPlacement Specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'true' when not provided. <br><br>Minimum api-version: 2020-06-01
+ * @param supportAutomaticPlacement Specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'false' when not provided. <br><br>Minimum api-version: 2020-06-01
* @return the next update stage
*/
Update withSupportAutomaticPlacement(Boolean supportAutomaticPlacement);
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroupUpdate.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroupUpdate.java
index 2dd3ce7f3050..838293d14667 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroupUpdate.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/DedicatedHostGroupUpdate.java
@@ -41,7 +41,7 @@ public class DedicatedHostGroupUpdate extends UpdateResource {
* Specifies whether virtual machines or virtual machine scale sets can be
* placed automatically on the dedicated host group. Automatic placement
* means resources are allocated on dedicated hosts, that are chosen by
- * Azure, under the dedicated host group. The value is defaulted to 'true'
+ * Azure, under the dedicated host group. The value is defaulted to 'false'
* when not provided. <br><br>Minimum api-version: 2020-06-01.
*/
@JsonProperty(value = "properties.supportAutomaticPlacement")
@@ -95,7 +95,7 @@ public DedicatedHostGroupInstanceView instanceView() {
}
/**
- * Get specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'true' when not provided. <br><br>Minimum api-version: 2020-06-01.
+ * Get specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'false' when not provided. <br><br>Minimum api-version: 2020-06-01.
*
* @return the supportAutomaticPlacement value
*/
@@ -104,7 +104,7 @@ public Boolean supportAutomaticPlacement() {
}
/**
- * Set specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'true' when not provided. <br><br>Minimum api-version: 2020-06-01.
+ * Set specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'false' when not provided. <br><br>Minimum api-version: 2020-06-01.
*
* @param supportAutomaticPlacement the supportAutomaticPlacement value to set
* @return the DedicatedHostGroupUpdate object itself.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/ExecutionState.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/ExecutionState.java
new file mode 100644
index 000000000000..fb54b9c4d9d2
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/ExecutionState.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ExecutionState.
+ */
+public final class ExecutionState extends ExpandableStringEnum {
+ /** Static value Unknown for ExecutionState. */
+ public static final ExecutionState UNKNOWN = fromString("Unknown");
+
+ /** Static value Pending for ExecutionState. */
+ public static final ExecutionState PENDING = fromString("Pending");
+
+ /** Static value Running for ExecutionState. */
+ public static final ExecutionState RUNNING = fromString("Running");
+
+ /** Static value Failed for ExecutionState. */
+ public static final ExecutionState FAILED = fromString("Failed");
+
+ /** Static value Succeeded for ExecutionState. */
+ public static final ExecutionState SUCCEEDED = fromString("Succeeded");
+
+ /** Static value TimedOut for ExecutionState. */
+ public static final ExecutionState TIMED_OUT = fromString("TimedOut");
+
+ /** Static value Canceled for ExecutionState. */
+ public static final ExecutionState CANCELED = fromString("Canceled");
+
+ /**
+ * Creates or finds a ExecutionState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ExecutionState
+ */
+ @JsonCreator
+ public static ExecutionState fromString(String name) {
+ return fromString(name, ExecutionState.class);
+ }
+
+ /**
+ * @return known ExecutionState values
+ */
+ public static Collection values() {
+ return values(ExecutionState.class);
+ }
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/HardwareProfile.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/HardwareProfile.java
index 1328a8bbbfec..3e9e7ed62112 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/HardwareProfile.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/HardwareProfile.java
@@ -17,47 +17,53 @@ public class HardwareProfile {
/**
* Specifies the size of the virtual machine. For more information about
* virtual machine sizes, see [Sizes for virtual
- * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ * machines](https://docs.microsoft.com/en-us/azure/virtual-machines/sizes).
* <br><br> The available VM sizes depend on region and
* availability set. For a list of available sizes use these APIs:
* <br><br> [List all available virtual machine sizes in an
* availability
* set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
* <br><br> [List all available virtual machine sizes in a
- * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ * region](
+ * https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list)
* <br><br> [List all available virtual machine sizes for
* resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
- * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
- * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
- * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7',
- * 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11',
- * 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2',
- * 'Standard_A2m_v2', 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s',
- * 'Standard_B1ms', 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms',
- * 'Standard_B8ms', 'Standard_D1', 'Standard_D2', 'Standard_D3',
- * 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13',
- * 'Standard_D14', 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2',
- * 'Standard_D4_v2', 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3',
- * 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3',
- * 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
- * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
- * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2',
- * 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1',
- * 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', 'Standard_DS11',
- * 'Standard_DS12', 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2',
- * 'Standard_DS2_v2', 'Standard_DS3_v2', 'Standard_DS4_v2',
- * 'Standard_DS5_v2', 'Standard_DS11_v2', 'Standard_DS12_v2',
- * 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2',
- * 'Standard_DS13-4_v2', 'Standard_DS13-2_v2', 'Standard_DS14-8_v2',
- * 'Standard_DS14-4_v2', 'Standard_E2_v3', 'Standard_E4_v3',
- * 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
- * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3',
- * 'Standard_E8s_v3', 'Standard_E16s_v3', 'Standard_E32s_v3',
- * 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3',
- * 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1',
- * 'Standard_F2', 'Standard_F4', 'Standard_F8', 'Standard_F16',
- * 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s',
- * 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2',
+ * <br><br> This list of sizes is no longer updated and the
+ * **VirtualMachineSizeTypes** string constants will be removed from the
+ * subsequent REST API specification. Use [List all available virtual
+ * machine sizes in a region](
+ * https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list) to
+ * get the latest sizes. Possible values include: 'Basic_A0', 'Basic_A1',
+ * 'Basic_A2', 'Basic_A3', 'Basic_A4', 'Standard_A0', 'Standard_A1',
+ * 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5',
+ * 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9',
+ * 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', 'Standard_A2_v2',
+ * 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4',
+ * 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14',
+ * 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2',
+ * 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3',
+ * 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3',
+ * 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3',
+ * 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3',
+ * 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2',
+ * 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2',
+ * 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2',
+ * 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2',
+ * 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3',
+ * 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3',
+ * 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3',
+ * 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3',
+ * 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3',
+ * 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8',
+ * 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s',
+ * 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2',
* 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2',
* 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2',
* 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
@@ -79,7 +85,7 @@ public class HardwareProfile {
private VirtualMachineSizeTypes vmSize;
/**
- * Get specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). <br><br> The available VM sizes depend on region and availability set. For a list of available sizes use these APIs: <br><br> [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) <br><br> [List all available virtual machine sizes in a region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list) <br><br> [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5', 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8', 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms', 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2', 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3', 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', 'Standard_NV12', 'Standard_NV24'.
+ * Get specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/en-us/azure/virtual-machines/sizes). <br><br> The available VM sizes depend on region and availability set. For a list of available sizes use these APIs: <br><br> [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) <br><br> [List all available virtual machine sizes in a region]( https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list) <br><br> [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). <br><br> This list of sizes is no longer updated and the **VirtualMachineSizeTypes** string constants will be removed from the subsequent REST API specification. Use [List all available virtual machine sizes in a region]( https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list) to get the latest sizes. Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5', 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8', 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms', 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2', 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3', 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', 'Standard_NV12', 'Standard_NV24'.
*
* @return the vmSize value
*/
@@ -88,7 +94,7 @@ public VirtualMachineSizeTypes vmSize() {
}
/**
- * Set specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). <br><br> The available VM sizes depend on region and availability set. For a list of available sizes use these APIs: <br><br> [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) <br><br> [List all available virtual machine sizes in a region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list) <br><br> [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5', 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8', 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms', 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2', 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3', 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', 'Standard_NV12', 'Standard_NV24'.
+ * Set specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/en-us/azure/virtual-machines/sizes). <br><br> The available VM sizes depend on region and availability set. For a list of available sizes use these APIs: <br><br> [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) <br><br> [List all available virtual machine sizes in a region]( https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list) <br><br> [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). <br><br> This list of sizes is no longer updated and the **VirtualMachineSizeTypes** string constants will be removed from the subsequent REST API specification. Use [List all available virtual machine sizes in a region]( https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list) to get the latest sizes. Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5', 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8', 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms', 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2', 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3', 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', 'Standard_NV12', 'Standard_NV24'.
*
* @param vmSize the vmSize value to set
* @return the HardwareProfile object itself.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LocationVirtualMachineRunCommand.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LocationVirtualMachineRunCommand.java
new file mode 100644
index 000000000000..48ebc471439b
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LocationVirtualMachineRunCommand.java
@@ -0,0 +1,406 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineRunCommandInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.ComputeManager;
+import java.util.Map;
+import java.util.List;
+
+/**
+ * Type representing LocationVirtualMachineRunCommand.
+ */
+public interface LocationVirtualMachineRunCommand extends HasInner, Indexable, Updatable, HasManager {
+ /**
+ * @return the asyncExecution value.
+ */
+ Boolean asyncExecution();
+
+ /**
+ * @return the errorBlobUri value.
+ */
+ String errorBlobUri();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the instanceView value.
+ */
+ VirtualMachineRunCommandInstanceView instanceView();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputBlobUri value.
+ */
+ String outputBlobUri();
+
+ /**
+ * @return the parameters value.
+ */
+ List parameters();
+
+ /**
+ * @return the protectedParameters value.
+ */
+ List protectedParameters();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the runAsPassword value.
+ */
+ String runAsPassword();
+
+ /**
+ * @return the runAsUser value.
+ */
+ String runAsUser();
+
+ /**
+ * @return the source value.
+ */
+ VirtualMachineRunCommandScriptSource source();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the timeoutInSeconds value.
+ */
+ Integer timeoutInSeconds();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the LocationVirtualMachineRunCommand definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithLocation, DefinitionStages.WithLocation, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of LocationVirtualMachineRunCommand definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a LocationVirtualMachineRunCommand definition.
+ */
+ interface Blank extends WithLocation {
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies resourceGroupName, vmName.
+ * @param resourceGroupName The name of the resource group
+ * @param vmName The name of the virtual machine where the run command should be created or updated
+ * @return the next definition stage
+ */
+ WithLocation withExistingLocation(String resourceGroupName, String vmName);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location Resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify AsyncExecution.
+ */
+ interface WithAsyncExecution {
+ /**
+ * Specifies asyncExecution.
+ * @param asyncExecution Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete
+ * @return the next definition stage
+ */
+ WithCreate withAsyncExecution(Boolean asyncExecution);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify ErrorBlobUri.
+ */
+ interface WithErrorBlobUri {
+ /**
+ * Specifies errorBlobUri.
+ * @param errorBlobUri Specifies the Azure storage blob where script error stream will be uploaded
+ * @return the next definition stage
+ */
+ WithCreate withErrorBlobUri(String errorBlobUri);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify OutputBlobUri.
+ */
+ interface WithOutputBlobUri {
+ /**
+ * Specifies outputBlobUri.
+ * @param outputBlobUri Specifies the Azure storage blob where script output stream will be uploaded
+ * @return the next definition stage
+ */
+ WithCreate withOutputBlobUri(String outputBlobUri);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify Parameters.
+ */
+ interface WithParameters {
+ /**
+ * Specifies parameters.
+ * @param parameters The parameters used by the script
+ * @return the next definition stage
+ */
+ WithCreate withParameters(List parameters);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify ProtectedParameters.
+ */
+ interface WithProtectedParameters {
+ /**
+ * Specifies protectedParameters.
+ * @param protectedParameters The parameters used by the script
+ * @return the next definition stage
+ */
+ WithCreate withProtectedParameters(List protectedParameters);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify RunAsPassword.
+ */
+ interface WithRunAsPassword {
+ /**
+ * Specifies runAsPassword.
+ * @param runAsPassword Specifies the user account password on the VM when executing the run command
+ * @return the next definition stage
+ */
+ WithCreate withRunAsPassword(String runAsPassword);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify RunAsUser.
+ */
+ interface WithRunAsUser {
+ /**
+ * Specifies runAsUser.
+ * @param runAsUser Specifies the user account on the VM when executing the run command
+ * @return the next definition stage
+ */
+ WithCreate withRunAsUser(String runAsUser);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify Source.
+ */
+ interface WithSource {
+ /**
+ * Specifies source.
+ * @param source The source of the run command script
+ * @return the next definition stage
+ */
+ WithCreate withSource(VirtualMachineRunCommandScriptSource source);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand definition allowing to specify TimeoutInSeconds.
+ */
+ interface WithTimeoutInSeconds {
+ /**
+ * Specifies timeoutInSeconds.
+ * @param timeoutInSeconds The timeout in seconds to execute the run command
+ * @return the next definition stage
+ */
+ WithCreate withTimeoutInSeconds(Integer timeoutInSeconds);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithAsyncExecution, DefinitionStages.WithErrorBlobUri, DefinitionStages.WithOutputBlobUri, DefinitionStages.WithParameters, DefinitionStages.WithProtectedParameters, DefinitionStages.WithRunAsPassword, DefinitionStages.WithRunAsUser, DefinitionStages.WithSource, DefinitionStages.WithTags, DefinitionStages.WithTimeoutInSeconds {
+ }
+ }
+ /**
+ * The template for a LocationVirtualMachineRunCommand update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAsyncExecution, UpdateStages.WithErrorBlobUri, UpdateStages.WithOutputBlobUri, UpdateStages.WithParameters, UpdateStages.WithProtectedParameters, UpdateStages.WithRunAsPassword, UpdateStages.WithRunAsUser, UpdateStages.WithSource, UpdateStages.WithTags, UpdateStages.WithTimeoutInSeconds {
+ }
+
+ /**
+ * Grouping of LocationVirtualMachineRunCommand update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify AsyncExecution.
+ */
+ interface WithAsyncExecution {
+ /**
+ * Specifies asyncExecution.
+ * @param asyncExecution Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete
+ * @return the next update stage
+ */
+ Update withAsyncExecution(Boolean asyncExecution);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify ErrorBlobUri.
+ */
+ interface WithErrorBlobUri {
+ /**
+ * Specifies errorBlobUri.
+ * @param errorBlobUri Specifies the Azure storage blob where script error stream will be uploaded
+ * @return the next update stage
+ */
+ Update withErrorBlobUri(String errorBlobUri);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify OutputBlobUri.
+ */
+ interface WithOutputBlobUri {
+ /**
+ * Specifies outputBlobUri.
+ * @param outputBlobUri Specifies the Azure storage blob where script output stream will be uploaded
+ * @return the next update stage
+ */
+ Update withOutputBlobUri(String outputBlobUri);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify Parameters.
+ */
+ interface WithParameters {
+ /**
+ * Specifies parameters.
+ * @param parameters The parameters used by the script
+ * @return the next update stage
+ */
+ Update withParameters(List parameters);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify ProtectedParameters.
+ */
+ interface WithProtectedParameters {
+ /**
+ * Specifies protectedParameters.
+ * @param protectedParameters The parameters used by the script
+ * @return the next update stage
+ */
+ Update withProtectedParameters(List protectedParameters);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify RunAsPassword.
+ */
+ interface WithRunAsPassword {
+ /**
+ * Specifies runAsPassword.
+ * @param runAsPassword Specifies the user account password on the VM when executing the run command
+ * @return the next update stage
+ */
+ Update withRunAsPassword(String runAsPassword);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify RunAsUser.
+ */
+ interface WithRunAsUser {
+ /**
+ * Specifies runAsUser.
+ * @param runAsUser Specifies the user account on the VM when executing the run command
+ * @return the next update stage
+ */
+ Update withRunAsUser(String runAsUser);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify Source.
+ */
+ interface WithSource {
+ /**
+ * Specifies source.
+ * @param source The source of the run command script
+ * @return the next update stage
+ */
+ Update withSource(VirtualMachineRunCommandScriptSource source);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the locationvirtualmachineruncommand update allowing to specify TimeoutInSeconds.
+ */
+ interface WithTimeoutInSeconds {
+ /**
+ * Specifies timeoutInSeconds.
+ * @param timeoutInSeconds The timeout in seconds to execute the run command
+ * @return the next update stage
+ */
+ Update withTimeoutInSeconds(Integer timeoutInSeconds);
+ }
+
+ }
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LogAnalyticsInputBase.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LogAnalyticsInputBase.java
index d3a37a694ab0..294bfab0ff5c 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LogAnalyticsInputBase.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/LogAnalyticsInputBase.java
@@ -52,6 +52,18 @@ public class LogAnalyticsInputBase {
@JsonProperty(value = "groupByResourceName")
private Boolean groupByResourceName;
+ /**
+ * Group query result by Client Application ID.
+ */
+ @JsonProperty(value = "groupByClientApplicationId")
+ private Boolean groupByClientApplicationId;
+
+ /**
+ * Group query result by User Agent.
+ */
+ @JsonProperty(value = "groupByUserAgent")
+ private Boolean groupByUserAgent;
+
/**
* Get sAS Uri of the logging blob container to which LogAnalytics Api writes output logs to.
*
@@ -172,4 +184,44 @@ public LogAnalyticsInputBase withGroupByResourceName(Boolean groupByResourceName
return this;
}
+ /**
+ * Get group query result by Client Application ID.
+ *
+ * @return the groupByClientApplicationId value
+ */
+ public Boolean groupByClientApplicationId() {
+ return this.groupByClientApplicationId;
+ }
+
+ /**
+ * Set group query result by Client Application ID.
+ *
+ * @param groupByClientApplicationId the groupByClientApplicationId value to set
+ * @return the LogAnalyticsInputBase object itself.
+ */
+ public LogAnalyticsInputBase withGroupByClientApplicationId(Boolean groupByClientApplicationId) {
+ this.groupByClientApplicationId = groupByClientApplicationId;
+ return this;
+ }
+
+ /**
+ * Get group query result by User Agent.
+ *
+ * @return the groupByUserAgent value
+ */
+ public Boolean groupByUserAgent() {
+ return this.groupByUserAgent;
+ }
+
+ /**
+ * Set group query result by User Agent.
+ *
+ * @param groupByUserAgent the groupByUserAgent value to set
+ * @return the LogAnalyticsInputBase object itself.
+ */
+ public LogAnalyticsInputBase withGroupByUserAgent(Boolean groupByUserAgent) {
+ this.groupByUserAgent = groupByUserAgent;
+ return this;
+ }
+
}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachine.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachine.java
index a1e723dd39d6..406addf935a2 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachine.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachine.java
@@ -133,7 +133,7 @@ public interface VirtualMachine extends HasInner, Indexable
/**
* @return the resources value.
*/
- List resources();
+ List resources();
/**
* @return the securityProfile value.
@@ -173,7 +173,7 @@ public interface VirtualMachine extends HasInner, Indexable
/**
* The entirety of the VirtualMachine definition.
*/
- interface Definition extends DefinitionStages.Blank, DefinitionStages.WithResourceGroup, DefinitionStages.WithLocation, DefinitionStages.WithCreate {
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithLocation, DefinitionStages.WithLocation, DefinitionStages.WithCreate {
}
/**
@@ -183,19 +183,19 @@ interface DefinitionStages {
/**
* The first stage of a VirtualMachine definition.
*/
- interface Blank extends WithResourceGroup {
+ interface Blank extends WithLocation {
}
/**
* The stage of the virtualmachine definition allowing to specify Location.
*/
- interface WithResourceGroup {
+ interface WithLocation {
/**
* Specifies resourceGroupName.
* @param resourceGroupName The name of the resource group
* @return the next definition stage
*/
- WithLocation withExistingResourceGroup(String resourceGroupName);
+ WithLocation withExistingLocation(String resourceGroupName);
}
/**
@@ -336,7 +336,7 @@ interface WithIdentity {
interface WithLicenseType {
/**
* Specifies licenseType.
- * @param licenseType Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15
+ * @param licenseType Specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15
* @return the next definition stage
*/
WithCreate withLicenseType(String licenseType);
@@ -606,7 +606,7 @@ interface WithIdentity {
interface WithLicenseType {
/**
* Specifies licenseType.
- * @param licenseType Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15
+ * @param licenseType Specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15
* @return the next update stage
*/
Update withLicenseType(String licenseType);
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtension.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtension.java
new file mode 100644
index 000000000000..edb2f79e2814
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtension.java
@@ -0,0 +1,389 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineExtensionInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.ComputeManager;
+import java.util.Map;
+
+/**
+ * Type representing VirtualMachineExtension.
+ */
+public interface VirtualMachineExtension extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the autoUpgradeMinorVersion value.
+ */
+ Boolean autoUpgradeMinorVersion();
+
+ /**
+ * @return the enableAutomaticUpgrade value.
+ */
+ Boolean enableAutomaticUpgrade();
+
+ /**
+ * @return the forceUpdateTag value.
+ */
+ String forceUpdateTag();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the instanceView value.
+ */
+ VirtualMachineExtensionInstanceView instanceView();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the protectedSettings value.
+ */
+ Object protectedSettings();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the publisher value.
+ */
+ String publisher();
+
+ /**
+ * @return the settings value.
+ */
+ Object settings();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * @return the typeHandlerVersion value.
+ */
+ String typeHandlerVersion();
+
+ /**
+ * @return the virtualMachineExtensionType value.
+ */
+ String virtualMachineExtensionType();
+
+ /**
+ * The entirety of the VirtualMachineExtension definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithVirtualMachine, DefinitionStages.WithLocation, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of VirtualMachineExtension definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a VirtualMachineExtension definition.
+ */
+ interface Blank extends WithVirtualMachine {
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify VirtualMachine.
+ */
+ interface WithVirtualMachine {
+ /**
+ * Specifies resourceGroupName, vmName.
+ * @param resourceGroupName The name of the resource group
+ * @param vmName The name of the virtual machine where the extension should be created or updated
+ * @return the next definition stage
+ */
+ WithLocation withExistingVirtualMachine(String resourceGroupName, String vmName);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location Resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify AutoUpgradeMinorVersion.
+ */
+ interface WithAutoUpgradeMinorVersion {
+ /**
+ * Specifies autoUpgradeMinorVersion.
+ * @param autoUpgradeMinorVersion Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true
+ * @return the next definition stage
+ */
+ WithCreate withAutoUpgradeMinorVersion(Boolean autoUpgradeMinorVersion);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify EnableAutomaticUpgrade.
+ */
+ interface WithEnableAutomaticUpgrade {
+ /**
+ * Specifies enableAutomaticUpgrade.
+ * @param enableAutomaticUpgrade Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available
+ * @return the next definition stage
+ */
+ WithCreate withEnableAutomaticUpgrade(Boolean enableAutomaticUpgrade);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify ForceUpdateTag.
+ */
+ interface WithForceUpdateTag {
+ /**
+ * Specifies forceUpdateTag.
+ * @param forceUpdateTag How the extension handler should be forced to update even if the extension configuration has not changed
+ * @return the next definition stage
+ */
+ WithCreate withForceUpdateTag(String forceUpdateTag);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify InstanceView.
+ */
+ interface WithInstanceView {
+ /**
+ * Specifies instanceView.
+ * @param instanceView The virtual machine extension instance view
+ * @return the next definition stage
+ */
+ WithCreate withInstanceView(VirtualMachineExtensionInstanceView instanceView);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify ProtectedSettings.
+ */
+ interface WithProtectedSettings {
+ /**
+ * Specifies protectedSettings.
+ * @param protectedSettings The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all
+ * @return the next definition stage
+ */
+ WithCreate withProtectedSettings(Object protectedSettings);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify Publisher.
+ */
+ interface WithPublisher {
+ /**
+ * Specifies publisher.
+ * @param publisher The name of the extension handler publisher
+ * @return the next definition stage
+ */
+ WithCreate withPublisher(String publisher);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify Settings.
+ */
+ interface WithSettings {
+ /**
+ * Specifies settings.
+ * @param settings Json formatted public settings for the extension
+ * @return the next definition stage
+ */
+ WithCreate withSettings(Object settings);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify TypeHandlerVersion.
+ */
+ interface WithTypeHandlerVersion {
+ /**
+ * Specifies typeHandlerVersion.
+ * @param typeHandlerVersion Specifies the version of the script handler
+ * @return the next definition stage
+ */
+ WithCreate withTypeHandlerVersion(String typeHandlerVersion);
+ }
+
+ /**
+ * The stage of the virtualmachineextension definition allowing to specify VirtualMachineExtensionType.
+ */
+ interface WithVirtualMachineExtensionType {
+ /**
+ * Specifies virtualMachineExtensionType.
+ * @param virtualMachineExtensionType Specifies the type of the extension; an example is "CustomScriptExtension"
+ * @return the next definition stage
+ */
+ WithCreate withVirtualMachineExtensionType(String virtualMachineExtensionType);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithAutoUpgradeMinorVersion, DefinitionStages.WithEnableAutomaticUpgrade, DefinitionStages.WithForceUpdateTag, DefinitionStages.WithInstanceView, DefinitionStages.WithProtectedSettings, DefinitionStages.WithPublisher, DefinitionStages.WithSettings, DefinitionStages.WithTags, DefinitionStages.WithTypeHandlerVersion, DefinitionStages.WithVirtualMachineExtensionType {
+ }
+ }
+ /**
+ * The template for a VirtualMachineExtension update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAutoUpgradeMinorVersion, UpdateStages.WithEnableAutomaticUpgrade, UpdateStages.WithForceUpdateTag, UpdateStages.WithProtectedSettings, UpdateStages.WithPublisher, UpdateStages.WithSettings, UpdateStages.WithTags, UpdateStages.WithType, UpdateStages.WithTypeHandlerVersion {
+ }
+
+ /**
+ * Grouping of VirtualMachineExtension update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the virtualmachineextension update allowing to specify AutoUpgradeMinorVersion.
+ */
+ interface WithAutoUpgradeMinorVersion {
+ /**
+ * Specifies autoUpgradeMinorVersion.
+ * @param autoUpgradeMinorVersion Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true
+ * @return the next update stage
+ */
+ Update withAutoUpgradeMinorVersion(Boolean autoUpgradeMinorVersion);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify EnableAutomaticUpgrade.
+ */
+ interface WithEnableAutomaticUpgrade {
+ /**
+ * Specifies enableAutomaticUpgrade.
+ * @param enableAutomaticUpgrade Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available
+ * @return the next update stage
+ */
+ Update withEnableAutomaticUpgrade(Boolean enableAutomaticUpgrade);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify ForceUpdateTag.
+ */
+ interface WithForceUpdateTag {
+ /**
+ * Specifies forceUpdateTag.
+ * @param forceUpdateTag How the extension handler should be forced to update even if the extension configuration has not changed
+ * @return the next update stage
+ */
+ Update withForceUpdateTag(String forceUpdateTag);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify ProtectedSettings.
+ */
+ interface WithProtectedSettings {
+ /**
+ * Specifies protectedSettings.
+ * @param protectedSettings The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all
+ * @return the next update stage
+ */
+ Update withProtectedSettings(Object protectedSettings);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify Publisher.
+ */
+ interface WithPublisher {
+ /**
+ * Specifies publisher.
+ * @param publisher The name of the extension handler publisher
+ * @return the next update stage
+ */
+ Update withPublisher(String publisher);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify Settings.
+ */
+ interface WithSettings {
+ /**
+ * Specifies settings.
+ * @param settings Json formatted public settings for the extension
+ * @return the next update stage
+ */
+ Update withSettings(Object settings);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify Type.
+ */
+ interface WithType {
+ /**
+ * Specifies type.
+ * @param type Specifies the type of the extension; an example is "CustomScriptExtension"
+ * @return the next update stage
+ */
+ Update withType(String type);
+ }
+
+ /**
+ * The stage of the virtualmachineextension update allowing to specify TypeHandlerVersion.
+ */
+ interface WithTypeHandlerVersion {
+ /**
+ * Specifies typeHandlerVersion.
+ * @param typeHandlerVersion Specifies the version of the script handler
+ * @return the next update stage
+ */
+ Update withTypeHandlerVersion(String typeHandlerVersion);
+ }
+
+ }
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtensions.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtensions.java
index a2cca7b49a6a..9ec84d603152 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtensions.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineExtensions.java
@@ -20,7 +20,7 @@ public interface VirtualMachineExtensions {
* @param name resource name.
* @return the first stage of the new Extension definition.
*/
- VirtualMachineVirtualMachineExtension.DefinitionStages.Blank defineExtension(String name);
+ VirtualMachineExtension.DefinitionStages.Blank defineExtension(String name);
/**
* The operation to get the extension.
@@ -31,7 +31,7 @@ public interface VirtualMachineExtensions {
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable for the request
*/
- Observable getAsync(String resourceGroupName, String vmName, String vmExtensionName);
+ Observable getAsync(String resourceGroupName, String vmName, String vmExtensionName);
/**
* The operation to delete the extension.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandInstanceView.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandInstanceView.java
new file mode 100644
index 000000000000..530c0cbe57ec
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandInstanceView.java
@@ -0,0 +1,228 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import org.joda.time.DateTime;
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * The instance view of a virtual machine run command.
+ */
+public class VirtualMachineRunCommandInstanceView {
+ /**
+ * Script execution status. Possible values include: 'Unknown', 'Pending',
+ * 'Running', 'Failed', 'Succeeded', 'TimedOut', 'Canceled'.
+ */
+ @JsonProperty(value = "executionState")
+ private ExecutionState executionState;
+
+ /**
+ * Communicate script configuration errors or execution messages.
+ */
+ @JsonProperty(value = "executionMessage")
+ private String executionMessage;
+
+ /**
+ * Exit code returned from script execution.
+ */
+ @JsonProperty(value = "exitCode")
+ private Integer exitCode;
+
+ /**
+ * Script output stream.
+ */
+ @JsonProperty(value = "output")
+ private String output;
+
+ /**
+ * Script error stream.
+ */
+ @JsonProperty(value = "error")
+ private String error;
+
+ /**
+ * Script start time.
+ */
+ @JsonProperty(value = "startTime")
+ private DateTime startTime;
+
+ /**
+ * Script end time.
+ */
+ @JsonProperty(value = "endTime")
+ private DateTime endTime;
+
+ /**
+ * The resource status information.
+ */
+ @JsonProperty(value = "statuses")
+ private List statuses;
+
+ /**
+ * Get script execution status. Possible values include: 'Unknown', 'Pending', 'Running', 'Failed', 'Succeeded', 'TimedOut', 'Canceled'.
+ *
+ * @return the executionState value
+ */
+ public ExecutionState executionState() {
+ return this.executionState;
+ }
+
+ /**
+ * Set script execution status. Possible values include: 'Unknown', 'Pending', 'Running', 'Failed', 'Succeeded', 'TimedOut', 'Canceled'.
+ *
+ * @param executionState the executionState value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withExecutionState(ExecutionState executionState) {
+ this.executionState = executionState;
+ return this;
+ }
+
+ /**
+ * Get communicate script configuration errors or execution messages.
+ *
+ * @return the executionMessage value
+ */
+ public String executionMessage() {
+ return this.executionMessage;
+ }
+
+ /**
+ * Set communicate script configuration errors or execution messages.
+ *
+ * @param executionMessage the executionMessage value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withExecutionMessage(String executionMessage) {
+ this.executionMessage = executionMessage;
+ return this;
+ }
+
+ /**
+ * Get exit code returned from script execution.
+ *
+ * @return the exitCode value
+ */
+ public Integer exitCode() {
+ return this.exitCode;
+ }
+
+ /**
+ * Set exit code returned from script execution.
+ *
+ * @param exitCode the exitCode value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withExitCode(Integer exitCode) {
+ this.exitCode = exitCode;
+ return this;
+ }
+
+ /**
+ * Get script output stream.
+ *
+ * @return the output value
+ */
+ public String output() {
+ return this.output;
+ }
+
+ /**
+ * Set script output stream.
+ *
+ * @param output the output value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withOutput(String output) {
+ this.output = output;
+ return this;
+ }
+
+ /**
+ * Get script error stream.
+ *
+ * @return the error value
+ */
+ public String error() {
+ return this.error;
+ }
+
+ /**
+ * Set script error stream.
+ *
+ * @param error the error value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withError(String error) {
+ this.error = error;
+ return this;
+ }
+
+ /**
+ * Get script start time.
+ *
+ * @return the startTime value
+ */
+ public DateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set script start time.
+ *
+ * @param startTime the startTime value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withStartTime(DateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get script end time.
+ *
+ * @return the endTime value
+ */
+ public DateTime endTime() {
+ return this.endTime;
+ }
+
+ /**
+ * Set script end time.
+ *
+ * @param endTime the endTime value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withEndTime(DateTime endTime) {
+ this.endTime = endTime;
+ return this;
+ }
+
+ /**
+ * Get the resource status information.
+ *
+ * @return the statuses value
+ */
+ public List statuses() {
+ return this.statuses;
+ }
+
+ /**
+ * Set the resource status information.
+ *
+ * @param statuses the statuses value to set
+ * @return the VirtualMachineRunCommandInstanceView object itself.
+ */
+ public VirtualMachineRunCommandInstanceView withStatuses(List statuses) {
+ this.statuses = statuses;
+ return this;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandScriptSource.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandScriptSource.java
new file mode 100644
index 000000000000..441596bd122a
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandScriptSource.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Describes the script sources for run command.
+ */
+public class VirtualMachineRunCommandScriptSource {
+ /**
+ * Specifies the script content to be executed on the VM.
+ */
+ @JsonProperty(value = "script")
+ private String script;
+
+ /**
+ * Specifies the script download location.
+ */
+ @JsonProperty(value = "scriptUri")
+ private String scriptUri;
+
+ /**
+ * Specifies a commandId of predefined built-in script.
+ */
+ @JsonProperty(value = "commandId")
+ private String commandId;
+
+ /**
+ * Get specifies the script content to be executed on the VM.
+ *
+ * @return the script value
+ */
+ public String script() {
+ return this.script;
+ }
+
+ /**
+ * Set specifies the script content to be executed on the VM.
+ *
+ * @param script the script value to set
+ * @return the VirtualMachineRunCommandScriptSource object itself.
+ */
+ public VirtualMachineRunCommandScriptSource withScript(String script) {
+ this.script = script;
+ return this;
+ }
+
+ /**
+ * Get specifies the script download location.
+ *
+ * @return the scriptUri value
+ */
+ public String scriptUri() {
+ return this.scriptUri;
+ }
+
+ /**
+ * Set specifies the script download location.
+ *
+ * @param scriptUri the scriptUri value to set
+ * @return the VirtualMachineRunCommandScriptSource object itself.
+ */
+ public VirtualMachineRunCommandScriptSource withScriptUri(String scriptUri) {
+ this.scriptUri = scriptUri;
+ return this;
+ }
+
+ /**
+ * Get specifies a commandId of predefined built-in script.
+ *
+ * @return the commandId value
+ */
+ public String commandId() {
+ return this.commandId;
+ }
+
+ /**
+ * Set specifies a commandId of predefined built-in script.
+ *
+ * @param commandId the commandId value to set
+ * @return the VirtualMachineRunCommandScriptSource object itself.
+ */
+ public VirtualMachineRunCommandScriptSource withCommandId(String commandId) {
+ this.commandId = commandId;
+ return this;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandUpdate.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandUpdate.java
new file mode 100644
index 000000000000..518e6af5e9c5
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommandUpdate.java
@@ -0,0 +1,288 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * Describes a Virtual Machine run command.
+ */
+@JsonFlatten
+public class VirtualMachineRunCommandUpdate extends UpdateResource {
+ /**
+ * The source of the run command script.
+ */
+ @JsonProperty(value = "properties.source")
+ private VirtualMachineRunCommandScriptSource source;
+
+ /**
+ * The parameters used by the script.
+ */
+ @JsonProperty(value = "properties.parameters")
+ private List parameters;
+
+ /**
+ * The parameters used by the script.
+ */
+ @JsonProperty(value = "properties.protectedParameters")
+ private List protectedParameters;
+
+ /**
+ * Optional. If set to true, provisioning will complete as soon as the
+ * script starts and will not wait for script to complete.
+ */
+ @JsonProperty(value = "properties.asyncExecution")
+ private Boolean asyncExecution;
+
+ /**
+ * Specifies the user account on the VM when executing the run command.
+ */
+ @JsonProperty(value = "properties.runAsUser")
+ private String runAsUser;
+
+ /**
+ * Specifies the user account password on the VM when executing the run
+ * command.
+ */
+ @JsonProperty(value = "properties.runAsPassword")
+ private String runAsPassword;
+
+ /**
+ * The timeout in seconds to execute the run command.
+ */
+ @JsonProperty(value = "properties.timeoutInSeconds")
+ private Integer timeoutInSeconds;
+
+ /**
+ * Specifies the Azure storage blob where script output stream will be
+ * uploaded.
+ */
+ @JsonProperty(value = "properties.outputBlobUri")
+ private String outputBlobUri;
+
+ /**
+ * Specifies the Azure storage blob where script error stream will be
+ * uploaded.
+ */
+ @JsonProperty(value = "properties.errorBlobUri")
+ private String errorBlobUri;
+
+ /**
+ * The provisioning state, which only appears in the response.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private String provisioningState;
+
+ /**
+ * The virtual machine run command instance view.
+ */
+ @JsonProperty(value = "properties.instanceView", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineRunCommandInstanceView instanceView;
+
+ /**
+ * Get the source of the run command script.
+ *
+ * @return the source value
+ */
+ public VirtualMachineRunCommandScriptSource source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source of the run command script.
+ *
+ * @param source the source value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withSource(VirtualMachineRunCommandScriptSource source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the parameters used by the script.
+ *
+ * @return the parameters value
+ */
+ public List parameters() {
+ return this.parameters;
+ }
+
+ /**
+ * Set the parameters used by the script.
+ *
+ * @param parameters the parameters value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withParameters(List parameters) {
+ this.parameters = parameters;
+ return this;
+ }
+
+ /**
+ * Get the parameters used by the script.
+ *
+ * @return the protectedParameters value
+ */
+ public List protectedParameters() {
+ return this.protectedParameters;
+ }
+
+ /**
+ * Set the parameters used by the script.
+ *
+ * @param protectedParameters the protectedParameters value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withProtectedParameters(List protectedParameters) {
+ this.protectedParameters = protectedParameters;
+ return this;
+ }
+
+ /**
+ * Get optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.
+ *
+ * @return the asyncExecution value
+ */
+ public Boolean asyncExecution() {
+ return this.asyncExecution;
+ }
+
+ /**
+ * Set optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.
+ *
+ * @param asyncExecution the asyncExecution value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withAsyncExecution(Boolean asyncExecution) {
+ this.asyncExecution = asyncExecution;
+ return this;
+ }
+
+ /**
+ * Get specifies the user account on the VM when executing the run command.
+ *
+ * @return the runAsUser value
+ */
+ public String runAsUser() {
+ return this.runAsUser;
+ }
+
+ /**
+ * Set specifies the user account on the VM when executing the run command.
+ *
+ * @param runAsUser the runAsUser value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withRunAsUser(String runAsUser) {
+ this.runAsUser = runAsUser;
+ return this;
+ }
+
+ /**
+ * Get specifies the user account password on the VM when executing the run command.
+ *
+ * @return the runAsPassword value
+ */
+ public String runAsPassword() {
+ return this.runAsPassword;
+ }
+
+ /**
+ * Set specifies the user account password on the VM when executing the run command.
+ *
+ * @param runAsPassword the runAsPassword value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withRunAsPassword(String runAsPassword) {
+ this.runAsPassword = runAsPassword;
+ return this;
+ }
+
+ /**
+ * Get the timeout in seconds to execute the run command.
+ *
+ * @return the timeoutInSeconds value
+ */
+ public Integer timeoutInSeconds() {
+ return this.timeoutInSeconds;
+ }
+
+ /**
+ * Set the timeout in seconds to execute the run command.
+ *
+ * @param timeoutInSeconds the timeoutInSeconds value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withTimeoutInSeconds(Integer timeoutInSeconds) {
+ this.timeoutInSeconds = timeoutInSeconds;
+ return this;
+ }
+
+ /**
+ * Get specifies the Azure storage blob where script output stream will be uploaded.
+ *
+ * @return the outputBlobUri value
+ */
+ public String outputBlobUri() {
+ return this.outputBlobUri;
+ }
+
+ /**
+ * Set specifies the Azure storage blob where script output stream will be uploaded.
+ *
+ * @param outputBlobUri the outputBlobUri value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withOutputBlobUri(String outputBlobUri) {
+ this.outputBlobUri = outputBlobUri;
+ return this;
+ }
+
+ /**
+ * Get specifies the Azure storage blob where script error stream will be uploaded.
+ *
+ * @return the errorBlobUri value
+ */
+ public String errorBlobUri() {
+ return this.errorBlobUri;
+ }
+
+ /**
+ * Set specifies the Azure storage blob where script error stream will be uploaded.
+ *
+ * @param errorBlobUri the errorBlobUri value to set
+ * @return the VirtualMachineRunCommandUpdate object itself.
+ */
+ public VirtualMachineRunCommandUpdate withErrorBlobUri(String errorBlobUri) {
+ this.errorBlobUri = errorBlobUri;
+ return this;
+ }
+
+ /**
+ * Get the provisioning state, which only appears in the response.
+ *
+ * @return the provisioningState value
+ */
+ public String provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the virtual machine run command instance view.
+ *
+ * @return the instanceView value
+ */
+ public VirtualMachineRunCommandInstanceView instanceView() {
+ return this.instanceView;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommands.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommands.java
index d02a6c1183cd..995e02d7ebd6 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommands.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineRunCommands.java
@@ -9,12 +9,20 @@
package com.microsoft.azure.management.compute.v2020_06_01;
import rx.Observable;
-import com.microsoft.azure.management.compute.v2020_06_01.RunCommandDocument;
+import com.microsoft.azure.management.compute.v2020_06_01.LocationVirtualMachineRunCommand;
+import rx.Completable;
/**
* Type representing VirtualMachineRunCommands.
*/
public interface VirtualMachineRunCommands {
+ /**
+ * Begins definition for a new RunCommand resource.
+ * @param name resource name.
+ * @return the first stage of the new RunCommand definition.
+ */
+ LocationVirtualMachineRunCommand.DefinitionStages.Blank defineRunCommand(String name);
+
/**
* Gets specific run command for a subscription in a location.
*
@@ -23,7 +31,7 @@ public interface VirtualMachineRunCommands {
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable for the request
*/
- Observable getAsync(String location, String commandId);
+ Observable getAsync(String location, String commandId);
/**
* Lists all available run commands for a subscription in a location.
@@ -32,6 +40,38 @@ public interface VirtualMachineRunCommands {
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable for the request
*/
- Observable listAsync(final String location);
+ Observable listAsync(final String location);
+
+ /**
+ * The operation to delete the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be deleted.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String vmName, String runCommandName);
+
+ /**
+ * The operation to get the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine containing the run command.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getByVirtualMachineAsync(String resourceGroupName, String vmName, String runCommandName);
+
+ /**
+ * The operation to get all run commands of a Virtual Machine.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine containing the run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listByVirtualMachineAsync(final String resourceGroupName, final String vmName);
}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVM.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVM.java
index 6083198030e7..92f54a9b16eb 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVM.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVM.java
@@ -117,7 +117,7 @@ public interface VirtualMachineScaleSetVM extends HasInner resources();
+ List resources();
/**
* @return the securityProfile value.
@@ -218,7 +218,7 @@ interface WithHardwareProfile {
interface WithLicenseType {
/**
* Specifies licenseType.
- * @param licenseType Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15
+ * @param licenseType Specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15
* @return the next update stage
*/
Update withLicenseType(String licenseType);
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtension.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtension.java
new file mode 100644
index 000000000000..134ef1c101b7
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtension.java
@@ -0,0 +1,343 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineScaleSetVMExtensionInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.ComputeManager;
+
+/**
+ * Type representing VirtualMachineScaleSetVMExtension.
+ */
+public interface VirtualMachineScaleSetVMExtension extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the autoUpgradeMinorVersion value.
+ */
+ Boolean autoUpgradeMinorVersion();
+
+ /**
+ * @return the enableAutomaticUpgrade value.
+ */
+ Boolean enableAutomaticUpgrade();
+
+ /**
+ * @return the forceUpdateTag value.
+ */
+ String forceUpdateTag();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the instanceView value.
+ */
+ VirtualMachineExtensionInstanceView instanceView();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the protectedSettings value.
+ */
+ Object protectedSettings();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the publisher value.
+ */
+ String publisher();
+
+ /**
+ * @return the settings value.
+ */
+ Object settings();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * @return the type1 value.
+ */
+ String type1();
+
+ /**
+ * @return the typeHandlerVersion value.
+ */
+ String typeHandlerVersion();
+
+ /**
+ * The entirety of the VirtualMachineScaleSetVMExtension definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithVirtualmachine, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of VirtualMachineScaleSetVMExtension definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a VirtualMachineScaleSetVMExtension definition.
+ */
+ interface Blank extends WithVirtualmachine {
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify Virtualmachine.
+ */
+ interface WithVirtualmachine {
+ /**
+ * Specifies resourceGroupName, vmScaleSetName, instanceId.
+ * @param resourceGroupName The name of the resource group
+ * @param vmScaleSetName The name of the VM scale set
+ * @param instanceId The instance ID of the virtual machine
+ * @return the next definition stage
+ */
+ WithCreate withExistingVirtualmachine(String resourceGroupName, String vmScaleSetName, String instanceId);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify AutoUpgradeMinorVersion.
+ */
+ interface WithAutoUpgradeMinorVersion {
+ /**
+ * Specifies autoUpgradeMinorVersion.
+ * @param autoUpgradeMinorVersion Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true
+ * @return the next definition stage
+ */
+ WithCreate withAutoUpgradeMinorVersion(Boolean autoUpgradeMinorVersion);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify EnableAutomaticUpgrade.
+ */
+ interface WithEnableAutomaticUpgrade {
+ /**
+ * Specifies enableAutomaticUpgrade.
+ * @param enableAutomaticUpgrade Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available
+ * @return the next definition stage
+ */
+ WithCreate withEnableAutomaticUpgrade(Boolean enableAutomaticUpgrade);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify ForceUpdateTag.
+ */
+ interface WithForceUpdateTag {
+ /**
+ * Specifies forceUpdateTag.
+ * @param forceUpdateTag How the extension handler should be forced to update even if the extension configuration has not changed
+ * @return the next definition stage
+ */
+ WithCreate withForceUpdateTag(String forceUpdateTag);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify InstanceView.
+ */
+ interface WithInstanceView {
+ /**
+ * Specifies instanceView.
+ * @param instanceView The virtual machine extension instance view
+ * @return the next definition stage
+ */
+ WithCreate withInstanceView(VirtualMachineExtensionInstanceView instanceView);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify ProtectedSettings.
+ */
+ interface WithProtectedSettings {
+ /**
+ * Specifies protectedSettings.
+ * @param protectedSettings The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all
+ * @return the next definition stage
+ */
+ WithCreate withProtectedSettings(Object protectedSettings);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify Publisher.
+ */
+ interface WithPublisher {
+ /**
+ * Specifies publisher.
+ * @param publisher The name of the extension handler publisher
+ * @return the next definition stage
+ */
+ WithCreate withPublisher(String publisher);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify Settings.
+ */
+ interface WithSettings {
+ /**
+ * Specifies settings.
+ * @param settings Json formatted public settings for the extension
+ * @return the next definition stage
+ */
+ WithCreate withSettings(Object settings);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify Type1.
+ */
+ interface WithType1 {
+ /**
+ * Specifies type1.
+ * @param type1 Specifies the type of the extension; an example is "CustomScriptExtension"
+ * @return the next definition stage
+ */
+ WithCreate withType1(String type1);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension definition allowing to specify TypeHandlerVersion.
+ */
+ interface WithTypeHandlerVersion {
+ /**
+ * Specifies typeHandlerVersion.
+ * @param typeHandlerVersion Specifies the version of the script handler
+ * @return the next definition stage
+ */
+ WithCreate withTypeHandlerVersion(String typeHandlerVersion);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithAutoUpgradeMinorVersion, DefinitionStages.WithEnableAutomaticUpgrade, DefinitionStages.WithForceUpdateTag, DefinitionStages.WithInstanceView, DefinitionStages.WithProtectedSettings, DefinitionStages.WithPublisher, DefinitionStages.WithSettings, DefinitionStages.WithType1, DefinitionStages.WithTypeHandlerVersion {
+ }
+ }
+ /**
+ * The template for a VirtualMachineScaleSetVMExtension update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAutoUpgradeMinorVersion, UpdateStages.WithEnableAutomaticUpgrade, UpdateStages.WithForceUpdateTag, UpdateStages.WithProtectedSettings, UpdateStages.WithPublisher, UpdateStages.WithSettings, UpdateStages.WithType1, UpdateStages.WithTypeHandlerVersion {
+ }
+
+ /**
+ * Grouping of VirtualMachineScaleSetVMExtension update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify AutoUpgradeMinorVersion.
+ */
+ interface WithAutoUpgradeMinorVersion {
+ /**
+ * Specifies autoUpgradeMinorVersion.
+ * @param autoUpgradeMinorVersion Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true
+ * @return the next update stage
+ */
+ Update withAutoUpgradeMinorVersion(Boolean autoUpgradeMinorVersion);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify EnableAutomaticUpgrade.
+ */
+ interface WithEnableAutomaticUpgrade {
+ /**
+ * Specifies enableAutomaticUpgrade.
+ * @param enableAutomaticUpgrade Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available
+ * @return the next update stage
+ */
+ Update withEnableAutomaticUpgrade(Boolean enableAutomaticUpgrade);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify ForceUpdateTag.
+ */
+ interface WithForceUpdateTag {
+ /**
+ * Specifies forceUpdateTag.
+ * @param forceUpdateTag How the extension handler should be forced to update even if the extension configuration has not changed
+ * @return the next update stage
+ */
+ Update withForceUpdateTag(String forceUpdateTag);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify ProtectedSettings.
+ */
+ interface WithProtectedSettings {
+ /**
+ * Specifies protectedSettings.
+ * @param protectedSettings The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all
+ * @return the next update stage
+ */
+ Update withProtectedSettings(Object protectedSettings);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify Publisher.
+ */
+ interface WithPublisher {
+ /**
+ * Specifies publisher.
+ * @param publisher The name of the extension handler publisher
+ * @return the next update stage
+ */
+ Update withPublisher(String publisher);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify Settings.
+ */
+ interface WithSettings {
+ /**
+ * Specifies settings.
+ * @param settings Json formatted public settings for the extension
+ * @return the next update stage
+ */
+ Update withSettings(Object settings);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify Type1.
+ */
+ interface WithType1 {
+ /**
+ * Specifies type1.
+ * @param type1 Specifies the type of the extension; an example is "CustomScriptExtension"
+ * @return the next update stage
+ */
+ Update withType1(String type1);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvmextension update allowing to specify TypeHandlerVersion.
+ */
+ interface WithTypeHandlerVersion {
+ /**
+ * Specifies typeHandlerVersion.
+ * @param typeHandlerVersion Specifies the version of the script handler
+ * @return the next update stage
+ */
+ Update withTypeHandlerVersion(String typeHandlerVersion);
+ }
+
+ }
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensionUpdate.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensionUpdate.java
new file mode 100644
index 000000000000..a67ed04e26ee
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensionUpdate.java
@@ -0,0 +1,264 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+
+/**
+ * Describes a VMSS VM Extension.
+ */
+@JsonFlatten
+public class VirtualMachineScaleSetVMExtensionUpdate extends SubResourceReadOnly {
+ /**
+ * The name of the extension.
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /**
+ * Resource type.
+ */
+ @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
+ private String type;
+
+ /**
+ * How the extension handler should be forced to update even if the
+ * extension configuration has not changed.
+ */
+ @JsonProperty(value = "properties.forceUpdateTag")
+ private String forceUpdateTag;
+
+ /**
+ * The name of the extension handler publisher.
+ */
+ @JsonProperty(value = "properties.publisher")
+ private String publisher;
+
+ /**
+ * Specifies the type of the extension; an example is
+ * "CustomScriptExtension".
+ */
+ @JsonProperty(value = "properties.type")
+ private String type1;
+
+ /**
+ * Specifies the version of the script handler.
+ */
+ @JsonProperty(value = "properties.typeHandlerVersion")
+ private String typeHandlerVersion;
+
+ /**
+ * Indicates whether the extension should use a newer minor version if one
+ * is available at deployment time. Once deployed, however, the extension
+ * will not upgrade minor versions unless redeployed, even with this
+ * property set to true.
+ */
+ @JsonProperty(value = "properties.autoUpgradeMinorVersion")
+ private Boolean autoUpgradeMinorVersion;
+
+ /**
+ * Indicates whether the extension should be automatically upgraded by the
+ * platform if there is a newer version of the extension available.
+ */
+ @JsonProperty(value = "properties.enableAutomaticUpgrade")
+ private Boolean enableAutomaticUpgrade;
+
+ /**
+ * Json formatted public settings for the extension.
+ */
+ @JsonProperty(value = "properties.settings")
+ private Object settings;
+
+ /**
+ * The extension can contain either protectedSettings or
+ * protectedSettingsFromKeyVault or no protected settings at all.
+ */
+ @JsonProperty(value = "properties.protectedSettings")
+ private Object protectedSettings;
+
+ /**
+ * Get the name of the extension.
+ *
+ * @return the name value
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get resource type.
+ *
+ * @return the type value
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get how the extension handler should be forced to update even if the extension configuration has not changed.
+ *
+ * @return the forceUpdateTag value
+ */
+ public String forceUpdateTag() {
+ return this.forceUpdateTag;
+ }
+
+ /**
+ * Set how the extension handler should be forced to update even if the extension configuration has not changed.
+ *
+ * @param forceUpdateTag the forceUpdateTag value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withForceUpdateTag(String forceUpdateTag) {
+ this.forceUpdateTag = forceUpdateTag;
+ return this;
+ }
+
+ /**
+ * Get the name of the extension handler publisher.
+ *
+ * @return the publisher value
+ */
+ public String publisher() {
+ return this.publisher;
+ }
+
+ /**
+ * Set the name of the extension handler publisher.
+ *
+ * @param publisher the publisher value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withPublisher(String publisher) {
+ this.publisher = publisher;
+ return this;
+ }
+
+ /**
+ * Get specifies the type of the extension; an example is "CustomScriptExtension".
+ *
+ * @return the type1 value
+ */
+ public String type1() {
+ return this.type1;
+ }
+
+ /**
+ * Set specifies the type of the extension; an example is "CustomScriptExtension".
+ *
+ * @param type1 the type1 value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withType1(String type1) {
+ this.type1 = type1;
+ return this;
+ }
+
+ /**
+ * Get specifies the version of the script handler.
+ *
+ * @return the typeHandlerVersion value
+ */
+ public String typeHandlerVersion() {
+ return this.typeHandlerVersion;
+ }
+
+ /**
+ * Set specifies the version of the script handler.
+ *
+ * @param typeHandlerVersion the typeHandlerVersion value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withTypeHandlerVersion(String typeHandlerVersion) {
+ this.typeHandlerVersion = typeHandlerVersion;
+ return this;
+ }
+
+ /**
+ * Get indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
+ *
+ * @return the autoUpgradeMinorVersion value
+ */
+ public Boolean autoUpgradeMinorVersion() {
+ return this.autoUpgradeMinorVersion;
+ }
+
+ /**
+ * Set indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
+ *
+ * @param autoUpgradeMinorVersion the autoUpgradeMinorVersion value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withAutoUpgradeMinorVersion(Boolean autoUpgradeMinorVersion) {
+ this.autoUpgradeMinorVersion = autoUpgradeMinorVersion;
+ return this;
+ }
+
+ /**
+ * Get indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
+ *
+ * @return the enableAutomaticUpgrade value
+ */
+ public Boolean enableAutomaticUpgrade() {
+ return this.enableAutomaticUpgrade;
+ }
+
+ /**
+ * Set indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
+ *
+ * @param enableAutomaticUpgrade the enableAutomaticUpgrade value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withEnableAutomaticUpgrade(Boolean enableAutomaticUpgrade) {
+ this.enableAutomaticUpgrade = enableAutomaticUpgrade;
+ return this;
+ }
+
+ /**
+ * Get json formatted public settings for the extension.
+ *
+ * @return the settings value
+ */
+ public Object settings() {
+ return this.settings;
+ }
+
+ /**
+ * Set json formatted public settings for the extension.
+ *
+ * @param settings the settings value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withSettings(Object settings) {
+ this.settings = settings;
+ return this;
+ }
+
+ /**
+ * Get the extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
+ *
+ * @return the protectedSettings value
+ */
+ public Object protectedSettings() {
+ return this.protectedSettings;
+ }
+
+ /**
+ * Set the extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
+ *
+ * @param protectedSettings the protectedSettings value to set
+ * @return the VirtualMachineScaleSetVMExtensionUpdate object itself.
+ */
+ public VirtualMachineScaleSetVMExtensionUpdate withProtectedSettings(Object protectedSettings) {
+ this.protectedSettings = protectedSettings;
+ return this;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensions.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensions.java
index 2d4daa453c1b..240b5f57b99b 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensions.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensions.java
@@ -17,7 +17,7 @@
/**
* Type representing VirtualMachineScaleSetVMExtensions.
*/
-public interface VirtualMachineScaleSetVMExtensions extends SupportsCreating, HasInner {
+public interface VirtualMachineScaleSetVMExtensions extends SupportsCreating, HasInner {
/**
* The operation to get all extensions of an instance in Virtual Machine Scaleset.
*
@@ -27,7 +27,7 @@ public interface VirtualMachineScaleSetVMExtensions extends SupportsCreating listAsync(String resourceGroupName, String vmScaleSetName, String instanceId);
+ Observable listAsync(String resourceGroupName, String vmScaleSetName, String instanceId);
/**
* The operation to get the VMSS VM extension.
@@ -39,7 +39,7 @@ public interface VirtualMachineScaleSetVMExtensions extends SupportsCreating getAsync(String resourceGroupName, String vmScaleSetName, String instanceId, String vmExtensionName);
+ Observable getAsync(String resourceGroupName, String vmScaleSetName, String instanceId, String vmExtensionName);
/**
* The operation to delete the VMSS VM extension.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensionsListResult.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensionsListResult.java
new file mode 100644
index 000000000000..9e51d553a510
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMExtensionsListResult.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.ComputeManager;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineScaleSetVMExtensionsListResultInner;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineScaleSetVMExtensionInner;
+import java.util.List;
+
+/**
+ * Type representing VirtualMachineScaleSetVMExtensionsListResult.
+ */
+public interface VirtualMachineScaleSetVMExtensionsListResult extends HasInner, HasManager {
+ /**
+ * @return the value value.
+ */
+ List value();
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMProfile.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMProfile.java
index 977e70f666cd..97aa94dc0b2b 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMProfile.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMProfile.java
@@ -57,14 +57,16 @@ public class VirtualMachineScaleSetVMProfile {
/**
* Specifies that the image or disk that is being used was licensed
- * on-premises. This element is only used for images that contain the
- * Windows Server operating system. <br><br> Possible values
- * are: <br><br> Windows_Client <br><br>
- * Windows_Server <br><br> If this element is included in a
- * request for an update, the value must match the initial value. This
- * value cannot be updated. <br><br> For more information, see
- * [Azure Hybrid Use Benefit for Windows
- * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ * on-premises. <br><br> Possible values for Windows Server
+ * operating system are: <br><br> Windows_Client
+ * <br><br> Windows_Server <br><br> Possible values
+ * for Linux Server operating system are: <br><br> RHEL_BYOS
+ * (for RHEL) <br><br> SLES_BYOS (for SUSE)
+ * <br><br> For more information, see [Azure Hybrid Use Benefit
+ * for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)
+ * <br><br> [Azure Hybrid Use Benefit for Linux
+ * Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
* <br><br> Minimum api-version: 2015-06-15.
*/
@JsonProperty(value = "licenseType")
@@ -224,7 +226,7 @@ public VirtualMachineScaleSetVMProfile withExtensionProfile(VirtualMachineScaleS
}
/**
- * Get specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15.
+ * Get specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.
*
* @return the licenseType value
*/
@@ -233,7 +235,7 @@ public String licenseType() {
}
/**
- * Set specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15.
+ * Set specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.
*
* @param licenseType the licenseType value to set
* @return the VirtualMachineScaleSetVMProfile object itself.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMRunCommands.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMRunCommands.java
new file mode 100644
index 000000000000..e0fee6e1cc50
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVMRunCommands.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.microsoft.azure.arm.collection.SupportsCreating;
+import rx.Completable;
+import rx.Observable;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineScaleSetVMRunCommandsInner;
+import com.microsoft.azure.arm.model.HasInner;
+
+/**
+ * Type representing VirtualMachineScaleSetVMRunCommands.
+ */
+public interface VirtualMachineScaleSetVMRunCommands extends SupportsCreating, HasInner {
+ /**
+ * The operation to get the VMSS VM run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param instanceId The instance ID of the virtual machine.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable getAsync(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName);
+
+ /**
+ * The operation to get all run commands of an instance in Virtual Machine Scaleset.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param instanceId The instance ID of the virtual machine.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable listAsync(final String resourceGroupName, final String vmScaleSetName, final String instanceId);
+
+ /**
+ * The operation to delete the VMSS VM run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param instanceId The instance ID of the virtual machine.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Completable deleteAsync(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName);
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVirtualMachineRunCommand.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVirtualMachineRunCommand.java
new file mode 100644
index 000000000000..4eb07d83ad30
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineScaleSetVirtualMachineRunCommand.java
@@ -0,0 +1,408 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01;
+
+import com.microsoft.azure.arm.model.HasInner;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.VirtualMachineRunCommandInner;
+import com.microsoft.azure.arm.model.Indexable;
+import com.microsoft.azure.arm.model.Refreshable;
+import com.microsoft.azure.arm.model.Updatable;
+import com.microsoft.azure.arm.model.Appliable;
+import com.microsoft.azure.arm.model.Creatable;
+import com.microsoft.azure.arm.resources.models.HasManager;
+import com.microsoft.azure.management.compute.v2020_06_01.implementation.ComputeManager;
+import java.util.Map;
+import java.util.List;
+
+/**
+ * Type representing VirtualMachineScaleSetVirtualMachineRunCommand.
+ */
+public interface VirtualMachineScaleSetVirtualMachineRunCommand extends HasInner, Indexable, Refreshable, Updatable, HasManager {
+ /**
+ * @return the asyncExecution value.
+ */
+ Boolean asyncExecution();
+
+ /**
+ * @return the errorBlobUri value.
+ */
+ String errorBlobUri();
+
+ /**
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * @return the instanceView value.
+ */
+ VirtualMachineRunCommandInstanceView instanceView();
+
+ /**
+ * @return the location value.
+ */
+ String location();
+
+ /**
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * @return the outputBlobUri value.
+ */
+ String outputBlobUri();
+
+ /**
+ * @return the parameters value.
+ */
+ List parameters();
+
+ /**
+ * @return the protectedParameters value.
+ */
+ List protectedParameters();
+
+ /**
+ * @return the provisioningState value.
+ */
+ String provisioningState();
+
+ /**
+ * @return the runAsPassword value.
+ */
+ String runAsPassword();
+
+ /**
+ * @return the runAsUser value.
+ */
+ String runAsUser();
+
+ /**
+ * @return the source value.
+ */
+ VirtualMachineRunCommandScriptSource source();
+
+ /**
+ * @return the tags value.
+ */
+ Map tags();
+
+ /**
+ * @return the timeoutInSeconds value.
+ */
+ Integer timeoutInSeconds();
+
+ /**
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * The entirety of the VirtualMachineScaleSetVirtualMachineRunCommand definition.
+ */
+ interface Definition extends DefinitionStages.Blank, DefinitionStages.WithVirtualmachine, DefinitionStages.WithLocation, DefinitionStages.WithCreate {
+ }
+
+ /**
+ * Grouping of VirtualMachineScaleSetVirtualMachineRunCommand definition stages.
+ */
+ interface DefinitionStages {
+ /**
+ * The first stage of a VirtualMachineScaleSetVirtualMachineRunCommand definition.
+ */
+ interface Blank extends WithVirtualmachine {
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify Virtualmachine.
+ */
+ interface WithVirtualmachine {
+ /**
+ * Specifies resourceGroupName, vmScaleSetName, instanceId.
+ * @param resourceGroupName The name of the resource group
+ * @param vmScaleSetName The name of the VM scale set
+ * @param instanceId The instance ID of the virtual machine
+ * @return the next definition stage
+ */
+ WithLocation withExistingVirtualmachine(String resourceGroupName, String vmScaleSetName, String instanceId);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify Location.
+ */
+ interface WithLocation {
+ /**
+ * Specifies location.
+ * @param location Resource location
+ * @return the next definition stage
+ */
+ WithCreate withLocation(String location);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify AsyncExecution.
+ */
+ interface WithAsyncExecution {
+ /**
+ * Specifies asyncExecution.
+ * @param asyncExecution Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete
+ * @return the next definition stage
+ */
+ WithCreate withAsyncExecution(Boolean asyncExecution);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify ErrorBlobUri.
+ */
+ interface WithErrorBlobUri {
+ /**
+ * Specifies errorBlobUri.
+ * @param errorBlobUri Specifies the Azure storage blob where script error stream will be uploaded
+ * @return the next definition stage
+ */
+ WithCreate withErrorBlobUri(String errorBlobUri);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify OutputBlobUri.
+ */
+ interface WithOutputBlobUri {
+ /**
+ * Specifies outputBlobUri.
+ * @param outputBlobUri Specifies the Azure storage blob where script output stream will be uploaded
+ * @return the next definition stage
+ */
+ WithCreate withOutputBlobUri(String outputBlobUri);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify Parameters.
+ */
+ interface WithParameters {
+ /**
+ * Specifies parameters.
+ * @param parameters The parameters used by the script
+ * @return the next definition stage
+ */
+ WithCreate withParameters(List parameters);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify ProtectedParameters.
+ */
+ interface WithProtectedParameters {
+ /**
+ * Specifies protectedParameters.
+ * @param protectedParameters The parameters used by the script
+ * @return the next definition stage
+ */
+ WithCreate withProtectedParameters(List protectedParameters);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify RunAsPassword.
+ */
+ interface WithRunAsPassword {
+ /**
+ * Specifies runAsPassword.
+ * @param runAsPassword Specifies the user account password on the VM when executing the run command
+ * @return the next definition stage
+ */
+ WithCreate withRunAsPassword(String runAsPassword);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify RunAsUser.
+ */
+ interface WithRunAsUser {
+ /**
+ * Specifies runAsUser.
+ * @param runAsUser Specifies the user account on the VM when executing the run command
+ * @return the next definition stage
+ */
+ WithCreate withRunAsUser(String runAsUser);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify Source.
+ */
+ interface WithSource {
+ /**
+ * Specifies source.
+ * @param source The source of the run command script
+ * @return the next definition stage
+ */
+ WithCreate withSource(VirtualMachineRunCommandScriptSource source);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next definition stage
+ */
+ WithCreate withTags(Map tags);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand definition allowing to specify TimeoutInSeconds.
+ */
+ interface WithTimeoutInSeconds {
+ /**
+ * Specifies timeoutInSeconds.
+ * @param timeoutInSeconds The timeout in seconds to execute the run command
+ * @return the next definition stage
+ */
+ WithCreate withTimeoutInSeconds(Integer timeoutInSeconds);
+ }
+
+ /**
+ * The stage of the definition which contains all the minimum required inputs for
+ * the resource to be created (via {@link WithCreate#create()}), but also allows
+ * for any other optional settings to be specified.
+ */
+ interface WithCreate extends Creatable, DefinitionStages.WithAsyncExecution, DefinitionStages.WithErrorBlobUri, DefinitionStages.WithOutputBlobUri, DefinitionStages.WithParameters, DefinitionStages.WithProtectedParameters, DefinitionStages.WithRunAsPassword, DefinitionStages.WithRunAsUser, DefinitionStages.WithSource, DefinitionStages.WithTags, DefinitionStages.WithTimeoutInSeconds {
+ }
+ }
+ /**
+ * The template for a VirtualMachineScaleSetVirtualMachineRunCommand update operation, containing all the settings that can be modified.
+ */
+ interface Update extends Appliable, UpdateStages.WithAsyncExecution, UpdateStages.WithErrorBlobUri, UpdateStages.WithOutputBlobUri, UpdateStages.WithParameters, UpdateStages.WithProtectedParameters, UpdateStages.WithRunAsPassword, UpdateStages.WithRunAsUser, UpdateStages.WithSource, UpdateStages.WithTags, UpdateStages.WithTimeoutInSeconds {
+ }
+
+ /**
+ * Grouping of VirtualMachineScaleSetVirtualMachineRunCommand update stages.
+ */
+ interface UpdateStages {
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify AsyncExecution.
+ */
+ interface WithAsyncExecution {
+ /**
+ * Specifies asyncExecution.
+ * @param asyncExecution Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete
+ * @return the next update stage
+ */
+ Update withAsyncExecution(Boolean asyncExecution);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify ErrorBlobUri.
+ */
+ interface WithErrorBlobUri {
+ /**
+ * Specifies errorBlobUri.
+ * @param errorBlobUri Specifies the Azure storage blob where script error stream will be uploaded
+ * @return the next update stage
+ */
+ Update withErrorBlobUri(String errorBlobUri);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify OutputBlobUri.
+ */
+ interface WithOutputBlobUri {
+ /**
+ * Specifies outputBlobUri.
+ * @param outputBlobUri Specifies the Azure storage blob where script output stream will be uploaded
+ * @return the next update stage
+ */
+ Update withOutputBlobUri(String outputBlobUri);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify Parameters.
+ */
+ interface WithParameters {
+ /**
+ * Specifies parameters.
+ * @param parameters The parameters used by the script
+ * @return the next update stage
+ */
+ Update withParameters(List parameters);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify ProtectedParameters.
+ */
+ interface WithProtectedParameters {
+ /**
+ * Specifies protectedParameters.
+ * @param protectedParameters The parameters used by the script
+ * @return the next update stage
+ */
+ Update withProtectedParameters(List protectedParameters);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify RunAsPassword.
+ */
+ interface WithRunAsPassword {
+ /**
+ * Specifies runAsPassword.
+ * @param runAsPassword Specifies the user account password on the VM when executing the run command
+ * @return the next update stage
+ */
+ Update withRunAsPassword(String runAsPassword);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify RunAsUser.
+ */
+ interface WithRunAsUser {
+ /**
+ * Specifies runAsUser.
+ * @param runAsUser Specifies the user account on the VM when executing the run command
+ * @return the next update stage
+ */
+ Update withRunAsUser(String runAsUser);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify Source.
+ */
+ interface WithSource {
+ /**
+ * Specifies source.
+ * @param source The source of the run command script
+ * @return the next update stage
+ */
+ Update withSource(VirtualMachineRunCommandScriptSource source);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify Tags.
+ */
+ interface WithTags {
+ /**
+ * Specifies tags.
+ * @param tags Resource tags
+ * @return the next update stage
+ */
+ Update withTags(Map tags);
+ }
+
+ /**
+ * The stage of the virtualmachinescalesetvirtualmachineruncommand update allowing to specify TimeoutInSeconds.
+ */
+ interface WithTimeoutInSeconds {
+ /**
+ * Specifies timeoutInSeconds.
+ * @param timeoutInSeconds The timeout in seconds to execute the run command
+ * @return the next update stage
+ */
+ Update withTimeoutInSeconds(Integer timeoutInSeconds);
+ }
+
+ }
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineUpdate.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineUpdate.java
index 062dc0779d99..21f24b903feb 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineUpdate.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/VirtualMachineUpdate.java
@@ -174,14 +174,16 @@ public class VirtualMachineUpdate extends UpdateResource {
/**
* Specifies that the image or disk that is being used was licensed
- * on-premises. This element is only used for images that contain the
- * Windows Server operating system. <br><br> Possible values
- * are: <br><br> Windows_Client <br><br>
- * Windows_Server <br><br> If this element is included in a
- * request for an update, the value must match the initial value. This
- * value cannot be updated. <br><br> For more information, see
- * [Azure Hybrid Use Benefit for Windows
- * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ * on-premises. <br><br> Possible values for Windows Server
+ * operating system are: <br><br> Windows_Client
+ * <br><br> Windows_Server <br><br> Possible values
+ * for Linux Server operating system are: <br><br> RHEL_BYOS
+ * (for RHEL) <br><br> SLES_BYOS (for SUSE)
+ * <br><br> For more information, see [Azure Hybrid Use Benefit
+ * for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)
+ * <br><br> [Azure Hybrid Use Benefit for Linux
+ * Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
* <br><br> Minimum api-version: 2015-06-15.
*/
@JsonProperty(value = "properties.licenseType")
@@ -555,7 +557,7 @@ public VirtualMachineInstanceViewInner instanceView() {
}
/**
- * Get specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15.
+ * Get specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.
*
* @return the licenseType value
*/
@@ -564,7 +566,7 @@ public String licenseType() {
}
/**
- * Set specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15.
+ * Set specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.
*
* @param licenseType the licenseType value to set
* @return the VirtualMachineUpdate object itself.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManagementClientImpl.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManagementClientImpl.java
index 3bdb5e19d927..a351a5617f7f 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManagementClientImpl.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManagementClientImpl.java
@@ -382,6 +382,19 @@ public VirtualMachineRunCommandsInner virtualMachineRunCommands() {
return this.virtualMachineRunCommands;
}
+ /**
+ * The VirtualMachineScaleSetVMRunCommandsInner object to access its operations.
+ */
+ private VirtualMachineScaleSetVMRunCommandsInner virtualMachineScaleSetVMRunCommands;
+
+ /**
+ * Gets the VirtualMachineScaleSetVMRunCommandsInner object to access its operations.
+ * @return the VirtualMachineScaleSetVMRunCommandsInner object.
+ */
+ public VirtualMachineScaleSetVMRunCommandsInner virtualMachineScaleSetVMRunCommands() {
+ return this.virtualMachineScaleSetVMRunCommands;
+ }
+
/**
* The ResourceSkusInner object to access its operations.
*/
@@ -579,6 +592,7 @@ protected void initialize() {
this.virtualMachineScaleSetVMs = new VirtualMachineScaleSetVMsInner(restClient().retrofit(), this);
this.logAnalytics = new LogAnalyticsInner(restClient().retrofit(), this);
this.virtualMachineRunCommands = new VirtualMachineRunCommandsInner(restClient().retrofit(), this);
+ this.virtualMachineScaleSetVMRunCommands = new VirtualMachineScaleSetVMRunCommandsInner(restClient().retrofit(), this);
this.resourceSkus = new ResourceSkusInner(restClient().retrofit(), this);
this.disks = new DisksInner(restClient().retrofit(), this);
this.snapshots = new SnapshotsInner(restClient().retrofit(), this);
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManager.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManager.java
index 53afc22019f5..73db0dfc8e97 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManager.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ComputeManager.java
@@ -36,6 +36,7 @@
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineScaleSetVMs;
import com.microsoft.azure.management.compute.v2020_06_01.LogAnalytics;
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineScaleSetVMRunCommands;
import com.microsoft.azure.management.compute.v2020_06_01.ResourceSkus;
import com.microsoft.azure.management.compute.v2020_06_01.Disks;
import com.microsoft.azure.management.compute.v2020_06_01.Snapshots;
@@ -74,6 +75,7 @@ public final class ComputeManager extends ManagerCore implements LocationVirtualMachineRunCommand, LocationVirtualMachineRunCommand.Definition, LocationVirtualMachineRunCommand.Update {
+ private final ComputeManager manager;
+ private String resourceGroupName;
+ private String vmName;
+ private String runCommandName;
+ private VirtualMachineRunCommandUpdate updateParameter;
+
+ LocationVirtualMachineRunCommandImpl(String name, ComputeManager manager) {
+ super(name, new VirtualMachineRunCommandInner());
+ this.manager = manager;
+ // Set resource name
+ this.runCommandName = name;
+ //
+ this.updateParameter = new VirtualMachineRunCommandUpdate();
+ }
+
+ LocationVirtualMachineRunCommandImpl(VirtualMachineRunCommandInner inner, ComputeManager manager) {
+ super(inner.name(), inner);
+ this.manager = manager;
+ // Set resource name
+ this.runCommandName = inner.name();
+ // set resource ancestor and positional variables
+ this.resourceGroupName = IdParsingUtils.getValueFromIdByName(inner.id(), "resourceGroups");
+ this.vmName = IdParsingUtils.getValueFromIdByName(inner.id(), "virtualMachines");
+ this.runCommandName = IdParsingUtils.getValueFromIdByName(inner.id(), "runCommands");
+ //
+ this.updateParameter = new VirtualMachineRunCommandUpdate();
+ }
+
+ @Override
+ public ComputeManager manager() {
+ return this.manager;
+ }
+
+ @Override
+ public Observable createResourceAsync() {
+ VirtualMachineRunCommandsInner client = this.manager().inner().virtualMachineRunCommands();
+ return client.createOrUpdateAsync(this.resourceGroupName, this.vmName, this.runCommandName, this.inner())
+ .map(new Func1() {
+ @Override
+ public VirtualMachineRunCommandInner call(VirtualMachineRunCommandInner resource) {
+ resetCreateUpdateParameters();
+ return resource;
+ }
+ })
+ .map(innerToFluentMap(this));
+ }
+
+ @Override
+ public Observable updateResourceAsync() {
+ VirtualMachineRunCommandsInner client = this.manager().inner().virtualMachineRunCommands();
+ return client.updateAsync(this.resourceGroupName, this.vmName, this.runCommandName, this.updateParameter)
+ .map(new Func1() {
+ @Override
+ public VirtualMachineRunCommandInner call(VirtualMachineRunCommandInner resource) {
+ resetCreateUpdateParameters();
+ return resource;
+ }
+ })
+ .map(innerToFluentMap(this));
+ }
+
+ @Override
+ protected Observable getInnerAsync() {
+ VirtualMachineRunCommandsInner client = this.manager().inner().virtualMachineRunCommands();
+ return client.getAsync(this.resourceGroupName, this.vmName, this.runCommandName);
+ }
+
+ @Override
+ public boolean isInCreateMode() {
+ return this.inner().id() == null;
+ }
+
+ private void resetCreateUpdateParameters() {
+ this.updateParameter = new VirtualMachineRunCommandUpdate();
+ }
+
+ @Override
+ public Boolean asyncExecution() {
+ return this.inner().asyncExecution();
+ }
+
+ @Override
+ public String errorBlobUri() {
+ return this.inner().errorBlobUri();
+ }
+
+ @Override
+ public String id() {
+ return this.inner().id();
+ }
+
+ @Override
+ public VirtualMachineRunCommandInstanceView instanceView() {
+ return this.inner().instanceView();
+ }
+
+ @Override
+ public String location() {
+ return this.inner().location();
+ }
+
+ @Override
+ public String name() {
+ return this.inner().name();
+ }
+
+ @Override
+ public String outputBlobUri() {
+ return this.inner().outputBlobUri();
+ }
+
+ @Override
+ public List parameters() {
+ return this.inner().parameters();
+ }
+
+ @Override
+ public List protectedParameters() {
+ return this.inner().protectedParameters();
+ }
+
+ @Override
+ public String provisioningState() {
+ return this.inner().provisioningState();
+ }
+
+ @Override
+ public String runAsPassword() {
+ return this.inner().runAsPassword();
+ }
+
+ @Override
+ public String runAsUser() {
+ return this.inner().runAsUser();
+ }
+
+ @Override
+ public VirtualMachineRunCommandScriptSource source() {
+ return this.inner().source();
+ }
+
+ @Override
+ public Map tags() {
+ return this.inner().getTags();
+ }
+
+ @Override
+ public Integer timeoutInSeconds() {
+ return this.inner().timeoutInSeconds();
+ }
+
+ @Override
+ public String type() {
+ return this.inner().type();
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withExistingLocation(String resourceGroupName, String vmName) {
+ this.resourceGroupName = resourceGroupName;
+ this.vmName = vmName;
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withLocation(String location) {
+ this.inner().withLocation(location);
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withAsyncExecution(Boolean asyncExecution) {
+ if (isInCreateMode()) {
+ this.inner().withAsyncExecution(asyncExecution);
+ } else {
+ this.updateParameter.withAsyncExecution(asyncExecution);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withErrorBlobUri(String errorBlobUri) {
+ if (isInCreateMode()) {
+ this.inner().withErrorBlobUri(errorBlobUri);
+ } else {
+ this.updateParameter.withErrorBlobUri(errorBlobUri);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withOutputBlobUri(String outputBlobUri) {
+ if (isInCreateMode()) {
+ this.inner().withOutputBlobUri(outputBlobUri);
+ } else {
+ this.updateParameter.withOutputBlobUri(outputBlobUri);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withParameters(List parameters) {
+ if (isInCreateMode()) {
+ this.inner().withParameters(parameters);
+ } else {
+ this.updateParameter.withParameters(parameters);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withProtectedParameters(List protectedParameters) {
+ if (isInCreateMode()) {
+ this.inner().withProtectedParameters(protectedParameters);
+ } else {
+ this.updateParameter.withProtectedParameters(protectedParameters);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withRunAsPassword(String runAsPassword) {
+ if (isInCreateMode()) {
+ this.inner().withRunAsPassword(runAsPassword);
+ } else {
+ this.updateParameter.withRunAsPassword(runAsPassword);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withRunAsUser(String runAsUser) {
+ if (isInCreateMode()) {
+ this.inner().withRunAsUser(runAsUser);
+ } else {
+ this.updateParameter.withRunAsUser(runAsUser);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withSource(VirtualMachineRunCommandScriptSource source) {
+ if (isInCreateMode()) {
+ this.inner().withSource(source);
+ } else {
+ this.updateParameter.withSource(source);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withTags(Map tags) {
+ if (isInCreateMode()) {
+ this.inner().withTags(tags);
+ } else {
+ this.updateParameter.withTags(tags);
+ }
+ return this;
+ }
+
+ @Override
+ public LocationVirtualMachineRunCommandImpl withTimeoutInSeconds(Integer timeoutInSeconds) {
+ if (isInCreateMode()) {
+ this.inner().withTimeoutInSeconds(timeoutInSeconds);
+ } else {
+ this.updateParameter.withTimeoutInSeconds(timeoutInSeconds);
+ }
+ return this;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ProximityPlacementGroupImpl.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ProximityPlacementGroupImpl.java
index 3021eb6b9d82..8b585d3c5e78 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ProximityPlacementGroupImpl.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/ProximityPlacementGroupImpl.java
@@ -18,6 +18,7 @@
import com.microsoft.azure.management.compute.v2020_06_01.InstanceViewStatus;
class ProximityPlacementGroupImpl extends GroupableResourceCoreImpl implements ProximityPlacementGroup, ProximityPlacementGroup.Definition, ProximityPlacementGroup.Update {
+ private Map utags;
ProximityPlacementGroupImpl(String name, ProximityPlacementGroupInner inner, ComputeManager manager) {
super(name, inner, manager);
}
@@ -32,7 +33,7 @@ public Observable createResourceAsync() {
@Override
public Observable updateResourceAsync() {
ProximityPlacementGroupsInner client = this.manager().inner().proximityPlacementGroups();
- return client.updateAsync(this.resourceGroupName(), this.name(), this.tags())
+ return client.updateAsync(this.resourceGroupName(), this.name(), this.utags)
.map(innerToFluentMap(this));
}
@@ -84,4 +85,11 @@ public ProximityPlacementGroupImpl withProximityPlacementGroupType(ProximityPlac
this.inner().withProximityPlacementGroupType(proximityPlacementGroupType);
return this;
}
+
+ @Override
+ public ProximityPlacementGroupImpl withTags(Map tags) {
+ this.utags = tags;
+ return this;
+ }
+
}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionImpl.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionImpl.java
new file mode 100644
index 000000000000..2a0ab524fe27
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionImpl.java
@@ -0,0 +1,282 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01.implementation;
+
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtension;
+import com.microsoft.azure.arm.model.implementation.CreatableUpdatableImpl;
+import rx.Observable;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtensionUpdate;
+import java.util.Map;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtensionInstanceView;
+import rx.functions.Func1;
+
+class VirtualMachineExtensionImpl extends CreatableUpdatableImpl implements VirtualMachineExtension, VirtualMachineExtension.Definition, VirtualMachineExtension.Update {
+ private final ComputeManager manager;
+ private String resourceGroupName;
+ private String vmName;
+ private String vmExtensionName;
+ private VirtualMachineExtensionUpdate updateParameter;
+
+ VirtualMachineExtensionImpl(String name, ComputeManager manager) {
+ super(name, new VirtualMachineExtensionInner());
+ this.manager = manager;
+ // Set resource name
+ this.vmExtensionName = name;
+ //
+ this.updateParameter = new VirtualMachineExtensionUpdate();
+ }
+
+ VirtualMachineExtensionImpl(VirtualMachineExtensionInner inner, ComputeManager manager) {
+ super(inner.name(), inner);
+ this.manager = manager;
+ // Set resource name
+ this.vmExtensionName = inner.name();
+ // set resource ancestor and positional variables
+ this.resourceGroupName = IdParsingUtils.getValueFromIdByName(inner.id(), "resourceGroups");
+ this.vmName = IdParsingUtils.getValueFromIdByName(inner.id(), "virtualMachines");
+ this.vmExtensionName = IdParsingUtils.getValueFromIdByName(inner.id(), "extensions");
+ //
+ this.updateParameter = new VirtualMachineExtensionUpdate();
+ }
+
+ @Override
+ public ComputeManager manager() {
+ return this.manager;
+ }
+
+ @Override
+ public Observable createResourceAsync() {
+ VirtualMachineExtensionsInner client = this.manager().inner().virtualMachineExtensions();
+ return client.createOrUpdateAsync(this.resourceGroupName, this.vmName, this.vmExtensionName, this.inner())
+ .map(new Func1() {
+ @Override
+ public VirtualMachineExtensionInner call(VirtualMachineExtensionInner resource) {
+ resetCreateUpdateParameters();
+ return resource;
+ }
+ })
+ .map(innerToFluentMap(this));
+ }
+
+ @Override
+ public Observable updateResourceAsync() {
+ VirtualMachineExtensionsInner client = this.manager().inner().virtualMachineExtensions();
+ return client.updateAsync(this.resourceGroupName, this.vmName, this.vmExtensionName, this.updateParameter)
+ .map(new Func1() {
+ @Override
+ public VirtualMachineExtensionInner call(VirtualMachineExtensionInner resource) {
+ resetCreateUpdateParameters();
+ return resource;
+ }
+ })
+ .map(innerToFluentMap(this));
+ }
+
+ @Override
+ protected Observable getInnerAsync() {
+ VirtualMachineExtensionsInner client = this.manager().inner().virtualMachineExtensions();
+ return client.getAsync(this.resourceGroupName, this.vmName, this.vmExtensionName);
+ }
+
+ @Override
+ public boolean isInCreateMode() {
+ return this.inner().id() == null;
+ }
+
+ private void resetCreateUpdateParameters() {
+ this.updateParameter = new VirtualMachineExtensionUpdate();
+ }
+
+ @Override
+ public Boolean autoUpgradeMinorVersion() {
+ return this.inner().autoUpgradeMinorVersion();
+ }
+
+ @Override
+ public Boolean enableAutomaticUpgrade() {
+ return this.inner().enableAutomaticUpgrade();
+ }
+
+ @Override
+ public String forceUpdateTag() {
+ return this.inner().forceUpdateTag();
+ }
+
+ @Override
+ public String id() {
+ return this.inner().id();
+ }
+
+ @Override
+ public VirtualMachineExtensionInstanceView instanceView() {
+ return this.inner().instanceView();
+ }
+
+ @Override
+ public String location() {
+ return this.inner().location();
+ }
+
+ @Override
+ public String name() {
+ return this.inner().name();
+ }
+
+ @Override
+ public Object protectedSettings() {
+ return this.inner().protectedSettings();
+ }
+
+ @Override
+ public String provisioningState() {
+ return this.inner().provisioningState();
+ }
+
+ @Override
+ public String publisher() {
+ return this.inner().publisher();
+ }
+
+ @Override
+ public Object settings() {
+ return this.inner().settings();
+ }
+
+ @Override
+ public Map tags() {
+ return this.inner().getTags();
+ }
+
+ @Override
+ public String type() {
+ return this.inner().type();
+ }
+
+ @Override
+ public String typeHandlerVersion() {
+ return this.inner().typeHandlerVersion();
+ }
+
+ @Override
+ public String virtualMachineExtensionType() {
+ return this.inner().virtualMachineExtensionType();
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withExistingVirtualMachine(String resourceGroupName, String vmName) {
+ this.resourceGroupName = resourceGroupName;
+ this.vmName = vmName;
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withLocation(String location) {
+ this.inner().withLocation(location);
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withInstanceView(VirtualMachineExtensionInstanceView instanceView) {
+ this.inner().withInstanceView(instanceView);
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withVirtualMachineExtensionType(String virtualMachineExtensionType) {
+ this.inner().withVirtualMachineExtensionType(virtualMachineExtensionType);
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withType(String type) {
+ this.updateParameter.withType(type);
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withAutoUpgradeMinorVersion(Boolean autoUpgradeMinorVersion) {
+ if (isInCreateMode()) {
+ this.inner().withAutoUpgradeMinorVersion(autoUpgradeMinorVersion);
+ } else {
+ this.updateParameter.withAutoUpgradeMinorVersion(autoUpgradeMinorVersion);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withEnableAutomaticUpgrade(Boolean enableAutomaticUpgrade) {
+ if (isInCreateMode()) {
+ this.inner().withEnableAutomaticUpgrade(enableAutomaticUpgrade);
+ } else {
+ this.updateParameter.withEnableAutomaticUpgrade(enableAutomaticUpgrade);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withForceUpdateTag(String forceUpdateTag) {
+ if (isInCreateMode()) {
+ this.inner().withForceUpdateTag(forceUpdateTag);
+ } else {
+ this.updateParameter.withForceUpdateTag(forceUpdateTag);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withProtectedSettings(Object protectedSettings) {
+ if (isInCreateMode()) {
+ this.inner().withProtectedSettings(protectedSettings);
+ } else {
+ this.updateParameter.withProtectedSettings(protectedSettings);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withPublisher(String publisher) {
+ if (isInCreateMode()) {
+ this.inner().withPublisher(publisher);
+ } else {
+ this.updateParameter.withPublisher(publisher);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withSettings(Object settings) {
+ if (isInCreateMode()) {
+ this.inner().withSettings(settings);
+ } else {
+ this.updateParameter.withSettings(settings);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withTags(Map tags) {
+ if (isInCreateMode()) {
+ this.inner().withTags(tags);
+ } else {
+ this.updateParameter.withTags(tags);
+ }
+ return this;
+ }
+
+ @Override
+ public VirtualMachineExtensionImpl withTypeHandlerVersion(String typeHandlerVersion) {
+ if (isInCreateMode()) {
+ this.inner().withTypeHandlerVersion(typeHandlerVersion);
+ } else {
+ this.updateParameter.withTypeHandlerVersion(typeHandlerVersion);
+ }
+ return this;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionsImpl.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionsImpl.java
index 99235d6e213e..49d1b3b3e01f 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionsImpl.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineExtensionsImpl.java
@@ -13,7 +13,7 @@
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtensions;
import rx.Observable;
import rx.functions.Func1;
-import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineVirtualMachineExtension;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtension;
import rx.Completable;
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtensionsListResult;
@@ -30,16 +30,16 @@ public ComputeManager manager() {
}
@Override
- public VirtualMachineVirtualMachineExtensionImpl defineExtension(String name) {
+ public VirtualMachineExtensionImpl defineExtension(String name) {
return wrapExtensionModel(name);
}
- private VirtualMachineVirtualMachineExtensionImpl wrapExtensionModel(String name) {
- return new VirtualMachineVirtualMachineExtensionImpl(name, this.manager());
+ private VirtualMachineExtensionImpl wrapExtensionModel(String name) {
+ return new VirtualMachineExtensionImpl(name, this.manager());
}
- private VirtualMachineVirtualMachineExtensionImpl wrapVirtualMachineVirtualMachineExtensionModel(VirtualMachineExtensionInner inner) {
- return new VirtualMachineVirtualMachineExtensionImpl(inner, manager());
+ private VirtualMachineExtensionImpl wrapVirtualMachineExtensionModel(VirtualMachineExtensionInner inner) {
+ return new VirtualMachineExtensionImpl(inner, manager());
}
private Observable getVirtualMachineExtensionInnerUsingVirtualMachineExtensionsInnerAsync(String id) {
@@ -51,16 +51,16 @@ private Observable getVirtualMachineExtensionInner
}
@Override
- public Observable getAsync(String resourceGroupName, String vmName, String vmExtensionName) {
+ public Observable getAsync(String resourceGroupName, String vmName, String vmExtensionName) {
VirtualMachineExtensionsInner client = this.inner();
return client.getAsync(resourceGroupName, vmName, vmExtensionName)
- .flatMap(new Func1>() {
+ .flatMap(new Func1>() {
@Override
- public Observable call(VirtualMachineExtensionInner inner) {
+ public Observable call(VirtualMachineExtensionInner inner) {
if (inner == null) {
return Observable.empty();
} else {
- return Observable.just((VirtualMachineVirtualMachineExtension)wrapVirtualMachineVirtualMachineExtensionModel(inner));
+ return Observable.just((VirtualMachineExtension)wrapVirtualMachineExtensionModel(inner));
}
}
});
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineImpl.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineImpl.java
index a92410fbfa5c..a3c82c79deb6 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineImpl.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineImpl.java
@@ -29,7 +29,7 @@
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineIdentity;
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineInstanceView;
import java.util.ArrayList;
-import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineVirtualMachineExtension;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineExtension;
import rx.functions.Func1;
class VirtualMachineImpl extends CreatableUpdatableImpl implements VirtualMachine, VirtualMachine.Definition, VirtualMachine.Update {
@@ -218,11 +218,11 @@ public SubResource proximityPlacementGroup() {
}
@Override
- public List resources() {
- List lst = new ArrayList();
+ public List resources() {
+ List lst = new ArrayList();
if (this.inner().resources() != null) {
for (VirtualMachineExtensionInner inner : this.inner().resources()) {
- lst.add( new VirtualMachineVirtualMachineExtensionImpl(inner, manager()));
+ lst.add( new VirtualMachineExtensionImpl(inner, manager()));
}
}
return lst;
@@ -264,7 +264,7 @@ public List zones() {
}
@Override
- public VirtualMachineImpl withExistingResourceGroup(String resourceGroupName) {
+ public VirtualMachineImpl withExistingLocation(String resourceGroupName) {
this.resourceGroupName = resourceGroupName;
return this;
}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineInner.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineInner.java
index f1c8ffa1a1a4..5b46a7aecadc 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineInner.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineInner.java
@@ -186,14 +186,16 @@ public class VirtualMachineInner extends Resource {
/**
* Specifies that the image or disk that is being used was licensed
- * on-premises. This element is only used for images that contain the
- * Windows Server operating system. <br><br> Possible values
- * are: <br><br> Windows_Client <br><br>
- * Windows_Server <br><br> If this element is included in a
- * request for an update, the value must match the initial value. This
- * value cannot be updated. <br><br> For more information, see
- * [Azure Hybrid Use Benefit for Windows
- * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ * on-premises. <br><br> Possible values for Windows Server
+ * operating system are: <br><br> Windows_Client
+ * <br><br> Windows_Server <br><br> Possible values
+ * for Linux Server operating system are: <br><br> RHEL_BYOS
+ * (for RHEL) <br><br> SLES_BYOS (for SUSE)
+ * <br><br> For more information, see [Azure Hybrid Use Benefit
+ * for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)
+ * <br><br> [Azure Hybrid Use Benefit for Linux
+ * Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
* <br><br> Minimum api-version: 2015-06-15.
*/
@JsonProperty(value = "properties.licenseType")
@@ -573,7 +575,7 @@ public VirtualMachineInstanceViewInner instanceView() {
}
/**
- * Get specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15.
+ * Get specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.
*
* @return the licenseType value
*/
@@ -582,7 +584,7 @@ public String licenseType() {
}
/**
- * Set specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system. <br><br> Possible values are: <br><br> Windows_Client <br><br> Windows_Server <br><br> If this element is included in a request for an update, the value must match the initial value. This value cannot be updated. <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) <br><br> Minimum api-version: 2015-06-15.
+ * Set specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.
*
* @param licenseType the licenseType value to set
* @return the VirtualMachineInner object itself.
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandInner.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandInner.java
new file mode 100644
index 000000000000..8691eaa52ba8
--- /dev/null
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandInner.java
@@ -0,0 +1,292 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.compute.v2020_06_01.implementation;
+
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommandScriptSource;
+import java.util.List;
+import com.microsoft.azure.management.compute.v2020_06_01.RunCommandInputParameter;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommandInstanceView;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.microsoft.rest.serializer.JsonFlatten;
+import com.microsoft.azure.Resource;
+
+/**
+ * Describes a Virtual Machine run command.
+ */
+@JsonFlatten
+public class VirtualMachineRunCommandInner extends Resource {
+ /**
+ * The source of the run command script.
+ */
+ @JsonProperty(value = "properties.source")
+ private VirtualMachineRunCommandScriptSource source;
+
+ /**
+ * The parameters used by the script.
+ */
+ @JsonProperty(value = "properties.parameters")
+ private List parameters;
+
+ /**
+ * The parameters used by the script.
+ */
+ @JsonProperty(value = "properties.protectedParameters")
+ private List protectedParameters;
+
+ /**
+ * Optional. If set to true, provisioning will complete as soon as the
+ * script starts and will not wait for script to complete.
+ */
+ @JsonProperty(value = "properties.asyncExecution")
+ private Boolean asyncExecution;
+
+ /**
+ * Specifies the user account on the VM when executing the run command.
+ */
+ @JsonProperty(value = "properties.runAsUser")
+ private String runAsUser;
+
+ /**
+ * Specifies the user account password on the VM when executing the run
+ * command.
+ */
+ @JsonProperty(value = "properties.runAsPassword")
+ private String runAsPassword;
+
+ /**
+ * The timeout in seconds to execute the run command.
+ */
+ @JsonProperty(value = "properties.timeoutInSeconds")
+ private Integer timeoutInSeconds;
+
+ /**
+ * Specifies the Azure storage blob where script output stream will be
+ * uploaded.
+ */
+ @JsonProperty(value = "properties.outputBlobUri")
+ private String outputBlobUri;
+
+ /**
+ * Specifies the Azure storage blob where script error stream will be
+ * uploaded.
+ */
+ @JsonProperty(value = "properties.errorBlobUri")
+ private String errorBlobUri;
+
+ /**
+ * The provisioning state, which only appears in the response.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private String provisioningState;
+
+ /**
+ * The virtual machine run command instance view.
+ */
+ @JsonProperty(value = "properties.instanceView", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineRunCommandInstanceView instanceView;
+
+ /**
+ * Get the source of the run command script.
+ *
+ * @return the source value
+ */
+ public VirtualMachineRunCommandScriptSource source() {
+ return this.source;
+ }
+
+ /**
+ * Set the source of the run command script.
+ *
+ * @param source the source value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withSource(VirtualMachineRunCommandScriptSource source) {
+ this.source = source;
+ return this;
+ }
+
+ /**
+ * Get the parameters used by the script.
+ *
+ * @return the parameters value
+ */
+ public List parameters() {
+ return this.parameters;
+ }
+
+ /**
+ * Set the parameters used by the script.
+ *
+ * @param parameters the parameters value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withParameters(List parameters) {
+ this.parameters = parameters;
+ return this;
+ }
+
+ /**
+ * Get the parameters used by the script.
+ *
+ * @return the protectedParameters value
+ */
+ public List protectedParameters() {
+ return this.protectedParameters;
+ }
+
+ /**
+ * Set the parameters used by the script.
+ *
+ * @param protectedParameters the protectedParameters value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withProtectedParameters(List protectedParameters) {
+ this.protectedParameters = protectedParameters;
+ return this;
+ }
+
+ /**
+ * Get optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.
+ *
+ * @return the asyncExecution value
+ */
+ public Boolean asyncExecution() {
+ return this.asyncExecution;
+ }
+
+ /**
+ * Set optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.
+ *
+ * @param asyncExecution the asyncExecution value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withAsyncExecution(Boolean asyncExecution) {
+ this.asyncExecution = asyncExecution;
+ return this;
+ }
+
+ /**
+ * Get specifies the user account on the VM when executing the run command.
+ *
+ * @return the runAsUser value
+ */
+ public String runAsUser() {
+ return this.runAsUser;
+ }
+
+ /**
+ * Set specifies the user account on the VM when executing the run command.
+ *
+ * @param runAsUser the runAsUser value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withRunAsUser(String runAsUser) {
+ this.runAsUser = runAsUser;
+ return this;
+ }
+
+ /**
+ * Get specifies the user account password on the VM when executing the run command.
+ *
+ * @return the runAsPassword value
+ */
+ public String runAsPassword() {
+ return this.runAsPassword;
+ }
+
+ /**
+ * Set specifies the user account password on the VM when executing the run command.
+ *
+ * @param runAsPassword the runAsPassword value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withRunAsPassword(String runAsPassword) {
+ this.runAsPassword = runAsPassword;
+ return this;
+ }
+
+ /**
+ * Get the timeout in seconds to execute the run command.
+ *
+ * @return the timeoutInSeconds value
+ */
+ public Integer timeoutInSeconds() {
+ return this.timeoutInSeconds;
+ }
+
+ /**
+ * Set the timeout in seconds to execute the run command.
+ *
+ * @param timeoutInSeconds the timeoutInSeconds value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withTimeoutInSeconds(Integer timeoutInSeconds) {
+ this.timeoutInSeconds = timeoutInSeconds;
+ return this;
+ }
+
+ /**
+ * Get specifies the Azure storage blob where script output stream will be uploaded.
+ *
+ * @return the outputBlobUri value
+ */
+ public String outputBlobUri() {
+ return this.outputBlobUri;
+ }
+
+ /**
+ * Set specifies the Azure storage blob where script output stream will be uploaded.
+ *
+ * @param outputBlobUri the outputBlobUri value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withOutputBlobUri(String outputBlobUri) {
+ this.outputBlobUri = outputBlobUri;
+ return this;
+ }
+
+ /**
+ * Get specifies the Azure storage blob where script error stream will be uploaded.
+ *
+ * @return the errorBlobUri value
+ */
+ public String errorBlobUri() {
+ return this.errorBlobUri;
+ }
+
+ /**
+ * Set specifies the Azure storage blob where script error stream will be uploaded.
+ *
+ * @param errorBlobUri the errorBlobUri value to set
+ * @return the VirtualMachineRunCommandInner object itself.
+ */
+ public VirtualMachineRunCommandInner withErrorBlobUri(String errorBlobUri) {
+ this.errorBlobUri = errorBlobUri;
+ return this;
+ }
+
+ /**
+ * Get the provisioning state, which only appears in the response.
+ *
+ * @return the provisioningState value
+ */
+ public String provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the virtual machine run command instance view.
+ *
+ * @return the instanceView value
+ */
+ public VirtualMachineRunCommandInstanceView instanceView() {
+ return this.instanceView;
+ }
+
+}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsImpl.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsImpl.java
index 017143a786e9..339d139bd2e1 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsImpl.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsImpl.java
@@ -13,8 +13,9 @@
import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands;
import rx.Observable;
import rx.functions.Func1;
-import com.microsoft.azure.management.compute.v2020_06_01.RunCommandDocument;
+import com.microsoft.azure.management.compute.v2020_06_01.LocationVirtualMachineRunCommand;
import com.microsoft.azure.Page;
+import rx.Completable;
class VirtualMachineRunCommandsImpl extends WrapperImpl implements VirtualMachineRunCommands {
private final ComputeManager manager;
@@ -28,11 +29,20 @@ public ComputeManager manager() {
return this.manager;
}
- private RunCommandDocumentImpl wrapRunCommandDocumentModel(RunCommandDocumentInner inner) {
- return new RunCommandDocumentImpl(inner, manager());
+ @Override
+ public LocationVirtualMachineRunCommandImpl defineRunCommand(String name) {
+ return wrapRunCommandModel(name);
+ }
+
+ private LocationVirtualMachineRunCommandImpl wrapRunCommandModel(String name) {
+ return new LocationVirtualMachineRunCommandImpl(name, this.manager());
}
- private Observable getRunCommandDocumentInnerUsingVirtualMachineRunCommandsInnerAsync(String id) {
+ private LocationVirtualMachineRunCommandImpl wrapLocationVirtualMachineRunCommandModel(VirtualMachineRunCommandInner inner) {
+ return new LocationVirtualMachineRunCommandImpl(inner, manager());
+ }
+
+ private Observable getVirtualMachineRunCommandInnerUsingVirtualMachineRunCommandsInnerAsync(String id) {
String location = IdParsingUtils.getValueFromIdByName(id, "locations");
String commandId = IdParsingUtils.getValueFromIdByName(id, "runCommands");
VirtualMachineRunCommandsInner client = this.inner();
@@ -40,23 +50,23 @@ private Observable getRunCommandDocumentInnerUsingVirtu
}
@Override
- public Observable getAsync(String location, String commandId) {
+ public Observable getAsync(String location, String commandId) {
VirtualMachineRunCommandsInner client = this.inner();
return client.getAsync(location, commandId)
- .flatMap(new Func1>() {
+ .flatMap(new Func1>() {
@Override
- public Observable call(RunCommandDocumentInner inner) {
+ public Observable call(VirtualMachineRunCommandInner inner) {
if (inner == null) {
return Observable.empty();
} else {
- return Observable.just((RunCommandDocument)wrapRunCommandDocumentModel(inner));
+ return Observable.just((LocationVirtualMachineRunCommand)wrapLocationVirtualMachineRunCommandModel(inner));
}
}
});
}
@Override
- public Observable listAsync(final String location) {
+ public Observable listAsync(final String location) {
VirtualMachineRunCommandsInner client = this.inner();
return client.listAsync(location)
.flatMapIterable(new Func1, Iterable>() {
@@ -65,16 +75,46 @@ public Iterable call(Page>() {
+ .map(new Func1() {
+ @Override
+ public LocationVirtualMachineRunCommand call(VirtualMachineRunCommandInner inner) {
+ return wrapLocationVirtualMachineRunCommandModel(inner);
+ }
+ });
+ }
+
+ @Override
+ public Completable deleteAsync(String resourceGroupName, String vmName, String runCommandName) {
+ VirtualMachineRunCommandsInner client = this.inner();
+ return client.deleteAsync(resourceGroupName, vmName, runCommandName).toCompletable();
+ }
+
+ @Override
+ public Observable getByVirtualMachineAsync(String resourceGroupName, String vmName, String runCommandName) {
+ VirtualMachineRunCommandsInner client = this.inner();
+ return client.getByVirtualMachineAsync(resourceGroupName, vmName, runCommandName)
+ .map(new Func1() {
+ @Override
+ public LocationVirtualMachineRunCommand call(VirtualMachineRunCommandInner inner) {
+ return new LocationVirtualMachineRunCommandImpl(inner, manager());
+ }
+ });
+ }
+
+ @Override
+ public Observable listByVirtualMachineAsync(final String resourceGroupName, final String vmName) {
+ VirtualMachineRunCommandsInner client = this.inner();
+ return client.listByVirtualMachineAsync(resourceGroupName, vmName)
+ .flatMapIterable(new Func1, Iterable>() {
@Override
- public Observable call(RunCommandDocumentBaseInner inner) {
- return getRunCommandDocumentInnerUsingVirtualMachineRunCommandsInnerAsync(inner.id());
+ public Iterable call(Page page) {
+ return page.items();
}
})
- .map(new Func1() {
+ .map(new Func1() {
@Override
- public RunCommandDocument call(RunCommandDocumentInner inner) {
- return wrapRunCommandDocumentModel(inner);
+ public LocationVirtualMachineRunCommand call(VirtualMachineRunCommandInner inner) {
+ return new LocationVirtualMachineRunCommandImpl(inner, manager());
}
});
}
diff --git a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsInner.java b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsInner.java
index 5a131d430f02..026628753cbf 100644
--- a/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsInner.java
+++ b/sdk/compute/mgmt-v2020_06_01/src/main/java/com/microsoft/azure/management/compute/v2020_06_01/implementation/VirtualMachineRunCommandsInner.java
@@ -13,18 +13,24 @@
import com.microsoft.azure.AzureServiceFuture;
import com.microsoft.azure.CloudException;
import com.microsoft.azure.ListOperationCallback;
+import com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommandUpdate;
import com.microsoft.azure.Page;
import com.microsoft.azure.PagedList;
import com.microsoft.rest.ServiceCallback;
import com.microsoft.rest.ServiceFuture;
import com.microsoft.rest.ServiceResponse;
+import com.microsoft.rest.Validator;
import java.io.IOException;
import java.util.List;
import okhttp3.ResponseBody;
+import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.Header;
import retrofit2.http.Headers;
+import retrofit2.http.HTTP;
+import retrofit2.http.PATCH;
import retrofit2.http.Path;
+import retrofit2.http.PUT;
import retrofit2.http.Query;
import retrofit2.http.Url;
import retrofit2.Response;
@@ -65,10 +71,46 @@ interface VirtualMachineRunCommandsService {
@GET("subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}")
Observable> get(@Path("location") String location, @Path("commandId") String commandId, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands createOrUpdate" })
+ @PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}")
+ Observable> createOrUpdate(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Body VirtualMachineRunCommandInner runCommand, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands beginCreateOrUpdate" })
+ @PUT("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}")
+ Observable> beginCreateOrUpdate(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Body VirtualMachineRunCommandInner runCommand, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands update" })
+ @PATCH("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}")
+ Observable> update(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Body VirtualMachineRunCommandUpdate runCommand, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands beginUpdate" })
+ @PATCH("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}")
+ Observable> beginUpdate(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Body VirtualMachineRunCommandUpdate runCommand, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands delete" })
+ @HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", method = "DELETE", hasBody = true)
+ Observable> delete(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands beginDelete" })
+ @HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", method = "DELETE", hasBody = true)
+ Observable> beginDelete(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands getByVirtualMachine" })
+ @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}")
+ Observable> getByVirtualMachine(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("runCommandName") String runCommandName, @Path("subscriptionId") String subscriptionId, @Query("$expand") String expand, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands listByVirtualMachine" })
+ @GET("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands")
+ Observable> listByVirtualMachine(@Path("resourceGroupName") String resourceGroupName, @Path("vmName") String vmName, @Path("subscriptionId") String subscriptionId, @Query("$expand") String expand, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands listNext" })
@GET
Observable> listNext(@Url String nextUrl, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.compute.v2020_06_01.VirtualMachineRunCommands listByVirtualMachineNext" })
+ @GET
+ Observable> listByVirtualMachineNext(@Url String nextUrl, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent);
+
}
/**
@@ -269,102 +311,354 @@ private ServiceResponse getDelegate(Response listNext(final String nextPageLink) {
- ServiceResponse> response = listNextSinglePageAsync(nextPageLink).toBlocking().single();
- return new PagedList(response.body()) {
+ public VirtualMachineRunCommandInner createOrUpdate(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand) {
+ return createOrUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).toBlocking().last().body();
+ }
+
+ /**
+ * The operation to create or update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture createOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(createOrUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand), serviceCallback);
+ }
+
+ /**
+ * The operation to create or update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable createOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand) {
+ return createOrUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).map(new Func1, VirtualMachineRunCommandInner>() {
@Override
- public Page nextPage(String nextPageLink) {
- return listNextSinglePageAsync(nextPageLink).toBlocking().single().body();
+ public VirtualMachineRunCommandInner call(ServiceResponse response) {
+ return response.body();
}
- };
+ });
}
/**
- * Lists all available run commands for a subscription in a location.
+ * The operation to create or update the run command.
*
- * @param nextPageLink The NextLink from the previous successful call to List operation.
- * @param serviceFuture the ServiceFuture object tracking the Retrofit calls
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable> createOrUpdateWithServiceResponseAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
+ }
+ if (vmName == null) {
+ throw new IllegalArgumentException("Parameter vmName is required and cannot be null.");
+ }
+ if (runCommandName == null) {
+ throw new IllegalArgumentException("Parameter runCommandName is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (runCommand == null) {
+ throw new IllegalArgumentException("Parameter runCommand is required and cannot be null.");
+ }
+ Validator.validate(runCommand);
+ final String apiVersion = "2020-06-01";
+ Observable> observable = service.createOrUpdate(resourceGroupName, vmName, runCommandName, this.client.subscriptionId(), runCommand, apiVersion, this.client.acceptLanguage(), this.client.userAgent());
+ return client.getAzureClient().getPutOrPatchResultAsync(observable, new TypeToken() { }.getType());
+ }
+
+ /**
+ * The operation to create or update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the VirtualMachineRunCommandInner object if successful.
+ */
+ public VirtualMachineRunCommandInner beginCreateOrUpdate(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand) {
+ return beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).toBlocking().single().body();
+ }
+
+ /**
+ * The operation to create or update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
- public ServiceFuture> listNextAsync(final String nextPageLink, final ServiceFuture> serviceFuture, final ListOperationCallback serviceCallback) {
- return AzureServiceFuture.fromPageResponse(
- listNextSinglePageAsync(nextPageLink),
- new Func1>>>() {
- @Override
- public Observable>> call(String nextPageLink) {
- return listNextSinglePageAsync(nextPageLink);
- }
- },
- serviceCallback);
+ public ServiceFuture beginCreateOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand), serviceCallback);
}
/**
- * Lists all available run commands for a subscription in a location.
+ * The operation to create or update the run command.
*
- * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
* @throws IllegalArgumentException thrown if parameters fail the validation
- * @return the observable to the PagedList<RunCommandDocumentBaseInner> object
+ * @return the observable to the VirtualMachineRunCommandInner object
*/
- public Observable> listNextAsync(final String nextPageLink) {
- return listNextWithServiceResponseAsync(nextPageLink)
- .map(new Func1>, Page>() {
- @Override
- public Page call(ServiceResponse> response) {
- return response.body();
- }
- });
+ public Observable beginCreateOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand) {
+ return beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).map(new Func1, VirtualMachineRunCommandInner>() {
+ @Override
+ public VirtualMachineRunCommandInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
}
/**
- * Lists all available run commands for a subscription in a location.
+ * The operation to create or update the run command.
*
- * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be created or updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Create Virtual Machine RunCommand operation.
* @throws IllegalArgumentException thrown if parameters fail the validation
- * @return the observable to the PagedList<RunCommandDocumentBaseInner> object
+ * @return the observable to the VirtualMachineRunCommandInner object
*/
- public Observable>> listNextWithServiceResponseAsync(final String nextPageLink) {
- return listNextSinglePageAsync(nextPageLink)
- .concatMap(new Func1>, Observable>>>() {
+ public Observable> beginCreateOrUpdateWithServiceResponseAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandInner runCommand) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
+ }
+ if (vmName == null) {
+ throw new IllegalArgumentException("Parameter vmName is required and cannot be null.");
+ }
+ if (runCommandName == null) {
+ throw new IllegalArgumentException("Parameter runCommandName is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (runCommand == null) {
+ throw new IllegalArgumentException("Parameter runCommand is required and cannot be null.");
+ }
+ Validator.validate(runCommand);
+ final String apiVersion = "2020-06-01";
+ return service.beginCreateOrUpdate(resourceGroupName, vmName, runCommandName, this.client.subscriptionId(), runCommand, apiVersion, this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>() {
@Override
- public Observable>> call(ServiceResponse> page) {
- String nextPageLink = page.body().nextPageLink();
- if (nextPageLink == null) {
- return Observable.just(page);
+ public Observable> call(Response response) {
+ try {
+ ServiceResponse clientResponse = beginCreateOrUpdateDelegate(response);
+ return Observable.just(clientResponse);
+ } catch (Throwable t) {
+ return Observable.error(t);
}
- return Observable.just(page).concatWith(listNextWithServiceResponseAsync(nextPageLink));
}
});
}
+ private ServiceResponse beginCreateOrUpdateDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
+ .register(200, new TypeToken() { }.getType())
+ .register(201, new TypeToken() { }.getType())
+ .registerError(CloudException.class)
+ .build(response);
+ }
+
/**
- * Lists all available run commands for a subscription in a location.
+ * The operation to update the run command.
*
- ServiceResponse> * @param nextPageLink The NextLink from the previous successful call to List operation.
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
* @throws IllegalArgumentException thrown if parameters fail the validation
- * @return the PagedList<RunCommandDocumentBaseInner> object wrapped in {@link ServiceResponse} if successful.
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the VirtualMachineRunCommandInner object if successful.
*/
- public Observable>> listNextSinglePageAsync(final String nextPageLink) {
- if (nextPageLink == null) {
- throw new IllegalArgumentException("Parameter nextPageLink is required and cannot be null.");
+ public VirtualMachineRunCommandInner update(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ return updateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).toBlocking().last().body();
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture updateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(updateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand), serviceCallback);
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable updateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ return updateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).map(new Func1, VirtualMachineRunCommandInner>() {
+ @Override
+ public VirtualMachineRunCommandInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable> updateWithServiceResponseAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
}
- String nextUrl = String.format("%s", nextPageLink);
- return service.listNext(nextUrl, this.client.acceptLanguage(), this.client.userAgent())
- .flatMap(new Func1, Observable>>>() {
+ if (vmName == null) {
+ throw new IllegalArgumentException("Parameter vmName is required and cannot be null.");
+ }
+ if (runCommandName == null) {
+ throw new IllegalArgumentException("Parameter runCommandName is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (runCommand == null) {
+ throw new IllegalArgumentException("Parameter runCommand is required and cannot be null.");
+ }
+ Validator.validate(runCommand);
+ final String apiVersion = "2020-06-01";
+ Observable> observable = service.update(resourceGroupName, vmName, runCommandName, this.client.subscriptionId(), runCommand, apiVersion, this.client.acceptLanguage(), this.client.userAgent());
+ return client.getAzureClient().getPutOrPatchResultAsync(observable, new TypeToken() { }.getType());
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the VirtualMachineRunCommandInner object if successful.
+ */
+ public VirtualMachineRunCommandInner beginUpdate(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ return beginUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).toBlocking().single().body();
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture beginUpdateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(beginUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand), serviceCallback);
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the VirtualMachineRunCommandInner object
+ */
+ public Observable beginUpdateAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ return beginUpdateWithServiceResponseAsync(resourceGroupName, vmName, runCommandName, runCommand).map(new Func1, VirtualMachineRunCommandInner>() {
+ @Override
+ public VirtualMachineRunCommandInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * The operation to update the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be updated.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param runCommand Parameters supplied to the Update Virtual Machine RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the VirtualMachineRunCommandInner object
+ */
+ public Observable> beginUpdateWithServiceResponseAsync(String resourceGroupName, String vmName, String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ if (resourceGroupName == null) {
+ throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
+ }
+ if (vmName == null) {
+ throw new IllegalArgumentException("Parameter vmName is required and cannot be null.");
+ }
+ if (runCommandName == null) {
+ throw new IllegalArgumentException("Parameter runCommandName is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (runCommand == null) {
+ throw new IllegalArgumentException("Parameter runCommand is required and cannot be null.");
+ }
+ Validator.validate(runCommand);
+ final String apiVersion = "2020-06-01";
+ return service.beginUpdate(resourceGroupName, vmName, runCommandName, this.client.subscriptionId(), runCommand, apiVersion, this.client.acceptLanguage(), this.client.userAgent())
+ .flatMap(new Func1, Observable>>() {
@Override
- public Observable>> call(Response response) {
+ public Observable> call(Response response) {
try {
- ServiceResponse> result = listNextDelegate(response);
- return Observable.just(new ServiceResponse>(result.body(), result.response()));
+ ServiceResponse clientResponse = beginUpdateDelegate(response);
+ return Observable.just(clientResponse);
} catch (Throwable t) {
return Observable.error(t);
}
@@ -372,9 +666,817 @@ public Observable>> call(Respo
});
}
- private ServiceResponse> listNextDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
- return this.client.restClient().responseBuilderFactory()., CloudException>newInstance(this.client.serializerAdapter())
- .register(200, new TypeToken>() { }.getType())
+ private ServiceResponse beginUpdateDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
+ .register(200, new TypeToken() { }.getType())
+ .registerError(CloudException.class)
+ .build(response);
+ }
+
+ /**
+ * The operation to delete the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be deleted.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ */
+ public void delete(String resourceGroupName, String vmName, String runCommandName) {
+ deleteWithServiceResponseAsync(resourceGroupName, vmName, runCommandName).toBlocking().last().body();
+ }
+
+ /**
+ * The operation to delete the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be deleted.
+ * @param runCommandName The name of the virtual machine run command.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture deleteAsync(String resourceGroupName, String vmName, String runCommandName, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(deleteWithServiceResponseAsync(resourceGroupName, vmName, runCommandName), serviceCallback);
+ }
+
+ /**
+ * The operation to delete the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be deleted.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable deleteAsync(String resourceGroupName, String vmName, String runCommandName) {
+ return deleteWithServiceResponseAsync(resourceGroupName, vmName, runCommandName).map(new Func1, Void>() {
+ @Override
+ public Void call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * The operation to delete the run command.
+ *
+ * @param resourceGroupName The name of the resource group.
+ * @param vmName The name of the virtual machine where the run command should be deleted.
+ * @param runCommandName The name of the virtual machine run command.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable